/******************************************
border
******************************************/
.bd1{
	border: 1px solid #ccc;
}
.bt1{
	border-top: 1px solid #ccc;
}

.bb1{
	border-bottom: 1px solid #ccc;
}

/******************************************
clearfix
******************************************/
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
/******************************************
color
******************************************/
.color_danger{
	color: red;
}
.color_info{
	color: #007bff;
}
.color_primary{
	color: #565656;
}

.color_gray{
	color:#999;;
}
/******************************************
image
******************************************/
.fit-img{
	height: auto;
	width: 100%;
	vertical-align: middle;
	
}
.fit-max-img{
	height: auto;
	max-width: 100%;
}

/******************************************
banner
******************************************/
.banner {
    aspect-ratio: 20/9; /* 画像のアスペクト比を指定 */
}

.banner a img{
  width: 100%; /* 画像の幅をコンテナ要素に合わせる */
  object-fit: cover; /* 画像をコンテナ要素に合わせて拡大・縮小する */
}

/******************************************
square
******************************************/
.square{
	width: 95%; /* 正方形の一辺の長さ */
	aspect-ratio: 1 / 1; /* 幅と同じ比率を設定 */
	position: relative; /* 相対位置指定 */
	border: 1px double #ccc;
	overflow: hidden;
}
.square a img {
  position: absolute; /* 絶対位置指定 */
	top: 50%; /* 上端位置を中央に */
	left: 50%; /* 左端位置を中央に */
	transform: translate(-50%, -50%); /* 中央揃え */
	max-width: 100%; /* 画像幅が親要素を超えないように */
	max-height: 100%; /* 画像高さが親要素を超えないように */
	object-fit: cover;
}
.square img {
  position: absolute; /* 絶対位置指定 */
	top: 50%; /* 上端位置を中央に */
	left: 50%; /* 左端位置を中央に */
	transform: translate(-50%, -50%); /* 中央揃え */
	max-width: 100%; /* 画像幅が親要素を超えないように */
	max-height: 100%; /* 画像高さが親要素を超えないように */
	object-fit: cover;
}



/******************************************
margin
******************************************/
/*margin*/
.m5 {
  margin: 5em;
}

.m4 {
  margin: 4em;
}

.m3 {
  margin: 3em;
}

.m2 {
  margin: 2em;
}

.m1 {
  margin: 1em;
}

.m05 {
    margin: .5em;
}

/*margin pc only*/
@media screen and (min-width: 769px) {
  .m5-pc {
    margin: 5em;
  }

  .m4-pc {
    margin: 4em;
  }

  .m3-pc {
    margin: 3em;
  }

  .m2-pc {
    margin: 2em;
  }

  .m1-pc {
    margin: 1em;
  }
  
   .m05-pc {
    margin: .5em;
  }
}
/*margin sp only*/
@media screen and (max-width: 768px) {
  .m5-sp {
    margin: 5em;
  }

  .m4-sp {
    margin: 4em;
  }

  .m3-sp {
    margin: 3em;
  }

  .m2-sp {
    margin: 2em;
  }

  .m1-sp {
    margin: 1em;
  }
  
   .m05-sp {
    margin: .5em;
  }
}
/*margin-bottom*/
.mb5 {
  margin-bottom: 5em;
}

.mb4 {
  margin-bottom: 4em;
}

.mb3 {
  margin-bottom: 3em;
}

.mb2 {
  margin-bottom: 2em;
}

.mb1 {
  margin-bottom: 1em;
}

.mb05 {
  margin-bottom: .5em;
}

