@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

common

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ----------------------------------------------------
element base setting (common)
---------------------------------------------------- */
body { color: #444444; line-height: 2; background: #fff;}	
a {color: var(--tx-blue);  text-decoration: none;}
.clickable a, .clickable a:hover { color: #333;}
#wrapper {min-height: 100vh; display: flex; flex-direction: column;}


/* ----------------------------------------------------
parts (common)
---------------------------------------------------- */
:root {
--ff-symbol: 'Material Symbols Outlined';
--ff-en: "Roboto", sans-serif;
--c-blue:#41b8e0;
--c-green:#72cb81;
--tx-blue: #2ba7d5;
--tx-blue-02: #0084cf;
--bg-beige:#f4f4ee;
--bg-blue: #eaf3f6;
--bg-grad-orange: linear-gradient(35deg,rgba(245, 193, 54, 1) 0%, rgba(240, 139, 40, 1) 100%);
--bg-grad-blue: linear-gradient(35deg,rgba(132, 218, 136, 1) 0%, rgba(64, 182, 226, 1) 100%);
}

/* icon */
.ic--symbol {position: relative; }
.ic--symbol::before {font-family: var(--ff-symbol); position: absolute; }
.ic--fill::before {font-variation-settings: 'FILL' 1;}
.ic--left::before { left: 0; top: 50%; translate: -50% -50%;}
.ic--top::before  { left: 50%; top: 0; translate: 0 -50%;}
.ic--contact::before  { content: "\e6c7";}

/* flex */
.flex {display: flex; flex-wrap: wrap;}
.jc--sb {justify-content: space-between;}
.jc--c  {justify-content: center;}
.jc--fe {justify-content: flex-end;}

/* img */
img {width: 100%; height: auto;}
.img-obj {overflow: hidden;}
.img-obj img {width: 100%; height: 100%; object-fit: cover;}




/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

common

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.content {width: 90%; max-width: 1200px; margin-inline:auto;}
.content--M {width: 93.8%; max-width: 1400px; margin-inline:auto;}
.content--L {width: 93.8%;  margin-inline:auto;}

.homTitle {font-size: var(--fs-40); font-weight: 700; letter-spacing: 0.3rem; }
.homTitle span {color: var(--c-blue); font-family: var(--ff-en); font-size: var(--fs-18); display: block; line-height: 1.2; letter-spacing: normal;}
.section__read {font-size: var(--fs-20); font-weight: 600; margin-top: var(--w-20); letter-spacing: 0.2rem;}

.btnCenter {margin: 0 auto; text-align: center;}
a.homBtnCommon {display: block; margin: 0 auto; background: var(--bg-grad-blue); color: #fff; font-weight: 700; font-size: var(--fs-20); max-width: 360px; border-radius: 30vw; padding: var(--w-20); line-height: 1.5;}
.btnMore {margin: var(--w-30) 0 0;}
a.homBtn--S { max-width: 200px; padding:var(--w-10) var(--w-15); text-align: center; margin: inherit; font-family: var(--ff-en);}

@media (max-width: 767px) {
.section__read {letter-spacing: 0.1rem;}
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

home

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* visual */
#homVisual {aspect-ratio: 1380/542; display: flex; justify-content: space-between; align-items: flex-end; position: relative;}
.homVis__s {width: 38%; aspect-ratio: 68/27; border-radius: var(--w-15); display: none;}
.homVis__l {width: 60%; height: 100%; border-radius: var(--w-15); display: none;}
.homVis__l.slick-initialized, .homVis__s.slick-initialized{display: block;}
.homVis__img {border-radius: var(--w-15); overflow: hidden; transition: 0.3s all ease-in-out;}
.homVis__img img {width: 100%; height: 100%; object-fit: cover; object-position:  center top;}
.homVis__s .homVis__img {aspect-ratio: 68/27;}

.homVis__txt {position: absolute; left: 0; top: 10%; z-index: 10;}
.homVis__txt h2 {font-weight:800; font-size: var(--fs-48); line-height: 1.5; margin-bottom: var(--w-40); -webkit-text-stroke: 4px #FFF; text-stroke:4px #FFF; paint-order: stroke;}
.homVis__txt h2 span {font-size: var(--w-40);}
.homVis__txt h2 em {background: linear-gradient(transparent 70%, #f2ed5c 0%);}
.homVis__txt p {margin: 0;  -webkit-text-stroke: 4px #FFF; text-stroke:4px #FFF; paint-order: stroke;}

.homVis__batch {position: absolute; right: -2%; bottom:-2%; width:clamp(150px, 100.781px + 13.125vw, 276px); }

  @media (max-width: 767px) {
   #homVisual {aspect-ratio: 1/1;}
  .homVis__s, .homVis__s .homVis__img {aspect-ratio: 1/1; }
}


/* intro */
#homIntro {margin: var(--w-110) auto;}
#homIntro h2 {font-weight: 700; font-size: var(--fs-44); line-height: 1.5; margin-bottom: var(--w-70);}
#homIntro h2 span {font-size: var(--fs-28); display: block; padding-left: 0.5em;}
#homIntro h2 em {font-size: var(--fs-34);}
 
.homIntro__wrap {position: relative;}
.homIntro__wrap::before{ content: ""; width: 40%; height: 100%; max-height: 460px; border-radius: 0 var(--w-30) var(--w-30) 0; background: url("../img/home/img-homIntro-01.jpg") center center / cover no-repeat; position: absolute; left: 0; top: var(--w-20);}
.homIntro__wrap .content {display: flex; justify-content: flex-end;}
.homIntro__wrap .content .homIntro__cont {width: 53%;}
.homIntro__cont > p {line-height: 2;}

.homIntro__outline {margin-top: var(--w-40);}
.homIntro__ol__block:first-child {border-top: 1px solid #ddd;}
.homIntro__ol__block {border-bottom: 1px solid #ddd;}

.homIntro__ol__title {position: relative; min-height: 6.3em; padding: var(--w-25) var(--w-70); cursor: pointer; display: flex; align-items: center;}
.homIntro__ol__title::before,.homIntro__ol__title::after {content: ""; width: var(--w-25); height: 1px; background: #444; position: absolute; right: 0; top: 50%; transition: 0.3s all ease-in-out;}
.homIntro__ol__title::after {rotate:90deg;}
.homIntro__ol__title.active::after {rotate:0deg;}
.homIntro__ol__title p {margin:0; color: var(--c-blue); font-weight: 600; font-family: var(--ff-en); position: absolute; left: 0; top: 50%; translate: 0 -50%; font-size: var(--fs-30);}
.homIntro__ol__title h3 {font-weight: 600; font-size: var(--fs-20); line-height: 1.6; transition: 0.3s all ease-in-out;}
.homIntro__ol__title:hover h3 {color: var(--c-blue);}
.homIntro__ol__txt {margin: var(--w-10) auto var(--w-40) ; font-size: var(--fs-16); display:none ; }


@media (max-width: 780px) {
.homIntro__wrap {padding-bottom:min(60vw,300px);}
.homIntro__wrap::before{ content: ""; width: 100%; height: min(50vw,250px); max-height: inherit; border-radius: 0; position: absolute;  top: inherit; bottom: 0;}
.homIntro__wrap .content {display: block;}
.homIntro__wrap .content .homIntro__cont {width: 100%;}
}


/* about */
#homAbout  {margin: var(--w-110) auto; text-align: center;}
.homAbout__wrap {margin: var(--w-60) auto var(--w-80);}
.homAbout__cont {background: var(--bg-beige); width: 32.8%; border-radius: var(--w-15); padding: var(--w-30) var(--w-40) var(--w-60);}
.homAbout__cont .homAbout__img {max-width:390px;  margin: 0 auto var(--w-40);}
.homAbout__cont h3 {font-weight: 700; font-size: var(--fs-24); line-height: 1.6; margin: var(--w-15) 0 var(--w-20);}
.homAbout__cont h3 span {color: var(--tx-blue);}
.homAbout__cont p {margin: 0;}


@media (max-width: 1620px) {
.homAbout__cont {padding: var(--w-30) var(--w-25) var(--w-60);}
.homAbout__cont p {text-align: left;}
.homAbout__cont p br {display: none; }

@media (max-width: 945px) {
 .homAbout__cont {width: 100%; margin-bottom: var(--w-15);}

}

}


/* homFeature */
#homFeature {margin: var(--w-110) auto var(--w-90);}
#homFeature h2 {text-align: center; width: 96%; margin: 0 auto var(--w-60); font-weight: 700; font-size: var(--fs-36); letter-spacing: 0.2rem; line-height: 1.5;}
#homFeature h2 span {font-size: var(--fs-60); color: var(--tx-blue);}
#homFeature h2 em {  padding: 0 5px 0 5px; background: linear-gradient(transparent 70%, #f2ed5c 0%);}

.lgSlider {display: none;}
.lgSlider--LR {margin: var(--w-20) auto var(--w-60); display: none;}
.lgSlider__img {margin: 0 var(--w-20); }

.lgSlider.slick-initialized,
.lgSlider--LR.slick-initialized {display: block;}

.homFeat__list {column-gap: 2px;}
.homFeat__cont {width: calc(calc(100% - 4px) / 3); background: var(--bg-blue); margin-bottom: 2px; display: flex; column-gap: var(--w-30); padding: var(--w-20) var(--w-30); align-items: center;}
.homFeat__cont:nth-child(odd) {background: #f2f2e4;}
.homFeat__cont figure {width: 30%; text-align: center;}
.homFeat__cont .homFeat__txt {flex: 1;}
.homFeat__cont .homFeat__txt h3 {font-size: var(--fs-20); font-weight: 700; margin-bottom: 5px;}
.homFeat__cont .homFeat__txt h3 span {font-size: var(--fs-24); color: var(--tx-blue);}
.homFeat__cont .homFeat__txt p {margin: 0; font-size: var(--fs-16); line-height: 1.6;}

@media (max-width: 1240px) {
 .homFeat__cont {width: calc(calc(100% - 2px) / 2); }
 .homFeat__cont:nth-child(3) {background: var(--bg-blue);}
 .homFeat__cont:nth-child(4) {background: #f2f2e4;}

@media (max-width: 765px) {
 .homFeat__cont {display: block;}
 .homFeat__cont figure {width: 60%; max-width: 160px; margin: 0 auto var(--w-10);}
 .homFeat__cont .homFeat__txt h3 {text-align: center; line-height: 1.5;}
}
}

/* homNum */
#homNum {margin:var(--w-90) auto var(--w-120);}
#homNum h2 {text-align: center; font-size: var(--fs-40); font-weight: 700; line-height: 1.6;}
#homNum h2 span {font-size: var(--fs-46); padding: 0 5px 0 5px; background: linear-gradient(transparent 60%, #f2ed5c 0%);}
 
.homNum__wrap {margin-top: var(--w-60);}
.homNum__cont {width: calc(calc(100% - var(--w-30))/4); border: 2px solid var(--c-blue); border-radius: var(--w-15); text-align: center; padding: var(--w-25) var(--w-20) var(--w-30);}
.homNum__cont .homNum__icon {margin: 0 auto var(--w-10); width: var(--w-90);}
.homNum__cont .homNum__num { font-size: var(--fs-44); font-weight: 700; margin: 0;  letter-spacing: normal; line-height: 1; color: #666; }
.homNum__cont:not(:nth-child(3))  .homNum__num{translate: 7% 0;}
.homNum__cont .homNum__num span {font-size: var(--fs-110); font-family: var(--ff-en);  letter-spacing: -0.25rem;  margin-right: 10px; color: var(--c-blue);}
.homNum__cont:nth-child(3) .homNum__num span {letter-spacing: -0.8rem;} 
.homNum__cont h3 {background: var(--c-blue); color: #fff; border-radius: 30vw; font-size: var(--fs-24); font-weight: 700; padding: 5px; line-height: 1.6; margin-bottom: var(--w-15);}
.homNum__cont .homNum__read {margin: 0; line-height: 1.6;}
.homNum__cont:nth-child(odd) {border-color: #72cb81;}
.homNum__cont:nth-child(odd) .homNum__num span {color:#72cb81;}
.homNum__cont:nth-child(odd) h3 {background: #72cb81;}

@media (max-width: 1390px) {
 .homNum__cont .homNum__num { font-size: var(--fs-40); }
 .homNum__cont .homNum__num span {font-size: var(--fs-100);}

 @media (max-width: 1070px) {
  .homNum__cont {width: calc(calc(100% - var(--w-15))/2); margin-bottom: var(--w-15); }
  .homNum__cont:nth-child(3)  {order: 4;}
  .homNum__cont:nth-child(4)  {order: 3;}
  .homNum__cont .homNum__num { font-size: var(--fs-44); }
  .homNum__cont .homNum__num span {font-size: var(--fs-120); letter-spacing: -0.2rem !important;}
  .homNum__cont .homNum__read  br {display: none;}
 }

}

/* homFlow */
#homFlow {background: var(--bg-blue); padding: var(--w-100) 0;}
#homFlow .homFlow__wrap {margin-bottom: var(--w-60); column-gap: var(--w-40); align-items: flex-end;}
#homFlow .section__read {margin-bottom: var(--w-60);}
#homFlow .homFlow__cont {width: 42%;}
#homFlow .homFlow__img {flex: 1;}

.homFlow__list {margin: 0 auto var(--w-70);}
.homFlow__list .homFlow__list__img {margin: 0 auto var(--w-20);  max-width: 150px;}
.homFlow__list li {width: calc(calc(100% - var(--w-30))/4); background: #fff; border-radius: var(--w-10); padding: var(--w-30); text-align: center;}
.homFlow__list li h3 {font-weight: 600;}
.homFlow__list li h3 span {display: block; font-family: var(--ff-en); color: var(--c-blue); font-size: var(--fs-14);}

@media (max-width: 1240px) {
#homFlow .homFlow__cont {width: 100%;}
#homFlow .homFlow__img {text-align: center; margin: var(--w-30) 0 0;}
#homFlow .homFlow__img img {max-width: 800px;}
.homFlow__list li {padding: var(--w-30) var(--w-15);}

 @media (max-width: 970px) {
  .homFlow__list li {width: calc(calc(100% - var(--w-15))/2); margin-bottom: var(--w-15)}
  
 }

}


/* homCase */
#homCase {padding: var(--w-90) 0 var(--w-120);}
#homCase .homTitle {text-align: center;}
#homCase .cat__list {margin: var(--w-30) auto 0;}
.cat__list {display: flex; justify-content: center; column-gap: var(--w-10); flex-wrap: wrap;}
.cat__list li {margin-bottom: var(--w-10);}
.cat__list li a {display: block; min-width: var(--w-110); border-radius: 30vw; border: 2px solid var(--c-blue); text-align: center; padding: var(--w-10) var(--w-20); line-height: 1; font-weight: 600; font-size: var(--fs-16);}
.cat__list li a:hover{background: var(--c-blue); color: #fff;}

.homCase__sp__wrap {margin: var(--w-50) auto var(--w-100); position: relative;}
.homCase__sp__txt {width: 52%;}
.homCase__sp__slider {width: 48%; min-height: 510px; }

.homCase__sp__cont {width: 90%; max-width: 600px; margin: 0 auto;  padding: var(--w-40) 0;}
.homCase__sp__cont h3 {font-family: var(--ff-en); font-weight: 600; color: #666666; font-size: var(--fs-30); letter-spacing: 0.15rem; margin-bottom: var(--w-60);}
.homCase__sp__cont h3 span {color: var(--tx-blue);}

.homCase__sp a {display: block; position: relative; color: #444; padding: var(--w-20) 0 var(--w-20) var(--w-80); border-bottom: 1px solid #ddd; }
.homCase__sp:first-child a {border-top: 1px solid #ddd;}
.homCase__sp a p {margin: 0;}
.homCase__sp__num {font-family: var(--ff-en); color: #cccccc; font-size: var(--fs-30); font-weight: 600; position: absolute; left: var(--w-20); top: 50%; translate: 0 -50%;}
.homCase__sp__data {font-size: var(--fs-16);font-weight: 600;}
.homCase__sp__data span {color: var(--tx-blue); margin-right: 0.5em;}
.homCase__sp a h4 {font-weight: 700; font-size: var(--fs-20);}

.homCase__sp__thum .slick-current a,
.homCase__sp a:hover, .homCase__sp.current a, .homCase__sp.current .homCase__sp__num {color: var(--c-blue);}

/* .homCase__sp > slick */
.homSpecial {display: none;}
.homSpecial.slick-initialized{display: block;}
.homSpecial__img {border-radius: var(--w-30) 0 0 var(--w-30); overflow: hidden;}
.homSpecial__img img {width: 100%; height: 100%; object-fit: cover;}
.homSpecial .slick-dots {translate: 0 -200%; margin: 0; display: flex; justify-content: center;}
.homSpecial .slick-dots li button:before { background: #fff;}

 @media (max-width: 790px) {
 .homCase__sp__num {left: var(--w-10);}
 .homCase__sp__txt {width:100%;}
 .homCase__sp__cont {max-width: inherit; }
 .homCase__sp__slider {width: 100%; min-height: inherit; height: min(60vw,360px); border-radius: 0;}
 .homSpecial__img {border-radius:0;}
 }

.homCase__slider { margin-bottom: var(--w-60);}
.homCase__block {margin: 0 var(--w-10);}
.homCase__block a {display: block; background: var(--bg-beige); width: min(26.66vw,320px); color: #444; border-radius: var(--w-15); margin: 0 auto; font-size: var(--fs-16); }
.homCase__block a .homCase__img {border-radius: var(--w-15) var(--w-15) 0 0; aspect-ratio: 32/20; background: #aaa;}
.homCase__block a .homCase__txt {padding: var(--w-15) var(--w-25) var(--w-20); }
.homCase__block a .homCase__date {margin: 0; font-size: var(--fs-14); font-family: var(--ff-en); font-weight: 600;}
.homCase__block a h3 {font-weight: 700; line-height: 1.5; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
.homCase__block a .homCase__cat {margin: var(--w-10) 0 0; font-size: var(--fs-12); display: flex; column-gap: var(--w-10); flex-wrap: wrap;}
.homCase__block a .homCase__cat li {background: var(--c-blue); color: #fff; padding: 0 5px; border-radius: 3px;} 

/* homCase > slick */
.homCase {display: none;}
.homCase.slick-initialized{display: block;}
.homCase .slick-dots {margin-top: var(--w-30);}
.homCase .slick-prev, .homCase .slick-next { position: absolute; left: 50%; bottom: 0; translate: -50% 30%;}
.homCase .slick-prev {margin-left: max(-12.5vw, -150px);}
.homCase .slick-next {margin-left: min(12.5vw, 150px);}

 @media (max-width: 790px) {
.homCase__block a { width: min(50vw,320px); }
.homCase .slick-prev {margin-left: max(-30vw, -150px);}
.homCase .slick-next {margin-left: min(30vw, 150px);}
 }


/* homPost */
#homPost {margin-bottom: var(--w-130); column-gap: var(--w-100)}
#homPost .homTitle {font-size: var(--fs-30); margin-bottom: var(--w-30);}
#homPost .homTitle span {font-size: var(--fs-16);}
.homPost__column {flex: 1;}
.homPost__sns {width: 40%; background: var(--bg-blue); border-radius: var(--w-15); padding: var(--w-50) var(--w-60);}
.homPost__col__inr {width: 100%; margin: 0 auto; max-width: 740px;}

.homPost__col {padding: 5px 0 var(--w-30); position: relative; font-size: var(--fs-16); border-bottom: 1px solid #ddd; }
.homPost__col:not(:first-child) {margin-top: var(--w-30);}
.homPost__col a {color: #444;
 display: grid;
 grid-template-columns: 30% 1fr;
 grid-template-rows:max-content 1fr;
 grid-column-gap: var(--w-30);
 grid-row-gap: 0px;
}

.homPost__col figure { grid-area: 1 / 1 / 3 / 2; }
.homPost__col h3 { grid-area: 1 / 2 / 2 / 3; }
.homPost__col p { grid-area: 2 / 2 / 3 / 3; line-height: 1.6; margin: 0;}

.homPost__col figure{aspect-ratio: 19/12; background: #eee; border-radius: var(--w-10); width: 100%;}
.homPost__col h3 {font-weight: 700; font-size: var(--fs-18); margin-bottom: 5px;}

.homPost__title__sns {margin: var(--w-40) auto var(--w-10);}
.homPost__title__sns img {max-width:160px;}
.homPost__sns__list {font-family: var(--ff-en); display: flex; column-gap: var(--w-30); flex-wrap: wrap; font-size: var(--fs-20); margin: 0;}
.homPost__sns__list a {color: #444; font-weight: 600;}
.homPost__sns__list a.link__ex {padding-right: 1.25em; position: relative;}
.homPost__sns__list a.link__ex::before{content: ""; background: url("../img/home/ic-ext-01.svg") center center / cover no-repeat; aspect-ratio: 1/1; width: var(--fs-14); position: absolute; right: 0; top: 50%; translate: 0 -50%;}

@media (max-width: 950px) {
 .homPost__sns {width: 100%; margin-top: var(--w-50);}
 .homPost__col__inr {max-width: inherit;}
}

@media (max-width: 520px) {
 .homPost__col a {
 grid-template-columns: 40% 1fr;
 }
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

main

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#visual {width: 93.8%; margin: 0 auto; background:#dde9f0; background-position: right center; background-size: auto 100%; background-repeat: no-repeat; background-image: url("../img/page/common/visual.jpg"); border-radius: var(--w-20); height: var(--w-240); display: flex; justify-content: center; align-items: center;}
#visual h2 {width: 90%; max-width: 1400px; font-weight: 800; font-size: var(--fs-42);}

#about #visual {background-image: url("../img/page/about/visual.jpg");}
#flow #visual {background-image: url("../img/page/flow/visual.jpg");}
#price #visual {background-image: url("../img/page/price/visual.jpg");}

.topicPath {width: 93.8%; margin: var(--w-10) auto; display: flex; justify-content: flex-end; flex-wrap: wrap; column-gap: 0.5em; font-size: var(--fs-12);}
.topicPath li:not(:first-child) {padding-left: 1.5em; position: relative;}
.topicPath li:not(:first-child)::before{ content: ""; width: 0.5em; aspect-ratio: 1/1; border-top: 1px solid #444; border-right: 1px solid #444; position: absolute; left: 0; top: 50%; translate: 0 -50%; rotate: 45deg;}

#mainContent {margin: var(--w-30) auto 0;}
#mainContent :is(h2,h3,h4,h5) {line-height: 1.6;}

.pageTitle {text-align: center; margin-bottom: var(--w-30);}
.pageTitle h2 span {display: block; color: var(--tx-blue); font-family: var(--ff-en); font-size: var(--fs-16); text-transform: uppercase; font-weight: 600;}
.pageTitle h2 {font-size: var(--fs-38); font-weight: 700; line-height: 1.5; letter-spacing: 0.2rem;}
.pageTitle .read {margin: var(--w-30) 0 0;}

.ttlCommon--A {font-size: var(--fs-36); font-weight: 700; line-height: 1.5; margin-bottom: var(--w-40);}
.ttlCommon--A em {color: var(--c-blue); display: block; font-size: var(--fs-18); font-family: var(--ff-en); font-weight: 600;}
.ttlCommon--A span {font-size: var(--fs-30);}

.abtIntro {position: relative;}
.abtIntro__txt {width: 52.5%; min-height: 415px; padding-top: var(--w-30); margin-bottom: var(--w-80);}
.abtIntro__txt p:last-child{margin-bottom: 0;}
.abtIntro::before {content: ""; width: 41.3%; height: 100%;  background-repeat: no-repeat; background-size: cover; background-position: center center; position: absolute; top: 0;}

.hB {font-weight: 700; font-size: var(--fs-22); line-height: 1.7; margin-bottom: var(--w-20);}
.hC {background: var(--bg-blue); color: var(--tx-blue); font-weight: 700; font-size: var(--fs-24); padding: var(--w-20) var(--w-30); margin-bottom: var(--w-30);}
.hD {color: var(--tx-blue); font-weight: 700; font-size: var(--fs-20); margin-bottom: var(--w-20); }

a.btnCommon { display: inline-block; min-width: 240px; background: var(--bg-grad-blue); color: #fff; font-weight: 700; border-radius: 30vw; padding: var(--w-15) var(--w-40); line-height: 1.5; text-align: center;}
a.btnCommon:hover{text-decoration: none !important;}

a.btnContact {display:inline-block; background: var(--bg-grad-orange); color: #fff; font-weight: 700; border-radius: 30vw; padding: var(--w-20) var(--w-40); line-height: 1.5; text-align: center; min-width: 280px;}
a.btnContact span {padding-left: 1.5em;}
a.btnContact span::before {font-weight: normal; font-size: 1.5em;}
a.btnContact:hover{text-decoration: none !important;}

.spINT__title {color: #666; font-weight: 700; font-family: var(--ff-en); }
.spINT__title span{color: var(--tx-blue);}

.listNote {font-size: var(--fs-16);}
.listNote li {padding-left: 1em; text-indent: -1em;}

@media (max-width:699px) {
.abtIntro__txt {width: 100%; min-height: inherit; padding-top:0; margin-bottom: 0;}
.abtIntro::before {content:none;}
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

about

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */


.abtIndex {column-gap: 15px; margin: var(--w-50) auto var(--w-120); flex-wrap: nowrap;}
.abtExc {width: calc(calc(100% - 45px)/4); background: var(--bg-beige); text-align: center; border-radius: var(--w-15); padding: var(--w-40) var(--w-15) var(--w-30) ;}
.abtExc figure {width: 40%; max-width: 94px; margin: 0 auto var(--w-20); }
.abtExc p {margin: 0; font-size: var(--fs-12); color: #777777; font-weight: 600; font-family: var(--ff-en);}
.abtExc h3 {line-height: 1.5; font-weight: 700;}
.abtExc h3 span {color: var(--tx-blue);}

.abtCost { margin-bottom: var(--w-130);}
.abtCost__intro::before {right: 0; border-radius: var(--w-20) 0 0  var(--w-20); background-image: url("../img/page/about/img_abtCost-01.jpg");}

.abtGeneral{ position: relative; padding:var(--w-50) var(--w-50) var(--w-40); border: 3px solid #ddd; border-radius: var(--w-20); margin-bottom:90px; }
.abtGeneral h3 {font-size: var(--fs-24); font-weight: 700; text-align: center; position: absolute; left: 0; top: 0; translate: 0 -50% ; width: 100%; line-height: 1.5;}
.abtGeneral h3 span {background: #fff; padding: 0 var(--w-15); display: inline-block;}
.abtGeneral::before {content: ""; display: inline-block; width: var(--w-110); height: var(--w-30); background: var(--c-blue); clip-path: polygon(0 0, 100% 0%, 50% 100%); position: absolute; left: 50%; bottom: -90px; translate: -50% 0;}

@media (max-width:1090px) {
.abtIndex {flex-wrap:wrap;}
.abtExc {width: calc(calc(100% - 15px)/2); margin-bottom: 15px}
.abtExc h3 {font-size: min(3.1vw,1.8rem);}

@media (max-width:699px) {
.abtCost__intro  {margin-bottom: var(--w-90);}
.abtGeneral {margin-bottom: min(10vw,70px);}
.abtGeneral::before {bottom:max(-10vw,-70px);}
}

}

.abtMiraijin {padding: var(--w-30) 0 0;}
.abtMiraijin h3 {font-size: var(--fs-30); text-align: center; font-weight: 700; margin-bottom: var(--w-30);}
.abtMiraijin h3 img {width: 9em; vertical-align: baseline; }
.abtMiraijin figure {margin-bottom: var(--w-60);}
.abtMiraijin p {font-size: var(--fs-24); text-align: center;}

.abtQuarity {background: var(--bg-blue); padding: var(--w-100) 0 var(--w-120);}
.abtQ__wrap {flex-direction: row-reverse; margin: var(--w-60) auto var(--w-90);}
.abtQ__txt {width: 46.7%; padding: var(--w-20) 0;}
.abtQ__txt p {margin: 0;}
.abtQ__img {width: 45.8%; border-radius: var(--w-20); overflow: hidden; background: #fff;}
.abtQ__img img {width: 100%; height: 100%; object-fit: cover;}

.abtQ__level {position: relative; display: flex; justify-content: flex-end; margin-bottom: var(--w-120);}
.abtQ__cap {margin: 0; aspect-ratio:1/1; width: var(--w-70); display: flex; justify-content: center; align-items: center; font-size: var(--fs-24); font-weight: 700;  position: absolute; left: var(--w-10);  border-radius: 50%; color: #fff;}
.abtQ__cap--01 {background: #81cce8; top: 0;}
.abtQ__cap--02 {background: #1fbead; bottom: 0;}
.abtQ__level::before {content: ""; width: 6px; height: calc(100% - calc(var(--w-70)*2) - 20px); position: absolute; left: var(--w-40); top:50%; translate: -3px -50%; background: #1FBEAD; background: linear-gradient(0deg,rgba(31, 190, 173, 1) 0%, rgba(129, 204, 232, 1) 100%);}

.abtQ__table {width: 88.3%;}

.abtQ__tr {
 display: grid;
 grid-template-columns: var(--w-120) 1fr;
 grid-template-rows: 1fr;
 grid-column-gap: 3px;
 grid-row-gap: 3px;
 margin-bottom: 3px;
}

.abtQ__th { grid-area: 1 / 1 / 2 / 2; display: grid; place-content: center; place-items: center; font-size: var(--fs-24); color: #fff; font-weight: 700; }
.abtQ__td { grid-area: 1 / 2 / 2 / 3; background: #fff; padding: var(--w-25) var(--w-30);}

.abtQ__td dl {margin: 0;}
.abtQ__td dl dt {font-weight: 600; margin-bottom: var(--w-10); line-height: 1.6;}
.abtQ__td dl dd {font-size: var(--fs-16); line-height: 1.6;}

.abtQ__lv1 .abtQ__th {background: #81cce8;}
.abtQ__lv2 .abtQ__th {background: #74cadd;}
.abtQ__lv3 .abtQ__th {background: #5bc5ca;}
.abtQ__lv4 .abtQ__th {background: #3bc1b8;}
.abtQ__lv5 .abtQ__th {background: #1fbead;}

.abtQ__block {position: relative;}
.abtQ__block::after {content: ""; width: calc(100% + 20px); height: calc(100% + 20px); border: 3px solid #d78900; position: absolute; left: -10px; top: -10px;}

.abtQ__merit {column-gap: var(--w-60);}
.abtQ__merit figure {width: 43.3%; border-radius: var(--w-15); background: #fff;}
.abtQ__merit .abtQ__merit__txt {flex: 1;}

@media (max-width:699px) {
.abtQ__wrap {flex-direction: column; }
.abtQ__txt {width: 100%; padding: 0; margin-bottom: var(--w-40);}
.abtQ__img {width: 100%; height: min(40vw, 400px)}
.abtQ__cap {left: 0;}
.abtQ__level::before {left: var(--w-25); }
.abtQ__merit figure {width: 100%; height: min(40vw, 400px)}

}

/* speed */
.abtSpeed {padding: var(--w-150) 0;}
.abtSpeed__intro {margin-bottom: var(--w-110);}
.abtSpeed__intro .content {display: flex; justify-content: flex-end;}
.abtSpeed__intro::before {left: 0; border-radius:0 var(--w-20) var(--w-20) 0; background-image: url("../img/page/about/img-abgSpeed-01.jpg");}

.abtSpd__school {background: #f3f3f3; border-radius: var(--w-15); padding: var(--w-40) var(--w-50); display: flex; column-gap: var(--w-60); margin-top: var(--w-120);}
.abtSpd__school figure {width: 30%;}
.abtSpd__school .abtSpd__school__txt {flex: 1;}
.abtSpd__school .abtSpd__school__txt p:last-child{margin-bottom: 0;}

@media (max-width:699px) {
.abtSpd__school  {display: block;}
.abtSpd__school figure {width: 100%;}
.abtSpd__school .abtSpd__school__txt {flex: inherit; width: 100%;}

}

/* support */
.abtSupport {background: var(--bg-blue); padding: var(--w-110) 0; }
.abtSup__wrap {column-gap: var(--w-80);}
.abtSup__wrap figure {width: 40%; border-radius: var(--w-15); background: #fff;}
.abtSup__wrap .abtSup__cont {flex: 1;}
.abtSup__btn {margin: var(--w-30) auto 0; column-gap: var(--w-10); }

@media (max-width:699px) {
.abtSup__wrap figure {width: 100%; margin-top: var(--w-30);}
.abtSup__btn li {margin-bottom: var(--w-10);}
.abtSup__btn {justify-content: center;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

flow

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.listFlow {column-gap: var(--w-20); flex-wrap: wrap; margin: var(--w-60) auto;}
.listFlow li {width: calc(calc(100% - calc(var(--w-20)*3)) / 4); position: relative; margin-bottom: var(--w-20);}
.listFlow li:not(:first-child)::before {content: ""; aspect-ratio: 1/1; width: var(--w-10); border-top: 2px solid #666; border-right: 2px solid #666; position: absolute; left: 0; top: 50%; translate: -150% -50%; rotate: 45deg;}
.listFlow li:nth-child(5)::before{content: none;}

.flow__wrap {margin: var(--w-150) auto ;}
.flow__block {position: relative;  margin: var(--w-90) 0; padding-top: var(--w-60); border-radius: var(--w-20);}
.flow__block:nth-child(odd){border: 2px solid #1d739e;}
.flow__block:nth-child(even){background: var(--bg-blue);}
.flow__num {position: absolute; left: 50%; top:0; translate:-50% -50% ; aspect-ratio: 1/1; width: var(--w-90); color: #fff; background: #1d739e; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: var(--ff-en); font-weight: 700; font-size: var(--fs-14); line-height: 1; text-align: center;}
.flow__num em {display: block; font-size: var(--fs-28);}
.flow__block h2 {text-align: center; font-size: var(--fs-26); font-weight: 700; margin-bottom: var(--w-30); color: #1d739e;}
.flow__block .flow__block__cont { width: 90%; margin: 0 auto; padding-bottom: var(--w-60);}
.flow__block .flow__block__cont p:last-of-type,
.flow__block__cont.flow__flex .flow__cont p:last-child{margin-bottom: 0;}

.flow__block__cont.flow__flex {display: flex; column-gap: var(--w-50);}
.flow__block__cont.flow__flex .flow__cont {flex:1;}
.flow__block__cont.flow__flex  figure {width: 37%; border-radius: var(--w-15); background: #f3f3f3; aspect-ratio: 400/240;}
.flow__block__cont .flow__btnContact {margin: var(--w-40) auto 0;}

.flow__block__point {border-radius: 0 0 var(--w-15) var(--w-15); padding: var(--w-40) 5% var(--w-40); background: #70aac7; color: #fff; position: relative;}
.flow__block__point h3 {font-weight: 700; margin-bottom: var(--w-20);}
.flow__block__point p {font-size: var(--fs-16); line-height: 1.6;}
.flow__block__point p:last-of-type{margin-bottom: 0;}
.flow__block__point figure {position: absolute; bottom: 0; width: 25%; height: 100%;  background: #fff; border-radius: var(--w-10); translate: 0 -30px}

.flow__point--L .flow__block__point::before {content: ""; background: url("../img/page/flow/img-point-02.svg") center center / cover no-repeat; aspect-ratio: 56/150; width: var(--w-150); position: absolute; left: -10px; bottom: -25px;}
.flow__point--L .flow__block__cont {padding-left: 10%;}
.flow__point--L .flow__block__point {padding-left: 15%;}

.flow__point--R .flow__block__point::before{content: ""; background: url("../img/page/flow/img-point-01.svg") center center / cover no-repeat; aspect-ratio: 54/150; width: var(--w-150); position: absolute; right: var(--w-20); bottom: -25px;}
.flow__point--R .flow__block__cont {padding-right: 10%;}
.flow__point--R .flow__block__point {padding-right: 15%;}

.flow__point__img--R .flow__block__point {padding-right:35% }
.flow__point__img--R .flow__block__point figure{right: 5%;} 

.flow__point__img--L .flow__block__point {padding-left:35%;}
.flow__point__img--L .flow__block__point figure{left: 5%;} 


@media (max-width:768px) {
 .flow__block__cont.flow__flex {display: block;}
 .flow__block__cont.flow__flex .flow__cont {flex:1;}
 .flow__block__cont.flow__flex  figure {width: 100%; height: min(40vw, 360px); margin-top: var(--w-40);}
 .flow__point--L .flow__block__cont {padding-left: 0;}
 .flow__point--R .flow__block__cont {padding-right: 0%;}
 
 .flow__point__img--R .flow__block__point {padding-right:5%; }
 .flow__point__img--R .flow__block__point figure{display: none;} 
 .flow__point__img--L .flow__block__point {padding-left:5%;}
 .flow__point__img--L .flow__block__point figure{display: none;} 

 .flow__point--R .flow__block__point::before {right: -3vw; bottom: -8vw;} 
 .flow__point--L .flow__block__point::before {left: -3vw; bottom: -8vw;} 
}


/* support */
.listSupport {display: flex; column-gap: var(--w-12); flex-wrap: wrap; margin: 0;}
.listSupport li {background: #fff; width: calc(calc(100% - calc(var(--w-12) * 5)) / 6); border-radius: var(--w-10); text-align: center; padding:var(--w-30) var(--w-15) var(--w-20); margin-bottom: var(--w-12);}
.listSupport li img {width: 60%; max-width: 74px; margin: 0 auto var(--w-25);}
.listSupport li p {margin: 0; color: #333; line-height: 1.3; font-weight: 600; font-size: var(--fs-14); letter-spacing: normal;}


@media (max-width:699px) {
}


@media (max-width:1190px) {
.listSupport li {width: calc(calc(100% - calc(var(--w-12) * 3)) / 4); }

 @media (max-width:699px) {
 .listSupport li {width: calc(calc(100% - calc(var(--w-12) * 2)) / 3); }
 }
 
  @media (max-width:492px) {
   .listSupport li {width: calc(calc(100% - calc(var(--w-12) * 1)) / 2); }

  }

}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

price

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.priceSubscript {position: relative; margin: var(--w-90) auto var(--w-80);}
.priceSubscript::before {content:""; width: 41.3%; height: 100%; min-height: 400px; border-radius: var(--w-30) 0 0 var(--w-30); background: url("../img/page/price/img-price-01.jpg") left center / cover no-repeat; position: absolute; right: 0; top:0;}
.priceSubscript__cont {width: 52.5%; min-height: 400px;}


.price__detail {margin-bottom: var(--w-120);}
.pricePrice {border: 2px solid var(--tx-blue); position: relative; border-radius: var(--w-20); padding: var(--w-60) var(--w-40) var(--w-40); text-align: center;}
.pricePrice h3 {color: #fff; font-size: var(--fs-24); font-weight: 700; position: absolute; width: 100%; left: 0; top: 0; translate: 0 -50%;}
.pricePrice h3 span {background: var(--tx-blue); border-radius: 30vw; padding: var(--w-10) var(--w-50); }

.price__detail__cont {margin-top: var(--w-40); }
.price__block:not(:last-child) {margin-bottom: var(--w-90);}
.price__table {width: 100%; border: 1px solid #d8966a; margin: var(--w-30) 0; }
.price__table th {background: #f3dfd2; color: #cd773d; text-align: center; font-weight: 600; padding: var(--w-15); width: 30%; }
.price__table td {padding: var(--w-15) var(--w-30);}
.price__table td span {color: #cd773d; font-weight:700; font-size: var(--fs-26);}
.price__table td span em {font-size: var(--fs-18);}
.price__detail__cont .hD {margin-top: var(--w-40);}

.price__block .price__contents {margin: 0; display: flex; justify-content: space-between; flex-wrap: wrap;}
.price__block .price__contents li {width: calc(calc(100% - calc(var(--w-10))*2)/3); background: #f3f3f3; padding: var(--w-10) var(--w-30); line-height: 1.5; border-radius: 5px; margin-bottom: var(--w-10); font-size: var(--fs-16); display: flex; justify-content: center; flex-direction: column; min-height: var(--w-70);}
.price__block .price__contents li span {font-size: var(--fs-14);}

.price__block .listSupport {margin-top: var(--w-30);}
.price__block .listSupport li {border: 1px solid var(--c-blue);}

.price__option {width: 100%; font-size: var(--fs-16);}
.price__option thead tr {border-bottom: 1px solid #333;}
.price__option tbody tr:nth-child(even) {background: #f3f3f3;}
.price__option tbody td {padding: var(--w-15) var(--w-10); line-height: 1.5;}
.price__option tbody td:not(:nth-child(2)){text-align: center; min-width: 4em;}

.price__jihi {display: flex; justify-content: space-between; margin: var(--w-40) auto 0; flex-wrap: wrap;}
.price__jihi__cont {width: calc(calc(100% - var(--w-10))/2); background: #f3f3f3; border-radius: 5px; padding: var(--w-20) var(--w-30); display: flex; column-gap: var(--w-30);}
.price__jihi__cont p {margin: 0; width: var(--w-150);}
.price__jihi__cont dl {margin: 0; flex: 1;}
.price__jihi__cont dl dt {font-weight: 600;}
.price__jihi__cont dl dd {font-size: var(--fs-16); line-height: 1.6;}

.priceExp {background: var(--bg-blue); padding: var(--w-90) 0;}
.priceExp__cont {margin: var(--w-50) 0;}

.price__com__cont {width: 48%; margin-bottom: var(--w-40);}
.price__com__cont figure {aspect-ratio: 57/32; background: #eee; border-radius: var(--w-15); margin-bottom: var(--w-25);}
.price__com__cont h4 {text-align: center; color: var(--tx-blue); font-weight: 700; font-size: var(--fs-22); margin-bottom: var(--w-15);}


/*
.ttlPriceExp {color: var(--tx-blue); font-weight: 700; font-size: var(--fs-24); margin-bottom: var(--w-30);}

.tblPrice {width: 100%; margin: 0; font-size: var(--w-20);}
.tblPrice tr {border-bottom: 2px solid var(--bg-blue);}
.tblPrice th {background: #83c3d8; color: #fff; padding: var(--w-20); text-align: center; width: 25%; line-height: 1.5;}
.tblPrice td {background: #fff; border-left: 2px solid var(--bg-blue); padding: var(--w-20) var(--w-30)}
.tblPrice th span {font-size: var(--fs-15);}
.tblPrice .priceExp__price {margin: 0; font-size: var(--fs-20);}
.tblPrice .priceExp__price li {position: relative; padding-left: 4em; color: #e25a00; font-weight: 700;}
.tblPrice .priceExp__price li .priceExp__year{ position: absolute; left: 0; color: #444;}
.tblPrice .priceExp__price li em {font-size: var(--fs-30); line-height: 1.2;}
.tblPrice .priceExp__price li .priceExp__note {color: #444; font-size: var(--fs-16); font-weight: normal;}

*/

@media (max-width:970px) {
 .priceSubscript {padding-bottom: min(45vw,480px);}
 .priceSubscript::before {width:90%;min-height: inherit; height: min(40vw,400px); border-radius: var(--w-15); top: inherit; bottom: 0; right: 5%;}
 .priceSubscript__cont {width: 100%;}
 
@media (max-width:860px) {

.price__block .price__contents li {width: calc(calc(100% - var(--w-10))/2);}
.price__jihi__cont {width: 100%; margin-bottom: var(--w-10);}

 @media (max-width:500px) {
 .price__block .price__contents li {width:100%; display: block; padding: var(--w-30);}
 .price__block .price__contents li br {display: none;}

 .price__table th {width: 100%; display: block;}
 .price__table td {display: block; text-align: center;}

 }
 }

}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

special

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.spINT__head__wrap {}
.spINT__head {margin-bottom: var(--w-40);}
.spINT__head__cont {width: 50%;}
.spINT__head figure {width: 40%; border-radius: var(--w-15); aspect-ratio: 16/9; background: #eee;}

.spINT__shoulder {font-size: var(--fs-24);}
.spINT__head__cont h2 {font-weight: 700; font-size: var(--fs-40); line-height: 1.5;}
.spINT__name {margin: var(--w-20) 0 0; font-weight: 600; color: var(--tx-blue);}
.spINT__data {font-size: var(--fs-16); margin: 0;}

.spINT__intro {background: #f3f3f3; padding:var(--w-30) var(--w-40);}
.spINT__intro p {margin: 0; font-size: var(--fs-16);}

.spINT__body {margin-bottom: var(--w-100);}
.spINT__cont {margin: var(--w-100) auto;}
.spINT__cont .spINT__title {color: var(--tx-blue); font-size: var(--fs-26); border-bottom: 2px solid var(--tx-blue); padding: 0 0 var(--w-10); margin-bottom: var(--w-30);}

.flx--reverse {flex-direction: row-reverse;}
.spINT__block .spINT__body__txt {width: 65%;}
.spINT__block figure {width: 30%; border-radius: var(--w-15); aspect-ratio: 36/40; background: #eee; position: relative;}
.spINT__block figure p {margin: 0; background: var(--tx-blue-02); color: #fff; position: absolute; right: var(--w-10); bottom: var(--w-10); font-size: var(--fs-15); padding: 0 var(--w-20); border-radius: 5px;}
.spInterview {padding-left: 4em; position: relative;}
.spInterview span{position: absolute; left: 0; font-weight: 600;}
.spINT__cont h4 {font-weight: 700; color: var(--tx-blue); font-size: var(--fs-20); margin-bottom: var(--w-10);}

.spINT__comment {background: var(--bg-blue); padding: var(--w-40);}
.spINT__comment h3 {font-size: var(--fs-22); font-weight: 700; margin-bottom: var(--w-20);}
.spINT__comment h3 span{color: var(--tx-blue); font-size: var(--fs-16); display: block;}
.spINT__comment p {font-size: var(--fs-16); margin: 0;}

.spINT__nav {margin: var(--w-60) auto var(--w-100); padding-top: var(--w-60); border-top: 1px solid #ccc;
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 grid-template-rows: 1fr;
 grid-column-gap: var(--w-30);
 grid-row-gap: 0px;
}

.spINT__nav__btn{ position: relative;}
.spINT__nav__btn::before,.spINT__nav__btn::after {content: ""; height: var(--w-40); width: 1px; background: var(--c-blue); position: absolute;  top: 50%;}
.spINT__nav__btn::before {transform-origin: left bottom; translate: 0 -100%; }
.spINT__nav__btn::after {transform-origin: left top;}

.spINT__prev::before, .spINT__prev::after {left: 0;}
.spINT__prev::before { rotate: 30deg;}
.spINT__prev::after {rotate: -30deg;}

.spINT__next::before, .spINT__next::after {right: 0;}
.spINT__next::before { rotate: -30deg;}
.spINT__next::after {rotate: 30deg;}

.spINT__prev { grid-area: 1 / 1 / 2 / 2; padding-left: var(--w-50);}
.spINT__next { grid-area: 1 / 2 / 2 / 3; display: grid; justify-content: right;  padding-right: var(--w-50); position: relative;}

.spINT__nav__btn a {display: block; position: relative; color: #444; padding-left:2.8em; font-weight: 700;}
.spINT__nav__btn a:hover{ text-decoration: none!important;}
.spINT__nav__btn a p{margin: 0;}
.spINT__nav__btn a p.spnINt__nav__num {position: absolute; left: 0; top: 50%; translate: 0 -50%; color: #ccc; font-family: var(--ff-en);  font-size: var(--fs-30); }
.spINT__nav__btn a p.spnINt__nav__data{font-size: var(--fs-16);}
.spINT__nav__btn a p.spnINt__nav__data span{color: var(--tx-blue); margin-right: var(--w-10);}
.spINT__nav__btn a h4 {font-size: var(--fs-20); font-weight: 700;}



@media (max-width:920px) {
 .spINT__head__cont h2 br {display: none;}
 .spINT__nav {display: block;}
 .spINT__next {margin-top: var(--w-50);}


@media (max-width:699px) {
 .spINT__head__cont {width: 100%;}
 .spINT__head figure {width: 100%; margin-top: var(--w-30); aspect-ratio: 3/2; }
 .spINT__block .spINT__body__txt {width: 100%;}
 .spINT__block figure {width: 100%; border-radius: var(--w-15); aspect-ratio: 3/2; background: #eee;}
 }
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

case

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.caseCategory {display: flex; flex-wrap: wrap; column-gap: var(--w-10); justify-content: center; margin: var(--w-30) auto 0;}
.caseCategory li {margin-top: var(--w-10);}
.caseCategory li a {display: block; background: var(--bg-blue); border-radius: 30vw; line-height: 1.4; padding: var(--w-10) var(--w-30); font-weight: 600; min-width:7em;}
.caseCategory li a.current, .caseCategory li a:hover{ color: #fff; background: var(--c-blue); text-decoration: none !important;}

.caseIndex__body {margin-bottom: var(--w-100);}
.caseIndex {column-gap: var(--w-30);}
.caseCard {width: calc(calc(100% - calc(var(--w-30)*2))/3); margin-top: var(--w-30);}
.caseCard figure {aspect-ratio: 405/255; border-radius: var(--w-15); background: #eee;}
.caseCard__data {display: flex; column-gap: var(--w-15); margin: var(--w-20) auto var(--w-10); align-items: center; font-size:var(--fs-16);}
.caseCard__data .caseCard__category {background: var(--c-blue); color: #fff; border-radius: 5px; font-size: var(--fs-14); padding: 0 var(--w-20);}
.caseCard h3 {font-weight: 600;  display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2;}

.wp-pagenavi {margin: var(--w-80) auto var(--w-120); text-align: center;}

.caseSpecial {background: var(--bg-blue); padding:var(--w-80) 0 var(--w-100);}
.caseSpecial h2 {text-align: center; font-size: var(--fs-36); margin-bottom: var(--w-20);}
.caseSpecial .caseCard figure {position: relative;}
.caseSpecial .caseCard figure::before {content: ""; width: 200px; height: var(--w-50); background: var(--c-blue); transform-origin: center top; position: absolute; left: 0; top: 0; translate: -50% 0; rotate:-45deg; }
.caseSpecial .caseCard figure::after{content: "Special"; position: absolute; left: 0; top: 0; transform-origin: center center; color: #fff; font-weight: 700; font-family: var(--ff-en); font-size: var(--fs-14); rotate:-45deg; translate: -2% 45%; }

@media (max-width:790px) {
 .caseCard {width: calc(calc(100% - var(--w-30))/2);}
 .caseSpecial .caseCard figure::before {height: min(10vw,50px); }

 @media (max-width:450px) {
  .caseCard {width:100%;}
 }

}


/* single */
.case__wrapper {width: 90%; max-width: 980px; margin: 0 auto var(--w-80);}
.post__head {margin-bottom: var(--w-50);}
.post__head h2 {font-size: var(--fs-30); font-weight: 700;}
.post__head .case__mv {background: #eee; border-radius: var(--w-15); aspect-ratio: 98/32; margin-top: var(--w-30);}

.post__body {margin-bottom: var(--w-90);}
.post__body h2 {background: var(--bg-blue); color: var(--tx-blue); font-weight: 700; font-size: var(--fs-24); padding: var(--w-20) var(--w-30); margin: var(--w-50) auto var(--w-25); clear: both;}
.post__body h3 {color: var(--tx-blue); font-size: var(--fs-24); font-weight: 700; margin: var(--w-40) auto var(--w-20); clear: both; border-bottom: 2px solid var(--tx-blue); padding-bottom: var(--w-10);}
.post__body h4 {color: var(--tx-blue); font-size: var(--fs-22); font-weight: 700; margin: var(--w-30) auto var(--w-15); clear: both; }
.post__body blockquote {background: #f3f3f3; margin: var(--w-40) auto; border-radius: var(--w-10); padding: var(--w-30) var(--w-40);}
.post__body blockquote p:last-child {margin-bottom: 0;}
.post__body blockquote :is(h2,h3,h4) {margin-top: 0;} 
.post__body figure {margin: var(--w-30) auto;}
.post__body img {width: auto; max-width: 100%;}
.post__body ul {list-style: inherit; margin-left: 2em;}
.post__body ol {list-style: normal; margin-left: 2em;}

.post__body .wp-block-image .alignleft {max-width: 50%; margin: 0 var(--w-30) var(--w-30) 0;}
.post__body .wp-block-image .alignright {max-width: 50%; margin: 0 0 var(--w-30) var(--w-30) ;}
.post__body .wp-block-image .aligncenter{margin-bottom: var(--w-30);}


.post__nav {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: 1fr;
grid-column-gap: var(--w-30);
grid-row-gap: 0px;
margin: 0;
}

.post__nav__prev { grid-area: 1 / 1 / 2 / 2; display: flex; align-items: center;}
.post__nav__back { grid-area: 1 / 2 / 2 / 3; text-align: center;}
.post__nav__next { grid-area: 1 / 3 / 2 / 4; display: flex; align-items: center; justify-content: flex-end;}

.post__nav__prev a {position: relative; padding-left: 1em;}
.post__nav__prev a::before {content: ""; width: 0.5em; aspect-ratio: 1/1; border-top: 2px solid var(--tx-blue); border-left: 2px solid var(--tx-blue);  position: absolute; left: 0; top: 50%; translate: 0 -50%; rotate: -45deg;}

.post__nav__next a {position: relative; padding-right: 1em;}
.post__nav__next a::before {content: ""; width: 0.5em; aspect-ratio: 1/1; border-top: 2px solid var(--tx-blue); border-left: 2px solid var(--tx-blue);  position: absolute; right: 0; top: 50%; translate: 0 -50%; rotate: 135deg;}


.case__profile {font-size: var(--fs-16); position: relative; border: 2px solid #444; border-radius: var(--w-15); margin-bottom: var(--w-60); padding: var(--w-40);}
.case__profile p:last-child{margin-bottom: 0;}
.case__profile h2 {font-size: var(--fs-30); font-family: var(--ff-en); font-weight: 700; background: #fff; position: absolute; left: 0; top:0; padding: 0 10px; translate: -5% -50%; }
.case__profile h2 span {color: var(--tx-blue);}
.case__profile h3 {font-weight: 700; font-size: var(--fs-18);}

.case__related {background: #f3f3f3; padding: var(--w-60) 0 var(--w-90);}
.case__related h2 {text-align: center; font-weight: 700; font-size: var(--fs-28); margin-bottom: var(--w-10);}


 @media (max-width:599px) {
.post__nav {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 grid-template-rows: repeat(2, 1fr);
 grid-column-gap: var(--w-30);
 grid-row-gap: var(--w-30);
}

.post__nav__prev { grid-area: 1 / 1 / 2 / 2; }
.post__nav__next{ grid-area: 1 / 2 / 2 / 3; }
.post__nav__back { grid-area: 2 / 1 / 3 / 3; }

 }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

faq

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.faq__wrap {margin: var(--w-60) auto var(--w-120)}
.faq {border: 2px solid var(--c-blue); border-radius: var(--w-15); margin: var(--w-30) auto; background: #fff;}

.faq__Q {padding: var(--w-30) var(--w-60) var(--w-30) var(--w-30); font-size: var(--fs-22); font-weight: 600; position: relative; cursor: pointer;}
.faq__Q::before, .faq__Q::after {content: ""; width: var(--w-20); height: 2px; background: var(--c-blue); position: absolute; right: var(--w-20); top: 50%; translate: 0 -50%; transition: 0.3s all ease-in-out;}
.faq__Q::after {rotate: 90deg;}
.faq__Q.active::after {rotate: 0deg;}
.faq__Q span {padding-left: 1.8em; position: relative; display: inline-block; line-height: 1.5;}
.faq__Q span em {position: absolute; left: 0; top: 50%; translate: 0 -50% ;font-weight: 700; font-family: var(--ff-en); font-size: var(--fs-30); color: var(--c-blue)}

.faq__A {padding: 0 var(--w-40) var(--w-40) var(--w-70); position: relative; }
.faq__A p:last-child {margin: 0;}
.faq__A__icon {position: absolute; left: var(--w-30); top: 0; margin: 0; font-weight: 700; font-family: var(--ff-en); font-size: var(--fs-30); color: #e25a00; line-height: 1.5;}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

company

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.tbl__wrap {margin: var(--w-60) 0 var(--w-90);}
.tbl__cont {display: flex; column-gap: var(--w-20); padding: 3px 0; border-top:1px solid #ccc; }
.tbl__cont:last-child { border-bottom:1px solid #ccc;}
.tbl__cont .tbl__th {width: 25%; background: var(--bg-blue); text-align: center; padding: var(--w-15); display: flex; justify-content: center; align-items: center;}
.tbl__cont .tbl__td {padding: var(--w-15); flex: 1;}
.tbl__cont .tbl__th p {margin: 0;}
.tbl__cont .tbl__td p:last-child {margin: 0;}

.comMap {margin: var(--w-90) auto var(--w-110);}
.comMap__map{width: 48%;}
.comMap__wrap {width: 100%; aspect-ratio: 1/1; overflow: hidden; background: #f3f3f3;}
.comMap__wrap iframe {width: 100%; height: 100%;}

@media (max-width:699px) {
.tbl__cont {display: block; }
.tbl__cont .tbl__th,.tbl__cont .tbl__td {width: 100%; flex: auto;}
.tbl__cont .tbl__td {padding: var(--w-15) 0;}
.comMap__map{width: 100%; margin-bottom: var(--w-20)}
.comMap__wrap {aspect-ratio: 2/1;}

}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

form

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.form {margin-bottom: var(--w-100);}
input[type="text"],
input[type="tel"],
input[type="email"],
select,
textarea{
 border: none; background: #f3f3f3; outline: none; padding: var(--w-10) var(--w-15);
}
.inputA {width: 60%;}
.inputB {width: 100%;}
textarea{width: 100%; height: 10em;}

.privacy {margin: -2em auto var(--w-40);}
.privacy iframe {width: 100%; height: 15em; border: 1px solid #ccc;}

#privacy-policy {padding: var(--w-30); font-size: var(--fs-15);}
#privacy-policy h1 {font-weight: 700; font-size: var(--fs-22);}
#privacy-policy h2 {font-weight: 700; font-size: var(--fs-18); margin-top: 1em;}
#privacy-policy ul {list-style: inherit; margin-left: 2em;}
.privacy-policy__footer {text-align: right;}

.checkPrivacy {text-align: center;}
.checkPrivacy input {margin-right: 5px;}

.required {background:#C90000; color: #fff; font-size: var(--fs-12);font-weight: 600; line-height: 1; padding: 3px 1em; border-radius: 30vw; margin-left: 1em; display: inline-block;}

@media (max-width:699px) {
.inputA {width: 100%;}
}

input[type="submit"] {background: var(--bg-grad-orange); color: #fff; border: none; min-width: 240px; padding: var(--w-20) var(--w-50); border-radius: 30vw; font-size: var(--fs-20);}
input[type="submit"]:disabled{background:#aaa;}
input.wpcf7-previous {background:#aaa;color: #fff; border: none; padding: var(--w-20) var(--w-50); border-radius: 30vw; font-size: var(--fs-20);}

.btnForm {display: flex; justify-content: center; column-gap: var(--w-30); align-items: center;} 
.btnForm li p {margin: 0; }
.wpcf7-spinner {display:block !important; margin: 20px auto 0 !important;}
.btnForm li {position: relative;}
.btnForm li .wpcf7-spinner {position:absolute; left:50%; bottom:0; translate:-50% 150%;}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

column

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.col2 {margin: var(--w-60) auto var(--w-120); }
.colMain {width: calc(100% - clamp(160px, 83.469px + 20.408vw, 360px) - var(--w-50));}
.colSide {width: clamp(160px, 83.469px + 20.408vw, 360px);}

.colSideBlock {margin-bottom: var(--w-30);}
.colSideBlock h3 {background: var(--c-blue); color: #fff; text-align: center; padding: var(--w-20); font-weight: 700; border-radius: var(--w-10) var(--w-10) 0 0;}
.navSide__inr {padding: var(--w-15); background: var(--bg-blue);}
#SearchForm {display: flex; justify-content: space-between;}
.SearchFormInput {width: 74%; background: #fff !important;}
.SearchFormButton {background: #444; color: #fff; border: none; width: 25%;}

.colSideBlock ul {margin: 0;}
.colSideBlock ul li a {display: block; border-bottom: 1px solid #fff; padding: var(--w-10); background: var(--bg-blue);}
.colSideBlock ul li a:hover, .colSidePopular p a:hover, .colIndexLink p a:hover,.colCategory li a:hover {text-decoration: none !important;}

.colSidePopular {display: flex; column-gap: var(--w-15); margin:0 auto var(--w-15);}
.colSidePopular:last-child {margin-bottom: 0;}
.colSidePopular figure {width: 40%; background: #fff; border-radius: 5px; aspect-ratio: 3/2;}
.colSidePopular p {flex: 1; font-weight: 700; line-height: 1.5; font-size: var(--fs-16); display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp:3; }

.colIndex {column-gap: var(--w-20);}
.colIndexLink {width: calc(calc(100% - calc(var(--w-20)*2))/3); margin-bottom: var(--w-40);}
.colIndexLink figure {background: #eee; aspect-ratio: 3/2; border-radius: var(--w-10);}
.colIndexLink p {margin: 0;display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; line-height: 1.6;}

.col2 .wp-pagenavi { margin: var(--w-60) auto 0;}

.colCategory {margin: var(--w-15) 0; font-size: var(--fs-14); display: flex; column-gap: var(--w-10); flex-wrap: wrap;}
.colCategory li {background: var(--c-blue); color: #fff; padding:0 15px;border-radius: 5px;}
.colCategory li a {color: #fff; }


@media (max-width:1060px) {
.colIndexLink {width: calc(calc(100% - var(--w-20))/2); }
}

@media (max-width:800px) {
 .colMain {width: 100%;}
 .colSide {width: 100%; margin-top: var(--w-80);}
 .colSidePopular {column-gap: var(--w-30);}
 .colSidePopular figure { max-width: 180px ;}


}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

pc

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

@media (min-width:768px) {
 /* ----------------------------------------------------
 common(pc)
 ---------------------------------------------------- */
 /* hover */
 a:hover,
 .clickable:hover {
  opacity: .8 !important;
  transition: all 0.2s ease-in-out;
 }

#mainContent :is(a):hover {text-decoration: underline;}

}
