/* #kv-under
============================================== */
#kv-under{background-color: var(--cam02-color); line-height: 1;}
#kv-under .btm-campagin{ margin: 0 auto;}
#kv-under .btm-campagin span{ height: auto; aspect-ratio:1000/50}

@media (min-width:769px) {
.btm-campagin .btm-campagin-inner, .btm-campagin span{height: 130px;}
#kv-under .btm-campagin span{ width: min(52%,1000px);}
}
@media (max-width:768.98px){
#content section{ width: 93.3%;}
#content section#campaign02 .container{ padding: min(26.2vw,200px) 3.5%; width: 90.6%; border-radius: min(6.6vw,25px);}
#content section:has(.container){width: 100%;}

.btm-campagin .btm-campagin-inner, .btm-campagin span{height: min(19.23vw,150px);}
#kv-under .btm-campagin .btm-campagin-inner{width: 718.39vw;}
#kv-under .btm-campagin span{ width: 234.13vw;}
}

section,.container{ width: 96%; max-width: 1200px;}

/* #campaign02
============================================== */
#campaign02{ color: var(--cam01-color); text-align: center;
 > .container{background-color: #fff;}
 .cam-logo{ height: auto; aspect-ratio:900/369;}
}
#campaign02 .bgObj{ height: 100%;}
.app-ttl{ margin: 0 auto; display: flex; align-items: center; justify-content: center; background-color: var(--cam02-color); line-height: 1; color: #fff; font-weight: 900;
img{ aspect-ratio:370/67; height: auto; margin-inline: auto;}
}
.title-02,#campaign02 .title-nwm-limit,#campaign02 .lead-cam{font-weight: 700;}
.lead-cam{ font-feature-settings: 'palt';}
#campaign02 .intro-end{ font-weight: 900; text-align: center}
#campaign02 .step-notice .point{ color: #C92A30; font-weight: 900}

.ttl_tokuten01{ margin: 0 auto;}

#flowSec .btn-sm.btn-cs{ justify-content: center;}

/* タブレット・PC */
@media (min-width:769px) {
  #campaign02{ padding-top: 190px; padding-bottom: 250px;
    > .container{ padding: 90px 52px; border-radius: 70px;}
    .cam-logo{ margin: 0 20px 64px; width: min(81%,900px);}
  }
  #campaign02 .bgObj{ background-image: url("../images/cam02-bg-obj-pc.svg");}
  .title-02{ font-size: 40px; margin-bottom: 70px; line-height: 1.75;}
  .lead-cam{ font-size: 25px;}
  .bnr-present{margin-top: 112px; margin-bottom: 30px;}

  .app-ttl{width: 100%; height: 100px; margin-bottom: 24px; border-radius: 50px; font-size: 50px;
  img{ width: 370px;}
  }
  #campaign02 .title-nwm-limit{font-size: 30px; margin-bottom: 82px;}
  #campaign02 .lead-cam{ font-size: 25px; margin-bottom: 48px;}

	#campaign02 .intro-end{ font-size: 50px; line-height: 1.4; margin-bottom: 82px;}
	.intro-txt{ line-height: 2}
	#campaign02 .step-notice .point{ line-height: 2; margin-top: 37px;}