/*margin-bottom pc only*/
@media screen and (min-width: 769px) {
  .mb5-pc {
    margin-bottom: 5em;
  }

  .mb4-pc {
    margin-bottom: 4em;
  }

  .mb3-pc {
    margin-bottom: 3em;
  }

  .mb2-pc {
    margin-bottom: 2em;
  }

  .mb1-pc {
    margin-bottom: 1em;
  }
  
  .mb05-pc {
  	margin-bottom: .5em;
  }
}
/*margin-bottom sp only*/
@media screen and (max-width: 768px) {
  .mb5-sp {
    margin-bottom: 5em;
  }

  .mb4-sp {
    margin-bottom: 4em;
  }

  .mb3-sp {
    margin-bottom: 3em;
  }

  .mb2-sp {
    margin-bottom: 2em;
  }

  .mb1-sp {
    margin-bottom: 1em;
  }
  
  .mb05-sp {
  	margin-bottom: .5em;
  }
}
/*margin-left*/
.ml5 {
  margin-left: 5em;
}

.ml4 {
  margin-left: 4em;
}

.ml3 {
  margin-left: 3em;
}

.ml2 {
  margin-left: 2em;
}

.ml1 {
  margin-left: 1em;
}

.ml05 {
  margin-left: .5em;
}

/*margin-left pc only*/
@media screen and (min-width: 769px) {
  .ml5-pc {
    margin-left: 5em;
  }

  .ml4-pc {
    margin-left: 4em;
  }

  .ml3-pc {
    margin-left: 3em;
  }

  .ml2-pc {
    margin-left: 2em;
  }

  .ml1-pc {
    margin-left: 1em;
  }
  
  .ml05-pc {
  margin-left: .5em;
}
}
/*margin-left sp only*/
@media screen and (max-width: 768px) {
  .ml5-sp {
    margin-left: 5em;
  }

  .ml4-sp {
    margin-left: 4em;
  }

  .ml3-sp {
    margin-left: 3em;
  }

  .ml2-sp {
    margin-left: 2em;
  }

  .ml1-sp {
    margin-left: 1em;
  }
  
  .ml05-sp {
  margin-left: .5em;
}
}
/*margin-right*/
.mr5 {
  margin-right: 5em;
}

.mr4 {
  margin-right: 4em;
}

.mr3 {
  margin-right: 3em;
}

.mr2 {
  margin-right: 2em;
}

.mr1 {
  margin-right: 1em;
}

.mr05 {
  margin-right: .5em;
}

/*margin-right pc only*/
@media screen and (min-width: 769px) {
  .mr5-pc {
    margin-right: 5em;
  }

  .mr4-pc {
    margin-right: 4em;
  }

  .mr3-pc {
    margin-right: 3em;
  }

  .mr2-pc {
    margin-right: 2em;
  }

  .mr1-pc {
    margin-right: 1em;
  }
  
  .mr05-pc {
    margin-right: .5em;
  }
}
/*margin-right sp only*/
@media screen and (max-width: 768px) {
  .mr5-sp {
    margin-right: 5em;
  }

  .mr4-sp {
    margin-right: 4em;
  }

  .mr3-sp {
    margin-right: 3em;
  }

  .mr2-sp {
    margin-right: 2em;
  }

  .mr1-sp {
    margin-right: 1em;
  }
  
  .mr05-sp {
    margin-right: .5em;
  }
  
  .mr03-sp {
    margin-right: .3em;
  }
}
/*margin-top*/
.mt10 {
  margin-top: 10em;
}
.mt5 {
  margin-top: 5em;
}

.mt4 {
  margin-top: 4em;
}

.mt3 {
  margin-top: 3em;
}

.mt2 {
  margin-top: 2em;
}

