html, body{ margin: 0; padding: 0;}
html { scroll-behavior: smooth; scroll-padding-top: calc(11vw - 1px);}
.sLanding *{ margin: 0; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box;}
.sLanding{ width: 100%; margin: 0 auto; font-size: 3.2vw; line-height: 1.3; font-weight: 400; color: #000000; font-family: "Noto Sans JP", sans-serif;}
.sLanding img{ width: 100%; height: auto; margin: auto; display: block; border: none;}
.sLanding a{ text-decoration: none; color: #000000; display: block;}
.sLanding a:hover{ opacity: .7; transition: .3s ease-in-out; text-decoration: none; display: block;}
.sLanding ul, .sLanding ol{ list-style: none;}
.sLanding em, .sLanding i{ font-style: normal;}
.sLanding span{ display: block;}
.sLanding small{ font-size: 1em;}
.sLanding button{ border: none; text-decoration: none; background: none;}
.sLanding .sp{ display: block;}
.sLanding .pc{ display: none;}

@media screen and (min-width: 721px){
html { scroll-padding-top: calc(4.5vw - 1px);}
.sLanding .sp{ display: none;}
.sLanding .pc{ display: block;}
.sLanding{ font-size: 1.2vw;}
}
@media screen and (min-width: 1001px){
html { scroll-padding-top: 44px;}
.sLanding{ font-size: 12px;}
}

/* Header */
.sHeader{ width: 100%; height: 11vw; padding: 0 2.7%; /*background-color: #ffffff;*/ position: sticky; top: 0; left: 0; display: flex; justify-content: space-between; align-items: center; z-index: 3;}
.sLogo{ width: 53.3%;}
.sSide{ display: none;}
.sNav li a{ font-weight: 400;}

@media screen and (max-width: 720px){
.sNav{ width: 100%; height: 100%; max-height: 0; position: fixed; top: 0; left: 0; transition: max-height .5s ease-out; overflow: hidden; z-index: 3;}
.sNav::after{ content: ""; width: 100%; height: 100%; display: block; background-color: rgba(0, 0, 0, 0.8);}
.sNav ul{ padding: 10% 0 0;}
.sNav li a{ width: 100%; padding: 7% 5%; font-size: 3.8vw; border-bottom: 1px solid #000000; background-color: #ffffff;}
.sNav li:last-child{ border-bottom: none;}
.sHamburger{ width: 10%; height: 4.6vw; display: flex; align-items: center; position: relative; z-index: 4;}
.sHamburger span { width: 100%; height: 0.6vw; background: #b5b5b6;}
.sHamburger span::before,
.sHamburger span::after{ content: ''; width: 100%; height: 0.6vw; display: block; position: absolute;  background: #b5b5b6; transition: all .2s ease-out;}
.sHamburger span::before{ top: 0; left: 0;}
.sHamburger span::after{ bottom: 0; left: 0;}
.sSide:checked ~ .sNav{ max-height: max-content;}
.sSide:checked ~ .sHamburger span{ background: transparent;}
.sSide:checked ~ .sHamburger span::before{ transform: translateY(-50%); top: 50%;}
.sSide:checked ~ .sHamburger span::after{ transform: translateY(-50%); top: 50%; bottom: auto;}
body:has(.sSide:checked) { overflow: hidden;}
}

@media screen and (min-width: 721px){
.sHeader{ height: min(4.5vw, 45px); padding: 0 1%;}
.sLogo{ width: min(20%, 200px);}
.sNav{ width: max-content;}
.sNav ul{ display: flex; gap: clamp(10px, 1vw, 10px);}
.sNav li a{ font-size: clamp(10px, 1vw, 12px);}
}

/* 看板 */
.sKanban{ background: #fff;}
.sMV{ width: 100%; margin: auto;}

/* ボタン */
.sButton{ margin: 0 0 7%;}
.sButton.sLast{ margin-bottom: 0% !important;}
.sButton .btn{ padding: 1.2em 0; text-align: center; background: #F0F0F0;}
.sButton .btn p{ font-size: 4.26vw; font-weight: 500;}
.sButton a{ width: 94.66%; margin: .5em auto; padding: .5em 0; font-size: 5.3vw; font-weight: 700; color: #ffffff; background: #4FBBFF;}
.sButton em{ display: flex; justify-content: center; align-items: center; gap: .35em;}
.sButton em::before{ content: ""; height: 1.4em; aspect-ratio: 1/2; display: block; background: url("../img/arrow.webp") no-repeat 50% 50% / contain;}
.sButton small{ font-size: 3.2vw;}
.sButton .txt{ padding: .9em .75em; font-size: max(10px, 2.66vw); color: #ffffff; background: #0070D6;}

@media screen and (min-width: 721px){
.sMV{ width: min(83.33%, 1000px);}

.sButton{ margin: 0 0 3.5%;}
.sButton .btn p{ font-size: min(2vw, 24px);}
.sButton a{ width: min(41.16%, 494px); font-size: min(2.33vw, 28px);}
.sButton small,
.sButton .txt{ font-size: clamp(10px, 1vw, 12px);}
.sButton .txt p{ width: min(83.33%, 1000px); margin: auto;}
}

/* iphone17 */
.sPhone .sSlider{ width: 100%; margin: auto; overflow: hidden;}
.sPhone .slider{ width: 100%; aspect-ratio: 375/185; margin: 0 auto 12%;}

.sPhone .slick-dots li {display: inline-block !important;}
.sPhone .slick-slide{ width: 100%; outline: none;}
.sPhone .slick-dots{ width: 100%; margin: 0 0 -5%; padding: 0; display: block; position: absolute; bottom: 0; list-style: none; text-align: center;}
.sPhone .slick-dots li{ width: 3%; margin: 0 1%; padding: 0; display: inline-block; text-align: center; line-height: 1; cursor: pointer; border: none;}
.sPhone .slick-dots li button{ width: 2.2vw; aspect-ratio: 1/1; margin: auto; padding: 0; position: relative; display: block; font-size: 0; line-height: 0; cursor: pointer; color: transparent; border: 0; outline: none; background: transparent;}
.sPhone .slick-dots li button:hover,
.sPhone .slick-dots li button:focus{ outline: none;}
.sPhone .slick-dots li button:hover:before,
.sPhone .slick-dots li button:focus:before{ opacity: 1;}
.sPhone .slick-dots li button:before,
.sPhone .slick-dots li button:after{ content:""; width: 100%; aspect-ratio: 1/1; background:#ECEBEB; display: inline-block; position: absolute; top: 0; left: 0; border-radius: 50vh; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
.sPhone .slick-dots li.slick-active button:before,
.sPhone .slick-dots li.slick-active button:after{ background: #A8A8A8;}
.sPhone .slick-arrow { width: 7vw; height: 7vw; margin: auto; font-size: 0; position: absolute; top: 0; bottom: 0; background-color:#ffffff; background-image: url("../img/arrow03.svg"); background-repeat: no-repeat; background-size: 40% auto; border-radius: 50vh; z-index: 2;}
.sPhone .slick-next { right: 3%; background-position: 60% 50%;}
.sPhone .slick-prev { left: 3%; background-position: 55% 50%; transform: scaleX(-1);}

@media screen and (min-width: 721px){
.sPhone .sSlider{ width: min(83.33%, 1000px);}
.sPhone{ padding: 0 0 3%;}

.sPhone .sSlider{ display: flex; justify-content: center;}
.sPhone .slider{ width: 255%; aspect-ratio: 2550/210; margin: 0 auto 5%;}
.sPhone .slider p{ width: 85%; height: 100%;}
.sPhone .slick-dots{ margin: 0 0 -1%;}
.sPhone .slick-dots li{ width: 1%; margin: 0;}
.sPhone .slick-dots li button{ width: min(1vw, 12px);}
.sPhone .slick-arrow { width: min(2.3vw, 28px); height: min(2.3vw, 28px);}
.sPhone .slick-next { right: 31%;}
.sPhone .slick-prev { left: 31%;}

.sPhone h2{ width: min(83.33%, 1000px); margin: auto;}
}

/* Common infoBtm*/
.infoBtm{ padding: 5% 0 10%; font-size: max(10px, 2.66vw); font-weight: 400;}
.infoBtm p{ width: 94.66%; margin: 0 auto 1em; padding: 1em;}
.infoBtm span{ width: 94.66%; margin: auto;}
.infoBtm p,
.infoBtm span em{ font-size: 1.2em; font-weight: 600;}
.infoBtm span em{ margin: 0 0 .5em; display: block;}

@media screen and (min-width: 721px){
.infoBtm{ width: min(83.33%, 1000px); margin: auto; padding: 2% 0 3%; font-size: clamp(10px, 1vw, 12px);}
.infoBtm p{ font-size: 1.4em; margin: 0 auto .5em;}
.infoBtm p,
.infoBtm span{ width: 100%;}
}

/* 機種ラインナップ */
.sLineup .tabWrap{ padding: 8% 0;}
.sLineup .bigTabs{ width: 100%; margin: auto auto 5%; display: flex; justify-content: space-between; align-items: stretch; text-align: center;}
.sLineup .bigTabs li{ width: 33%; padding: 1em 0; font-size: 3.7vw; line-height: 1; font-weight: 600; background: #EFEFEF; color: #BBBDBD; cursor: pointer;}
.sLineup .bigTabs li:first-child{ padding: 0; display: flex; justify-content: center; align-items: center;}
.sLineup .bigTabs li:first-child span{ width: 44%;}
.sLineup .bigTabs li.is-active{ background: #6892B7; transition: all 0.2s ease-out;}
.sLineup .bigTabs li.is-active *{ filter: contrast(300%);}

.sLineup .subTabs{ width: 72%; margin: 0 auto 5%; display: flex; align-items: center; text-align: center;}
.sLineup .subTabs li{ width: 50%; padding: .3em 0 .4em; font-size: max(8px, 2.13vw); font-weight: 600; color: #bbbdbd; background: #efefef; cursor: pointer;}
.subTabs li.is-active{ background: #000; color: #ffffff; transition: all 0.2s ease-out;}
.sLineup .bigPanel,
.sLineup .subPanels .panel{ display: none;}
.sLineup .bigPanel.is-show,
.sLineup .panel.is-show{ display: block;}
.sLineup .phoneWrap{ position: relative;}
.sLineup .arrow{ width: 6.9vw; aspect-ratio: 1/1; position: absolute; top: 50%; right: 0%; transform: translateY(-50%); background: #a8a8a8 url("../img/arrow02.svg") no-repeat 55% 50%/ 40% auto; border-radius: 50vh; cursor: pointer; user-select: none; transition: opacity 0.2s ease;}
.sLineup .arrow:hover{ opacity: 0.7;}
.sLineup .prev-arrow{ left: 0; right: auto; transform: translateY(-50%) rotate(180deg); order: -1;}

.sLineup .infoBtm{ padding-bottom: 0;}
.sLineup .infoBtm *{ width: 100%;}
.sLineup .infoBtm p{ background: #e0e9f0;}
.sLineup .panelWrap{ width: 94.66%; margin: auto;}
.sLineup .mds p{ margin: 2em 0 0; padding: .7em 0; font-size: max(9px, 2.4vw); font-weight: 600; color: #ffffff; background: #6892b7; text-align: center;}
.sLineup .mds span{ width: 100%; font-size: 1.88em; font-weight: 700;}
.sLineup .panelGg .mds span{ margin: 0 0 .3em; padding: 0 0 .3em; border-bottom: 1px solid #ffffff;}
.sLineup .info p{ margin: 1.5em auto .8em; font-size: max(9px, 2.4vw); text-align: center; font-weight: 400;}
.sLineup .info p span{ margin: 0 0 .2em; font-size: 1.4em; font-weight: 700; color: #6892b7}
.sLineup .info p em{ margin: 0 -.4em;}

@media screen and (min-width: 721px){
.sLineup h2{ width: min(83.33%, 1000px); margin: auto;}

.sLineup .tabWrap{ padding: 5em 0;}
.sLineup .bigTabs{ width: min(83.33%,1000px); margin: 0 auto 4em;}
.sLineup .bigTabs li{ padding: .5em 0; font-size: min(1.8vw,22px);}

.sLineup .subTabs{ width: 45%; margin: 0 auto 3%;}
.sLineup .subTabs li{ font-size: min(1.3vw, 16px);}
.sLineup .arrow{ width: min(4.5vw, 54px); transform: translate(250%, -50%);}
.sLineup .prev-arrow{ transform: translate(-250% ,-50%) rotate(180deg);}

.sLineup .panelWrap{ width: min(58.33%, 700px);}

.sLineup .infoBtm{ width: 100%;}
.sLineup .infoBtm p{ font-size: 1.33em;}
.sLineup .mds p{ font-size: min(1.5vw, 18px);}
.sLineup .mds span{ font-size: 1.6em;}
.sLineup .info p{ font-size: min(1.16vw, 14px);}
.sLineup .info p span{ font-size: 1.7em;}
}

/* 各種プラン */
.sPlans .info{ padding: 5% 0;}
.sPlans .cnt01{ width: 83.75%; margin: 5% auto 1%;}
.sPlans .cnt02{ width: 94.66%; margin: auto;}

.sPlans .plan01 .info{ background: linear-gradient(90deg, #FFE58B, #FFB785);}
.sPlans .plan01 h2{ width: 88.5%; margin: auto;}
.sPlans .plan01 .infoBtm p{ background: #FFE4D4;}

.sPlans .plan02 .info{ background: linear-gradient(90deg, #A1E1EE, #92AAFF);}
.sPlans .plan02 h2{ width: 91.2%; margin: auto;}
.sPlans .plan02 .infoBtm p{ background: #ddf4f9;}

@media screen and (min-width: 721px){
.sPlans .info{ width: min(83.33%, 1000px); margin: auto; padding: 3% 0;}
.sPlans .cnt01{ width: 81.6%; margin: 3.5% auto 1%;}
.sPlans .cnt02{ width: 92%;}

.sPlans .infoBtm span em{ font-size: 1.25em;}

.sPlans .plan01 h2{ width: 73.9%;}
.sPlans .plan02 h2{ width: 81.7%;}
}

/* 他のプラン */
.sOther .otherTabs{ width: 100%; margin: 0 auto; display: flex; justify-content: space-between; align-items: stretch; text-align: center;}
.sOther .otherTabs li{ width: 24.8%; padding: 1em 0; font-size: 3.2vw; line-height: 1.25; font-weight: 600; background: #EFEFEF; color: #BBBDBD; cursor: pointer;}
.sOther .otherTabs li.is-active{ background: #009076; transition: all 0.2s ease-out;}
.sOther .otherTabs li:nth-child(2).is-active{ background: #5E2DEA;}
.sOther .otherTabs li:nth-child(3).is-active{ background: #DF4BD3;}
.sOther .otherTabs li:nth-child(4).is-active{ background: #FF0033;}
.sOther .otherTabs li.is-active *{ filter: contrast(300%);}

.sOther .otherPanels{ width: 100%; margin: 0 auto;}
.sOther .opanel{ padding: 1em 0; display: none;}
.sOther .opanel.is-show{ display: block;}
.sOther .opanel .content{ width: 94.6%; margin: 0 auto; background: #ffffff;}
.sOther .opanel h2{ margin: 0 auto 1em;}
.sOther .opanel .obi{ width: 73.8%; margin: 0 auto; transform: translateY(-50%);}
.sOther .opanel .info,
.sOther .opanel p{ margin: 0 auto;}
.sOther .opanel p{ padding: 1em 0 2em; font-size: min(10px, 2.66vw);}
.sOther .opanel p a{ font-weight: 600; color: #0078FF; display: inline; white-space: nowrap;}

.sOther .opanel.debut{ background: linear-gradient(to right, #D9F000, #9DE96F);}
.sOther .opanel.debut h2{ width: 89.3%;}
.sOther .opanel.debut .info,
.sOther .opanel.debut p{ width: 93.2%;}
.sOther .opanel.debut .info02{ width: 88.16%;}

.sOther .opanel.mini{ background: linear-gradient(to right, #E5C0FF, #A7A1FF);}
.sOther .opanel.mini h2{ width: 81.6%;}
.sOther .opanel.mini .info,
.sOther .opanel.mini p{ width: 90%;}
.sOther .opanel.mini .info01{ margin-top: .8em;}

.sOther .opanel.merihari{ background: linear-gradient(to right, #FED4F5, #FF90EB);}
.sOther .opanel.merihari h2{ width: 62.93%;}
.sOther .opanel.merihari .obi{ width: 81.4%;}
.sOther .opanel.merihari .info,
.sOther .opanel.merihari p{ width: 92.95%;}

.sOther .opanel.paytoku{ background: linear-gradient(to right, #FFD1DA, #FF859D);}
.sOther .opanel.paytoku h2{ width: 58.4%; margin-bottom: 0;}
.sOther .opanel.paytoku .note{ padding: 0 0 1em; font-size: min(7px, 1.8vw); text-align: center;}
.sOther .opanel.paytoku .info{ width: 86.7%; padding: 2em 0 0; position: relative;}
.sOther .opanel.paytoku p{ width: 86.7%;}
.sOther .opanel.paytoku .info a{ width: 6em; height: 1em; position: absolute; bottom: .8em; right: 7.4em;}

.sOther .tabBtm{ width: 94.6%; margin: 2em auto;}

@media screen and (min-width: 721px){
.sOther .otherTabs,
.sOther .otherPanels{ width: min(83.33%, 1000px);}
.sOther .otherTabs li{ padding: .5em 0; font-size: min(1.8vw, 22px); line-height: 1.1;}

.sOther .opanel{ padding: 3em 0 3.4em;}
.sOther .opanel h2{ margin: 0 auto 2em;}
.sOther .opanel .content{ width: 92%;}
.sOther .opanel p{ padding: 1em 0 3em; font-size: min(1vw, 12px);}

.sOther .opanel.debut h2{ width: 85.7%;}
.sOther .opanel.debut .info02{ margin-top: 1em;}

.sOther .opanel.mini h2{ width: 78%;}

.sOther .opanel.merihari h2{ margin-bottom: 3em;}

.sOther .opanel.paytoku .note,
.sOther .opanel.paytoku .info a{ font-size: min(1vw, 12px);}
.sOther .opanel.paytoku .info a{ width: 12.4em; height: 2em; bottom: 2.5em; right: 19.5em;}
.sOther .opanel.paytoku .info a:hover{ background: rgba(255, 255, 255, 0.5); transition: .2s ease-in-out;}

.sOther .tabBtm{ width: min(76.66%, 920px); margin: 5em auto;}
}

/* オンラインショップの使い方 */
.sGuide{ padding: 0 0 10%;}
.sGuide h2{ padding: 8% 0 0; background: #95d4e6;}
.sGuide h2 img{ width: 95%; margin: auto;}
.sGuide ul{ margin: 0 auto 5%; display: flex; justify-content: space-evenly; flex-wrap: wrap; overflow: hidden;}
.sGuide ul::after{ content: ""; width: 45.5%;}
.sGuide li{ width: 45.5%; margin: 5% 0 0; position: relative;}
.sGuide li:not(:last-child)::after{ content: ""; display: block; position: absolute; top: 50%; right: -8vw; transform: translateY(-50%); border: solid transparent; border-color: rgba(69, 197, 222, 0); border-width: 3vw 4vw 3vw 4vw;  border-left-color:#45c4de;}
.sGuide li:last-child::after{ content: ""; width: 100%; height: 2vw; margin: 2% 0 0; display: block; background: url("../img/guide_note.webp") no-repeat 100% 0 / auto 100%;}

.sGuide .check{ width: 94.66%; margin: auto;}

@media screen and (min-width: 721px){
.sGuide{ padding: 0 0 5%;}
.sGuide h2{ padding: 2% 0 0;}
.sGuide h2 img{ width: min(57.8%, 694px);}
.sGuide ul{ width: min(75%, 900px);}
.sGuide li{ width: 30%;}
.sGuide li:not(:last-child)::after{ right: -4.2vw; border-width: 1.2vw 2.2vw 1.2vw 2.2vw;}
.sGuide li:last-child::after{ height: min(.9vw, 11px)}

.sGuide .check{ width: min(83.33%, 1000px);}
}

@media screen and (min-width: 1001px){
.sGuide li:not(:last-child)::after{ right: -45px; border-width: 15px 25px 15px 25px;}
}

/* オンラインショップ割 */
.sMinus{ margin: -7% 0 0;}
.sOnline{ padding: 5% 0; background: #81d5ff;}
.sOnline h2{ width: 90.9%; margin: auto;}
.sOnline .info{ position: relative;}
.sOnline h3{ width: 84.8%; margin: auto; position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%);}
.sOnline ul{ width: 94.66%; margin: 10% auto 0; padding: 10% 4.4% 5%; background: #ffffff;}
.sOnline li:not(:first-child){ margin: 3% 0 0; padding: 1em 1em 1.3em; font-size: max(10px, 2.66vw); font-weight: 400; background: #d9f7ff;}
.sOnline li:not(:first-child) span{ width: max-content; margin: 0 auto .5em; padding: .25em 1em; font: 1.1em; sans-serif; font-weight: 600; background: #5edbff; color: #ffffff;}
.sOnline li a{ margin: .3em 0 0; font-weight: 600; color: #0078ff;}

@media screen and (min-width: 721px){
.sMinus{ margin: -3.5% 0 0;}
.sOnline{ padding: 3% 0;}
.sOnline h2{ width: min(73.75%, 885px);}
.sOnline h3{ width: min(68.75%, 825px);}
.sOnline ul{ width: min(76.66%, 920px); margin: 8% auto 0; padding: 6% 4.35% 4%;}
.sOnline li:not(:first-child){ font-size: min( 1.6vw, 20px);}
}
@media screen and (min-width: 1201px){
.sOnline ul{ margin: 7em auto 0;}
}

/* PayPayカード */
.sPaypal{ padding: 8% 0 6%; background: #fff22c; position: relative;}
.sPaypal::before,
.sPaypal::after{ content: ""; width: 100%; aspect-ratio: 1200/1415; position: absolute; top: 0; left: 0; background: url("../img/paypal_bg.webp") no-repeat 50% / 100%; z-index: 1;}
.sPaypal::after{ aspect-ratio: 1200/1091; top: auto; bottom: 0; background: url("../img/paypal_bg02.webp") no-repeat 50% / 100%;}
.sPaypal *{ margin: auto; position: relative; z-index: 2;}
.sPaypal h2{ width: 78.4%;}
.sPaypal li:nth-child(2){ margin: 8% auto 0;}
.sPaypal .info{ width: 94.66%; padding: 5% 0; background: #ffffff;}
.sPaypal .info h3{ width: 76.6%;}
.sPaypal .info p{ width: 89%; margin: 1em auto 0; font-size: max(10px, 2.66vw); font-weight: 400;}
.sPaypal .info em{ margin: 0 0 1em; font-size: 1.2em; font-weight: 600; display: block;}
.sPaypal .info a{ display: inline; color: #0078ff; font-weight: 600;}
.sPaypal h3.btm{ width: 86.66%; margin: 5% auto 0;}

@media screen and (min-width: 721px){
.sPaypal h2{ width: min(62.8%, 754px);}
.sPaypal .info{ width: min(83.33%, 1000px);}
.sPaypal .info h3{ width: 70.4%;}
.sPaypal .info p{ margin: 1.5em auto 0; font-size: clamp(10px, 1vw, 12px);}
.sPaypal h3.btm{ width: min(69.5%,834px);}
}
@media screen and (min-width: 1201px){
.sPaypal{ padding: 6em 0 5em;}
.sPaypal h3.btm{ margin: 5em auto 0;}
}

/* あんしん保証パック */
.sWarranty{ padding: 0 0 5%;}
.sWarranty h2{ padding: 5% 0 0; background: #fff2f1;}
.sWarranty h2 span{ width: 95.2%; margin: auto;}
.sWarranty h3{ width: 52.26%; margin: 1em auto 0;}
.sWarranty ul{ width: 94.66%; margin: auto;}
.sWarranty li{ margin: 1em 0 0;}
.sWarranty p{ width: 94.66%; margin: 2em auto 0; padding: .5em; font-size: max(12px, 3.2vw); font-weight: 600; background: #ffe0de;}

@media screen and (min-width: 721px){
.sWarranty h2{ padding: 2% 0 0;}
.sWarranty h2 span{ width: min(63.5%, 762px);}
.sWarranty h3{ width: min(37%, 445px); margin: 3em auto 0;}
.sWarranty ul{ width: min(77.5%, 930px); display: flex; justify-content: space-between; flex-wrap: wrap;}
.sWarranty li{ width: calc(450% / 9.3); margin: 2.5em 0 0;}
.sWarranty p{ width: min(83.33%, 1000px); margin: 3em auto 0; padding: 1.3em 1.5em; font-size: min(1.4vw, 17px);}
}

/* よくある質問 */
.sQA{ padding: 10% 0 5%; background: #cce2f7;}
.sQA .content{ position: relative;}
.sQA h3{ width: 74.13%; position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); z-index: 4;}
.sQA ul{ width: 94.66%; margin: auto; padding: 2.5em 0 1em; background: #ffffff;}
.sQA li{ width: 91.5%; margin: auto; padding: 2em 0; font-size: 2.66vw; font-weight: 400;}
.sQA li:not(:last-child){ border-bottom: 1px dotted #6d6d6d;}
.sQA li div{ display: flex; justify-content: space-between;}
.sQA li div::before{ content: ""; width: 6.9vw; aspect-ratio: 1/1; background: url("../img/qa01.webp") no-repeat 50% / 100%;}
.sQA li .question{ margin: 0 0 .8em; font-size: 1.1em; font-weight: 600; align-items: center;}
.sQA li .answer{ align-items: flex-start;}
.sQA li .answer::before{ background: url("../img/qa02.webp") no-repeat 50% / 100%;}
.sQA li p{ width: calc(100% - 9vw);}

@media screen and (min-width: 721px){
.sQA{ padding: 7% 0 5%}
.sQA h3{ width: min(46.3%, 556px);}
.sQA ul{ width: min(83.33%, 1000px); padding: 3.5em 0;}
.sQA li{ font-size: min(1.66vw, 20px);}
.sQA li div::before{ width: min(4.4vw, 53px);}
.sQA li p{ width: 92%;}
}

@media screen and (min-width: 1201px){
.sQA{ padding: 7em 0 5em;}
}

/* Footer */
.sFooter{ padding: 1em 0; font-size: 2.66vw; background: #000; text-align: center;}
.sFooter a{ color: #ffffff; font-weight: 400;}

@media screen and (min-width: 721px){
.sFooter{ font-size: min(1.33vw, 16px);}
}