.ttl_tokuten01{width: 923px; height: 180px; margin-bottom: 30px;} 

}
/* スマホ */
@media (max-width:768.98px){
#campaign02{ padding-top: min(18.6vw,140px); padding-bottom: min(32.8vw,246px); margin-bottom: 0;}
#campaign02 .bgObj{ background-image: url("../images/cam02-bg-obj-sp.svg");}

.cam-logo{ margin-bottom: min(20vw,150px);}
.cam-ttl{ margin-bottom: min(21.13vw,166px); width: 100%;}

.app-ttl{ height: min(13.3vw,100px); border-radius:min(6.6vw,50px); font-size: min(6.6vw,50px);}
#campaign02 .title-nwm-no{ margin-bottom: min(3.2vw,24px);}
#campaign02 .title-nwm-no img{ width: min(49.3vw,370px);}

#campaign02 .title-nwm-limit{font-size: min(4vw,30px); margin-bottom: min(17.3vw,130px);}
#campaign02 .title-02{ font-size: min(5.3vw,40px); line-height: 1.75; margin-bottom: 1.75em;}
#campaign02 .lead-cam{font-feature-settings: "palt"; margin-bottom: 2.3em;}

#campaign02 .intro-end{ font-size: 6vw; line-height: 1.5; margin-bottom: 8vw}
#campaign02 .dl-list dt{width: 35%; font-size: 3vw}
#campaign02 .dl-list dd{width: 64%; font-feature-settings: "palt"; font-size: 3.3vw; padding: 0.5em 0;}
#campaign02 .step-notice{font-size: 3.3vw;}
#campaign02 .step-notice .point{ line-height: 1.8; margin-top: 3.9vw; font-feature-settings: "palt";}
#flowSec .btn-sm{margin-top: min(9.3vw,70px); font-size: min(4.6vw,36px); padding-top: 0.8em; padding-bottom: 0.8em; line-height: 1.42;}
#flowSec .btn-sm:before{ right: min(4vw,30px); height: min(3.2vw,24px); width : min(1.7vw,13px); background-size: cover;}

.bnr-present{ margin-top: min(14.6vw,110px); margin-bottom: min(13.3vw,100px);}
.ttl_tokuten01{ margin-bottom: min(6.6vw,50px);}
}