.mt1 {
  margin-top: 1em;
}
.mt05 {
	margin-top: .5em;
}
.mt03 {
	margin-top: .3em;
}
/*margin-top pc only*/
@media screen and (min-width: 769px) {
  .mt10-pc {
    margin-top: 10em;
  }
  .mt5-pc {
    margin-top: 5em;
  }

  .mt4-pc {
    margin-top: 4em;
  }

  .mt3-pc {
    margin-top: 3em;
  }

  .mt2-pc {
    margin-top: 2em;
  }

  .mt1-pc {
    margin-top: 1em;
  }
  
  .mt05-pc {
	margin-top: .5em;
  }
  
  .mt03-pc {
	margin-top: .3em;
  }
}
/*margin-top sp only*/
@media screen and (max-width: 768px) {
  .mt5-sp {
    margin-top: 5em;
  }

  .mt4-sp {
    margin-top: 4em;
  }

  .mt3-sp {
    margin-top: 3em;
  }

  .mt2-sp {
    margin-top: 1em;
  }

  .mt1-sp {
    margin-top: 1em;
  }
  
  .mt05-sp {
	margin-top: .5em;
  }
  
  .mt03-sp {
	margin-top: .3em;
  }
}
/*margin vertical*/
.mv5 {
  margin: 5em auto;
}

.mv4 {
  margin: 4em auto;
}

.mv3 {
  margin: 3em auto;
}

.mv2 {
  margin: 2em auto;
}

.mv1 {
  margin: 1em auto;
}

/*margin-vertical pc only*/
@media screen and (min-width: 769px) {
  .mv5-pc {
    margin: 5em auto;
  }

  .mv4-pc {
    margin: 4em auto;
  }

  .mv3-pc {
    margin: 3em auto;
  }

  .mv2-pc {
    margin: 2em auto;
  }

  .mv1-pc {
    margin: 1em auto;
  }
}
/*margin-vertical sp only*/
@media screen and (max-width: 768px) {
  .mv5-sp {
    margin: 5em auto;
  }

  .mv4-sp {
    margin: 4em auto;
  }

  .mv3-sp {
    margin: 3em auto;
  }

  .mv2-sp {
    margin: 2em auto;
  }

  .mv1-sp {
    margin: 1em auto;
  }
}
/*margin-horizon*/
.mh5 {
  margin: auto 5em;
}

.mh4 {
  margin: auto 4em;
}

.mh3 {
  margin: auto 3em;
}

.mh2 {
  margin: auto 2em;
}

.mh1 {
  margin: auto 1em;
}

/*margin-horizon pc only*/
@media screen and (min-width: 769px) {
  .mh5-pc {
    margin: auto 5em;
  }

  .mh4-pc {
    margin: auto 4em;
  }

  .mh3-pc {
    margin: auto 3em;
  }

  .mh2-pc {
    margin: auto 2em;
  }

  .mh1-pc {
    margin: auto 1em;
  }
}
/*margin-horizon sp only*/
@media screen and (max-width: 768px) {
  .mh5-sp {
    margin: auto 5em;
  }

  .mh4-sp {
    margin: auto 4em;
  }

  .mh3-sp {
    margin: auto 3em;
  }

  .mh2-sp {
    margin: auto 2em;
  }

  .mh1-sp {
    margin: auto 1em;
  }
}
/******************************************
padding
******************************************/
/*padding*/
.p5 {
  padding: 5em;
}

.p4 {
  padding: 4em;
}

.p3 {
  padding: 3em;
}

.p2 {
  padding: 2em;
}

.p1 {
  padding: 1em;
}

.p05 {
  padding: .5em;
}

/*padding pc only*/
@media screen and (min-width: 769px) {
  .p5-pc {
    padding: 5em;
  }

  .p4-pc {
    padding: 4em;
  }

  .p3-pc {
    padding: 3em;
  }

  .p2-pc {
    padding: 2em;
  }

  .p1-pc {
    padding: 1em;
  }
  
  .p05-pc {
    padding: .5em;
  }
}
/*padding sp only*/
@media screen and (max-width: 768px) {
  .p5-sp {
    padding: 5em;
  }

  .p4-sp {
    padding: 4em;
  }

  .p3-sp {
    padding: 3em;
  }

  .p2-sp {
    padding: 2em;
  }

  .p1-sp {
    padding: 1em;
  }
  
  .p05-sp {
    padding: .5em;
  }
}
/*padding-bottom*/
.pb5 {
  padding-bottom: 5em;
}

