@charset "UTF-8";
/* ===================================
	File Name   : module.css
	Description : Each selectors/parts CSS
	Editor      : Bface Saeki
	Last Editor : Bface Saeki
	
	Update Description :
	[2022/05/09] セミナーボタンカラー追加
	[2022/04/14] 利用規約（terms）追記
	[2022/04/11] 来場側マイページ用調整（カラー・フッター）
	[2022/01/17] 新規制作

====================================== */

/*========== Style Contents ==========

	1. Switch
  2. margin / padding
  3. width
	4. Font
	5. Title Setting
	6. Box Layout
	7. Parts Style
    -	Video
    -	Code
    -	Labels(color)
    -	Introduction
    -	Text Indent
    -	Boxs
      -	Boxs - Limit
      -	Boxs - Color
    -	Links
      -	Links - Text
      -	Links - Boxlink
      -	Links - Boxlink emphasis
      -	Links - Boxlink return
      -	Links - Boxlink color
      -	Links - Boxlink item
    -	Table
      -	Table - basic
      -	Table - itemlist
      -	Table - emphasis
    -	List
      -	List - Info
      -	List - links
      -	List - switch
      -	List - vertical
      -	List - dots
      -	List - circle
      -	List - definition
      -	List - cards
      -	List - form
    -	Pager
  8. Each Section Style

====================================== */



/*===== 1. Switch =====*/
.pc[class] { display: block;}
.sp[class] { display: none;}
.block[class] { display: block;}
.inline-block[class] { display: inline-block;}
.inline[class] { display: inline;}


@media (max-width: 768px) {
	.pc[class] { display: none;}
	.sp[class] { display: block;}
  .blocksp[class] { display: block;}
  .inline-blocksp[class] { display: inline-block;}
  .inlinesp[class] { display: inline;}
}



/*===== 2. margin / padding =====*/
.mlauto[class] { margin-left: auto;}.ml0[class] { margin-left: 0;}.ml05[class] { margin-left: 5px;}.ml10[class] { margin-left: 10px;}.ml15[class] { margin-left: 15px;}.ml20[class] { margin-left: 20px;}.ml25[class] { margin-left: 25px;}
.mrauto[class] { margin-right: auto;}.mr0[class] { margin-right: 0;}.mr05[class] { margin-right: 5px;}.mr10[class] { margin-right: 10px;}.mr15[class] { margin-right: 15px;}.mr20[class] { margin-right: 20px;}.mr25[class] { margin-right: 25px;}
.mlrauto[class] { margin: auto;}.mlr0[class] { margin: 0;}.mlr05[class] { margin: 0 5px;}.mlr10[class] { margin: 0 10px;}.mlr15[class] { margin: 0 15px;}.mlr20[class] { margin: 0 20px;}.mlr25[class] { margin: 0 25px;}.mlr30[class] { margin: 0 30px;}.mlr40[class] { margin: 0 40px;}.mlr50[class] { margin: 0 50px;}
.mtauto[class] { margin-top: auto;}.mt0[class] { margin-top: 0;}.mt05[class] { margin-top: 5px;}.mt10[class] { margin-top: 10px;}.mt15[class] { margin-top: 15px;}.mt20[class] { margin-top: 20px;}.mt25[class] { margin-top: 25px;}.mt30[class] { margin-top: 30px;}.mt40[class] { margin-top: 40px;}.mt50[class] { margin-top: 50px;}
.mbauto[class] { margin-bottom: auto;}.mb0[class] { margin-bottom: 0;}.mb05[class] { margin-bottom: 5px;}.mb10[class] { margin-bottom: 10px;}.mb15[class] { margin-bottom: 15px;}.mb20[class] { margin-bottom: 20px;}.mb25[class] { margin-bottom: 25px;}.mb30[class] { margin-bottom: 30px;}.mb40[class] { margin-bottom: 40px;}.mb50[class] { margin-bottom: 50px;}.mb60[class] { margin-bottom: 60px;}
.mtb0[class] { margin: 0;}.mtb05[class] { margin: 5px 0;}.mtb10[class] { margin: 10px 0;}.mtb15[class] { margin: 15px 0;}.mtb20[class] { margin: 20px 0;}.mtb25[class] { margin: 25px 0;}.mtb30[class] { margin: 30px 0;}.mtb40[class] { margin: 40px 0;}.mtb50[class] { margin: 50px 0;}.mtb60[class] { margin: 60px 0;}

.pl0[class] { padding-left: 0;}.pl05[class] { padding-left: 5px;}.pl10[class] { padding-left: 10px;}.pl15[class] { padding-left: 15px;}.pl20[class] { padding-left: 20px;}.pl25[class] { padding-left: 25px;}
.pr05[class] { padding-right: 5px;}.pr10[class] { padding-right: 10px;}.pr15[class] { padding-right: 15px;}.pr20[class] { padding-right: 20px;}.pr25[class] { padding-right: 25px;}
.plr0[class] { padding: 0;}.plr05[class] { padding: 0 5px;}.plr10[class] { padding: 0 10px;}.plr15[class] { padding: 0 15px;}.plr20[class] { padding: 0 20px;}.plr25[class] { padding: 0 25px;}.plr30[class] { padding: 0 30px;}.plr40[class] { padding: 0 40px;}.plr50[class] { padding: 0 50px;}
.pt0[class] { padding-top: 0;}.pt05[class] { padding-top: 5px;}.pt10[class] { padding-top: 10px;}.pt15[class] { padding-top: 15px;}.pt20[class] { padding-top: 20px;}.pt25[class] { padding-top: 25px;}.pt30[class] { padding-top: 30px;}.pt40[class] { padding-top: 40px;}.pt50[class] { padding-top: 50px;}
.pb0[class] { padding-bottom: 0;}.pb05[class] { padding-bottom: 5px;}.pb10[class] { padding-bottom: 10px;}.pb15[class] { padding-bottom: 15px;}.pb20[class] { padding-bottom: 20px;}.pb25[class] { padding-bottom: 25px;}.pb30[class] { padding-bottom: 30px;}.pb40[class] { padding-bottom: 40px;}.pb50[class] { padding-bottom: 50px;}.pb60[class] { padding-bottom: 60px;}
.ptb0[class] { padding: 0;}.ptb10[class] { padding: 10px 0;}.ptb20[class] { padding: 20px 0;}.ptb30[class] { padding: 30px 0;}.ptb40[class] { padding: 40px 0;}.ptb50[class] { padding: 50px 0;}.ptb60[class] { padding: 60px 0;}