/* #productSec
============================================== */
.bg-03{ background-color: #fff; position: relative; z-index: 2;}
.ttl-txt{ padding: 0.5em; font-weight: 900; text-align: center; line-height: 1; position: relative;}
.ttl-txt span{ position: relative; z-index: 3}
.ttl-txt::before,.ttl-txt::after{ content: ""; display: block; width: 100%; height: 100%; position: absolute;}
.ttl-txt::before{ border: 1px solid #000; top: 0; left: 0; z-index: 2;}
.ttl-txt::after{ background: #FCCF6E; top: min(0.8vw,6px); left: min(0.8vw,6px); z-index: 1;}
#productSec{ text-align: center;}
#productSec .ttl-product{ margin: 0 auto}
#productSec h3{ font-weight: 900; width: auto;}

.product-visual,.btn-sm{margin-left: auto; margin-right: auto;}
.lineup{display: flex; flex-wrap: wrap;}
.lineup .small{font-size: 500;}
#productSec .btn-sm:not(.btn-cs,.btn-entry),
#storeSec .btn-sm:not(.btn-cs,.btn-entry){ text-align: left; border-color: #000; background-color: #fff; color: #000;}
#productSec .btn-sm:not(.btn-entry):hover,
#storeSec .btn-sm:not(.btn-entry):hover{background-color: #FE5462; border-color: #FE5462; color: #fff;}
#productSec .btn-sm:not(.btn-cs,.btn-entry):before,
#storeSec .btn-sm:not(.btn-cs,.btn-entry):before{display: none;}
#productSec .btn-sm .icn-arrow,
#storeSec .btn-sm .icn-arrow{position: absolute; top: 0; bottom: 0; margin: auto 0;}
#productSec .btn-sm .icn-arrow .cls-1,
#storeSec .btn-sm .icn-arrow .cls-1{fill:#FE5462;}
#productSec .btn-sm:hover .icn-arrow .cls-1,.btn-sm:hover .icn-pdf,
#storeSec .btn-sm:hover .icn-arrow .cls-1,.btn-sm:hover .icn-pdf{fill:#fff;}

/* タブレット・PC */
@media (min-width:769px) {
  .ttl-txt{ font-size: 50px; margin-bottom: 82px;}
  #productSec{padding-top: 250px; position: relative;}
  #productSec .app-ttl{ margin-bottom: 82px;}

  #productSec h3{ font-size: 40px; margin-bottom: 140px;}
  #productSec h3 small{ font-size: 25px;}
  #productSec h4{ font-size: 30px; margin-bottom: 26px;}
	.product-visual{ width: 1200px; margin-bottom: 140px;}
		
  .lineup{margin-top: 100px; justify-content: center; justify-content: space-between;}
  .lineup .lineup-item{width: min(47.3%,568px); font-size: 14px;}
  .lineup .lineup-item:last-child {width: min(33.5%, 402px); margin: 0 auto;}
  .lineup .lineup-item p{margin-top: 10px;}
		
	.btn-sm{ margin-bottom: 26px; font-size: 25px; width: 700px;}
	.btn-sm .icn-pdf{ width: 38px; height: 50px; margin-left: 22px;}
  .btn-sm .icn-arrow {width: 14px; height: 24px; right: 14px;}
  .btn-sm.btn-store{margin-bottom: 100px;}
		
  #productSec .small{font-size: 14px;}

  .link-productList{display: flex; justify-content: space-between;}
  .link-productList li{width: 49%;}
  .link-productList .btn-sm{width: 100%; font-size: 22px;}
}
/* スマホ */
@media (max-width:768.98px){
  .ttl-txt{ font-size: min(6.6vw,50px); margin-bottom: min(8.5vw,64px);}
  #productSec{padding: 11vw 0 16vw;}
  #productSec h2.ttl-product{width: 42.8vw; height: 8vw;}
  #productSec h3,#productSec h4{margin: 5.5vw auto 8vw; }
  #productSec h3{ font-size: min(5.3vw,40px);}
  #storeSec h3,#productSec h4{ font-size: min(4vw,30px);}
  #productSec h4{ margin-bottom: min(4.8vw,36px); font-feature-settings: 'palt';}
  .product-visual{ margin-bottom: min(9.3vw,70px);}
  .lineup{ justify-content: space-between;}
  .lineup .lineup-item{width: 100%; font-size: 3vw; margin-bottom: min(3.4vw,26px);}
  .lineup .lineup-item:last-child{width: 91.7%; margin: 0 auto;}
  .lineup-apparel .txt-en{margin-top: 1em;}

	.btn-sm{ margin: 0 auto 2.8vw; padding-left: 1em; padding-right: 1em;}
  #productSec .btn-sm,#storeSec .btn-sm{ font-size: min(5.3vw,40px); letter-spacing: 0;}
  .btn-sm.btn-cs{ font-size: min(3.4vw,26px);}
	.btn-sm .icn-pdf{ width: min(6.6vw,50px); height: min(8.5vw,64px); margin-left: min(3.2vw,24px);}
  .btn-sm .icn-arrow {width: min(1.86vw,14px); height: min(3.2vw,24px); right: min(1.86vw,14px);}

  .btn-store.btn-sm{ padding-top: 0.75em; padding-bottom: 0.75em;}
  #productSec .small{font-size: min(2.93vw,22px); font-weight: 400; text-align: center; text-indent: -1em; margin-left: 1em;margin-bottom: min(13.3vw,100px);}
  .movie { width: 100%;}

  .btn-entry .go{top: min(1.3vw,10px); bottom: inherit; margin: 0;}
}

/* #storeSec
============================================== */
#storeSec{text-align: center;}
#storeSec .title-store{margin: 0 auto;}
#storeSec h3,#productSec h4{ font-weight: 900;}
.store-list{display: flex; flex-wrap: wrap; justify-content: space-between;}
.store-list li a{ display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 1em 0.5em; background-color: #fff; border: 1px solid #000; font-weight: 700; height: 100%; text-decoration: none; transition: transform 0.5s; position: relative;}
.store-list li a[tabindex="-1"]{ pointer-events: none; opacity: 0.7;}

.store-list li a:not([tabindex="-1"]):after{
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  border-top: 2px solid #FE5462;
  border-right: 2px solid #FE5462;
  transform: rotate(45deg);
}

.store-list li a small{display: block; font-weight: 400;}
.store-list li a:hover{ text-decoration: none; box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px; transform: scale(0.97); opacity: 1}

/* タブレット・PC */
@media (min-width:769px) {
  #storeSec{padding: 250px 0;}
  #storeSec .title-store{width: 462px; height: 58px;}
  #storeSec h3{ font-size: 25px; margin-bottom: 42px;}
	.store-list{margin: 0 auto 112px;}
	.store-list:after{content: ""; display: block; width: 32%; height: 1px;}
  .store-list li{width: 24.5%;}
  .store-list li a{ font-size: 20px;}
  .store-list li a:after{width: 8px; height: 8px; right: 10px; margin-top: -4px;}
  .store-list li small{ font-size: 14px;}
}
/* スマホ */
@media (max-width:768.98px){
  #storeSec{padding-bottom: min(19.2vw,144px);}
  #storeSec .app-ttl{ margin-bottom: min(13.3vw,100px);}
	#storeSec h3{ margin-bottom:min(8.8vw,66px);}
  #productSec h4{ font-size: min(4vw,30px); margin-bottom: min(3.2vw,24px);}
  #productSec h3 small{ font-size: min(3.3vw,25px);}

  #storeSec .btn-sm:not(.btn-entry){margin-bottom: min(12.5vw,94px);}
	.store-list{margin-bottom: 13.4vw}
  .store-list li{width: 48.5%; margin-bottom: 2.9vw;}
  .store-list li a{ font-size: 2.8vw;}
  .store-list li a:after{width: min(1.86vw,14px); height: min(1.86vw,14px); right: min(1.86vw,14px); margin-top: min(-1.6vw,12px);}
  .store-list li small{ font-size: 2.5vw}
}

/* #applySec
============================================== */
.apply-bg{background: #8FBAE6;}
#applySec{ background: #fff; text-align: center; overflow: hidden;}
#applySec h2{ margin: 0;}
#applySec .dl-list dt{ background-color: var(--cam02-color); color: #fff;}
#applySec .dl-list,.apply-flow p,.attention{text-align: left;}

#campaginSec .dl-list dt{ font-weight: 700;}
#campaginSec .dl-list dd{ font-weight: 500;}
#campaginSec .dl-list dd.full{width: 100%;}
#campaginSec .dl-list dd strong{ font-weight: 900;}
#campaginSec .dl-list dd strong.primary{ color: var(--cam02-color);}
#campaginSec .dl-list dd b{text-decoration: underline;}
/*
#applySec .dl-list{display: block;}
#applySec .dl-list dt{display: inline-block; background: #ED8362;}
*/
#applySec .dl-list dd li{text-indent: -1.3em; margin-left: 1.3em; line-height: 1.5}
#applySec .dl-list dd li + li{ margin-top: 1em;}
.dl-list li p{text-indent: 0;}

.apply-flow .apply-flow-step{position: relative;}
.apply-flow-step + .apply-flow-step:before{content: ""; display: block; line-height: 0;}

.apply-flow-step h3 figure{margin: 0;}

/* .attention */
.attention{background: #e1e1e1; display: flex; justify-content: space-between; align-items: center;}
.attention-img{ mask-image: url(../images/icn_attention.svg); mask-repeat: no-repeat; mask-position: 0 0; background-color: var(--cam02-color); aspect-ratio:77/67}
.attention .notice{ flex: 1;}
.attention .notice li + li{margin-top: 0.5em;}

/* .screenshot */
.screenshot{ border: 2px solid #000;}
.screenshot h3{text-align: center; font-weight: 900; border-bottom: 1px solid #000; padding-bottom: 1em;}
.screenshot-list{ text-align: left; font-weight: 500;}
.screenshot-list li{ text-indent: -1em; margin-left: 1em;}

/* タブレット・PC */
@media (min-width:769px) {
  .apply-bg{ padding: 98px 0 100px;}
  #applySec{ max-width: 1200px; margin-bottom: 102px; border-radius: 40px; padding: 50px 45px 100px;}
  #applySec h2{ font-size: 50px;}
  .apply-inner{ padding: 90px 48px 0;}

#campaginSec .btn-cs{min-height: 100px; display: flex;}

  /* .dl-list */
  #applySec .dl-list dt, #applySec .dl-list dd{ font-size: 20px;}
  #applySec .dl-list dt{ margin-bottom: 0.5em; padding: 8px 1.5em; border-radius: 36px;}
  #applySec .dl-list dt.nofull-dt,#applySec .dl-list dd{margin-bottom: 60px;}
  #applySec .dl-list dd:last-child{margin-bottom: 50px;}
  #applySec .dl-list dd:not(.full){width: min(76%,760px); padding-left: 20px; box-sizing: border-box;}
  #applySec .dl-list dd{ line-height: 2;}
  #applySec .dl-list dd li p{ margin-top: 1em; font-size: 14px; line-height: 1.42; font-weight: 400;}
  #applySec .dl-list dd > p{ font-size: 20px; line-height: 1.5;}


  /* .apply-flow */
  .apply-flow{margin:0 auto 70px; display: flex; justify-content: space-between}
  .apply-flow .apply-flow-step{width: 30%;}
  .apply-flow-step + .apply-flow-step:before{width: 28px; height: 60px; position: absolute; left: -40px; top: 184px; background: url(../images/icn_apply_arrow_pc.svg) no-repeat 0 0;}
  .apply-flow .apply-flow-img{width: 100%;}
  .apply-flow p{ margin-top: 40px; font-size: 14px; line-height: 2;}

  .apply-flow-step h3 figure{height: 30px; margin-inline: auto;}
  .apply-flow-step .ttl-step1{ width: 103px;}
  .apply-flow-step .ttl-step2{ width: 112px;}
  .apply-flow-step .ttl-step3{ width: 112px;}


  /* .attention */
  .attention{  margin:0 auto 68px; width:900px; padding: 36px 40px; border-radius: 30px;}
  .attention .attention-img{ width: 77px; height: 67px; margin-right: 24px;}
  .attention .notice{width: 702px;}

  /* .screenshot */
  .screenshot{padding: 44px 48px; border-radius: 20px;}
  .screenshot h3{ margin-bottom: 32px; font-size: 30px;}
  .screenshot-list li{ font-size: 18px;}
  .screenshot-list > li + li{margin-top: 10px;}
  .screenshot-list > li > ul > li{margin-top: 5px;}
}
/* スマホ */
@media (max-width:768.98px){
 .apply-bg{ padding: 13vw 0 7.8vw;}
#content section#applySec{ padding: min(11.7vw,88px) 3.3%; margin-bottom: 11.5vw; border-radius: 20px; background-color: #fff; overflow: inherit;}
.ttl-apply{width: 42.8vw; height: 8vw; margin: 0 auto 5vw;}

#applySec .app-ttl{ margin-bottom: min(15.4vw,116px);}

 /* .dl-list */
 #applySec .dl-list {font-size: min(3.7vw,28px);}
 #applySec .dl-list dt{ margin-bottom: min(4vw,30px); padding: 0.5em 0; width: min(35.2vw,264px); border-radius: min(3.3vw,25px);}
 #applySec .dl-list dt.nofull-dt{ margin-bottom: min(9vw,68px);}
 #applySec .dl-list dt.nofull-dt + dd{ margin-left: 1em; padding-top: 0.3em;}
 #applySec .dl-list dd{margin-bottom: min(9vw,68px); line-height: 2;}
 #applySec .dl-list dd li{line-height: 1.43;}
 #applySec .dl-list dd li p{ margin-top: 1em; font-size: min(2.4vw,18px); line-height: 2; font-weight: 400;}

 .apply-flow{margin-bottom: min(16vw,120px);}
 .apply-flow-step + .apply-flow-step:before{ margin: 0 auto min(10.9vw,82px); width: min(10.9vw,82px); height: min(5vw,38px); background:var(--cam02-color); mask-image: url(../images/icn_apply_arrow_sp.svg); mask-position: 0 0; mask-repeat: no-repeat; }
 .apply-flow .apply-flow-step:nth-child(3) h3{ margin-bottom: min(5.3vw,40px);}
 .apply-flow-step .apply-flow-img{position: absolute; right: 0; width: min(41.6vw,312px);}
 .apply-flow-step:nth-child(1) .apply-flow-img{ top: 0;}
 .apply-flow-step:nth-child(2) .apply-flow-img{ top: min(8vw,60px);}
 .apply-flow-step:nth-child(3) .apply-flow-img{ top: min(14.1vw,106x);}

 .apply-flow p{ width: 15em; line-height: 2; font-size: min(3.4vw,26px); font-weight: 500;}

 .apply-flow-step:first-child{padding-bottom: min(9.3vw,70px);}

  .apply-flow-step h3{ margin-bottom: min(6.6vw,50px);}
  .apply-flow-step h3 figure{height: min(5.8vw,44px);}
  .apply-flow-step .ttl-step1{ width: min(21.2vw,159px);}
  .apply-flow-step .ttl-step2{ width: min(22.9vw,172px);}
  .apply-flow-step .ttl-step3{ width: min(23vw,173px);}

   /* .attention */
   .attention{  margin:0 auto 60px; padding: 15px 4.8%;}
   .attention .attention-img{ width: 12%;}
   .attention .notice{padding-left: min(4.8vw,32px); font-size: 2vw;}
   .attention .notice li{text-indent: -1em; margin-left: 1em; line-height: 1.5; font-size: min(2.9vw,22px);}

  /* .screenshot */
  .screenshot{padding: min(9.3vw,70px) 3.3% min(8.5vw,64px);}
  .screenshot h3{ margin-bottom: 2em; font-size: min(4vw,30px);}
  .screenshot-list li{ font-size: min(3.4vw,26px);}
  .screenshot-list > li + li{margin-top: 10px;}
  .screenshot-list > li > ul > li{margin-top: 5px;}
}

/* #flowSec
============================================== */
#flowSec{position: relative; z-index: 3;}
#flowSec .ttl-txt{line-height: 1.4;}
.flow-box a:hover{text-decoration: none}

.step-notice p strong{ color: var(--cam02-color);}
.step-notice01 strong{color: #df7261;}
.img-flow-link{font-feature-settings: 'palt';}
.img-flow-link01 a{font-weight: 900;}

.flow-box hr{border-style: dashed;}

.bg-step02{ background-color: #ff8581;}

/* タブレット・PC */
@media (min-width:769px) {
	#flowSec{padding-top: 84px;}
	#flowSec .app-ttl{ margin: 0 min(4.1%,50px) 70px; width: auto; height: 200px; border-radius: 100px;}
  #flowSec .app-ttl span{ line-height: 1.6;}
	.step-notice .btn-sm{margin-bottom: 0}
 .flow-box h4{ margin-bottom: 25px;}

  .btn-sm.btn-cs{ max-width: 750px; width: 100%; padding-block: 1em; text-align: center;}

  .img-flow-link02{top: 139px; left: 479px; width: 217px; font-size: 20px;}
  .img-flow-link05{width: 180px; left: 744px; bottom: 124px;}

.img-flow picture{width: 100%;}

.flow-box {max-width: 1082px;}
.flow-box .flow-box-ttl{width: min(19.4%,210px);}
.flow-box .flow-box-txt{ width: min(69.31%,750px);}
.flow-box .flow-box-txt h4,.flow-box .flow-box-txt p,.flow-box ul{ text-box: trim-both cap alphabetic;}

.flow-box.step02 .flow-box-txt{padding-top: 90px;}
.flow-box.step02 p{margin-top: 0;}
.flow-box-txt .bg-w{margin-top: 50px;}
.flow-box-txt ul.notice:not(:last-child){ margin-bottom: 0;}
.txt-step01-ch2{ margin: 0 auto 36px; width: 464px; height: 60px;}
.flow-box hr{ margin: 60px 0;}

.bg-step02 .btn-sm{margin-top: 80px;}
}

/* スマホ */
@media (max-width:768.98px){
#flowSec{padding-top: 9.5vw;}
#flowSec .app-ttl{ margin-bottom: min(12.5vw,94px); font-size: min(5.3vw,40px); height: min(26.6vw,200px); border-radius: min(13.3vw,100px); line-height: 1.75;}
#flowSec .ttl-txt span{ display: block; transform: scaleX(0.88) translateX(-0.22em); font-feature-settings: "palt"; white-space: nowrap;}
.step-notice p{font-feature-settings: 'palt';}

.step-notice h3 .txt{ margin-top: 0;}
.img-flow picture{height: auto;}
.img-flow-link.img-flow-link01{ bottom: 26%; left: 40%;}
.img-flow-link02{ top: min(27vw,202px); left: min(77.5vw,581px);}
.img-flow-link03.img-flow-link{ bottom: 25.2vw; left: 106.4vw;}
.img-flow-link.img-flow-link01{ bottom: min(8.5vw,64px); left: min(8.5vw,64px);}
.txt-step01-ch2{margin-bottom: min(6.6vw,50px);}

}

/* #kiyakuSec
============================================== */
#kiyakuSec{ background: #e7e4dd;}
.kiyaku-cnt{ background: #fff; padding: 0;}
#kiyakuSec h3,#termbox h4,#kiyakuSec .accordion-cnt h5,#kiyakuSec .accordion-cnt h6{ font-weight: 700;}
.kiyaku-cnt p,.kiyaku-cnt ul:not(.notice) li,.kiyaku-cnt ol:not(.notice) li{margin-bottom: 1em;}
#termbox .accordion h4,#privacy .accordion h3{background: #000; color: #fff; line-height: 1;}
#kiyakuSec p.lead{ font-weight: 400;}
#termbox .lead-title{ font-weight: 700; border-bottom: 1px solid #000; padding: 0 0 0.5em;}
#kiyakuSec dt{ font-weight: 700; margin-bottom: 0.5em;}
#kiyakuSec dd{ margin: 0 0 1em 1em;}

.accordion h5{ color: var(--cam01-color); display: flex; align-items: center;}
.accordion h5:before{content: ""; display: inline-block; background-color: var(--cam01-color); height: 1.8em; width: 5px; margin-right: 8px;}
.accordion h5:not(:first-child){ padding-top: 1em; border-top: 1px dotted #000;}
.accordion h6{margin-block: 1em 0.5em;}

.cam-summary{ background-color: #EBEBED; padding: 1.5em; border-radius: 1em;}
#termbox .cam-summary h4{ margin-bottom:0.5em; color: var(--cam01-color); font-weight: 900;}
.cam-summary p + h4{ margin-top: 2em;}
.cam-summary h5{ font-weight: 700; margin: 1em 0;}

#kiyakuSec .js-accordion{position: relative;}
#kiyakuSec .js-accordion:after{content: ""; display: inline-block; position: absolute; top: 50%; border-top: 4px solid #fff; border-right: 4px solid #fff; transform: rotate(135deg); transition: transform 0.5s;}
#kiyakuSec .js-accordion.active:after{ transform: rotate(-45deg);}

.kiyaku-cnt a{color: #000; text-decoration: underline;}
.kiyaku-cnt a:hover{text-decoration: none;}

.btnArea{margin:0 auto; text-align: center; position: relative; z-index: 3;}
.btn-entry{ margin: 0 auto; background: #db0025; color: #fff; font-weight: 900; line-height: 1; justify-content: center; border-color: #db0025;}
.btn-entry:hover{border-color: #000;}
.btn-entry.btn-end{ background: #fff; border: 5px solid #000; color: #000;}
.btn-entry.btn-cs{border-color: #fff;}

#kiyakuSec .list > li{list-style: disc; margin:0 0 0.5em 20px;}

#privacy{ background-color: #fff;}

.btn-sm{ background-color: #FF0000; font-size: 30px; padding: 0 0.8em;}

/* タブレット・PC */
@media (min-width:769px) {
  .btn-sm{letter-spacing: 0.1em;}
  #kiyakuSec{padding: 114px 0 140px;}
  .kiyaku-cnt,#privacy{ width: 900px; margin: 0 auto 55px;}
  .kiyaku-cnt h3{ font-size: 25px;}
	.kiyaku-cnt p.lead{ font-size: 20px;}
  #termbox .lead-title{ font-size: 18px;}
  #kiyakuSec .accordion-cnt h5{font-size: 18px; margin-bottom: 0.5em;}
  .kiyaku-cnt .accordion-cnt p,.kiyaku-cnt .accordion-cnt ul:not(.notice),#kiyaku-cnt .accordion ol{line-height: 1.44;}

  /* #termbox */
  #termbox{ padding: 90px;}
  #termbox h3{margin-bottom: 40px;}
  #termbox .accordion h4,#privacy .accordion h3{ font-size: 20px; padding: 30px;}
  #termbox .accordion{margin-top: 45px;}
  #termbox .accordion-cnt{padding-top: 30px;}
  #kiyakuSec p:not(.notice),#kiyakuSec ul:not(.notice),#kiyakuSec ol,#kiyakuSec dl{font-size: 16px;}

  .accordion h6{ font-size: 16px;}
  .cam-summary h4{ font-size: 18px;}
  .cam-summary h5{ font-size: 17px;}
  #kiyakuSec .cam-summary p{ font-size: 15px; line-height: 1.4;}

  /* #privacy */
  #privacy .accordion-cnt{padding: 25px 20px 25px;}

  /* icon */
  #kiyakuSec .js-accordion:after{ width: 15px; height: 15px; margin-top: -8px;}
  #termbox .js-accordion:after{ right: 35px;}
  #privacy .js-accordion:after{ right: 58px;}

  .btn-entry{ font-size: 50px; width: min(66.6%,800px); height: 130px;}
}
/* スマホ */
@media (max-width:768.98px){
  #kiyakuSec{padding-block: min(13.3vw,100px) min(33.3vw,250px);}
  .kiyaku-cnt{ margin-bottom: min(9vw,68px);}
  .kiyaku-cnt h3{ font-size: 3.4vw;}
  #kiyakuSec .js-accordion:after{border-width: 2px 2px 0 0;}
  #kiyakuSec p,#kiyakuSec ul:not(.notice),#kiyakuSec ol,#kiyakuSec dl{font-size: min(3.7vw,28px); line-height: 1.83;}

  .kiyaku-cnt .notice li{ text-indent: -1em; margin-left: 1em;}

  /* #termbox */
  #termbox{ padding: min(20vw,150px) 3.3% min(4vw,30px);}
  #termbox .lead{ text-align: left;}
  #termbox .accordion{margin-top: 15px;}
  #termbox .accordion-cnt{padding-top: 15px;}
  #termbox h3{margin-bottom: 1.53em; font-size: min(5.3vw,40px);}
  #termbox h4.js-accordion,#privacy h3{padding: 1em 2.7%;}
  #termbox h4,#privacy h3{ font-size: min(3.7vw,28px);}
  .accordion h5:before{ height: 2.8em;}

  .cam-summary h4,.accordion h6{ font-size: min(3.7vw,28px);}
  .cam-summary h5{ font-size: min(3.4vw,26px);}
  .accordion h5{ font-size: min(4vw,30px); margin-bottom: 1em;}
  #kiyakuSec .cam-summary p{ font-size: min(3.2vw,24px); line-height: 1.4;}


  #termbox .lead-title{ margin-top: 3em; font-size: 100%;}
  
  /* #privacy */
#privacy{ margin-bottom: min(9.3vw,145px);}
  #privacy .accordion-cnt{padding: 15px 2.7% 20px;}

  /* icon */
  #kiyakuSec .js-accordion:after{right:2.5%; width: 6px; height: 6px; margin-top: -3px; border-top: 2px solid #fff; border-right: 2px solid #fff;}
  #termbox .js-accordion:after{ right: 15px;}
  #privacy .js-accordion:after{ right: 30px;}

  .btn-entry{ font-size: min(5.3vw,40px); width: 80vw; height: min(20vw,150px);}
	.btn-entry:after{ width: 2.3vw; height: 4.2vw; right: 3vw}
}

/* #faqSec
============================================== */
ol.list-num li{list-style: decimal; margin-left: 2em;}
#faqSec h2{ position: relative; top: inherit; left: inherit;}
#faqSec .tab li{width: 50%;}

/* タブレット・PC */
@media (min-width:769px) {
section#faqSec{max-width: 100%;}
section#faqSec .app-ttl{ margin: 0 auto 70px; width: min(66.66%,800px);}
section#faqSec .container{ width: 96%; max-width: 1200px; padding-top: 0;}
}
/* スマホ */
@media (max-width:768.98px){
#faqSec{padding-top: min(33.3vw,250px);}
#faqSec .app-ttl{ margin-bottom: min(14.6vw,110px);}
#faqSec .ttl-txt{width: 90%;}
#faqSec .tab{width: 100%;}
}

#footer .container{ max-width: 1000px;}