.pb4 {
  padding-bottom: 4em;
}

.pb3 {
  padding-bottom: 3em;
}

.pb2 {
  padding-bottom: 2em;
}

.pb1 {
  padding-bottom: 1em;
}

/*padding-bottom pc only*/
@media screen and (min-width: 769px) {
  .pb5-pc {
    padding-bottom: 5em;
  }

  .pb4-pc {
    padding-bottom: 4em;
  }

  .pb3-pc {
    padding-bottom: 3em;
  }

  .pb2-pc {
    padding-bottom: 2em;
  }

  .pb1-pc {
    padding-bottom: 1em;
  }
}
/*padding-bottom sp only*/
@media screen and (max-width: 768px) {
  .pb5-sp {
    padding-bottom: 5em;
  }

  .pb4-sp {
    padding-bottom: 4em;
  }

  .pb3-sp {
    padding-bottom: 3em;
  }

  .pb2-sp {
    padding-bottom: 2em;
  }

  .pb1-sp {
    padding-bottom: 1em;
  }
}
/*padding-left*/
.pl5 {
  padding-left: 5em;
}

.pl4 {
  padding-left: 4em;
}

.pl3 {
  padding-left: 3em;
}

.pl2 {
  padding-left: 2em;
}

.pl1 {
  padding-left: 1em;
}
.pl05 {
  padding-left: .5em;
}
.pl03 {
  padding-left: .3em;
}

/*padding-left pc only*/
@media screen and (min-width: 769px) {
  .pl5-pc {
    padding-left: 5em;
  }

  .pl4-pc {
    padding-left: 4em;
  }

  .pl3-pc {
    padding-left: 3em;
  }

  .pl2-pc {
    padding-left: 2em;
  }

  .pl1-pc {
    padding-left: 1em;
  }
  
  .pl05-pc {
    padding-left: 0.5em;
  }
  
  .pl03-pc {
    padding-left: 0.3em;
  }
}
/*padding-left sp only*/
@media screen and (max-width: 768px) {
  .pl5-sp {
    padding-left: 5em;
  }

  .pl4-sp {
    padding-left: 4em;
  }

  .pl3-sp {
    padding-left: 3em;
  }

  .pl2-sp {
    padding-left: 2em;
  }

  .pl1-sp {
    padding-left: 1em;
  }
  
  .pl05-sp {
    padding-left: 0.5em;
  }
  
  .pl03-sp {
    padding-left: 0.3em;
  }
}
/*padding-right*/
.pr5 {
  padding-right: 5em;
}

.pr4 {
  padding-right: 4em;
}

.pr3 {
  padding-right: 3em;
}

.pr2 {
  padding-right: 2em;
}

.pr1 {
  padding-right: 1em;
}
.pr05 {
  padding-right: 0.5em;
}
.pr03 {
  padding-right: 0.3em;
}

/*padding-right pc only*/
@media screen and (min-width: 769px) {
  .pr5-pc {
    padding-right: 5em;
  }

  .pr4-pc {
    padding-right: 4em;
  }

  .pr3-pc {
    padding-right: 3em;
  }

  .pr2-pc {
    padding-right: 2em;
  }

  .pr1-pc {
    padding-right: 1em;
  }

  .pr05-pc {
    padding-right: 0.5em;
  }

  .pr03-pc {
    padding-right: 0.3em;
  }
}
/*padding-right sp only*/
@media screen and (max-width: 768px) {
  .pr5-sp {
    padding-right: 5em !important;
  }

  .pr4-sp {
    padding-right: 4em !important;
  }

  .pr3-sp {
    padding-right: 3em !important;
  }

  .pr2-sp {
    padding-right: 2em !important;
  }

  .pr1-sp {
    padding-right: 1em !important;
  }
  
  .pr05-sp {
    padding-right: 0.5em !important;
  }
  .pr03-sp {
    padding-right: 0.3em !important;
  }
}
/*padding-top*/
.pt5 {
  padding-top: 5em !important;
}