@media (max-width: 768px) {
	.ml05[class] { margin-left: 1.34vw;}.ml10[class] { margin-left: 2.67vw;}.ml15[class] { margin-left: 4vw;}
	.ml20[class] { margin-left: 5.34vw;}.mr05[class] { margin-right: 1.34vw;}
	.mr10[class] { margin-right: 2.67vw;}.mr15[class] { margin-right: 4vw;}.mr20[class] { margin-right: 5.34vw;}.mr25[class] { margin-right: 6.67vw;}


	.mlr05[class] { margin: 0 1.34vw;}.mlr10[class] { margin: 0 2.67vw;}.mlr15[class] { margin: 0 4vw;}.mlr20[class] { margin: 0 5.34vw;}.mlr25[class] { margin: 0 6.67vw;}.mlr30[class] { margin: 0 8vw;}.mlr40[class] { margin: 0 10.67vw;}.mlr50[class] { margin: 0 10.67vw;}
	.mt05[class] { margin-top: 1.34vw;}.mt10[class] { margin-top: 2.67vw;}.mt15[class] { margin-top: 4vw;}.mt20[class] { margin-top: 5.34vw;}.mt25[class] { margin-top: 6.67vw;}.mt30[class] { margin-top: 8vw;}.mt40[class] { margin-top: 10.67vw;}.mt50[class] { margin-top: 10.67vw;}
	.mb05[class] { margin-bottom: 1.34vw;}.mb10[class] { margin-bottom: 2.67vw;}.mb15[class] { margin-bottom: 4vw;}.mb20[class] { margin-bottom: 5.34vw;}.mb25[class] { margin-bottom: 6.67vw;}.mb30[class] { margin-bottom: 8vw;}.mb40[class] { margin-bottom: 10.67vw;}.mb50[class] { margin-bottom: 10.67vw;}.mb60[class] { margin-bottom: 10.67vw;}
	.mtb05[class] { margin: 1.34vw 0;}.mtb10[class] { margin: 2.67vw 0;}.mtb15[class] { margin: 4vw 0;}.mtb20[class] { margin: 5.34vw 0;}.mtb25[class] { margin: 6.67vw 0;}.mtb30[class] { margin: 8vw 0;}.mtb40[class] { margin: 10.67vw 0;}.mtb50[class] { margin: 10.67vw 0;}.mtb60[class] { margin: 10.67vw 0;}

	.ml0sp[class] { margin-left: 0;}.ml05sp[class] { margin-left: 1.34vw;}.ml10sp[class] { margin-left: 2.67vw;}.ml15sp[class] { margin-left: 4vw;}.ml20sp[class] { margin-left: 5.34vw;}.ml25sp[class] { margin-left: 6.67vw;}
	.mr0sp[class] { margin-right: 0;}.mr05sp[class] { margin-right: 1.34vw;}.mr10sp[class] { margin-right: 2.67vw;}.mr15sp[class] { margin-right: 4vw;}.mr20sp[class] { margin-right: 5.34vw;}.mr25sp[class] { margin-right: 6.67vw;}
	.mlr0sp[class] { margin: 0;}.mlr05sp[class] { margin: 0 1.34vw;}.mlr10sp[class] { margin: 0 2.67vw;}.mlr15sp[class] { margin: 0 4vw;}.mlr20sp[class] { margin: 0 5.34vw;}.mlr25sp[class] { margin: 0 6.67vw;}
  .mt0sp[class] { margin-top: 0;}.mt05sp[class] { margin-top: 1.34vw;}.mt10sp[class] { margin-top: 2.67vw;}.mt15sp[class] { margin-top: 4vw;}.mt20sp[class] { margin-top: 5.34vw;}.mt25sp[class] { margin-top: 6.67vw;}.mt30sp[class] { margin-top: 8vw;}.mt40sp[class] { margin-top: 10.67vw;}.mt50sp[class] { margin-top: 10.67vw;}
	.mb0sp[class] { margin-bottom: 0;}.mb05sp[class] { margin-bottom: 1.34vw;}.mb10sp[class] { margin-bottom: 2.67vw;}.mb15sp[class] { margin-bottom: 4vw;}.mb20sp[class] { margin-bottom: 5.34vw;}.mb25sp[class] { margin-bottom: 6.67vw;}.mb30sp[class] { margin-bottom: 8vw;}.mb40sp[class] { margin-bottom: 10.67vw;}.mb50sp[class] { margin-bottom: 10.67vw;}
	.mtb05sp[class] { margin: 1.34vw 0;}.mtb10sp[class] { margin: 2.67vw 0;}.mtb15sp[class] { margin: 4vw 0;}.mtb20sp[class] { margin: 5.34vw 0;}.mtb25sp[class] { margin: 6.67vw 0;}.mtb30sp[class] { margin: 8vw 0;}.mtb40sp[class] { margin: 10.67vw 0;}.mtb50sp[class] { margin: 10.67vw 0;}.mtb60sp[class] { margin: 10.67vw 0;}
  
	.pl0[class] { padding-left: 0;}.pl05[class] { padding-left: 1.34vw;}.pl10[class] { padding-left: 2.67vw;}.pl15[class] { padding-left: 4vw;}.pl20[class] { padding-left: 5.34vw;}.pr05[class] { padding-right: 1.34vw;}.pr10[class] { padding-right: 2.67vw;}.pr15[class] { padding-right: 4vw;}.pr20[class] { padding-right: 5.34vw;}.pr25[class] { padding-right: 6.67vw;}.plr0[class] { padding: 0;}.plr05[class] { padding: 0 1.34vw;}.plr10[class] { padding: 0 2.67vw;}.plr15[class] { padding: 0 4vw;}.plr20[class] { padding: 0 5.34vw;}.plr25[class] { padding: 0 6.67vw;}.plr30[class] { padding: 0 8vw;}.plr40[class] { padding: 0 10.67vw;}.plr50[class] { padding: 0 10.67vw;}
	.pt0[class] { padding-top: 0;}.pt05[class] { padding-top: 1.34vw;}.pt10[class] { padding-top: 2.67vw;}.pt15[class] { padding-top: 4vw;}.pt20[class] { padding-top: 5.34vw;}.pt25[class] { padding-top: 6.67vw;}.pt30[class] { padding-top: 8vw;}.pt40[class] { padding-top: 10.67vw;}.pt50[class] { padding-top: 10.67vw;}
	.pb0[class] { padding-bottom: 0;}.pb05[class] { padding-bottom: 1.34vw;}.pb10[class] { padding-bottom: 2.67vw;}.pb15[class] { padding-bottom: 4vw;}.pb20[class] { padding-bottom: 5.34vw;}.pb25[class] { padding-bottom: 6.67vw;}.pb30[class] { padding-bottom: 8vw;}.pb40[class] { padding-bottom: 10.67vw;}.pb50[class] { padding-bottom: 10.67vw;}.pb60[class] { padding-bottom: 10.67vw;}
	.ptb0[class] { padding: 0;}.ptb10[class] { padding: 2.67vw 0;}.ptb20[class] { padding: 5.34vw 0;}.ptb30[class] { padding: 8vw 0;}.ptb40[class] { padding: 10.67vw 0;}.ptb50[class] { padding: 10.67vw 0;}.ptb60[class] { padding: 10.67vw 0;}
	.pl0sp[class] { padding-left: 0;}.pl05sp[class] { padding-left: 1.34vw;}.pl10sp[class] { padding-left: 2.67vw;}.pl15sp[class] { padding-left: 4vw;}.pl20sp[class] { padding-left: 5.34vw;}.pl25sp[class] { padding-left: 6.67vw;}
	.pr0sp[class] { padding-right: 0;}.pr05sp[class] { padding-right: 1.34vw;}.pr10sp[class] { padding-right: 2.67vw;}.pr15sp[class] { padding-right: 4vw;}.pr20sp[class] { padding-right: 5.34vw;}.pr25sp[class] { padding-right: 6.67vw;}.plr0sp[class] { padding: 0;}.plr05sp[class] { padding: 0 1.34vw;}.plr10sp[class] { padding: 0 2.67vw;}.plr15sp[class] { padding: 0 4vw;}.plr20sp[class] { padding: 0 5.34vw;}.plr25sp[class] { padding: 0 6.67vw;}
	.pt0sp[class] { padding-top: 0;}.pt05sp[class] { padding-top: 1.34vw;}.pt10sp[class] { padding-top: 2.67vw;}.pt15sp[class] { padding-top: 4vw;}.pt20sp[class] { padding-top: 5.34vw;}.pt25sp[class] { padding-top: 6.67vw;}.pt30sp[class] { padding-top: 8vw;}.pt40sp[class] { padding-top: 10.67vw;}.pt50sp[class] { padding-top: 10.67vw;}
	.pb0sp[class] { padding-bottom: 0;}.pb05sp[class] { padding-bottom: 1.34vw;}.pb10sp[class] { padding-bottom: 2.67vw;}.pb15sp[class] { padding-bottom: 4vw;}.pb20sp[class] { padding-bottom: 5.34vw;}.pb25sp[class] { padding-bottom: 6.67vw;}.pb30sp[class] { padding-bottom: 8vw;}.pb40sp[class] { padding-bottom: 10.67vw;}.pb50sp[class] { padding-bottom: 10.67vw;}
	.ptb05sp[class] { padding: 1.34vw 0;}.ptb10sp[class] { padding: 2.67vw 0;}.ptb15sp[class] { padding: 4vw 0;}.ptb20sp[class] { padding: 5.34vw 0;}.ptb25sp[class] { padding: 6.67vw 0;}.ptb30sp[class] { padding: 8vw 0;}.ptb40sp[class] { padding: 10.67vw 0;}.ptb50sp[class] { padding: 10.67vw 0;}.ptb60sp[class] { padding: 10.67vw 0;}
}



