/* Scss Document */
@import url("reset.css");
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@keyframes kv-slider { from { background-position: 0 0; }
  to { background-position: -1920px 0; } }
html { width: 100%; height: 100%; -webkit-text-size-adjust: none; overflow-x: hidden; overflow-y: auto; font-family: 'Noto Sans JP', sans-serif; scroll-behavior: smooth; }

body { background: white; color: #0d0d0d; }
body img { width: 100%; max-width: 100%; height: auto; }

body { width: 100%; min-height: 100vh; padding-top: 12vw; }
body .ovImg { position: relative; }
body .ovImg > img { position: relative; z-index: 10; }
body .ovImg > a, body .ovImg p, body .ovImg h2.h2ttl { position: absolute; z-index: 11; }
body a { transition: .2s all; }
body a:hover { filter: brightness(1.1); transition: .01s all; }
body h2.h2ttl { font-size: 7.4vw; line-height: 1.4; letter-spacing: .2em; font-weight: bold; text-align: center; display: block; width: 100%; }
body .spOnly, body .slick-slide .spOnly { display: block; }
body .pcOnly, body .slick-slide .pcOnly { display: none; }
body header { position: fixed; z-index: 9999; top: 0; left: 0; display: flex; justify-content: space-between; height: 12vw; width: 100%; background: white; }
body header > div { width: 46%; height: 12vw; display: flex; justify-content: center; align-items: center; }
body header > div h1 { width: 33vw; height: auto; }
body header > div + div { width: 54%; height: 12vw; }
body header > div + div ul { display: flex; }
body section.kv .scrollArea { margin-top: -2vw; height: 13vw; background: url("../img/cmn_kv_loop.png") repeat-x 0 0; background-size: auto 10.4vw; animation: kv-slider 30s linear infinite; }
body section.presentBnr { margin-bottom: 5%; }
body section.presentBnr a { pointer-events: none; }
body section.numero .contWrap { background: #e3ddd8; padding: 2.6vw 0 10vw; }
body section.numero .contWrap ul { display: flex; flex-wrap: wrap; justify-content: space-between; width: 90vw; margin: 0 auto; }
body section.numero .contWrap ul li { width: 43.6vw; margin-bottom: 2.6vw; }
body section.story { background: url("../img/sp_bg_05_01.png") no-repeat 0 0; background-size: cover; padding: 12.2vw 0 0; }
body section.story .h2ttl { width: 81vw; margin: 0 auto 0; }
body section.story .contWrap.storySliderWrap { font-size: 0; line-height: 1; }
body section.story .contWrap.storySliderWrap .slick-list { padding: 7vw 0 10vw; }
body section.story .contWrap.storySliderWrap .slick-slide { margin: 0 12vw; border-radius: 6vw; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.25); line-height: 1; }
body section.story .contWrap.storySliderWrap .slick-prev.slick-arrow, body section.story .contWrap.storySliderWrap .slick-next.slick-arrow { position: absolute; top: 50%; z-index: 9999; font-size: 0; width: 5.43vw; height: 8vw; cursor: pointer; margin-top: -4vw; }
body section.story .contWrap.storySliderWrap .slick-prev.slick-arrow { background: url("../img/cmn_arw_prev.png") no-repeat 0 0; background-size: 100% auto; left: 3vw; }
body section.story .contWrap.storySliderWrap .slick-next.slick-arrow { background: url("../img/cmn_arw_next.png") no-repeat 0 0; background-size: 100% auto; right: 3vw; }
body section.price { overflow: hidden; font-size: 0; line-height: 1; }
body section.price .contWrap.area01 { position: relative; }
body section.price .contWrap.area01 > img { position: relative; }
body section.price .contWrap.area01 > p { position: absolute; width: 256vw; height: 36.8vw; top: 124vw; background: url("../img/cmn_img_06_02.png") repeat-x 0 0; background-size: auto 36.8vw; animation: kv-slider 30s linear infinite; }
body section.price .contWrap.area01 > a { position: absolute; width: 72vw; left: 14vw; top: 174vw; }
body section.price .contWrap.area01:before, body section.price .contWrap.area01:after { content: ''; background: #2a65a2; width: 8vw; height: 1.7vw; border-radius: 2px; position: absolute; bottom: 4vw; left: 50%; margin-left: -4vw; z-index: 99; }
body section.price .contWrap.area01:before { transform: rotate(90deg); }
body section.price .contWrap.area02 .tabUl { display: flex; width: 100%; }
body section.price .contWrap.area02 .tabUl li { width: calc(100% / 3); }
body section.price .contWrap.area02 .tabUl li img + img { display: none; }
body section.price .contWrap.area02 .tabUl li.act img { display: none; }
body section.price .contWrap.area02 .tabUl li.act img + img { display: block; }
body section.price .contWrap.area02 .tabCntUl li { display: none; }
body section.price .contWrap.area02 .tabCntUl li.act { display: block; }
body section.usage { background: url("../img/sp_bg_07_01.png") no-repeat 0 0%; background-size: cover; padding: 11vw 0 5vw; }
body section.usage .h2ttl { width: 57vw; margin: 0 auto 8vw; }
body section.usage .contWrap ul { width: 95vw; margin: 0 auto; }
body section.faq { background: #115595 url("../img/sp_bg_08_01.png") no-repeat 50% 3.8vw; background-size: 75vw auto; padding: 13vw 0 10vw; }
body section.faq .h2ttl { width: 66vw; margin: 0 auto 10.5vw; }
body section.faq .contWrap { width: 90%; margin: 0 auto; }
body section.faq .contWrap dl dt { margin-bottom: 2.66vw; position: relative; cursor: pointer; }
body section.faq .contWrap dl dt::before, body section.faq .contWrap dl dt::after { content: ''; height: 2px; width: 2.66vw; position: absolute; right: 0; top: 50%; background: white; }
body section.faq .contWrap dl dt::after { transition: .05s all; transform: rotate(90deg); opacity: 1; }
body section.faq .contWrap dl dd { border-top: 1px white solid; }
body section.faq .contWrap dl dd img.spOnly { display: none; transition: .1s all; }
body section.faq .contWrap dl + dl { margin-top: 5.86vw; }
body section.faq .contWrap dl.act dt::after { transition: .1s all; opacity: 0; }
body section.faq .contWrap dl.act dd img.spOnly { display: block; }
body section.form { background: #ece6e0 url("../img/sp_bg_09_01.png") no-repeat 50% 3.8vw; background-size: 75vw auto; padding: 13vw 0 10vw; }
body section.form .h2ttl { width: 89vw; margin: 0 auto 10.5vw; }
body section.form .contWrap { width: 89vw; margin: 0 auto; }
body section.form .contWrap form { font-size: 3.3vw; font-weight: 700; letter-spacing: .05em; line-height: 1; }
body section.form .contWrap form dl { margin-bottom: 4vw; }
body section.form .contWrap form dl dt { margin-bottom: 2vw; }
body section.form .contWrap form dl dt em, body section.form .contWrap form dl dt span.required { display: inline-block; background: #245e9a; font-size: 2.8vw; margin-left: .8em; padding: .3em .4em; border-radius: 5px; color: white; }
body section.form .contWrap form dl dt em.dsc, body section.form .contWrap form dl dt span.required.dsc { background: #888; }
body section.form .contWrap form dl dd input[type="text"], body section.form .contWrap form dl dd input[type="tel"], body section.form .contWrap form dl dd input[type="email"], body section.form .contWrap form dl dd textarea { font-size: 3.3vw; padding: .7em .7em; border: #e4dcd5 1px solid; border-radius: 5px; background: white; width: 100%; box-sizing: border-box; }
body section.form .contWrap form dl dd input[type="text"]::placeholder, body section.form .contWrap form dl dd input[type="tel"]::placeholder, body section.form .contWrap form dl dd input[type="email"]::placeholder, body section.form .contWrap form dl dd textarea::placeholder { color: #bfbfbf; }
body section.form .contWrap form dl dd .select_wrapper { position: relative; }
body section.form .contWrap form dl dd .select_wrapper select { -webkit-appearance: none; appearance: none; cursor: pointer; font-size: 3.3vw; padding: .3em .4em; border: #e4dcd5 1px solid; border-radius: 5px; background: white; width: 100%; box-sizing: border-box; position: relative; }
body section.form .contWrap form dl dd .select_wrapper::after { content: ""; position: absolute; top: calc(50% - .5vw); right: 2vw; border-right: 1.5vw solid transparent; border-left: 1.5vw solid transparent; border-top: 1.8vw solid #bfbfbf; border-bottom: 0; }
body section.form .contWrap form .cbWrap { margin-top: 10vw; text-align: center; }
body section.form .contWrap form p.cb1 { display: inline-block; margin: 0 auto; text-align: center; }
body section.form .contWrap form p.cb1 input[type="checkbox"] { display: none; }
body section.form .contWrap form p.cb1 input[type="checkbox"] + label { cursor: pointer; padding-left: 5vw; display: block; font-size: 3.3vw; font-weight: 100; position: relative; }
body section.form .contWrap form p.cb1 input[type="checkbox"] + label::before { content: ''; position: absolute; left: 0; top: calc(50% - 2vw); height: 4vw; width: 4vw; background: white; border: #245e9a 1px solid; border-radius: 4px; }
body section.form .contWrap form p.cb1 input[type="checkbox"] + label::after { opacity: 0; content: ''; position: absolute; left: 1.1vw; top: calc(50% - 2vw); height: 2.6vw; width: 1.4vw; border-bottom: white 4px solid; border-right: white 4px solid; transform: rotate(45deg); }
body section.form .contWrap form p.cb1 input[type="checkbox"] + label a { color: #245e9a; text-decoration: underline; }
body section.form .contWrap form p.cb1 input[type="checkbox"]:checked + label::before { background: #245e9a; border: #245e9a 1px solid; }
body section.form .contWrap form p.cb1 input[type="checkbox"]:checked + label::after { opacity: 1; }
body section.form .contWrap form p#form_submit { font-size: 0; line-height: 1; width: 66vw; height: 13.33vw; margin: 5vw auto 0; }
body section.form .contWrap form p#form_submit input[type="button"] { cursor: pointer; background: url("../img/sp_btn_09_01.png") no-repeat 0 0; background-size: 100% auto; width: 66vw; height: 13.33vw; font-size: 0; }
body footer > div { padding: 10vw 0 4vw; background: #0d0d0d; text-align: center; }
body footer > div .logo { width: 77vw; margin: 0 auto 7vw; }
body footer > div ul { display: flex; justify-content: center; margin-bottom: 6vw; }
body footer > div ul li + li { margin-left: 6vw; }
body footer > div ul a { font-size: 3vw; color: white; font-weight: 500; letter-spacing: .05em; line-height: 1; padding-right: 3.6vw; position: relative; }
body footer > div ul a::before { content: ''; width: 1.5vw; height: 1.5vw; border-top: white .7vw solid; border-right: white .7vw solid; transform: rotate(45deg); position: absolute; right: 0; top: calc(50% - 1vw); }
body footer > div ul + p { font-size: 2.8vw; font-weight: 100; color: white; }

@media all and (min-width: 750px) and (max-width: 900px) { body { padding-top: 60px; }
  body .spOnly, body .slick-slide .spOnly { display: none; }
  body .pcOnly, body .slick-slide .pcOnly { display: block; }
  body header { position: fixed; top: 0; left: 0; height: 60px; width: 100%; }
  body header > div { width: auto; height: 60px; }
  body header > div h1 { width: 280px; height: auto; padding: 0 5%; }
  body header > div + div { width: auto; height: 60px; }
  body header > div + div ul { display: flex; width: 100%; }
  body header > div + div ul li { width: 50%; }
  body header > div + div ul li img { height: 60px; width: 100%; }
  body section.kv h2 { width: 100%; background: url("../img/pc_kv_00.png") no-repeat 50% 50%; background-size: cover; position: relative; }
  body section.kv h2 img { width: 100%; max-width: 1520px; margin: 0 auto 0; position: relative; z-index: 1; }
  body section.kv h2::before { content: ''; width: 100vw; height: 6%; background: white; position: absolute; left: 0; bottom: 0; z-index: 0; }
  body section.kv .scrollArea { margin-top: 0; height: 90px; width: 100vw; background: url("../img/cmn_kv_loop.png") repeat-x 0 0; background-size: auto 10.4vw; animation: kv-slider 30s linear infinite; }
  body section.presentBnr { margin-bottom: 100px; }
  body section.presentBnr.mTB { margin-top: 80px; margin-bottom: 100px; }
  body section.tvInterview { height: 80vw; background: url("../img/pc_bg_01_01.png") no-repeat 50% 50%; background-size: 100% auto; position: relative; }
  body section.tvInterview::before { content: ''; width: 20.6vw; height: 63vw; background: url(../img/pc_img_01_03.png) no-repeat 0 0; background-size: 100% auto; position: absolute; left: 39.5vw; top: 34vw; }
  body section.tvInterview .h2ttl { margin-bottom: 3%; }
  body section.tvInterview .contWrap { display: flex; justify-content: space-between; width: 100%; max-width: 1280px; margin: 0 auto; }
  body section.tvInterview .contWrap > div { width: 46.1%; }
  body section.tvInterview .contWrap > div + div { margin-right: -1%; }
  body section.problem { width: 100%; background: url("../img/pc_bg_02_01.png") no-repeat 50% 0; background-size: 150% auto; padding: 10% 0; }
  body section.problem .h2ttl { width: 61.4%; margin: 0 auto 4.5%; }
  body section.problem .contWrap { min-height: 52vw; }
  body section.problem .contWrap ul { width: 78%; margin: 0 auto; }
  body section.problem .contWrap ul li { border-radius: 50px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35); }
  body section.problem .contWrap ul li + li { margin-top: 3%; }
  body section.problem .contWrap + .contWrap { margin-top: -1%; padding-bottom: 10%; min-height: auto; background: url("../img/pc_bg_02_02.png") no-repeat 50% 100%; background-size: 150% auto; }
  body section.problem .contWrap + .contWrap h3 { width: 83%; margin: 0 auto 2%; }
  body section.problem .contWrap + .contWrap h3 + p { width: 97%; margin: 0 auto; }
  body section.numero { width: 100%; background: #e6e0da url("../img/pc_bg_03_01.png") no-repeat 50% 0; background-size: 150% auto; padding: 10% 0 0; }
  body section.numero .h2ttl { width: 62%; margin: 0 auto 4.5%; }
  body section.numero .contWrap { background: none; padding: 0 0 5%; }
  body section.numero .contWrap ul { display: flex; flex-wrap: wrap; justify-content: space-between; width: 98%; margin: 0 auto; }
  body section.numero .contWrap ul li { width: 24%; margin-bottom: 2%; }
  body section.secret { width: 100%; background: url("../img/pc_bg_04_01.png") no-repeat 50% 0; background-size: 150% auto; padding: 10% 0 0; }
  body section.secret .h2ttl { width: 54.4%; margin: 0 auto 4.5%; }
  body section.secret .contWrap.pnt1 { min-height: 62.5vw; }
  body section.secret .contWrap.pnt1 h3 { overflow: hidden; width: 123%; height: auto; padding-left: 1%; margin-bottom: 5%; }
  body section.secret .contWrap.pnt1 h3 + p { width: 81%; margin: 0 auto; }
  body section.secret .contWrap.pnt2 { min-height: 57.3vw; padding: 14% 0 0; background: url("../img/pc_bg_04_02.png") no-repeat 50% 0; background-size: 150% auto; }
  body section.secret .contWrap.pnt2 h3 { overflow: hidden; width: 102%; margin-left: -3%; }
  body section.secret .contWrap.pnt3 { margin-top: -14.2%; padding: 14% 0 0; background: url("../img/pc_bg_04_03.png") no-repeat 50% 0; background-size: 150% auto; }
  body section.secret .contWrap.pnt3 h3 { overflow: hidden; width: 98%; margin-left: 1%; }
  body section.secret .contWrap.pnt4 { padding: 0 0 0; background: url("../img/pc_bg_04_04.png") no-repeat 50% 0; background-size: 150% auto; }
  body section.secret .contWrap.pnt4 h3 { overflow: hidden; width: 97%; margin-left: 1%; }
  body section.story { background: url("../img/pc_bg_05_01.png") no-repeat 50% 0; background-size: 150% auto; margin-top: -2vw; padding: 11% 0 0; }
  body section.story .h2ttl { width: 42.8%; margin: 0 auto 0; }
  body section.story .contWrap.storySliderWrap { font-size: 0; line-height: 1; padding: 0 4%; }
  body section.story .contWrap.storySliderWrap .slick-list { padding: 7vw 0 10vw; }
  body section.story .contWrap.storySliderWrap .slick-slide { margin: 0 1.5vw; border-radius: 3vw; box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.25); line-height: 1; }
  body section.story .contWrap.storySliderWrap .slick-prev.slick-arrow, body section.story .contWrap.storySliderWrap .slick-next.slick-arrow { position: absolute; top: 50%; z-index: 9999; font-size: 0; width: 20px; height: 30px; cursor: pointer; margin-top: -15px; }
  body section.story .contWrap.storySliderWrap .slick-prev.slick-arrow { background: url("../img/cmn_arw_prev.png") no-repeat 0 0; background-size: 100% auto; left: -3.0%; }
  body section.story .contWrap.storySliderWrap .slick-next.slick-arrow { background: url("../img/cmn_arw_next.png") no-repeat 0 0; background-size: 100% auto; right: -3.0%; }
  body section.price { background: url("../img/pc_bg_06_01.png") no-repeat 50% 0; background-size: 150% auto; padding: 7.5% 0 0; }
  body section.price .h2ttl { width: 76.0%; margin: 0 auto 0; }
  body section.price .contWrap.area01 { position: relative; padding-bottom: 10vw; }
  body section.price .contWrap.area01 > img { position: relative; }
  body section.price .contWrap.area01 > p { position: absolute; width: 256vw; height: 19vw; top: 54vw; background: url("../img/cmn_img_06_02.png") repeat-x 0 0; background-size: auto 19vw; animation: kv-slider 30s linear infinite; }
  body section.price .contWrap.area01 > a { position: absolute; width: 42%; left: 29%; top: 77%; }
  body section.price .contWrap.area01:before, body section.price .contWrap.area01:after { content: ''; background: #2a65a2; width: 66px; height: 14px; border-radius: 2px; position: absolute; bottom: 4vw; left: 50%; margin-left: -33px; z-index: 99; }
  body section.price .contWrap.area01:before { transform: rotate(90deg); }
  body section.price .contWrap.area02 { padding-top: 5%; width: 98%; margin-left: 1%; line-height: 1; font-size: 0; }
  body section.price .contWrap.area02 .tabUl { display: flex; width: 100%; }
  body section.price .contWrap.area02 .tabUl li { cursor: pointer; width: 33.359375%; }
  body section.price .contWrap.area02 .tabUl li:nth-child(2) { width: 33.28125%; }
  body section.price .contWrap.area02 .tabUl li img + img { display: none; }
  body section.price .contWrap.area02 .tabUl li.act img { display: none; }
  body section.price .contWrap.area02 .tabUl li.act img + img { display: block; }
  body section.price .contWrap.area02 .tabCntUl li { display: none; }
  body section.price .contWrap.area02 .tabCntUl li.act { display: block; }
  body section.usage { background: url("../img/pc_bg_07_01.png") no-repeat 50% 0; background-size: 150% auto; padding: 10% 0 5%; }
  body section.usage .h2ttl { width: 30.5%; margin: 0 auto 7%; }
  body section.usage .contWrap ul { width: 98%; margin: 0 auto; display: flex; }
  body section.usage .contWrap ul li + li { margin-left: 1%; }
  body section.faq { background: #115595 url("../img/pc_bg_08_01.png") no-repeat 50% 0; background-size: 150% auto; padding: 11% 0 10%; }
  body section.faq .h2ttl { width: 35%; margin: 0 auto 8%; }
  body section.faq .contWrap { width: 96%; margin: 0 auto; }
  body section.faq .contWrap dl dt { margin-bottom: 3%; position: relative; cursor: pointer; }
  body section.faq .contWrap dl dt::before, body section.faq .contWrap dl dt::after { content: ''; height: 2px; width: 20px; position: absolute; right: 2%; top: 50%; background: white; }
  body section.faq .contWrap dl dt::after { transition: .05s all; transform: rotate(90deg); opacity: 1; }
  body section.faq .contWrap dl dd { border-top: 1px white solid; }
  body section.faq .contWrap dl dd img.spOnly { display: none; }
  body section.faq .contWrap dl dd img.pcOnly { display: none; transition: .1s all; }
  body section.faq .contWrap dl + dl { margin-top: 8%; }
  body section.faq .contWrap dl.act dt::after { transition: .1s all; opacity: 0; }
  body section.faq .contWrap dl.act dd img.spOnly { display: none; }
  body section.faq .contWrap dl.act dd img.pcOnly { display: block; }
  body section.form { background: #ece6e0 url("../img/pc_bg_09_01.png") no-repeat 50% 3.8vw; background-size: 150% auto; padding: 11% 0 10%; }
  body section.form .h2ttl { width: 57.3%; margin: 0 auto 10.5vw; }
  body section.form .contWrap { width: 90vw; margin: 0 auto; }
  body section.form .contWrap form { font-size: 3.3vw; font-weight: 700; letter-spacing: .05em; line-height: 1; }
  body section.form .contWrap form dl { margin-bottom: 4vw; }
  body section.form .contWrap form dl dt { margin-bottom: 1vw; }
  body section.form .contWrap form dl dt em, body section.form .contWrap form dl dt span.required { display: inline-block; background: #245e9a; font-size: 2.8vw; margin-left: .8em; padding: .3em .4em; border-radius: 5px; color: white; }
  body section.form .contWrap form dl dd input[type="text"], body section.form .contWrap form dl dd input[type="tel"], body section.form .contWrap form dl dd input[type="email"], body section.form .contWrap form dl dd textarea { font-size: 3.3vw; padding: .4em .5em; border: #e4dcd5 1px solid; border-radius: 5px; background: white; width: 100%; box-sizing: border-box; }
  body section.form .contWrap form dl dd input[type="text"]::placeholder, body section.form .contWrap form dl dd input[type="tel"]::placeholder, body section.form .contWrap form dl dd input[type="email"]::placeholder, body section.form .contWrap form dl dd textarea::placeholder { color: #bfbfbf; }
  body section.form .contWrap form dl dd .select_wrapper { position: relative; }
  body section.form .contWrap form dl dd .select_wrapper select { -webkit-appearance: none; appearance: none; cursor: pointer; font-size: 3.3vw; padding: .3em .4em; border: #e4dcd5 1px solid; border-radius: 5px; background: white; width: 100%; box-sizing: border-box; position: relative; }
  body section.form .contWrap form dl dd .select_wrapper::after { content: ""; position: absolute; top: calc(50% - .5vw); right: 2vw; border-right: 1.5vw solid transparent; border-left: 1.5vw solid transparent; border-top: 1.8vw solid #bfbfbf; border-bottom: 0; }
  body section.form .contWrap form .cbWrap { margin-top: 10vw; text-align: center; }
  body section.form .contWrap form p.cb1 { display: inline-block; margin: 0 auto; text-align: center; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] { display: none; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] + label { cursor: pointer; padding-left: 5vw; display: block; font-size: 3.3vw; font-weight: 100; position: relative; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] + label::before { content: ''; position: absolute; left: 0; top: calc(50% - 2vw); height: 4vw; width: 4vw; background: white; border: #245e9a 1px solid; border-radius: 4px; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] + label::after { opacity: 0; content: ''; position: absolute; left: 1.1vw; top: calc(50% - 2vw); height: 2.6vw; width: 1.4vw; border-bottom: white 4px solid; border-right: white 4px solid; transform: rotate(45deg); }
  body section.form .contWrap form p.cb1 input[type="checkbox"]:checked + label::before { background: #245e9a; border: #245e9a 1px solid; }
  body section.form .contWrap form p.cb1 input[type="checkbox"]:checked + label::after { opacity: 1; }
  body section.form .contWrap form p#form_submit { font-size: 0; line-height: 1; width: 45vw; height: 13.33vw; margin: 5vw auto 0; }
  body section.form .contWrap form p#form_submit input[type="button"] { cursor: pointer; background: url("../img/pc_btn_09_01.png") no-repeat 0 0; background-size: 100% auto; width: 45vw; height: 7vw; font-size: 0; }
  body footer > div { padding: 60px 2.5%; background: #0d0d0d; text-align: center; display: flex; justify-content: space-between; align-items: center; }
  body footer > div .logo { width: 100%; max-width: 400px; margin: 0 auto 10px; }
  body footer > div .logo + p { color: white; text-align: left; }
  body footer > div .logo + p small { font-size: 14px; font-weight: 100; }
  body footer > div ul { width: 30%; display: block; margin-bottom: 0; }
  body footer > div ul li { width: 100%; text-align: left; }
  body footer > div ul li + li { margin-left: 0; margin-top: 8%; }
  body footer > div ul a { width: 100%; display: block; font-size: 18px; color: white; font-weight: 500; letter-spacing: .05em; line-height: 1; padding-right: 0; position: relative; }
  body footer > div ul a::before { content: ''; width: 10px; height: 10px; border-top: white 4px solid; border-right: white 4px solid; transform: rotate(45deg); position: absolute; right: 0; top: calc(50% - 6px); } }
@media all and (min-width: 901px) { body { padding-top: 65px; }
  body h2.h2ttl { width: 100%; max-width: 1280px; margin: 0 auto; }
  body .spOnly, body .slick-slide .spOnly { display: none; }
  body .pcOnly, body .slick-slide .pcOnly { display: block; }
  body a[href*="tel:"] { pointer-events: none; cursor: default; }
  body header { position: fixed; top: 0; left: 0; height: 65px; width: 100%; margin: 0 auto; background: white; }
  body header > div { width: auto; height: 65px; display: flex; justify-content: center; align-items: center; }
  body header > div h1 { width: 318px; height: auto; padding-left: 10%; }
  body header > div + div { width: auto; height: 65px; }
  body header > div + div ul { display: flex; }
  body header > div + div ul li { width: 257px; }
  body header > div + div ul li img { height: 65px; width: auto; }
  body section.kv h2 { width: 100%; background: url("../img/pc_kv_00.png") no-repeat 50% 50%; background-size: cover; position: relative; }
  body section.kv h2 img { width: 100%; max-width: 1520px; margin: 0 auto 0; position: relative; z-index: 1; }
  body section.kv h2::before { content: ''; width: 100vw; height: 6%; max-height: 39px; background: white; position: absolute; left: 0; bottom: 0; z-index: 0; }
  body section.kv .scrollArea { margin-top: 0; height: 90px; width: 100vw; background: url("../img/cmn_kv_loop.png") repeat-x 0 0; background-size: auto 79px; animation: kv-slider 30s linear infinite; }
  body section.presentBnr { margin-bottom: 100px; text-align: center; }
  body section.presentBnr img { width: 100%; max-width: 1280px; margin: 0 auto; }
  body section.presentBnr.mTB { margin-top: 80px; margin-bottom: 100px; }
  body section.tvInterview { height: 80vw; background: url("../img/pc_bg_01_01.png") no-repeat 50% 50%; background-size: 100% auto; position: relative; }
  body section.tvInterview::before { content: ''; width: 20.6vw; height: 63vw; background: url(../img/pc_img_01_03.png) no-repeat 0 0; background-size: 100% auto; position: absolute; left: 39.5vw; top: 33vw; }
  body section.tvInterview .h2ttl { margin-bottom: 20px; }
  body section.tvInterview .contWrap { display: flex; justify-content: space-between; width: 100%; max-width: 1280px; margin: 0 auto; }
  body section.tvInterview .contWrap > div { width: 46.1%; }
  body section.tvInterview .contWrap > div + div { margin-right: -1%; }
  body section.problem { width: 100%; background: url("../img/pc_bg_02_01.png") no-repeat 50% 0; background-size: 1920px auto; padding: 130px 0; }
  body section.problem .h2ttl { width: 87.3%; max-width: 786px; margin: 0 auto 66px; }
  body section.problem .contWrap { min-height: 700px; }
  body section.problem .contWrap ul { width: 90%; max-width: 1000px; margin: 0 auto; }
  body section.problem .contWrap ul li { border-radius: 100px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35); }
  body section.problem .contWrap ul li + li { margin-top: 26px; }
  body section.problem .contWrap + .contWrap { min-height: auto; margin-top: -1%; padding-bottom: 110px; background: url("../img/pc_bg_02_02.png") no-repeat 50% 100%; background-size: 1920px auto; }
  body section.problem .contWrap + .contWrap h3 { width: 83%; max-width: 1085px; margin: 0 auto 2%; }
  body section.problem .contWrap + .contWrap h3 + p { width: 97%; max-width: 1278px; margin: 0 auto; }
  body section.numero { width: 100%; background: #e6e0da url("../img/pc_bg_03_01.png") no-repeat 50% 0; background-size: 1920px auto; padding: 139px 0 0; }
  body section.numero .h2ttl { width: 62%; max-width: 792px; margin: 0 auto 4.5%; }
  body section.numero .contWrap { background: none; padding: 0 0 5%; }
  body section.numero .contWrap ul { display: flex; flex-wrap: wrap; justify-content: space-between; width: 98%; max-width: 1280px; margin: 0 auto; }
  body section.numero .contWrap ul li { width: 24%; margin-bottom: 1.3%; }
  body section.secret { width: 100%; background: url("../img/pc_bg_04_01.png") no-repeat 50% 0; background-size: 1920px auto; padding: 130px 0 0; }
  body section.secret .h2ttl { width: 54.4%; max-width: 697px; margin: 0 auto 77px; }
  body section.secret .contWrap.pnt1 { min-height: auto; }
  body section.secret .contWrap.pnt1 h3 { overflow: hidden; width: 123%; max-width: 1600px; height: auto; margin-left: auto; padding-left: 1%; margin-bottom: 70px; }
  body section.secret .contWrap.pnt1 h3 + p { width: 81%; max-width: 1046px; margin: 0 auto; }
  body section.secret .contWrap.pnt2 { min-height: auto; padding: 170px 0 0; background: url("../img/pc_bg_04_02.png") no-repeat 50% 0; background-size: 1920px auto; }
  body section.secret .contWrap.pnt2 h3 { overflow: hidden; width: 102%; max-width: 1323px; margin: 0 auto; }
  body section.secret .contWrap.pnt2 h3 img { margin-left: -3%; }
  body section.secret .contWrap.pnt3 { margin-top: -180px; padding: 170px 0 0; background: url("../img/pc_bg_04_03.png") no-repeat 50% 0; background-size: 1920px auto; }
  body section.secret .contWrap.pnt3 h3 { overflow: hidden; width: 98%; max-width: 1267px; margin: 0 auto; }
  body section.secret .contWrap.pnt4 { padding: 40px 0 0; background: url("../img/pc_bg_04_04.png") no-repeat 50% 0; background-size: 1920px auto; }
  body section.secret .contWrap.pnt4 h3 { overflow: hidden; width: 97%; max-width: 1190px; margin: 0 auto; }
  body section.story { background: url("../img/pc_bg_05_01.png") no-repeat 50% 0; background-size: 1920px auto; margin-top: -30px; padding: 140px 0 0; }
  body section.story .h2ttl { width: 42.8%; max-width: 548px; margin: 0 auto 0; }
  body section.story .contWrap.storySliderWrap { font-size: 0; line-height: 1; padding: 0 4%; width: 100%; max-width: 1280px; margin: 0 auto; }
  body section.story .contWrap.storySliderWrap .slick-list { padding: 60px 0 100px; width: 100%; max-width: 1280px; margin: 0 auto; position: relative; }
  body section.story .contWrap.storySliderWrap .slick-slide { margin: 0 10px; border-radius: 42px; box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.25); line-height: 1; }
  body section.story .contWrap.storySliderWrap .slick-prev.slick-arrow, body section.story .contWrap.storySliderWrap .slick-next.slick-arrow { position: absolute; top: 50%; z-index: 9999; font-size: 0; width: 20px; height: 30px; cursor: pointer; margin-top: -15px; }
  body section.story .contWrap.storySliderWrap .slick-prev.slick-arrow { background: url("../img/cmn_arw_prev.png") no-repeat 0 0; background-size: 100% auto; left: -4%; }
  body section.story .contWrap.storySliderWrap .slick-next.slick-arrow { background: url("../img/cmn_arw_next.png") no-repeat 0 0; background-size: 100% auto; right: -4%; }
  body section.price { background: url("../img/pc_bg_06_01.png") no-repeat 50% 0; background-size: 1920px auto; padding: 90px 0 0; }
  body section.price .h2ttl { width: 76.0%; max-width: 983px; margin: 0 auto 0; }
  body section.price .contWrap.area01 { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; padding-bottom: 110px; }
  body section.price .contWrap.area01 > img { position: relative; }
  body section.price .contWrap.area01 > p { position: absolute; width: 256vw; height: 19vw; max-height: 276px; top: 53.5%; left: 50%; margin-left: -50vw; background: url("../img/cmn_img_06_02.png") repeat-x 0 0; background-size: contain; animation: kv-slider 30s linear infinite; }
  body section.price .contWrap.area01 > a { position: absolute; width: 42%; max-width: 540px; left: 29%; top: 76%; }
  body section.price .contWrap.area01:before, body section.price .contWrap.area01:after { content: ''; background: #2a65a2; width: 66px; height: 14px; border-radius: 2px; position: absolute; bottom: 4vw; left: 50%; margin-left: -33px; z-index: 99; }
  body section.price .contWrap.area01:before { transform: rotate(90deg); }
  body section.price .contWrap.area02 { padding-top: 0; width: 98%; max-width: 1280px; margin: 0 auto; line-height: 1; font-size: 0; }
  body section.price .contWrap.area02 .tabUl { display: flex; width: 100%; }
  body section.price .contWrap.area02 .tabUl li { cursor: pointer; width: 33.359375%; }
  body section.price .contWrap.area02 .tabUl li:nth-child(2) { width: 33.28125%; }
  body section.price .contWrap.area02 .tabUl li img + img { display: none; }
  body section.price .contWrap.area02 .tabUl li.act img { display: none; }
  body section.price .contWrap.area02 .tabUl li.act img + img { display: block; }
  body section.price .contWrap.area02 .tabCntUl li { display: none; }
  body section.price .contWrap.area02 .tabCntUl li.act { display: block; }
  body section.usage { background: url("../img/pc_bg_07_01.png") no-repeat 50% 0; background-size: 1920px auto; padding: 7% 0 5%; }
  body section.usage .h2ttl { width: 30.5%; max-width: 391px; margin: 0 auto 4%; }
  body section.usage .contWrap ul { width: 98%; max-width: 1280px; margin: 0 auto; display: flex; }
  body section.usage .contWrap ul li + li { margin-left: 1%; }
  body section.faq { background: white url("../img/pc_bg_08_01.png") no-repeat 50% 0; background-size: 1920px auto; padding: 140px 0 10%; }
  body section.faq .h2ttl { width: 35%; max-width: 446px; margin: 0 auto 6%; }
  body section.faq .contWrap { width: 98%; max-width: 1280px; margin: 0 auto; }
  body section.faq .contWrap dl dt { margin-bottom: 3%; position: relative; cursor: pointer; }
  body section.faq .contWrap dl dt::before, body section.faq .contWrap dl dt::after { content: ''; height: 2px; width: 20px; position: absolute; right: 2%; top: 50%; background: white; }
  body section.faq .contWrap dl dt::after { transition: .05s all; transform: rotate(90deg); opacity: 1; }
  body section.faq .contWrap dl dd { border-top: 1px white solid; }
  body section.faq .contWrap dl dd img.spOnly { display: none; }
  body section.faq .contWrap dl dd img.pcOnly { display: none; transition: .1s all; }
  body section.faq .contWrap dl + dl { margin-top: 5%; }
  body section.faq .contWrap dl.act dt::after { transition: .1s all; opacity: 0; }
  body section.faq .contWrap dl.act dd img.spOnly { display: none; }
  body section.faq .contWrap dl.act dd img.pcOnly { display: block; }
  body section.form { background: #ece6e0 url("../img/pc_bg_09_01.png") no-repeat 50% 50px; background-size: 1231px auto; padding: 145px 0 100px; }
  body section.form .h2ttl { width: 57.3%; max-width: 734px; margin: 0 auto 70px; }
  body section.form .contWrap { width: 98%; max-width: 800px; margin: 0 auto; }
  body section.form .contWrap form { font-size: 20px; font-weight: 700; letter-spacing: .05em; line-height: 1; }
  body section.form .contWrap form dl { margin-bottom: 30px; }
  body section.form .contWrap form dl dt { display: flex; justify-content: space-between; margin-bottom: 8px; }
  body section.form .contWrap form dl dt em, body section.form .contWrap form dl dt span.required { display: inline-block; background: #245e9a; font-size: 18px; margin-left: .8em; padding: .3em .4em .4em .3em; border-radius: 3px; color: white; }
  body section.form .contWrap form dl dd input[type="text"], body section.form .contWrap form dl dd input[type="tel"], body section.form .contWrap form dl dd input[type="email"], body section.form .contWrap form dl dd textarea { font-size: 20px; padding: .6em .6em .5em .6em; border: #e4dcd5 1px solid; border-radius: 5px; background: white; width: 100%; box-sizing: border-box; }
  body section.form .contWrap form dl dd input[type="text"]::placeholder, body section.form .contWrap form dl dd input[type="tel"]::placeholder, body section.form .contWrap form dl dd input[type="email"]::placeholder, body section.form .contWrap form dl dd textarea::placeholder { color: #bfbfbf; }
  body section.form .contWrap form dl dd .select_wrapper { position: relative; }
  body section.form .contWrap form dl dd .select_wrapper select { -webkit-appearance: none; appearance: none; cursor: pointer; font-size: 20px; padding: .6em .6em .5em .6em; border: #e4dcd5 1px solid; border-radius: 5px; background: white; width: 100%; box-sizing: border-box; position: relative; }
  body section.form .contWrap form dl dd .select_wrapper::after { content: ""; position: absolute; top: calc(50% - 4px); right: 20px; border-right: 8px solid transparent; border-left: 8px solid transparent; border-top: 10px solid #bfbfbf; border-bottom: 0; }
  body section.form .contWrap form .cbWrap { margin-top: 60px; text-align: center; }
  body section.form .contWrap form p.cb1 { display: inline-block; margin: 0 auto; text-align: center; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] { display: none; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] + label { cursor: pointer; padding-left: 32px; display: block; font-size: 20px; font-weight: 100; position: relative; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] + label::before { content: ''; position: absolute; left: 0; top: calc(50% - 10px); height: 20px; width: 20px; background: white; border: #245e9a 1px solid; border-radius: 4px; }
  body section.form .contWrap form p.cb1 input[type="checkbox"] + label::after { opacity: 1; content: ''; position: absolute; left: 8px; top: calc(50% - 7px); height: 10px; width: 4px; border-bottom: white 3px solid; border-right: white 3px solid; transform: rotate(45deg); }
  body section.form .contWrap form p.cb1 input[type="checkbox"]:checked + label::before { background: #245e9a; border: #245e9a 1px solid; }
  body section.form .contWrap form p.cb1 input[type="checkbox"]:checked + label::after { opacity: 1; }
  body section.form .contWrap form p#form_submit { font-size: 0; line-height: 1; width: 330px; height: 50px; margin: 30px auto 0; }
  body section.form .contWrap form p#form_submit input[type="button"] { cursor: pointer; background: url("../img/pc_btn_09_01.png") no-repeat 0 0; background-size: 100% auto; width: 330px; height: 50px; font-size: 0; }
  body footer { background: #0d0d0d; }
  body footer > div { max-width: 1280px; margin: 0 auto; padding: 60px; background: none; text-align: center; display: flex; justify-content: space-between; align-items: center; }
  body footer > div .logo { width: 100%; max-width: 581px; margin: 0 auto 10px; }
  body footer > div .logo + p { color: white; text-align: left; }
  body footer > div .logo + p small { font-size: 14px; font-weight: 100; }
  body footer > div ul { width: 190px; display: block; margin-bottom: 0; }
  body footer > div ul li { width: 100%; text-align: left; }
  body footer > div ul li + li { margin-left: 0; margin-top: 30px; }
  body footer > div ul a { width: 100%; display: block; font-size: 16px; color: white; font-weight: 500; letter-spacing: .05em; line-height: 1; padding-right: 0; position: relative; }
  body footer > div ul a::before { content: ''; width: 8px; height: 8px; border-top: white 3px solid; border-right: white 3px solid; transform: rotate(45deg); position: absolute; right: 0; top: calc(50% - 4px); } }
@media all and (min-width: 1280px) { body section.tvInterview { height: 1030px; }
  body section.tvInterview::before { content: ''; width: 258px; height: 363px; background: url(../img/pc_img_01_03.png) no-repeat 0 0; background-size: 100% auto; position: absolute; left: calc(50% - 124px); top: 444px; }
  body section.secret .contWrap.pnt1 { position: relative; }
  body section.secret .contWrap.pnt1 h3 { position: relative; left: 50%; max-width: 1600px; height: auto; margin-left: -640px; margin-bottom: 50px; } }