.pt4 {
  padding-top: 4em !important;
}

.pt3 {
  padding-top: 3em !important;
}

.pt2 {
  padding-top: 2em !important;
}

.pt1 {
  padding-top: 1em !important;
}
.pt05 {
  padding-top: .5em !important;
}
.pt03 {
  padding-top: .3em !important;
}

.pt10p {
  padding-top: 10px !important;
}

/*padding-top pc only*/
@media screen and (min-width: 769px) {
  .pt5-pc {
    padding-top: 5em;
  }

  .pt4-pc {
    padding-top: 4em;
  }

  .pt3-pc {
    padding-top: 3em;
  }

  .pt2-pc {
    padding-top: 2em;
  }

  .pt1-pc {
    padding-top: 1em;
  }

  .pt05-pc {
    padding-top: .5em;
  }

  .pt03-pc {
    padding-top: .3em;
  }
}
/*padding-top sp only*/
@media screen and (max-width: 768px) {
  .pt5-sp {
    padding-top: 5em;
  }

  .pt4-sp {
    padding-top: 4em;
  }

  .pt3-sp {
    padding-top: 3em;
  }

  .pt2-sp {
    padding-top: 2em;
  }

  .pt1-sp {
    padding-top: 1em;
  }

  .pt05-sp {
    padding-top: .5em;
  }

  .pt03-sp {
    padding-top: .3em;
  }
}
/*padding-horizon*/
.ph5 {
  padding: 0 5em;
}

.ph4 {
  padding: 0 4em;
}

.ph3 {
  padding: 0 3em;
}

.ph2 {
  padding: 0 2em;
}

.ph1 {
  padding: 0 1em;
}

/*padding-horizon pc only*/
@media screen and (min-width: 769px) {
  .ph5-pc {
    padding: 0 5em;
  }

  .ph4-pc {
    padding: 0 4em;
  }

  .ph3-pc {
    padding: 0 3em;
  }

  .ph2-pc {
    padding: 0 2em;
  }

  .ph1-pc {
    padding: 0 1em;
  }
}
/*padding-horizon sp only*/
@media screen and (max-width: 768px) {
  .ph5-sp {
    padding: 0 5em;
  }

  .ph4-sp {
    padding: 0 4em;
  }

  .ph3-sp {
    padding: 0 3em;
  }

  .ph2-sp {
    padding: 0 2em;
  }

  .ph1-sp {
    padding: 0 1em;
  }
}
/*padding-vertical*/
.pv5 {
  padding: 5em 0;
}

.pv4 {
  padding: 4em 0;
}

.pv3 {
  padding: 3em 0;
}

.pv2 {
  padding: 2em 0;
}

.pv1 {
  padding: 1em 0;
}

/*padding-vertical pc only*/
@media screen and (min-width: 769px) {
  /*padding vertical*/
  .pv5-pc {
    padding: 5em 0;
  }

  .pv4-pc {
    padding: 4em 0;
  }

  .pv3-pc {
    padding: 3em 0;
  }

  .pv2-pc {
    padding: 2em 0;
  }

  .pv1-pc {
    padding: 1em 0;
  }
}
/*padding-vertical sp only*/
@media screen and (max-width: 768px) {
  /*padding vertical*/
  .pv5-sp {
    padding: 5em 0;
  }

  .pv4-sp {
    padding: 4em 0;
  }

  .pv3-sp {
    padding: 3em 0;
  }

  .pv2-sp {
    padding: 2em 0;
  }

  .pv1-sp {
    padding: 1em 0;
  }
}
/******************************************
text
******************************************/
/*position*/
.text-center {
  text-align: center;
}
@media screen and (min-width:769px){
	.text-center-pc {
		text-align: center;
	}
}
@media screen and (max-width:768px){
	.text-center-sp {
		text-align: center;
	}
}
.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