/*===== 3. Size =====*/
.w10[class] { width: 10%;}.w20[class] { width: 20%;}.w25[class] { width: 25%;}.w30[class] { width: 30%;}.w40[class] { width: 40%;}.w50[class] { width: 50%;}.w60[class] { width: 60%;}.w70[class] { width: 70%;}.w80[class] { width: 80%;}.w90[class] { width: 90%;}.w100[class] { width: 100%;}
.w20-10[class] { width: calc(20% - 1.33vw);}.w20-20[class] { width: calc(20% - 2.66vw);}.w20-30[class] { width: calc(20% - 4vw);}
.w25-10[class] { width: calc(25% - 1.33vw);}.w25-20[class] { width: calc(25% - 2.66vw);}.w25-30[class] { width: calc(25% - 4vw);}
.w30-10[class] { width: calc(30% - 1.33vw);}.w30-20[class] { width: calc(30% - 2.66vw);}.w30-30[class] { width: calc(30% - 4vw);}
.w40-10[class] { width: calc(40% - 1.33vw);}.w40-20[class] { width: calc(40% - 2.66vw);}.w40-30[class] { width: calc(40% - 4vw);}
.w50-10[class] { width: calc(50% - 1.33vw);}.w50-20[class] { width: calc(50% - 2.66vw);}.w50-30[class] { width: calc(50% - 4vw);}
.w60-10[class] { width: calc(60% - 1.33vw);}.w60-20[class] { width: calc(60% - 2.66vw);}.w60-30[class] { width: calc(60% - 4vw);}
.w70-10[class] { width: calc(70% - 1.33vw);}.w70-20[class] { width: calc(70% - 2.66vw);}.w70-30[class] { width: calc(70% - 4vw);}
.w75-10[class] { width: calc(75% - 1.33vw);}.w75-20[class] { width: calc(75% - 2.66vw);}.w75-30[class] { width: calc(75% - 4vw);}
.w80-10[class] { width: calc(80% - 1.33vw);}.w80-20[class] { width: calc(80% - 2.66vw);}.w80-30[class] { width: calc(80% - 4vw);}


@media (max-width: 768px) {
  .w10sp[class] { width: 10%;}.w20sp[class] { width: 20%;}.w25sp[class] { width: 25%;}.w30sp[class] { width: 30%;}.w40sp[class] { width: 40%;}.w50sp[class] { width: 50%;}.w60sp[class] { width: 60%;}.w70sp[class] { width: 70%;}.w80sp[class] { width: 80%;}.w90sp[class] { width: 90%;}.w100sp[class] { width: 100%;}
  
  .w20-10sp[class] { width: calc(20% - 1.33vw);}.w20-20sp[class] { width: calc(20% - 2.66vw);}.w20-30sp[class] { width: calc(20% - 4vw);}
  .w25-10sp[class] { width: calc(25% - 1.33vw);}.w25-20sp[class] { width: calc(25% - 2.66vw);}.w25-30sp[class] { width: calc(25% - 4vw);}
  .w30-10sp[class] { width: calc(30% - 1.33vw);}.w30-20sp[class] { width: calc(30% - 2.66vw);}.w30-30sp[class] { width: calc(30% - 4vw);}
  .w40-10sp[class] { width: calc(40% - 1.33vw);}.w40-20sp[class] { width: calc(40% - 2.66vw);}.w40-30sp[class] { width: calc(40% - 4vw);}
  .w50-10sp[class] { width: calc(50% - 1.33vw);}.w50-20sp[class] { width: calc(50% - 2.66vw);}.w50-30sp[class] { width: calc(50% - 4vw);}
  .w60-10sp[class] { width: calc(60% - 1.33vw);}.w60-20sp[class] { width: calc(60% - 2.66vw);}.w60-30sp[class] { width: calc(60% - 4vw);}
  .w70-10sp[class] { width: calc(70% - 1.33vw);}.w70-20sp[class] { width: calc(70% - 2.66vw);}.w70-30sp[class] { width: calc(70% - 4vw);}
  .w75-10sp[class] { width: calc(75% - 1.33vw);}.w75-20sp[class] { width: calc(75% - 2.66vw);}.w75-30sp[class] { width: calc(75% - 4vw);}
  .w80-10sp[class] { width: calc(80% - 1.33vw);}.w80-20sp[class] { width: calc(80% - 2.66vw);}.w80-30sp[class] { width: calc(80% - 4vw);}
  
  table .w10sp[class] { width: 10vw;}table .w20sp[class] { width: 20vw;}table .w25sp[class] { width: 25vw;}table .w30sp[class] { width: 30vw;}table .w40sp[class] { width: 40vw;}table .w50sp[class] { width: 50vw;}table .w60sp[class] { width: 60vw;}table .w70sp[class] { width: 70vw;}table .w80sp[class] { width: 80vw;}table .w90sp[class] { width: 90vw;}table .w100sp[class] { width: 100vw;}
}



