@charset "UTF-8";
/* COMMON STYLE */
.sa-hatarako { color: #5c4e4e}
a:hover { color: #ff7800; opacity: 0.8}
h2 { margin-bottom: 30px; font-size: 20px!important}
h2 .logo { width: 200px}
h3 { margin-bottom: 30px; text-align: center; font-size: 18px!important; font-weight: normal; line-height: 1.5}
h3 span { color: #ff7800}
h3 span span { font-size: 20px}
sup { font-size: 10px; vertical-align: super}
.text-deco-line { color: #5c4e4e}
.notes { color: #666!important}
sub { font-size: 10px}
.buttou-top { display: block; width: 96%; max-width: 755px; margin: 0 auto 10px; text-align: center}
@media screen and (min-width: 768px) { 
  h2 { font-size: 30px!important; font-weight: bold!important}
  h2 .logo { width: 250px}
  h3 { margin-bottom: 40px}
  h3 { font-size: 30px!important}
  h3 span span { font-size: 40px!important}
  .notes { font-size: 10px!important}
  .buttou-top { width: 100%; margin: 0 auto 20px}
}
/* .mv */
h1 { margin: 20px 0 20px -0.5em; font-size: 15px; font-weight: 500; line-height: 1.5}
.mv { background: #fef1d0}
.mv .mv-inr { overflow: hidden}
.mv .box-left, .mv .box-right { width: 100%}
.mv .box-left .mv-logo { display: block}
.mv .point-text { margin-bottom: 10px!important; font-size: 15px; font-weight: bold; line-height: 1.3!important}
.mv .point-text span { margin-left: 5px; font-size: 25px}
.mv .logo-top { margin-bottom: 10px!important; color: #ff7800; font-size: 18px; font-weight: bold; line-height: 1.3!important}
.mv .notes { margin-bottom: 10px!important; color: #5c4e4e!important}
@media screen and (max-width: 767px) {
  h1 { text-align: center}
  .mv .mv-inr { min-height: 458px}
  .mv .box-left .mv-logo { max-width:90%; margin: 0 auto 20px}
  .mv .box-left, .mv .box-right { text-align: center}
  .mv .box-right img { width: 50%}
}
@media screen and (min-width: 768px) { 
  h1 { margin: 0 0 30px -0.5em}
  .mv .mv-inr { display: flex; justify-content: space-between; align-items: flex-end; height: 430px}
  .mv .box-left { display: flex; justify-content: center; flex-direction: column; width: 65%}
  .mv .box-left .mv-logo { max-width: 450px; margin-bottom: 50px}
  .mv .box-right { width: 35%; max-width: 400px}
  .mv .point-text { font-size: 18px}
  .mv .point-text span { font-size: 40px}
  .mv .logo-top { font-size: 15px}
  .mv .logo-top strong { font-size: 24px}
  .mv .notes { margin-bottom: 60px!important}
}
/* video */
.video-area { padding: 40px 0 0}
.video-area .contents-inr { padding-bottom: 0!important}
.video-area .box-outline { display: flex; justify-content: space-between; flex-wrap: wrap}
.video-area .video-wrap { width: 100%; height: auto}
.video-area .video-wrap .lite-youtube-fallback { aspect-ratio: 16 / 9; display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 1em; padding: 1em; background-color: #000; color: #fff; text-decoration: none}
.video-area .video-wrap .lite-youtube-fallback::before { display: block; content: ''; border: solid transparent; border-width: 2em 0 2em 3em; border-left-color: red}
.video-area .video-wrap .lite-youtube-fallback:hover::before { border-left-color: #fff}
.video-area .video-wrap .lite-youtube-fallback:focus { outline: 2px solid red}
.video-area .box-text .ttl { margin-top: 10px!important; color: #ff7800; font-size: 20px}
.video-area .box-text p { margin-bottom: 1em!important}
@media screen and (max-width: 767px) {
  .video-area .box-text { width: 100%; text-align: center}
}
@media screen and (min-width: 768px) {
  .video-area .contents-inr { padding-top: 0!important; padding-bottom: 0!important}
  .video-area .video-wrap { width: 49%; max-width: 475px; margin: 0}
  .video-area .box-text { width: 49%; font-size: 14px}
  .video-area .box-text .ttl { margin-bottom: 14px!important; font-size: 26px}
}
/* .sec-motive */
.sec-motive .box-outline { display: flex; justify-content: space-between; flex-wrap: wrap}
.sec-motive .box-left { text-align: center}
.sec-motive .box-left .logo { width: 65%}
.sec-motive .box-right .text { font-weight: bold; font-size: 14px}
.sec-motive .box-right span { background:linear-gradient(transparent 60%, #ffdd88 60%)}
.sec-motive .box-right strong { font-size: 17px}
.sec-motive .box-point { display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 50px; padding: 20px; font-size: 14px; background: #faf5ea; border-radius: 12px}
.sec-motive .box-point figure { max-width: 100px}
@media screen and (max-width: 767px) {
  .sec-motive .box-left .website { max-width: 85%}
  .sec-motive .box-right { margin-top: 30px}
  .sec-motive .box-right .text { margin-bottom: 30px!important; line-height: 1.3!important}
  .sec-motive .box-right figure { margin-bottom: 10px}
  .sec-motive .box-point figure { margin: 0 auto 20px}
}
@media screen and (min-width: 768px) {
  .sec-motive .video-wrap { width: 49%; max-width: 475px; margin: 0}
  .sec-motive .box-left { width: 44%}
  .sec-motive .box-left .logo { width: 200px}
  .sec-motive .box-left p { color: #937f67; margin: 5px 0!important}
  .sec-motive .box-right { width: 43%}
  .sec-motive .box-right .text { font-size: 15px}
  .sec-motive .box-right strong { font-size: 18px}
  .sec-motive .box-right .graph { margin: 40px 30px 15px}
  .sec-motive .box-right .notes { text-align: center}
  .sec-motive .box-point { padding: 20px 40px}
  .sec-motive .box-point figure { max-width: 130px}
  .sec-motive .box-point .box-text { width: calc(100% - 160px)}
  .sec-motive .box-point .ttl{ font-size: 23px; font-weight: bold}
}
/* .material-area */
.material-area { padding: 26px 0; color: #fff; background: linear-gradient(to bottom,#fb7e03 50%, #ff9000 100%)}
.material-area .contents-inr { display: flex; justify-content: center; align-items: center; flex-direction: row-reverse; flex-wrap: wrap}
.material-area .box-left { text-align: center}
.material-area .box-left .text { width: fit-content; margin: auto; font-size: 18px; text-align: left!important; line-height: 1.2}
.material-area .box-left big { position: relative; margin-right: 10px; font-size: 30px; font-weight: bold; font-style: italic}
.material-area .box-left big::after { position: absolute; top: 0; right: -20px; content: ""; width: 20px; height: 20px; background: url(../img/common/img-material-text-top.avif) no-repeat top right/15px auto}
.material-area .box-left small { margin-right: 10px; font-size: 18px}
.material-area a { position: relative; display: flex; justify-content: center; align-items: center; width: 300px; height: 50px; margin: 20px auto 0; color: #ff7800; font-size: 18px; font-weight: 500; background: #fff; border-radius: 50px}
.material-area .text-right { margin: 10px 0 20px!important; font-size: 12px; text-align: center}
.material-area .arrow-right::after {content: "";position: absolute;margin: auto;top: 0;bottom: 0;right: 20px;width: 15px;height: 15px;border: 4px solid;border-color:#ff7800 #ff7800 transparent transparent;transform: rotate(45deg)}
@media screen and (min-width: 768px) { 
.material-area .box-left { width: 40%; text-align: center}
.material-area .box-left .text { font-size: 24px}
.material-area .box-left big { font-size: 44px}
.material-area .box-left big::after { background-size: 20px auto}
.material-area .box-left small { font-size: 22px}
.material-area .box-right { width: 45.5%; max-width: 451px}
.material-area .text-right { margin: 10px 0 0!important; text-align: right}
}
/* .anchor-link */
.anchor-link { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 40px!important}
.anchor-link li { width: 49%}
.anchor-link li a { position: relative; display: flex; justify-content: center; align-items: center; height: 45px; padding-right: 10px; color: #fff; font-size: 11px; background: #524329; border-radius: 4px}
.anchor-link li a:hover .arrow-down::before { background: #fff; border: none}
.arrow-down::before {content: "";position: absolute;margin: auto;top: 0;bottom: 0;right: 5px;width: 20px;height: 20px;border: 1px solid #fff;border-radius: 50%}
.arrow-down::after {content: "";position: absolute;margin: auto;top: -4px;bottom: 0;right: 11px;width: 8px;height: 8px;border: 2px solid;border-color:transparent transparent #fff #fff;transform: rotate(-45deg)}
.anchor-link li a:hover .arrow-down::after { border-color:transparent transparent #ff7800 #ff7800;transform: rotate(-45deg)}
@media screen and (max-width: 767px) {
.anchor-link li:nth-child(n + 3) { margin-top: 6px}
}
@media screen and (min-width: 768px) { 
.anchor-link li { width: 24.5%}
.anchor-link li a { font-size: 16px}
.anchor-link li a:hover { opacity: 1}
.arrow-down::before { right: 10px;width: 30px;height: 30px}
.arrow-down::after { right: 20px;width: 10px;height: 10px}
}
/* .sec-strength */
.sec-strength .box-outline, .sec-strength .box-right { display: flex; justify-content: space-between; flex-wrap: wrap}
.sec-strength .box-outline:nth-of-type(n + 2) { margin-top: 60px}
.sec-strength .number { color: #ff7800}
.sec-strength .box-right { font-size: 14px}
.sec-strength .box-right .ttl{ margin-bottom: 10px!important; font-size: 18px; font-weight: bold}
.sec-strength .box-right .ttl span { color: #ff7800}
.sec-strength .box-right .graph-ttl { display: flex; justify-content: center; align-items: center; width: 100%; margin-bottom: 20px!important; color: #fff; text-align: center; line-height: 1.3!important; background: #5c4e4e; border-radius: 50px}
.sec-strength .box-inr-left, .sec-strength .box-inr-right { width: 100%}
.sec-strength .box-outline figure { width: fit-content; margin: auto}
.sec-strength .box-outline.first figure { margin: 45px 0 20px}
.sec-strength .box-outline.first .box-inr-right { padding-top: 20px}
.sec-strength .box-outline.second figure,
.sec-strength .box-outline.third figure { margin-top: 20px}
.sec-strength .box-outline.second .box-inr-right figure:nth-of-type(1) { margin-bottom: 40px; border: 1px solid #ddd}
.sec-strength .box-outline.fourth ul { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 25px!important}
.sec-strength .box-outline.fourth ul li { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; min-height: 65px; padding: 0 10px 0 50px; font-size: 16px; line-height: 1.3; text-align: center; font-weight: bold; border: 2px solid #ff7800; border-radius: 8px}
.sec-strength .icon-graph01, .sec-strength .icon-graph02, .sec-strength .icon-manuscript, .sec-strength .icon-camera { position: absolute; top: 50%; transform: translateY(-50%); left: 10px; width: 40px; height: 40px}
.sec-strength .icon-graph01 { background: url(../img/sa-hatarako/icon-strength04-01.avif) no-repeat center left/40px auto}
.sec-strength .icon-manuscript { background: url(../img/sa-hatarako/icon-strength04-02.avif) no-repeat center left/40px auto}
.sec-strength .icon-camera { background: url(../img/sa-hatarako/icon-strength04-03.avif) no-repeat center left/40px auto}
.sec-strength .icon-graph02 { background: url(../img/sa-hatarako/icon-strength04-04.avif) no-repeat center left/40px auto}
.sec-strength .box-outline.fourth .box-inr-right .ttl { font-size: 15px}
.sec-strength .notes { width: fit-content; margin: 15px auto 0!important}
@media screen and (max-width: 767px) {
  .sec-strength .number { display: block; width: 100%; margn-bottom: 20px; font-size: 40px; text-align: center}
  .sec-strength .box-right .ttl { width: 100%; text-align: center}
  .sec-strength .box-right .graph-ttl { padding: 6px 10px}
  .sec-strength .box-outline.second .box-inr-left figure { max-width: 80%; margin: 20px auto 40px}
  .sec-strength .box-outline.third .graph-ttl { margin-top: 20px!important}
  .sec-strength .box-outline.fourth figure { max-width: 30%; margin: 20px auto 0}
  .sec-strength .box-outline.fourth ul li:nth-child(n + 2) { margin-top: 2%}
}
@media screen and (min-width: 768px) { 
  .sec-strength .number { width: 140px; font-size: 100px}
  .sec-strength .box-right { width: calc(100% - 140px)}
  .sec-strength .box-right .ttl{ width: 100%; font-size: 23px}
  .sec-strength .box-right .graph-ttl { height: 30px}
  .sec-strength .box-inr-left, .sec-strength .box-inr-right { width: 48%}
  .sec-strength .box-outline.second .box-inr-left figure { max-width: 365px; margin-top: 40px}
  .sec-strength .box-outline.second .box-inr-right figure { max-width: 258px}
  .sec-strength .box-outline.third .graph-ttl { margin: 30px 0!important}
  .sec-strength .box-outline.third .box-inr-left figure,
  .sec-strength .box-outline.third .box-inr-right figure { max-width: 228px}
  .sec-strength .box-outline.fourth .box-inr-left { width: 25%}
  .sec-strength .box-outline.fourth .box-inr-right { width: 67%}
  .sec-strength .box-outline.fourth ul li { width: 49%}
  .sec-strength .box-outline.fourth ul li:nth-child(n + 3) { margin-top: 10px}
  .sec-strength .box-outline .text { font-size: 16px}
  .sec-strength .box-outline.fourth .text { margin-bottom: 30px!important}
}
/* .sec-plans */
input[type="radio"] { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none}
input[name="tab_item"] { display: none}
.tabs { display: flex; justify-content: space-between; flex-wrap: wrap}
.tabs label { display: block; width: 49%; height: 50px; line-height: 50px; color: #999; text-align: center; font-weight: bold; background: #d9d9d9; transition: all 0.2s ease}
.tabs label:hover { cursor: pointer}
.tabs input:checked + label { background: #5c4e4e; color: #fff}
.tabs label:hover { opacity: 0.7}
.tabs .tab_content { width: 100%; display: none; padding-top: 40px}
#kanto:checked ~ #kanto_content,
#kansai:checked ~ #kansai_content,
#tokai:checked ~ #tokai_content,
#fukuoka:checked ~ #fukuoka_content,
#othrer:checked ~ #othrer_content{ display: block}
@media screen and (max-width: 767px) {
.tabs label { font-size: 12px}
.tabs label:nth-of-type(n + 3) { margin-top: 10px}
}
@media screen and (min-width: 768px) { 
.tabs label { width: 19.5%; border-radius: 6px 6px 0 0}
}
.tabs .tab_content dl { display: flex; justify-content: flex-start; flex-wrap: wrap; width: 84%; font-weight: bold}
.tabs .tab_content dt, .tabs .tab_content dd { display: flex; align-items: center; height: 50px; margin-bottom: 10px}
.tabs .tab_content dt:last-of-type, .baitoru .tabs .tab_content dd:last-of-type { margin-bottom: 0}
.tabs .tab_content dt { width: 40%; padding: 0 10px; color: #fff; font-size: 1.515vw; background: #ffa800}
.tabs .tab_content dd { justify-content: center; width: 60%; font-size: 3.3vw; background: #fff7e6; border: 2px solid #ffa800}
.tabs .tab_content dd:after { content: "/1週間あたり"; margin-left: 3px; font-size: 12px; font-weight: normal} 
.tabs .tab_content dt:nth-of-type(2) { background: #ffbf44}
.tabs .tab_content dd:nth-of-type(2) { background: #fff7e6; border-color: #ffbf44}
.tabs .tab_content dt:nth-of-type(3) { background: #a3cf44}
.tabs .tab_content dd:nth-of-type(3) { background:#f6fbed; border-color: #a3cf44}
.tabs .tab_content dt:nth-of-type(4) { background: #6ac459}
.tabs .tab_content dd:nth-of-type(4) { background: #f6fbed; border-color: #6ac459}
.tabs .tab_content dt:nth-of-type(5) { background: #58cfd4}
.tabs .tab_content dd:nth-of-type(5) { background: #effbfb; border-color: #58cfd4}
.tabs .tab_content dt:nth-of-type(6) { background: #46bdc6}
.tabs .tab_content dd:nth-of-type(6) { margin-bottom: 0; background: #effbfb; border-color: #46bdc6}
.tab-outline { display: flex; justify-content: space-between}
.gradation { position: relative; margin-right: 11px; writing-mode: vertical-rl; text-align: center}
.gradation .inr { display: flex; justify-content: space-between; align-items: center; width: 20px; height: calc(100% - 20px); margin-top: 20px; padding: 5% 0; color: #fff; font-size: 18px; background: linear-gradient(to bottom,#ffa800 0%,#ffbf44 20%,#a3cf44 40%,#6ac459 60%,#58cfd4 80%,#46bdc6 100%)}
.gradation:before { position: absolute; top: 0; left: 50%; transform: translateX(-50%); content:""; width: 0; height: 0; border-left: 20px solid transparent; border-right: 20px solid transparent; border-bottom: 20px solid #ffa800}
.tabs .tab_content ul { margin: 20px 0 40px!important; font-size: 14px; line-height: 1.8}
.tabs .tab_content li { margin-left: 1.3em}
.tabs .tab_content li span { font-weight: bold}
.tabs .tab_content li:before { content: "■ "; margin-right: 3px; margin-left: -1.3em; color: #ffa800; font-size: 12px}
@media screen and (max-width: 820px) {
.tabs .tab_content dt, .tabs .tab_content dd { font-size: 16px}
}
@media screen and (max-width: 384px) {
.tabs .tab_content dd { font-size: 12px}
}
@media screen and (min-width: 768px) { 
.tab-outline { width: 600px; margin: auto}
.tabs .tab_content dt, .tabs .tab_content dd { font-size: 18px}
.gradation .inr { width: 30px; height: calc(100% - 30px); margin-top: 26px}
.gradation:before { border-left: 26px solid transparent; border-right: 26px solid transparent; border-bottom: 26px solid #ffa800}
.tabs .tab_content ul { width: fit-content; margin: 50px auto 0!important}
}
/* .sec-example */
.sec-example { padding: 40px 0}
.box-example { margin: 0 30px; padding: 20px; font-size: 14px; border: 1.5px solid #ff7800; border-radius: 12px}
.box-example .ttl { margin-bottom: 22px!important; padding-bottom: 10px; font-size: 18px; font-weight: 700; text-align: center; border-bottom: 1.5px solid #ff7800}
.sec-example .dead { clear: both; width: 100%}
.sec-example .dead .float { display: flex; align-items: center; flex-wrap: wrap}
.sec-example .dead dl { margin: 20px 0; line-height: 1.8}
.sec-example .dead dl dt { position: relative; width: 5em; float: left} 
.sec-example .dead dl dt:after { content: "："; position: absolute; right: 0}
.sec-example .dead dl dd { padding-left: 5em}
.sec-example .dead dl dd span { font-size: 12px; white-space: nowrap}
.sec-example .excerpt { display: flex; justify-content: space-between; flex-wrap: wrap}
.sec-example .excerpt dl { line-height: 1.5}
.sec-example .excerpt dl dt { color: #ff7800; font-weight: bold}
.sec-example .excerpt dl dd:first-of-type { margin-bottom: 20px!important}
.sec-example .company-logo img { width: auto!important; height: 30px!important}
.sec-example .company-name { font-size: 16px; font-weight: 500}
.sec-example .box-link02{ display: flex; justify-content: center; align-items: center; width: 200px; height: 40px; margin: 30px auto 0; color: #fff; background: #ff7800; border-radius: 2px}
@media screen and (max-width: 767px) {
  .sec-example .float { text-align: center}
  .sec-example .float .company-logo { display: block; width: 100%; margin: 0 auto 10px!important}
  .sec-example .float .company-name { display: block; width: 100%}
  .box-example .excerpt figure { display: block; width: 100%; margin-bottom: 30px}
}
@media screen and (min-width: 768px) { 
.sec-example { padding: 80px 0}
.sec-example { margin: 0 50px; padding: 30px 25px}
.sec-example .company-logo { margin-right: 20px}
.sec-example .ttl { font-size: 22px}
.box-example .excerpt figure { width: 30%}
.box-example .excerpt dl { width: calc(100% - 33%)}
.sec-example .box-link02 { width: 60%}
}
/* .sec-example > SLICK Arrows */
.slick-prev, .sa-next .slick-hatarako { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 20px; height: 20px; padding: 0; transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent}
.slick-prev:before, .sa-next .slick-next:before { color: #fff; font-size: 20px; line-height: 1}
.slick-prev { top: 50%; left: 10px; width: 40px; height: 40px; background:rgba(46,56,76,0.95);border-radius: 50px; z-index:10}
.slick-prev:before { content: '←'}
.slick-next { top: 50%; right:10px; width: 40px; height: 40px; background:rgba(46,56,76,0.95); border-radius: 50px; z-index:10}
.slick-next:before { content: '→'}
.slick-track { display: flex}
.slick-slide { height: auto !important}
@media screen and (min-width: 1201px) {
.slick-prev, .slick-next { width: 60px; height: 60px}
.slick-prev:before, .slick-next:before { font-size: 30px}
.slick-prev { left: 270px}
.slick-next { right: 270px}
}
/* .sec-sec-flow */
.sec-flow { position: relative; overflow: hidden}
.sec-flow ul li { width: 100%; padding: 10px 10px 20px; text-align: center; font-size: 14px; background: #fff; line-height: 1.8; border: 1px solid #ddd}
.sec-flow h3 { color: #fff}
.sec-flow ul li .step { font-size: 14px; color: #fff; font-weight: bold; background: #ff7800}
.sec-flow ul li .step:before { content: "step"; font-size: 12px}
.sec-flow ul li .ttl { margin: 10px 0; color: #ff7800; font-size: 16px; font-weight: bold; line-height: 1.3}
.sec-flow ul li .ttl span { font-size: 12px}
.sec-flow ul li .text { font-size: 14px; text-align: left}
@media screen and (max-width: 767px) {
.sec-flow { background: #d2d0cd}
.sec-flow .contents-inr { margin-top: -24vh}
.sec-flow ul li { margin-top: 10px}
.sec-flow ul li:first-child { border-top-left-radius: 12px; border-top-right-radius: 12px}
.sec-flow ul li:last-child { border-bottom-left-radius: 12px; border-bottom-right-radius: 12px}
}
@media screen and (min-width: 768px) { 
.sec-flow {height: 550px}
.sec-flow .bg-image { display: block}
.sec-flow .bg-image img { width: 100%; height: 550px; object-fit: cover}
.sec-flow .contents-inr { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2}
.sec-flow ul li { width: 19%; border-radius: 6px}
.sec-flow ul li .step { padding-bottom: 5px; color: #ff7800; font-size: 20px; background: none; border-bottom: 1.5px solid #ff7800}
.sec-flow ul li .ttl { min-height: 3em}
.sec-flow ul li .ttl span { display: block}
}
/* .sec-faq */
.sec-faq a { color: #ff7800; text-decoration: underline}
.sec-faq .accordion { margin-bottom: 20px; border: 1px solid #ccc}
.sec-faq .toggle { display: none}
.sec-faq .box-faq { position: relative}
.sec-faq .question p { margin: 0!important; line-height: 1.3!important}
.sec-faq .question, .sec-faq .answer { backface-visibility: hidden; transform: translateZ(0); transition: all 0.3s}
.sec-faq .question { display: block; padding: 15px 40px}
.sec-faq .question::after, .sec-faq .question::before { content: ""; position: absolute; right: 1.25em; top: 45%; width: 3px; height: 1em; background-color: #ff7800; transition: all 0.3s}
.sec-faq .question::after { transform: rotate(90deg)}
.sec-faq .answer { max-height: 0; overflow: hidden}
.sec-faq .answer-inr { padding: 15px}
.sec-faq .answer .lead { margin-bottom: 30px!important; padding-bottom: 30px; font-size: 16px; font-weight: 500; border-bottom: 1px dashed #ddd}
.sec-faq .toggle:checked + .question { color: #fff; background: #ff7800}
.sec-faq .toggle:checked + .question + .answer { max-height: 500px; transition: all 1.5s}
.sec-faq .toggle:checked + .question::before { transform: rotate(90deg) !important}
.sec-faq .toggle:checked + .question::after {background-color: #fff}
.sec-faq .ic-q { position: absolute; top: 50%; transform: translateY(-50%); left: 10px; color: #ff7800; font-size: 21px; font-style: normal; font-weight: normal}
.sec-faq .ic-a { display: inline-block; width: 40px; height: 40px; line-height: 36px; margin-right: 10px; color: #fff; font-size: 30px; font-style: normal; text-align: center; background: #ff7800; border-radius: 40px}
@media screen and (min-width: 768px) { 
.sec-faq .question { padding: 20px 40px}
.sec-faq .question::after, .sec-faq .question::before { right: 1.25em; top: 1.25em}
.sec-faq .answer-inr { padding: 30px}
}

/* BUTTON AREA */
.button-area.content { padding: 30px 0 16px; background: #ffe4cc} 
.button-area .contents-inr { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 22px!important}
.button-area .box { position: relative; display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 70px; padding: 0 50px 0 100px; color: #fff; font-size: 18px; font-weight: bold; background: #ff7800; border-radius: 85px; box-shadow: 0 0 4px rgba(0,0,0,0.6)}
.button-area div.box:hover { cursor: pointer}
.button-area .box .point { width: 100%; height: 20px; line-height:20px; margin-bottom: 6px; color: #ff7800; font-size: 10px; text-align: center; font-weight: normal; background: #fff; border-radius: 20px}
.button-area .box .small { margin-top: 5px; font-size: 10px; font-weight: normal}
.button-area .box:nth-of-type(2), .button-area div.box { color: #ff7800; background: #fff!important; border: 2px solid #ff7800}
.button-area .box:nth-of-type(2) .point, .button-area div.box .point { color: #fff; background: #ff7800}
.button-area.mv-btm { margin-top: -20px} 
.button-area.mv-btm .box { background: #6dba44}
.button-area.mv-btm .box:nth-child(2), .button-area.mv-btm div.box { color: #6dba44; border-color: #6dba44}
.button-area.mv-btm .box:nth-child(2) .point, .button-area.mv-btm div.box .point {color: #fff!important; background: #6dba44}
.button-area.mv-btm .box .point { color: #6dba44}
.button-area .icon { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); width: 60px; height: 60px; background-size: 60px auto; background-repeat: no-repeat; background-position: center center}
.button-area .icon.web { background-image: url(../img/sa-hatarako/icon-web.avif)}
.button-area .icon.tel { background-image: url(../img/sa-hatarako/icon-tel.avif)}
.button-area .icon.file { background-image: url(../img/sa-hatarako/icon-file.avif)}
@media screen and (max-width: 767px) {
.button-area.mv-btm { padding-bottom: 30px; background: #fef1d0}
.button-area.mv-btm .text-deco-line { font-size: 14px}
.button-area .box:nth-of-type(2) { margin: 16px 0}
}
@media screen and (min-width: 768px) { 
.button-area .box { width: 32%; height: 85px; padding: 0 3% 0 10%; font-size: 1.818vw; transition-duration: .05s}
.button-area .box:hover { color: #ff7800; background: #fff; transform: scale(1.06); opacity: 1}
.button-area .box:hover .point { color: #fff; background: #ff7800}
.button-area div.box:hover { color: #fff; background: #ff7800!important; border: 2px solid #fff}
.button-area div.box:hover .point { color: #ff7800; background: #fff}
.button-area.mv-btm { margin-top: -42.5px} 
.button-area.mv-btm .box:hover { color: #6dba44!important; background: #fff!important}
.button-area.mv-btm .box:hover .point { color: #fff!important; background: #6dba44}
.button-area.mv-btm div.box:hover { color: #fff!important; background: #6dba44!important; border: 2px solid #fff}
.button-area.mv-btm div.box:hover .point { color: #6dba44!important; background: #fff!important}
}
@media screen and (min-width: 990px) {
.button-area .box { font-size: 18px}
}