/*size*/
/*size*/
.text-8  {font-size:  .615em;}
.text-10 {font-size:  .769em;}
.text-12 {font-size:  .923em;}
.text-14 {font-size: 1.076em;}
.text-16 {font-size: 1.231em;}
.text-18 {font-size: 1.384em;}
.text-20 {font-size: 1.538em;}
.text-22 {font-size: 1.692em;}
.text-24 {font-size: 1.846em;}
.text-30 {font-size: 2.307em;}
.text-36 {font-size: 2.769em;}

.yen.text-8  {font-size:  .307em;}
.yen.text-10 {font-size:  .461em;}
.yen.text-12 {font-size:  .615em;}
.yen.text-14 {font-size:  .769em;}
.yen.text-16 {font-size:  .923em;}
.yen.text-18 {font-size: 1.076em;}
.yen.text-20 {font-size: 1.231em;}
.yen.text-22 {font-size: 1.384em;}
.yen.text-24 {font-size: 1.538em;}
.yen.text-30 {font-size: 1.692em;}
.yen.text-36 {font-size: 1.846em;}

@media screen and (min-width: 769px) {	
.text-8-pc  {font-size:  .615em;}
.text-10-pc {font-size:  .769em;}
.text-12-pc {font-size:  .923em;}
.text-14-pc {font-size: 1.076em;}
.text-16-pc {font-size: 1.231em;}
.text-18-pc {font-size: 1.384em;}
.text-20-pc {font-size: 1.538em;}
.text-22-pc {font-size: 1.692em;}
.text-24-pc {font-size: 1.846em;}
.text-30-pc {font-size: 2.307em;}
.text-36-pc {font-size: 2.769em;}
}

@media screen and (min-width: 769px) {	
.yen.text-8-pc  {font-size:  .307em;}
.yen.text-10-pc {font-size:  .461em;}
.yen.text-12-pc {font-size:  .615em;}
.yen.text-14-pc {font-size:  .769em;}
.yen.text-16-pc {font-size:  .923em;}
.yen.text-18-pc {font-size: 1.076em;}
.yen.text-20-pc {font-size: 1.231em;}
.yen.text-22-pc {font-size: 1.384em;}
.yen.text-24-pc {font-size: 1.538em;}
.yen.text-30-pc {font-size: 1.692em;}
.yen.text-36-pc {font-size: 1.846em;}
}

@media screen and (max-width: 768px) {
.text-8-sp  {font-size:  .615em;}
.text-10-sp {font-size:  .769em;}
.text-12-sp {font-size:  .923em;}
.text-14-sp {font-size: 1.076em;}
.text-16-sp {font-size: 1.231em;}
.text-18-sp {font-size: 1.384em;}
.text-20-sp {font-size: 1.538em;}
.text-22-sp {font-size: 1.692em;}
.text-24-sp {font-size: 1.846em;}
.text-30-sp {font-size: 2.307em;}
.text-36-sp {font-size: 2.769em;}
}

@media screen and (max-width: 768px) {
.yen.text-8-sp  {font-size:  .307em}
.yen.text-10-sp {font-size:  .461em}
.yen.text-12-sp {font-size:  .615em;}
.yen.text-14-sp {font-size:  .769em;}
.yen.text-16-sp {font-size:  .923em;}
.yen.text-18-sp {font-size: 1.076em;}
.yen.text-20-sp {font-size: 1.231em;}
.yen.text-22-sp {font-size: 1.384em;}
.yen.text-24-sp {font-size: 1.538em;}
.yen.text-30-sp {font-size: 1.692em;}
.yen.text-36-sp {font-size: 1.846em;}
}

/*weight*/
.text-normal {
  font-weight: normal;
}