/*===== 4. Font Style =====*/
.red[class] { color: #c00;}.white[class] { color: #fff;}.black[class] { color: #333;}

.normal[class] { font-weight: 400;}.bold[class] { font-weight: 700;}

.wrap[class] { white-space: normal;}.nowrap[class] {white-space: nowrap;}

.fs12[class] { font-size: 1.2rem;}.fs14[class] { font-size: 1.4rem;}.fs16[class] { font-size: 1.6rem;}.fs18[class] { font-size: 1.8rem;}
.fs20[class] { font-size: 2.0rem;}.fs22[class] { font-size: 2.2rem;}.fs24[class] { font-size: 2.4rem;}.fs26[class] { font-size: 2.6rem;}.fs28[class] { font-size: 2.8rem;}.fs30[class] { font-size: 3.0rem;}.fs32[class] { font-size: 3.2rem;}.fs34[class] { font-size: 3.4rem;}.fs36[class] { font-size: 3.6rem;}.fs38[class] { font-size: 3.8rem;}.fs40[class] { font-size: 4.0rem;}

.line1-2[class] { line-height: 1.2;}.line1-4[class] { line-height: 1.4;}.line1-6[class] { line-height: 1.6;}.line1-8[class] { line-height: 1.8;}

.left[class] { text-align: left;}.center[class] { text-align: center;}.right[class] { text-align: right;}


@media (max-width: 768px) {
  .normalsp[class] { font-weight: 400;}.boldsp[class] { font-weight: 700;}

  .wrapsp[class] { white-space: normal;}.nowrapsp[class] {white-space: nowrap;}
  
	.fs12sp[class] { font-size: 1.2rem;}.fs14sp[class] { font-size: 1.4rem;}.fs16sp[class] { font-size: 1.6rem;}.fs18sp[class] { font-size: 1.8rem;}.fs20sp[class] { font-size: 2.0rem;}.fs20sp[class] { font-size: 2.0rem;}.fs22sp[class] { font-size: 2.2rem;}.fs24sp[class] { font-size: 2.4rem;}.fs26sp[class] { font-size: 2.6rem;}.fs28sp[class] { font-size: 2.8rem;}.fs30sp[class] { font-size: 3.0rem;}.fs32sp[class] { font-size: 3.2rem;}.fs34sp[class] { font-size: 3.4rem;}.fs36sp[class] { font-size: 3.6rem;}
  
  .line1-2sp[class] { line-height: 1.2;}.line1-4sp[class] { line-height: 1.4;}.line1-6sp[class] { line-height: 1.6;}.line1-8sp[class] { line-height: 1.8;}
	
	.leftsp[class] { text-align: left;}.centersp[class] { text-align: center;}.rightsp[class] { text-align: right;}
}



/*===== 5. Title Setting =====*/
/* 大見出し */
.headline {
  position: relative;
  margin-bottom: 2rem;
  padding: 2rem;
  border-bottom: 1px solid #ccc;
  font-size: 2.2rem;
  line-height: 1.2;
}
.headline::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 5rem;
  height: 2px;
  background: #57024b;
  content: "";
}

/* 中見出し */
.crosshead {
  margin-bottom: 1rem;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.2;
}
.crosshead::first-letter { font-size: 3rem;}


/* 小見出し */
[class^="subhead"] {
  margin-bottom: 1em;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.2;
}
.subhead {
  display: flex;
  align-items: center;
}
.subhead::after {
  flex: 1;
  height: 1px;
  margin-left: 1rem;
  background: #ebebeb;
  content: "";
}

.subhead_under {
  padding-bottom: 1em;
  border-bottom: 1px solid #ccc;
}

.subhead_fill {
  padding: 1em;
  background: #333;
  color: #fff;
}