.text-bold {
  font-weight: bold;
}

/******************************************
width
******************************************/
.w100 {
  width: 100%;
}
@media screen and (max-width: 768px) {
	.w100-sp{
		width: 100%;
	}
}
.w95 {
  width: 95%;
}
@media screen and (max-width: 768px) {
	.w95-sp{
		width: 95%;
	}
}
.w90 {
  width: 90%;
}
@media screen and (max-width: 768px) {
	.w90-sp{
		width: 90%;
	}
}
.w80 {
  width: 80%;
}
@media screen and (max-width: 768px) {
	.w80-sp{
		width: 80%;
	}
}
.w70 {
  width: 70%;
}
@media screen and (min-width: 769px) {
	.w70-pc{
		width: 70%;
	}
}
@media screen and (max-width: 768px) {
	.w70-sp{
		width: 70%;
	}
}
.w50 {
  width: 50%;
}
@media screen and (min-width: 769px) {
	.w50-pc{
		width: 50%;
	}
}
@media screen and (max-width: 768px) {
	.w50-sp{
		width: 50%;
	}
}
.w40 {
  width: 40%;
}
@media screen and (min-width: 769px) {
	.w40-pc{
		width: 40%;
	}
}
@media screen and (max-width: 768px) {
	.w40-sp{
		width: 40%;
	}
}

.w35 {
  width: 35%;
}
@media screen and (min-width: 769px) {
	.w35-pc{
		width: 35%;
	}
}
@media screen and (max-width: 768px) {
	.w35-sp{
		width: 35%;
	}
}

.w30 {
  width: 30%;
}
@media screen and (min-width: 769px) {
	.w30-pc{
		width: 30%;
	}
}
@media screen and (max-width: 768px) {
	.w30-sp{
		width: 30%;
	}
}

.w25 {
  width: 25%;
}
@media screen and (min-width: 769px) {
	.w25-pc{
		width: 25%;
	}
}
@media screen and (max-width: 768px) {
	.w25-sp{
		width: 25%;
	}
}

.w20 {
  width: 20%;
}
@media screen and (min-width: 769px) {
	.w20-pc{
		width: 20%;
	}
}
@media screen and (max-width: 768px) {
	.w20-sp{
		width: 20%;
	}
}

.w15 {
  width: 15%;
}
@media screen and (min-width: 769px) {
	.w15-pc{
		width: 15%;
	}
}
@media screen and (max-width: 768px) {
	.w15-sp{
		width: 15%;
	}
}
/******************************************
display
******************************************/
.pc-only {
  display: inherit;
}
@media screen and (max-width: 768px) {
  .pc-only {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp-only {
    display: inherit;
  }
}

/******************************************
vertical-align
******************************************/
.va-t {
  vertical-align: top;
}

@media screen and (min-width: 769px) {
	.va-t-pc{
		vertical-align: top;
	}
}
@media screen and (max-width: 768px) {
	.va-t-sp{
		vertical-align: top;
	}
}

.va-m {
  vertical-align: middle;
}

@media screen and (min-width: 769px) {
	.va-m-pc{
		vertical-align: middle;
	}
}
@media screen and (max-width: 768px) {
	.va-m-sp{
		vertical-align: middle;
	}
}

.va-b {
  vertical-align: bottom;
}

@media screen and (min-width: 769px) {
	.va-b-pc{
		vertical-align: bottom;
	}
}
@media screen and (max-width: 768px) {
	.va-b-sp{
		vertical-align: bottom;
	}
}

/******************************************
min-width
******************************************/
.mw20p{
	min-width: 20px;
}

/******************************************
取り消し線
******************************************/
.line-through{
	display: inline-block;
    position: relative;
}

.line-through::before {
    content: '';
    position: absolute;
    top: 40%;
    left: 0;
    right: 0;
    height: 1px;
    background-color: black;
    transform: translateY(-50%);
}