/* メインコンテンツ内タイトル */
.main_cont .crosshead,
.main_cont .subhead { color: #a3038e;}
.main_cont .subhead::after  { background-color: #a3038e;}

.main_cont_ttl {
  position: relative;
  margin-bottom: 2rem;
  padding: 1rem 4rem 2rem;
  border-bottom: 1px dotted #a3038e;
  color: #a3038e;
  font-weight: bold;
  font-size: 2.6rem;
  text-align: center;
}
.main_cont_ttl span {
  display: block;
  margin-top: .5rem;
  color: #333;
  font-size: 1.6rem;
}
.main_cont_ttl span b {
  margin: 0 .5rem;
  font-size: 2.4rem;
}
.main_cont_ttl i {
  position: absolute;
  top: -.5rem;
  left: -.5rem;
  color: #fff;
  font-size: 3rem;
}
.main_cont_ttl::before {
  position: absolute;
  top:  -2rem;
  left: -2rem;
  width: 10rem;
  height: 10rem;
  background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #a3038e 50.01%) no-repeat top left / 100% 100%;
  content: "";
}


@media (max-width: 768px) {
  /* 大見出し */
  .headline {
    font-size: 2.0rem;
  }

  /* 中見出し */

  /* 小見出し */
  .subhead_under { padding-bottom: 1rem;}

  .subhead_fill { padding: 1rem;}
  
  /* メインコンテンツ内タイトル */
  .main_cont_ttl {
    padding: 1rem 2rem 2rem;
    font-size: 2rem;
  }
  .main_cont_ttl span {
    margin: 0;
    font-size: 1.4rem;
  }
  .main_cont_ttl span b {
    font-size: 2rem;
  }
  .main_cont_ttl i {
    position: absolute;
    top: -.2rem;
    left: -.2rem;
    font-size: 2rem;
  }
  .main_cont_ttl::before {
    top:  -1rem;
    left: -1rem;
    width: 6rem;
    height: 6rem;
  }
  
}



/*===== 6. Box Layout =====*/
.flex {
  display: flex;
  flex-wrap: wrap;
}
.flexcolumn[class] { flex-direction: column;}
.flexrow[class] { flex-direction: row;}
.flexstart[class] { justify-content: flex-start;}
.flexend[class] { justify-content: flex-end;}
.flexcenter[class] { justify-content: center;}
.flexbetween[class] { justify-content: space-between;}
.flextop[class] { align-items: flex-start;}
.flexmiddle[class] { align-items: center;}
.flexbottom[class] { align-items: flex-end;}
.flexwrap[class] { flex-wrap: wrap;}
.flexnowrap[class] { flex-wrap: nowrap;}
.flexnone[class] { flex: none; }
.flex01[class] { flex: 1; }
.flex02[class] { flex: 2; }
.flex03[class] { flex: 3; }

.flex2,
.flex3,
.flex4,
.flex5 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flex2 > * { width: calc(50% - 20px);}
.flex3 > * { width: calc(33.33% - 15px);}
.flex4 > * { width: calc(25% - 10px);}
.flex5 > * { width: calc(20% - 10px);}

[class^="flex"] > * > img { width: 100%;}


@media (max-width: 768px) {
  .flexcolumnsp[class] { flex-direction: column;}
  .flexrowsp[class] { flex-direction: row;}
  .flexstartsp[class] { justify-content: flex-start;}
  .flexendsp[class] { justify-content: flex-end;}
  .flexcentersp[class] { justify-content: center;}
  .flexbetweensp[class] { justify-content: space-between;}
  .flextopsp[class] { align-items: flex-start;}
  .flexmiddlesp[class] { align-items: center;}
  .flexbottomsp[class] { align-items: flex-end;}
  .flexwrapsp[class] { flex-wrap: wrap;}
  .flexnowrapsp[class] { flex-wrap: nowrap;}
  .flexnonesp[class] { flex: none; }
  .flex01sp[class] { flex: 1; }
  .flex02sp[class] { flex: 2; }
  .flex03sp[class] { flex: 3; }
  
	article .flex2 > *,
	article .flex3 > *,
	article .flex4 > *,
	article .flex5 > * { width: calc(50% - 2.68vw); margin: 0 1.34vw 1.34vw;}
  
  [class^="flex"].single > * { width: 100%;}

  table [class^="flex"].single > * { flex: none;}
}



/*===== 7. Parts Style =====*/
/*-- Video --*/
.video_wrap {
  width: 100%;
  height: 0;
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
}

.video_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}


/*-- Code --*/
.code {
  display: block;
  overflow-x: auto;
  padding: 20px;
  border: 1px solid #cccccc;
  background: #ebebeb;
  word-wrap: break-word;
}

.code pre {
  display: block;
  white-space: normal;
}


@media (max-width: 768px) {
  .code pre { white-space: nowrap;}
}


/*-- Labels(color) --*/
div.labels {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 1rem;
}

div.labels b { margin-right: 1rem;}

b[class^="label_"] {
  display: inline-block;
  min-width: 90px;
  padding: .5rem 2rem;
  border: 2px solid;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  white-space: nowrap;
  align-self: baseline;
}
b[class^="label_"].label_important { border-color: #c00; background: #c00;}
b[class^="label_"].label_info { border-color: #d48917; background: #d48917;}
b[class^="label_"].label_mandatory { border-color: #c00; background: #c00;}
b[class^="label_"].label_jp-en-common {
  background: #fff;
  color: #178d00;
  border-color: #178d00;
}
b[class^="label_"].label_impossible-changed {
  background: #fff;
  color: #c00;
  border-color: #c00;
}
b[class^="label_"].label_publish-web {
  background: #333;
  border-color: #333;
}
[class^="label_"].label_domestic { border-color: #7871b8; background: #7871b8;}
[class^="label_"].label_real { border-color: #dd8047; background: #dd8047;}
[class^="label_"].label_online { border-color: #578279; background: #578279;}

[class^="label_"].label_category1 { border-color: #cc3366; background: #cc3366;}
[class^="label_"].label_category2 { border-color: #0066ff; background: #0066ff;}
[class^="label_"].label_category3 { border-color: #006666; background: #006666;}
[class^="label_"].label_category4 { border-color: #9933cc; background: #9933cc;}
[class^="label_"].label_category5 { border-color: #660066; background: #660066;}
[class^="label_"].label_category6 { border-color: #006699; background: #006699;}
[class^="label_"].label_category7 { border-color: #663300; background: #663300;}
[class^="label_"].label_category8 { border-color: #666600; background: #666600;}
[class^="label_"].label_category9 { border-color: #006600; background: #006600;}
[class^="label_"].label_category10 { border-color: #003399; background: #003399;}
[class^="label_"].label_category11 { border-color: #333366; background: #333366;}
[class^="label_"].label_category12 { border-color: #330099; background: #330099;}
[class^="label_"].label_category13 { border-color: #996600; background: #996600;}
[class^="label_"].label_category14 { border-color: #996666; background: #996666;}
[class^="label_"].label_category15 { border-color: #6666cc; background: #6666cc;}
[class^="label_"].label_category16 { border-color: #0066ff; background: #0066ff;}
[class^="label_"].label_category17 { border-color: #006633; background: #006633;}
[class^="label_"].label_category18 { border-color: #897ef7; background: #897ef7;}



/*-- Text Indent --*/
.indent {
  text-indent: -1em;
  padding-left: 1em;
}


/*-- Boxs --*/
/* Boxs - Limit */
.box_wrapper {
  margin: 0 auto;
  padding: 0 2rem;
}

.box_limit_max {
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 2rem;
}

.box_limit_mid {
  max-width: 1366px;
  margin: 0 auto;
  padding: 0 2rem;
}

.box_limit_min {
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 2rem;
}


/* Boxs - Color */
.box_black { background: #333;}
.box_dark { background: #57024b;}
.box_light { background: #fae1fa;}
.box_gray { background: #ebebeb;}
.box_white { background: #fff;}
.box_pink { background: #ffebec;}


@media (max-width: 768px) {
  .box_wrapper,
  .box_limit_mid,
  .box_limit_min { padding: 0;}
}


/*-- Links --*/
/* Links - Text */
a[target="_blank"] [class^="ico_"] { margin: .25rem;}


/* Links - Boxlink */
.boxlink {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}
.boxlink a {
  width: 100%;
  text-decoration: none;
}
.boxlink a span {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 1em 3rem;
  background: #a3038e;
  color: #fff;
  font-weight: bold;
  text-align: center;
  transition: all .25s;
}
.boxlink a:hover span {
  background: #e03ae0;
  transition: all .25s;
}
.boxlink a:not(.noicon) span::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: .6rem;
  height: .6rem;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translateY(-50%) rotate(-45deg);
  content: "";
  transition: all .25s;
}
.boxlink a:hover span::after {
  right: .5rem;
  transition: all .25s;
}
.boxlink.return + .boxlink a span { border: 4px solid #a3038e;}
.boxlink.return + .boxlink a:hover span { border: 4px solid #e03ae0;}

.boxlink.dropdown a:not(.noicon) span::after { transform: translateY(-50%) rotate(45deg);}
.boxlink.dropdown a:hover span::after { right: 1rem; margin-top: .5rem;}
.boxlink.dropdown.active a:not(.noicon) span::after { transform: translateY(-50%) rotate(-135deg);}
.boxlink.dropdown.active a:hover span::after { margin-top: -.5rem;}

/* Links - Boxlink rows */
.boxlink.rows a span {
  padding: 1.5rem 3rem;
  font-size: 2.0rem;
}
.boxlink.rows a span em { font-size: 1.6rem;}


/* Links - Boxlink emphasis */
.boxlink.emphasis a { padding-bottom: 1.5rem;}
.boxlink.emphasis a span {
  z-index: 2;
  padding: 2rem 4rem;
  background: #ff7733;
  font-size: 2.0rem;
  text-shadow: 0 2px 0 rgba(204,95,41,.5);
  transition: .25s all;
}
.boxlink.emphasis a::before,
.boxlink.emphasis a::after {
  position: absolute;
  bottom: 2px;
  width: 50%;
  height: 1.5rem;
  filter: blur(2px);
  transform:translate3d(0,0,0);
  transition: .25s all;
  content: "";
}
.boxlink.emphasis a::before { left: 0; background: linear-gradient(to top left, rgba(128,60,26,0) 50%, rgba(128,60,26,.25) 50.01%) no-repeat top left / 100% 100%;}
.boxlink.emphasis a::after { right: 0; background: linear-gradient(to top right, rgba(128,60,26,0) 50%, rgba(128,60,26,.25) 50.01%) no-repeat top left / 100% 100%}

.boxlink.emphasis a:hover span { transition: .25s all; background: #d9652b;}
.boxlink.emphasis a:hover::before,
.boxlink.emphasis a:hover::after {
  transition: .25s all;
  opacity: 0;
}


/* Links - Boxlink return */
.boxlink.return a span {
  background: #fff;
  border: 4px solid currentColor;
  color: #a3038e;
}
.boxlink.return a span::after {
  left: 10px;
  border: none;
  border-top: 2px solid currentColor;
  border-left: 2px solid currentColor;
}
.boxlink.return a:hover span { color: #e03ae0;}

.boxlink.return a:hover span::after { left: 5px;}


/* Links - Boxlink color */
.boxlink.red a span { background: #c00;}
.boxlink.red a:hover span { background: #f00;}
.boxlink.gray a span { background: #999;}
.boxlink.gray a:hover span { background: #333;}
.boxlink.black a span { background: #000;}
.boxlink.black a:hover span { background: #333;}

.boxlink.category1 a span { background: #cc3366;}
.boxlink.category1 a:hover span { background: #e52e6b;}
.boxlink.category2 a span { background: #0066ff;}
.boxlink.category2 a:hover span { background: #00a6ff;}
.boxlink.category3 a span { background: #006666;}
.boxlink.category3 a:hover span { background: #008c8c;}
.boxlink.category4 a span { background: #9933cc;}
.boxlink.category4 a:hover span { background: #a82ee6;}
.boxlink.category5 a span { background: #660066;}
.boxlink.category5 a:hover span { background: #8c008c;}
.boxlink.category6 a span { background: #006699;}
.boxlink.category6 a:hover span { background: #0080bf;}
.boxlink.category7 a span { background: #663300;}
.boxlink.category7 a:hover span { background: #8c4600;}
.boxlink.category8 a span { background: #666600;}
.boxlink.category8 a:hover span { background: #8c8c00;}
.boxlink.category9 a span { background: #006600;}
.boxlink.category9 a:hover span { background: #008c00;}
.boxlink.category10 a span { background: #003399;}
.boxlink.category10 a:hover span { background: #0040bf;}
.boxlink.category11 a span { background: #333366;}
.boxlink.category11 a:hover span { background: #393980;}
.boxlink.category12 a span { background: #330099;}
.boxlink.category12 a:hover span { background: #4000bf;}
.boxlink.category13 a span { background: #996600;}
.boxlink.category13 a:hover span { background: #bf8000;}
.boxlink.category14 a span { background: #996666;}
.boxlink.category14 a:hover span { background: #b36f6f;}
.boxlink.category15 a span { background: #6666cc;}
.boxlink.category15 a:hover span { background: #6767e5;}
.boxlink.category16 a span { background: #0066ff;}
.boxlink.category16 a:hover span { background: #00a6ff;}
.boxlink.category17 a span { background: #006633;}
.boxlink.category17 a:hover span { background: #008c46;}
.boxlink.category18 a span { background: #897ef7;}
.boxlink.category18 a:hover span { background: #7063ff;}


/* Links - Boxlink item */
a.boxlinkitem {
  display: block;
  position: relative;
  color: currentColor;
  text-decoration: none;
  border: 1px solid transparent;
}

a.boxlinkitem:hover { background: #fff; border: 1px solid #ccc; transition: border .25s;}
a.boxlinkitem:hover img { opacity: 1;}

a.boxlinkitem::before,
a.boxlinkitem::after,
a.boxlinkitem > div::before,
a.boxlinkitem > div::after {
  position: absolute;
  background: #000;
  content: "";
  margin: -1px;
  opacity: 0;
  transition: all .3s;
}

a.boxlinkitem::before,
a.boxlinkitem::after { width: calc(25% + 2px); height: 1px;}
a.boxlinkitem > div::before,
a.boxlinkitem > div::after { width: 1px; height: calc(25% + 2px);}

a.boxlinkitem::before,
a.boxlinkitem > div::before { top: 0; left: 0;}
a.boxlinkitem::after,
a.boxlinkitem > div::after { bottom: 0; right: 0;}

a.boxlinkitem:hover::before,
a.boxlinkitem:hover::after { width: calc(100% + 2px); opacity: 1;}
a.boxlinkitem:hover > div::before,
a.boxlinkitem:hover > div::after { height: calc(100% + 2px); opacity: 1;}


@media (max-width: 768px) {
  /* Links - Boxlink */
  .boxlink a:hover span {
    background: #a3038e;
    transition: none;
  }
  .boxlink a span::after {
    right: 2.67vw;
    border-width: .54vw;
  }
  .boxlink a:not(.noicon) span::after,
  .boxlink a:hover span::after {
    right: 2.67vw;
    transition: none;
  }
  .boxlink.return + .boxlink a:hover span { border: 4px solid #a3038e;}
  
  .boxlink.dropdown a:hover span::after { margin-top: 0;}
  .boxlink.dropdown.active a:hover span::after { margin-top: 0;}

  
  /* Links - Boxlink rows */
  .boxlink.rows a span {
    font-size: 1.8rem;
  }
  .boxlink.rows a span em { font-size: 1.4rem;}
  
  /* Links - Boxlink emphasis */
  .boxlink.emphasis a span {
    padding: 1.5rem 3rem;
    font-size: 1.8rem;
  }
  
  /* Links - Boxlink-Return */
  .boxlink.return a span::after {
    left: 2.67vw;
    border-width: .54vw;
  }
  .boxlink.return a:hover span {
    background: #fff;
    color: #a3038e;
  }
  .boxlink.return a:hover span::after { left: 2.67vw;}
  
  /* Links - Boxlink color */
  .boxlink.red a:hover span { background: #c00;}
  .boxlink.gray a:hover span { background: #999;}
  .boxlink.black a:hover span { background: #000;}

  .boxlink.category1 a:hover span { background: #cc3366;}
  .boxlink.category2 a:hover span { background: #0066ff;}
  .boxlink.category3 a:hover span { background: #006666;}
  .boxlink.category4 a:hover span { background: #9933cc;}
  .boxlink.category5 a:hover span { background: #660066;}
  .boxlink.category6 a:hover span { background: #006699;}
  .boxlink.category7 a:hover span { background: #663300;}
  .boxlink.category8 a:hover span { background: #666600;}
  .boxlink.category9 a:hover span { background: #006600;}
  .boxlink.category10 a:hover span { background: #003399;}
  .boxlink.category11 a:hover span { background: #333366;}
  .boxlink.category12 a:hover span { background: #330099;}
  .boxlink.category13 a:hover span { background: #996600;}
  .boxlink.category14 a:hover span { background: #996666;}
  .boxlink.category15 a:hover span { background: #6666cc;}
  .boxlink.category16 a:hover span { background: #0066ff;}
  .boxlink.category17 a:hover span { background: #006633;}
  .boxlink.category18 a:hover span { background: #897ef7;}
  
  /* Links - Boxlink silver */
  .boxlink.silver a { transition: none;}

  .boxlink.silver a span {
    padding: 1.5rem 4.5rem;
    font-size: 1.6rem;
  }
  
  .boxlink.silver a:hover { background-position: inherit;}
  .boxlink.silver a:hover span {
    background: none;
    color: #fff;
    transition: none;
    mix-blend-mode: difference;
  }
  
  /* Links - Boxlink item */
  a.boxlinkitem { border: none;}

  a.boxlinkitem:hover { background: none; border: none; transition: none;}
  a.boxlinkitem:hover img { opacity: 1;}
  
  a.boxlinkitem::before,
  a.boxlinkitem::after,
  a.boxlinkitem > div::before,
  a.boxlinkitem > div::after { display: none;}
}


/*-- Table --*/
/* Table - basic */
table.table_basic {
  width: 100%;
  border: 1px solid #57024b;
  background: #fff;
}

table.table_basic tr { border-bottom: 1px solid #57024b;}

table.table_basic th {
  padding: 1.5rem;
  background: #57024b;
  color: #fff;
  font-weight: bold;
  border-right: 1px dotted #fff;
  border-bottom: 1px solid #fff;
  vertical-align: middle;
}
table.table_basic tr:last-child th,
table.table_basic tr:last-child td { border-bottom: none;}

table.table_basic td {
  padding: 1.5rem;
  font-size: 1.6rem;
  border-right: 1px dotted #57024b;
  text-align: center;
  vertical-align: middle;
}


/* Table - itemlist */
table.table_list {
  width: 100%;
  background: #fff;
  border: 2px solid #57024b;
}
table.table_list caption { text-align: right;}
table.table_list caption span {
  display: inline-block;
  padding: 1rem 1.5rem .5rem;
  background: #57024b;
  color: #fff;
  font-weight: bold;
}
table.table_list caption span b { font-size: 2.4rem;}

table.table_list tr { border-bottom: 1px solid #fae1fa;}

table.table_list th {
  padding: 15px;
  background: #a3038e;
  color: #fff;
  font-weight: bold;
  border-right: 1px solid #fae1fa;
  vertical-align: middle;
}
table.table_list th:last-child,
table.table_list td:last-child { border: none;}

table.table_list td {
  padding: 15px;
  font-size: 1.6rem;
  border-right: 1px solid #fae1fa;
  text-align: center;
  vertical-align: middle;
}
table.table_list td:first-child { font-weight: bold;}

table.table_list.product { margin-top: -2rem;}
table.table_list.product th:nth-of-type(1),
table.table_list.product th:nth-of-type(3){ width: 10%;}
table.table_list.product th:nth-of-type(2){ width: 55%;}
table.table_list.product th:nth-of-type(4){ width: 20%;}
table.table_list.product th:nth-of-type(5){ min-width: 150px;}

table.table_list.product td:nth-of-type(2) { text-align: left;}


@media (max-width: 768px){
  table th.blocksp[class],
  table td.blocksp[class] {
    display: block;
    width: 100% !important;
  }
  
  /* Table - basic */
  table.table_basic {
    position: relative;
  }
  table.table_basic::after {
    position: absolute;
    top: 0;
    left: 100%;
    width: 2.67vw;
    height: 2.67vw;
    content: "";
  }
  
  table.table_basic th,
  table.table_basic td {
    padding: 2.67vw;
    font-size: 1.4rem;
    text-align: center;
  }
  
  
  /* Table - itemlist */
  table.table_list caption { text-align: left;}
  table.table_list caption span b { font-size: 1.8rem;}
  
  table.table_list th,
  table.table_list td {
    padding: 2.67vw;
    font-size: 1.4rem;
  }
  
  table.table_list .boxlink a { white-space: nowrap;}
  table.table_list .boxlink a::after {
    right: 2.67vw;
    width: 1.34vw;
    height: 2.67vw;
  }
  
  table.table_list.product { margin-top: 1rem;}
  table.table_list.product th:nth-of-type(1){ width: 1%;}
  table.table_list.product th:nth-of-type(2){ width: 29%;}
  table.table_list.product th:nth-of-type(3){ width: 22%;}
  table.table_list.product th:nth-of-type(4){ width: 24%;}
  table.table_list.product th:nth-of-type(5){ width: 24%; min-width: auto;}


  /* 領域拡張 */
  div.table_wrap { overflow-x: auto;}
  div.table_wrap table { table-layout: fixed;}

  div.table_wrap table th,
  div.table_wrap table td { width: 40vw;}
}


/*-- List --*/
/* List - Info */
ul.list_info li:not(:last-child) { margin-bottom: 1rem;}

ul.list_info a {
  display: block;
  padding: 1rem;
  background: #fff;
  color: currentColor;
  text-decoration: none;
  transition: .25s all;
}
ul.list_info.gray a {
  border: 1px solid #ccc;
  background: #ebebeb;
  color: #333;
}

ul.list_info a:hover {
  background: #333;
  color: #fff;
  transition: .25s all;
}
ul.list_links a:hover {
  border: 1px solid #333;
  background: #333;
  color: #fff;
}

/* List - links */
ul.list_links li:not(:last-child) { margin-bottom: 1rem;}
ul.list_links a {
  display: block;
  padding: 1.8rem 1.5rem;
  border: 1px solid #ccc;
  background: #ebebeb;
  color: #333;
  font-weight: bold;
  font-size: 1.8rem;
  text-decoration: none;
  transition: .25s all;
}
ul.list_links a:hover {
  border: 1px solid #333;
  background: #333;
  color: #fff;
  transition: .25s all;
}


/* List - switch */
ul.list_switch li {
	display: flex;
	align-items: center;
	justify-content: space-between;
  margin: 0 auto;
	padding: 2rem;
	background: rgba(255,255,255,.75);
}
ul.list_switch li:not(:last-child) { border-bottom: 1px dotted #a3038e;}

ul.list_switch li p {
	flex: 1;
	display: flex;
	flex-flow: column wrap;
	margin-right: 2rem;
	line-height: 2;
}


/* List - vertical */
ul.list_ver {
  display: flex;
  flex-direction: column;
}

ul.list_ver li { min-height: 0%;}
ul.list_ver li:not(:last-child) { margin-bottom: 15px;}

/* List - dots */
ul.list_dots > li {
  position: relative;
  padding-left: 1.5rem;
}
ul.list_dots > li:not(:last-child) { margin-bottom: 1rem;}
ul.list_dots > li::before {
  position: absolute;
  top: 1rem;
  left: 0;
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  background: #57024b;
  transform: translateY(-50%);
  content: "";
}

/* List - circle */
ul.list_circle > li {
  position: relative;
  padding-left: 2rem;
}
ul.list_circle > li:not(:last-child) { margin-bottom: 1rem;}
ul.list_circle > li::before {
  position: absolute;
  top: .9rem;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  box-shadow: 0 -1px 1px 0px #fae1fa inset, 0px 1px 1px 1px rgba(163,99,3,0.5) inset;
  border-radius: 50%;
  background: #fff;
  transform: translateY(-50%);
  content: "";
}

/* List - definition */
ul.list_def > li { display: flex;}
ul.list_def > li:not(:last-child) { margin-bottom: 10px;}
ul.list_def > li > :first-child {
  display: flex;
  align-items: center;
  width: 170px;
  padding-left: 10px;
  border-left: 5px solid #333;
  background: #f1f1f1;
  font-weight: 500;
  font-size: 1.6rem;
  margin-right: 5px;
  white-space: nowrap;
}
ul.list_def > li > :first-child + * { flex: 1;}


/* List - cards */
ul.list_cards {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1rem;
}

ul.list_cards > * {
  width: calc(25% - 2rem);
  margin: 0 1rem 2rem;
}

ul.list_cards a {
  height: 100%;
  padding: 2px;
  border: 1px solid #ccc;
  background: rgba(255,255,255,.5);
}

ul.list_cards a dd {
  padding: 1.5rem;
  font-weight: bold;
}


/* List - form */
ul.list_form { 
  margin-bottom: 2.5rem;
  border: 1px solid #a3038e;
  background: #fff;
}

ul.list_form > li dl,
ul.list_form > li dd li { padding: 1.5rem 1rem;}
ul.list_form > li:not(:last-of-type) dl { border-bottom: 1px solid #a3038e;}

ul.list_form > li dt {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  padding-left: 1rem;
  border-left: 4px solid #a3038e;
  color: #a3038e;
  font-weight: bold;
  font-size: 1.8rem;
}
ul.list_form > li dt div {
  margin-left: auto;
  padding-left: 5px;
  text-align: right;
}
ul.list_form > li dt div > * { margin: 0 0 5px 5px;}
ul.list_form > li dt div > *:not(:last-child) { margin: 0 0 5px;}

ul.list_form > li dd {
  padding-left: calc(1rem + 4px);
}

ul.list_form .subhead_fill { border: 1px solid #fff;}

/*
ul.list_form p iframe {
  width: 100%;
  height: 100%;
}

ul.list_form p a {
  color: #b49337;
  text-decoration: underline;
}
ul.list_form p a:hover { color: #000;}
*/

/* Form Input File
ul.list_form li.input-file li {
  border: none;
  box-sizing: content-box;
}

ul.list_form li.input-file-child {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  text-align: left;
}
ul.list_form li.input-file-child > img { flex-shrink: 0;}
ul.list_form li.input-file-child > img:first-child { max-width: 320px;}

ul.list_form li.input-file-child li {
  border: none;
}

ul.list_form li.input-file-child p {
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
}

ul.list_form li.input-file-child input[type="file"] { width: 100%;}

ul.list_form li.input-file-child label.choice {
	width:auto;
	margin: 0;
	padding:0;
	background:none;
	color:#333;
  text-align: left;
}
ul.list_form li.input-file-child label:hover {
  opacity: 0.6;
}

ul.list_form li.input-file-child label.changed::after {
  content: "";
}
ul.list_form li.input-file-child label:hover::after {
  opacity: 1;
  color: #000;
}

ul.list_form li.input-file input[type="text"] {
  width: 100%;
}

ul.list_form li.input-file-child.file-upload {
  flex-direction: column;
  padding: 10px;
}
ul.list_form li.input-file-child.file-upload img {
  max-width: 200px;
  margin-top: 10px;
  margin-bottom: 10px;
}
ul.list_form li.input-file-child.file-upload p {
  width: 100%;
  margin-bottom: 15px;
}

ul.list_form li.input-file-child.file-upload label {
  background: #fff;
  color: #000;
  border: 1px solid #000;
}
 */

@media (max-width: 768px) {
  /* List - Info */
  ul.list_info a:hover {
    background: #fff;
    color: #333;
    transition: none;
  }
  ul.list_info.gray a:hover {
    border-color: #ccc;
    background-color: #ebebeb;
    color: #333;
  }
  
  /* List - links */
  ul.list_links a {
    padding: 1.5rem;
    font-size: 1.6rem;
  }
  ul.list_links a:hover {
    border-color: #ccc;
    background-color: #ebebeb;
    color: #333;
  }
  
  /* List - switch */
	ul.list_switch li {
		align-items: flex-start;
		padding: 1.5rem;
	}

  /* List - vertical */
  ul.list_ver li:not(:last-child) { margin-bottom: 2.67vw;}

  /* List - dots */
  ul.list_dots > li { padding-left: 2.67vw;}
  ul.list_dots > li:not(:last-child) { margin-bottom: 2.67vw;}
  ul.list_dots > li::before {
    width: 1.6vw;
    height: 1.6vw;
  }

  /* List - circle */
  ul.list_circle > li:not(:last-child) { margin-bottom: 1rem;}
  
  /* List - definition */
  ul.list_def > li { display: block;}
  ul.list_def > li:not(:last-child) { margin-bottom: 2.67vw;}
  ul.list_def > li > :first-child {
    width: auto;
    padding: 2.67vw;
    margin: 0 0 1.34vw;
    white-space: normal;
  }
  ul.list_def > li > :first-child + * { flex: 1;}
  
  /* List - cards */
  ul.list_cards {
    display: flex;
    margin: 0 -.5rem;
  }

  ul.list_cards > * {
    width: calc(50% - 1rem);
    margin: 0 .5rem 1rem;
  }
  
  ul.list_cards a:hover {
    border: 1px solid #ccc;
    background: rgba(255,255,255,.5);
  }

  ul.list_cards a dd { padding: 1rem;}

  /* List - form */
  ul.list_form > li dt {
    flex-direction: column;
    align-items: flex-start;
    font-size: 1.6rem;
  }
  ul.list_form > li dt div { margin: .5rem 0 0; padding: 0;}
  ul.list_form > li dt div > * { margin: 0 0 5px;}

  ul.list_form > li dd {
    padding-left: 0;
    font-size: 1.4rem;
  }
}


/*-- Pager --*/
div.pager {
  padding: 0 50px;
  text-align: center;
}

div.pager > p {
  font-size: 2.0rem;
}

div.pager > p span {
  margin-left: 10px;
  font-size: 1.4rem;
}

div.pager div,
div.pager div ol {
  display: flex;
  align-items: center;
  justify-content: center;
}

div.pager div > * { margin: 0 10px;}

div.pager div > a {
  display: flex;
  position: relative;
  width: 30px;
  height: 30px;
  border: 1px solid #000;
}

div.pager div > a:hover {
  background: #000;
  color: #fff;
  opacity: 1;
}

div.pager div > a::before,
div.pager div > a::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  content: "";
}
div.pager div > a.prev::before,
div.pager div > a.prev::after {
  border-left: 2px solid #000;
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

div.pager div > a.next::before,
div.pager div > a.next::after {
  border-right: 2px solid #000;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

div.pager div > a.prev::after { margin-left: 6px;}
div.pager div > a.next::after { margin-left: -6px;}

div.pager div > a:hover::before,
div.pager div > a:hover::after { border-color: #fff;}

div.pager div li { margin: 0 5px;}

div.pager div li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #000;
  border-radius: 50%;
  color: #333;
  text-decoration: none;
}
div.pager div li a.active,
div.pager div li a:hover {
  background: #000;
  color: #fff;
}


@media (max-width: 768px) {
  div.pager { padding: 0 2.67vw;}
  
  div.pager p { font-size: 1.6rem;}

  div.pager p span { margin-left: 2.67vw;}
  
  div.pager div > * { margin: 0 1.34vw;}

  div.pager div > a {
    width: 8vw;
    height: 8vw;
    margin: 0;
  }

  div.pager div > a:hover { background: inherit;}

  div.pager div > a::before,
  div.pager div > a::after {
    width: 1.6vw;
    height: 1.6vw;
  }
  div.pager div > a:hover::before,
  div.pager div > a:hover::after { border-color: #000;}

  div.pager div > a.prev::after { margin-left: 1.07vw;}
  div.pager div > a.next::after { margin-left: -1.07vw;}
  
  div.pager div li { margin: 0 1.34vw;}

  div.pager div li a {
    width: 9.34vw;
    height: 9.34vw;
  }
  div.pager div li a:hover {
    border-color: #000;
    background: transparent;
    color: #333;
  }
  div.pager div li a.active {
    background: #000;
    color: #fff;
  }
}


/*===== 8. Each Section Style =====*/
/* Information */
#information_detail h5 {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  font-size: 2.0rem;
  line-height: 1.2;
}

#information_detail h6 {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 10px;
  font-size: 1.8rem;
}
#information_detail h6::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 1px;
  background: #666;
  content: "";
}

#information_detail p {
  line-height: 1.8;
  margin-bottom: 2rem;
}

#information_detail p strong { font-weight: bold;}

#information_detail p em { font-style: italic;}

#information_detail figure { margin: 0 auto 2rem;}

#information_detail td { vertical-align: middle;}


/* Terms */
main > #cont aside#terms {
  overflow-y: scroll;
  width: 100%;
  max-width: none;
  height: 25rem;
  margin: 0 0 3rem;
  padding: 2rem;
  border: 1px solid #ccc;
  background: #ebebeb;
}

main > #cont aside#terms h2 {
  margin-bottom: 2rem;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.2;
}


@media (max-width: 768px) {
  /* Information */
  #information_detail h5 {
    padding-bottom: 1rem;
    font-size: 1.6rem;
  }

  #information_detail h6 {
    margin-bottom: 4vw;
    padding-bottom: 2.67vw;
    font-size: 1.6rem;
  }
  #information_detail h6::after {
    width: 5.34vw;
  }
  
  /* Terms */
  main > #cont aside#terms {
    height: 60vw;
    margin: 0 0 5.34vw;
    padding: 2.67vw;
  }

  main > #cont aside#terms h2 {
    margin-bottom: 4vw;
    font-size: 1.8rem;
  }  
}