@charset "utf-8";

html{
  font-size: 100%;
}
body{
  width: 100%;
  color: #45464B;
  background: #fff;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
p{
  line-height: 1.75;
}
.wrapper{
  width: 100%;
  max-width: 2048px;
  background: #fff url(../images/bg_fv01.jpg) no-repeat top center;
  background-size: contain;
}
a[href*="tel:"]{
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}
@media screen and (min-width: 2049px){
  body{
  background: linear-gradient(50deg, rgba(3, 75, 139, 1), rgba(111, 217, 255, 1) 70%, rgba(242, 249, 249, 1));
  }
  .wrapper{
    width: 2025px;
    margin: 0 auto;
  }
}
header .inner{
  display: flex;
  align-items: center;
  margin: 0 auto;
  padding: .8854166% 2.5% 0;
}
header h1{
  width: 2.96875%;
  min-width: 40px;
  max-width: 57px;
}
header h1 img{
  width: 100%;
}
header nav ul{
  display: flex;
  padding: 28px 0;
}
header nav ul li{
  margin-left: 24px;
}
header nav ul li a{
  color: #fff;
  font-weight: 700;
  letter-spacing: .004em;
  font-size: clamp(14.5px, 0.89vw, 17px);
  text-shadow: 0px 0px 8px #1a3b61;
  transition: .3s;
}
@media screen and (max-width: 1000px){
  header nav ul li{
    margin-left: 12px;
  }
  header nav ul li a{
    white-space: nowrap;
  }
}
header nav ul li a:hover{
  color: #1a3b61;
  text-shadow: 0px 0px 7px #fff;
  transition: .3s;
}
article{
  width: 100%;
}
article h2{
  width: 40.9375%;
  max-width: 786px;
  height: 100%;
  margin: 8.8541666% auto 0;
}
@media screen and (max-width: 1260px){
  article h2{
    width: 61.40625%;
  }
}
article h2 img{
  width: 100%;
}
.pcOnly{
  display: block;
}
.spOnly{
  display: none;
}

/* ----- Common ----- */
.title_line{
  position: relative;
  width: 12.5%;
  max-width: 240px;
  margin: 0 auto;
  border-bottom: 12px solid #D9D9D9;
}
.title_line::before{
  content: '';
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  max-width: 120px;
  border-bottom: 12px solid #367FA4;
}

/* ----- Contact ----- */
.contact_outer{
  width: 100%;
  max-height: 680px;
  background: #F2F7FF;
}
.contact{
  position: relative;
  aspect-ratio: 1900 / 680;
  box-sizing: border-box;
}
.contact .pic1{
  position: absolute;
  top: -11%;
  left: 60.9375%;
  width: 32.708333%;
  max-width: 628px;
  z-index: 1;
}
.contact .pic1 img{
  width: 100%;
}
.contact .contact_inner{
  position: absolute;
  top: 0;
  left: calc((100% - 58.33333%) / 2);
  width: 58.33333%;
  max-width: 1120px;
  margin: 0 auto;
  z-index: 2;
}
.contact .text1{
  padding-top: 3.02083333%;
  font-weight: 600;
  line-height: 1.7;
  text-align: center;
  font-size: clamp(10px, 1.56vw, 30px);
}
.contact .text2{
}
.contact .text2 .inner{
  font-weight: 800;
  line-height: 1;
  text-align: center;
  font-size: clamp(10px, 2.08vw, 40px);
}
.contact .text2 span.frame{
  display: inline-block;
  width: auto;
  color: #343434;
  padding: .3% 1% 1%;
  background: #fff;
  margin: 2.6041666% 1% 2.23214% 0;
  border: 5px solid #1E5391;
  font-size: clamp(10px, 2.66vw, 51px);
}
.contact .text2 span.marker{
  display: inline-block;
  width: auto;
  color: #343434;
  border: none;
  padding-bottom: .5%;
  background: linear-gradient(transparent 60%, #F6FF00 40%);
}
.contact .text2 span.muryo{
  font-size: clamp(10px, 2.97vw, 57px);
}
.contact ul{
  display: flex;
  justify-content: space-between;
  padding-top: 2.5%;
}
.contact ul li{
  width: 48.4%;
}
.contact ul li p{
  width: 100%;
  text-align: center;
  padding: 0 0 1%;
  font-size: clamp(10px, 1.25vw, 24px);
}
.contact ul li p span{
  display: inline-block;
  margin: 0 2%;
  vertical-align: -.1em;
  font-size: clamp(10px, 1.35vw, 26px);
  transform: rotate(20deg);
}
.contact ul li p span.rev{
  transform: rotate(100deg);
}
.contact ul li a{
  display: block;
  opacity: 1;
  transition: .3s;
}
.contact ul li a:hover{
  opacity: .7;
  transition: .3s;
}
.contact ul li a img{
  width: 100%;
}

/* ----- Main ----- */
main article .fv_contctus{
  width: 51.8%;
  max-width: 955px;
  margin: 0 auto;
  padding: 1.25em 1.25em 1em;
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  box-shadow: 0 0 8px 0 rgba(0,0,0,.6);
}
@media screen and (max-width: 1260px){
  main article .fv_contctus{
    width: 77.7%;
  }
}
main article .fv_contctus ul{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
main article .fv_contctus ul li:first-child{
  width: 100%;
  text-align: center;
  margin-bottom: .85em;
  font-size: clamp(20px, 2.08vw, 40px);
}
main article .fv_contctus ul li:first-child span{
  color: #2F69AC;
  font-weight: 700;
  border-bottom: 3px solid #2F69AC;
}
main article .fv_contctus ul li.contactbtn{
  width: 45%;
  text-align: center;
}
main article .fv_contctus ul li.contactbtn a{
  display: block;
  width: 100%;
  color: #fff;
  font-weight: 600;
  opacity: 1;
  transition: .3s;
  border-radius: 40px;
  padding: .6em 0 .75em;
  font-size: clamp(10px, 1.51vw, 29px);
  background: linear-gradient(90deg, rgba(95,199,243,1) 0%, rgba(0,91,172,1) 100%);
}
main article .fv_contctus ul li.contactbtn a:hover{
  opacity: .55;
  transition: .3s;
}
main article .fv_contctus ul li.phonenumber{
  width: 48%;
  margin-left: 1em;
}
main article .fv_contctus ul li.phonenumber a{
  display: block;
}
main article .fv_contctus ul li.phonenumber a img{
  width: 100%;
}
main article .fv_contctus ul li.phonenumber span{
  display: block;
  color: #2F69AC;
  font-weight: 600;
  padding: .5em 0 0;
  margin: 0 0 0 3em;
  letter-spacing: .05em;
  font-size: clamp(13px, 1.04vw, 20px);
}
main article .wrapper_section01{
}
#sgc_hojyokinkatsuyo{
}
#sgc_hojyokinkatsuyo h3{
  width: 44.9%;
  max-width: 862px;
  margin: 0 auto 2.5%;
  padding-top: 7.686868%;
}
#sgc_hojyokinkatsuyo h3 img{
  width: 100%;
}
#sgc_hojyokinkatsuyo p.obi_01{
  padding: .25em 0;
  text-align: center;
  color: #F6FF71;
  font-weight: 800;
  font-size: clamp(10px, 3.75vw, 72px);
  background: linear-gradient(90deg, #5fc7f3 0%, #2c5d9c 25%, #2c5d9c 75%, #62caf5 100%);
}
@media screen and (max-width: 1260px){
  #sgc_hojyokinkatsuyo h3{
    width: 67.35%;
    padding-top: 4.838383%;
  }
  #sgc_hojyokinkatsuyo p.obi_01{
    font-size: clamp(10px, 5.56vw, 70px);
  }
}

/* ----- Guide Book ----- */
#mondai{
  width: 100%;
}
#mondai .area_01,
#mondai .area_02,
#mondai .area_03{
  position: relative;
  width: 100%;
  height: 100%;
}
#mondai .area_01{
  background: url(../images/bg_fv02_1.png) no-repeat top left;
  background-size: contain;
  aspect-ratio: 2 / 1;
}
#mondai .area_02{
  margin-top: -2px;
  background: url(../images/bg_fv02_2.jpg) no-repeat top left;
  background-size: contain;
  aspect-ratio: 2880 / 1079;
}
#mondai .area_03{
  margin-top: -1px;
  background: #214c8c url(../images/bg_fv02_3.png) no-repeat top left;
  background-size: contain;
  aspect-ratio: 2880 / 1668;
}
@media screen and (max-width: 1260px){
  #mondai .area_01{
    background: url(../images/bg_fv02_1.png) no-repeat left 145px;
    background-size: contain;
    aspect-ratio: 2 / 1.232;
  }
  #mondai .area_03{
    aspect-ratio: 4 / 3.055555556;
  }
}
#mondai p.obi_02{
  position: absolute;
  top: 0;
  left: calc((100% - 37.7%) / 2);
  width: 37.7%;
  max-width: 724px;
  margin: 1.5em auto;
  padding: .25em .25em .35em;
  text-align: center;
  font-size: clamp(14px, 1.35vw, 26px);
  color: #fff;
  font-weight: bold;
  box-sizing: border-box;
  border-radius: 30px;
  background: linear-gradient(90deg, #ffb202 0%, #ff700f 100%);
}
#mondai ul.guidebook{
  position: absolute;
  top: 11.5%;
  left: calc((100% - 58.33%) / 2);
  display: flex;
  justify-content: space-between;
  width: 58.33%;
  margin: 2em auto 0;
}
#mondai ul.guidebook li{
  width: 32%;
}
#mondai ul.guidebook li a{
  display: block;
  width: 100%;
}
#mondai ul.guidebook li a img{
  width: 100%;
}
#mondai ul.guidebook li a p{
  width: 100%;
  color: #fff;
  margin-top: .2em;
  padding-bottom: .15em;
  text-align: center;
  border-radius: 30px;
  background: linear-gradient(-20deg, #ffb199 0%, #ff0844 100%);
}
#mondai ul.guidebook li a:hover p{
  color: #cf1f1f;
  background: #fce9e3;
}
#mondai h3{
  position: absolute;
  top: 70%;
  left: calc((100% - 41.40625%) / 2);
  color: #fff;
  font-weight: 800;
  text-align: center;
  margin-bottom: 4%;
  font-size: clamp(10px, 5vw, 96px);
}
@media screen and (max-width: 1260px){
  #mondai p.obi_02{
    left: calc((100% - 70%) / 2);
    width: 70%;
    max-width: 900px;
    margin: 1em auto;
    padding: .2em .25em .3em;
    font-size: clamp(15px, 2.22vw, 28px);
    border-radius: 42px;
  }
  #mondai ul.guidebook{
    left: calc((100% - 87.495%) / 2);
    width: 87.495%;
  }
  #mondai h3{
    top: 75%;
    left: calc((100% - 41.40625%) / 2);
    font-size: clamp(10px, 5.32vw, 67px);
  }
}
#mondai ul{
  width: 100%;
}
#mondai ul li{
  width: 100%;
  margin: 0;
  padding: 0;
}
#mondai ul li.right .check{
  float: right;
}
#mondai ul li.left .check{
  float: left;
}
#mondai ul li figure{
  width: 22.916666%;
  max-width: 440px;
  position: absolute;
}
#mondai ul li figure img{
  width: 100%;
}
#mondai ul li.right,
#mondai ul li.left{
  clear: both;
}
#mondai ul li .check{
  width: 60.15625%;
  max-width: 1155px;
  padding: 3% 0 3% 9.6%;
  background: #fff;
  border-radius: 232px 0 0 232px;
  box-sizing: border-box;
}
#mondai ul li.left .check{
  border-radius: 0 232px 232px 0;
}
#mondai ul li .check_inner{
  display: flex;
  align-items: center;
  padding-bottom: 1em;
}
#mondai ul li.right .check_inner p{
  width: 10.37344%;/* .check_inner を 964pxとした比率 */
  max-width: 100px;
  margin-right: 1em;
}
#mondai ul li.left .check_inner p{
  width: 13.29787%;/* .check_inner を 752pxとした比率 */
  max-width: 100px;
  margin-right: 1em;
}
#mondai ul li .check_inner p img{
  width: 100%;
}
#mondai ul li .check_inner h4{
  color: #45464B;
  line-height: 1.3;
  font-weight: 800;
  font-size: clamp(10px, 1.15vw, 22px);
}
#mondai ul li .check_inner h4 span{
  color: #1367B1;
  font-weight: 800;
  font-size: clamp(10px, 1.67vw, 32px);
  background: linear-gradient(transparent 60%, #F6FF00 40%);
}
#mondai ul li .check .text{
  width: 55.411255%;
  max-width: 640px;
  text-align: justify;
  font-size: clamp(10px, 1.27vw, 16px);
}
#mondai ul li.left .check .text{
  width: 57.14286%;
  max-width: 660px;
  margin-left: 24%;
}
#mondai ul li.left .check .check_inner{
  margin-left: 2%;
}
@media screen and (min-width: 1261px){
  #mondai ul li.left .check .text{
    margin-left: 0;
  }
  #mondai ul li.left .check .check_inner{
    margin-left: 0;
  }
}
@media screen and (max-width: 1260px){
  #mondai ul li figure{
    width: 34.374999%;
  }
  #mondai ul li .check{
    padding: 1.5% 0 1.75% 8.6%;
  }
  #mondai ul li .check_inner{
    align-items: flex-start;
    padding-bottom: .5em;
  }
  #mondai ul li.right .check_inner p{
    width: 100%;
    margin-right: .5em;
  }
  #mondai ul li.left .check_inner p{
    width: 29.9202075%;

  }
  #mondai ul li .check_inner h4{
    font-size: clamp(10px, 2.22vw, 28px);
    line-height: 1.4;
  }
  #mondai ul li .check_inner h4 span{
    font-size: clamp(10px, 2.78vw, 35px);
  }
  #mondai ul li .check .text{
    width: 83.1168825%;
    font-size: clamp(10px, 1.51vw, 19px);
    line-height: 1.6;
  }
  #mondai ul li.left .check .text{
    width: 85%;
    margin-left: 1.5%;
  }
}
#mondai .area_02 ul li.left{
  padding-top: 7.55%;
  position: relative;
  z-index: 1;
}
#mondai .area_03 ul li.right{
  padding-top: 7.8125%;
}
#mondai .area_03 ul li.left{
  padding-top: 7.8125%;
}
#mondai .area_02 ul li.right figure{
  margin-top: -4%;
  margin-left: 21%;
  z-index: 1;
}
#mondai .area_02 ul li.left figure{
  margin-top: -4%;
  margin-left: 55.5%;
  z-index: 2;
}
#mondai .area_03 ul li.right figure{
  margin-top: -4%;
  margin-left: 21%;
  z-index: 1;
}
#mondai .area_03 ul li.left figure{
  margin-top: -4%;
  margin-left: 55.5%;
  z-index: 1;
}
@media screen and (max-width: 1260px){
  #mondai .area_02 ul li.right figure{
    margin-top: -6%;
    margin-left: 10%;
  }
  #mondai .area_02 ul li.left figure{
    margin-top: -6%;
    margin-left: 55%;
  }
  #mondai .area_03 ul li.right figure{
    margin-top: -6%;
    margin-left: 10%;
  }
  #mondai .area_03 ul li.left figure{
    margin-top: -6%;
    margin-left: 55%;
  }
}

/* ----- Merit ----- */
#merit{
  width: 100%;
  background: url(../images/bg_merit.png) no-repeat top center;
  background-size: contain;
  aspect-ratio: 16 / 9.05;
}
#merit .inner{
  width: 85.9375%;
  max-width: 1650px;
  margin: 0 auto 8%;
  text-align: center;
}
#merit .inner h3{
  color: #1E5391;
  padding: 5% 0 1%;
  border-bottom: 2.5px solid #dbdfe3;
  font-weight: 800;
  font-size: clamp(10px, 6.2vw, 119px);
}
#merit .inner h3 span.txt_orange{
  color: #FF700F;
  font-weight: 800;
  font-size: clamp(10px, 5.36vw, 103px);
}
#merit .inner h3 span.txt_orange .no{
  margin-left: .18em;
  font-size: clamp(10px, 3.75vw, 72px);
}
#merit .inner ul{
  display: flex;
  justify-content: space-between;
  width: 67.88%;
  max-width: 1120px;
  margin: 0 auto;
  padding-top: 3.125%;
}
#merit .inner ul li{
  position: relative;
  width: 33.3333%;
}
#merit .inner ul li figure,
#merit .inner ul li figure img{
  width: 100%;
}
#merit .inner ul li p{
  position: absolute;
  top: 64%;
  left: 6%;
  width: 86.3%;
  line-height: 1.4;
  font-weight: 700;
  font-size: clamp(10px, 1.35vw, 26px);
}
#merit .inner ul li p span{
  color: #ED6565
}
@media screen and (max-width: 1260px){
  #merit{
    background: url(../images/bg_merit.png) no-repeat top center;
    background-size: contain;
    aspect-ratio: 16 / 9.05;
  }
  #merit .inner{
    width: 100%;
    margin: 0 auto 5%;
  }
  #merit .inner h3{
    font-size: clamp(10px, 7.3vw, 92px);
  }
  #merit .inner h3 span.txt_orange{
    font-size: clamp(10px, 6.35vw, 80px);
  }
  #merit .inner h3 span.txt_orange .no{
    font-size: clamp(10px, 5.16vw, 65px);
  }
  #merit .inner ul{
    width: 100%;
  }
  #merit .inner ul li p{
    left: 0;
    width: 100%;
    line-height: 1.4;
    font-size: clamp(10px, 2.06vw, 26px);
  }
}
#merit .muryobtn_space{
  width: 100%;
  background: #67B3DB;
  aspect-ratio: 12 / 2.21875;
}
#merit .muryobtn_space .inner{
  position: relative;
  width: 43.2291%;
  max-width: 830px;
  margin: 0 auto;
  padding-top: 1%;
}
#merit .muryobtn_space .inner .muryofukidashi{
  position: absolute;
  top: -20%;
  left: 0;
  width: 28.87768%;
  max-width: 229px;
}
#merit .muryobtn_space .inner .muryofukidashi p.muryo{
  position: absolute;
  top: 0;
  left: 3.2%;
  width: 100%;
  padding: 0 0 12% 2%;
  text-align: center;
  background: url(../images/bg_fukidashi.png) no-repeat top left;
  background-size: 100%;
  box-sizing: border-box;
}
#merit .muryobtn_space .inner .muryofukidashi span.muryo_inner{
  font-size: clamp(10px, 3.33vw, 64px);
  color: #fff;
  font-weight: 800;
  letter-spacing: .06em;
}
#merit .muryobtn_space .inner .muryofukidashi span.de{
  font-size: clamp(10px, 2.5vw, 48px);
  color: #fff;
  font-weight: 700;
}
#merit .muryobtn_space .setsumei{
  display: block;
  margin-left: 5em;
  font-size: clamp(10px, 2.55vw, 49px);
  color: #F6FF71;
  font-weight: 700;
}
#merit .consult_btn{
  width: 40.78125%;
  max-width: 783px;
  margin: 3% auto 0;
}
#merit .consult_btn a{
  display: block;
  opacity: 1;
  transition: .3s;
}
#merit .consult_btn a:hover{
  opacity: .7;
  transition: .3s;
}
#merit .consult_btn a img{
  width: 100%;
}
@media screen and (max-width: 1260px){
  #merit .muryobtn_space{
    padding-bottom: 1.5%;
  }
  #merit .muryobtn_space .inner{
    width: 64.84365%;
    max-width: 1000px;
  }
  #merit .muryobtn_space .inner .muryofukidashi{
    position: absolute;
    top: -80%;
  }
  #merit .muryobtn_space .inner .muryofukidashi p.muryo{
    padding: 0 0 32% 2%;
  }
  #merit .muryobtn_space .inner .muryofukidashi span.muryo_inner{
    font-size: clamp(10px, 5.08vw, 64px);
  }
  #merit .muryobtn_space .inner .muryofukidashi span.de{
    font-size: clamp(10px, 3.81vw, 48px);
  }
  #merit .muryobtn_space .setsumei{
    font-size: clamp(10px, 3.89vw, 49px);
  }
  #merit .consult_btn{
    width: 61.171875%;
    max-width: 1000px;
    margin: 2% auto 0;
  }
}

/* ----- Otoku ----- */
#otoku{
  width: 100%;
  background: linear-gradient(0deg, rgba(217,234,241,1) 0%, rgba(255,255,255,1) 100%);
}
#otoku .inner{
  width: 100%;
  text-align: center;
  background: url(../images/bg_otoku.png) no-repeat center;
  background-size: contain;
  aspect-ratio: 1920 / 950;
}
#otoku .inner .bln{
  width: 44.84375%;
  max-width: 861px;
  margin: 0 auto;
  padding-top: 5.1041666%;
}
#otoku .inner .bln img{
  width: 100%;
}
#otoku h3{
  color: #1E5391;
  font-weight: 900;
  line-height: 1.25;
  letter-spacing: .05em;
  padding-top: .5%;
  font-size: clamp(10px, 4.48vw, 86px);
}
#otoku h3 .t01{
  color: #FA9601;
  font-weight: 900;
  font-size: clamp(10px, 5.63vw, 108px);
}
#otoku h3 .t02{
  font-weight: 900;
  font-size: clamp(10px, 5.73vw, 110px);
}
#otoku h3 .exc{
  content: '';
  display: inline-block;
  width: 4.89583333%;
  max-width: 94px;
  margin-left: .02em;
  vertical-align: .1em;
}
#otoku h3 .exc img{
  width: 100%;
}
#otoku h4{
  color: #1E5391;
  font-weight: 700;
  line-height: 1.4;
  padding-top: 2.083333%;
  font-size: clamp(10px, 1.56vw, 30px);
  text-shadow: 0px 4px 4px rgb(0, 0, 0, .25);
}
#otoku h4 .frame{
  color: #FA9601;
  font-weight: 700;
  font-size: clamp(10px, 1.56vw, 30px);
  background: #fff;
  padding: 0 .5% .25% .7%;
  margin-right: .25%;
  border-radius: 8px;
  text-shadow: none;
}
#otoku h4 .katsuyo{
  font-weight: 800;
  letter-spacing: .02em;
  font-size: clamp(10px, 3.7vw, 71px);
}
#otoku h4 .katsuyo span{
  color: #FA9601;
}
#otoku .inner figure{
  width: 41.041666%;
  max-width: 788px;
}
#otoku h5{
  color: #1E5391;
  font-weight: 800;
  text-align: center;
  font-size: clamp(10px, 2.92vw, 56px);
}
#otoku h5 span{
  background: linear-gradient(transparent 70%, #F6FF71 30%);
}
#otoku .text{
  width: 44.896%;
  max-width: 862px;
  margin: 1.3% auto 0;
  padding: 0 .25em .18em 0;
  color: #FA9601;
  font-weight: 800;
  text-align: center;
  background: #fff;
  font-size: clamp(10px, 1.25vw, 24px);
}
#otoku figure{
  width: 58.073%;
  max-width: 1115px;
  margin: 3.23% auto 0;
}
#otoku figure img{
  width: 100%;
}
#otoku .arw1{
  width: 100%;
  max-width: 100%;
  margin: 1% auto 0;
}
#otoku .arw1 img{
  width: 100%;
}
@media screen and (max-width: 1260px){
  #otoku .inner{
    background: url(../images/bg_otoku.png) no-repeat -400px center;
    background-size: cover;
    aspect-ratio: 1920 / 950;
  }
  #otoku .inner .bln{
    width: 90%;
    max-width: 980px;
  }
  #otoku h3{
    font-size: clamp(10px, 6.83vw, 86px);
  }
  #otoku h3 .t01{
    font-size: clamp(10px, 8.57vw, 108px);
  }
  #otoku h3 .t02{
    font-size: clamp(10px, 8.73vw, 110px);
  }
  #otoku h3 .exc{
    width: 7.94%;
    max-width: 100px;
  }
  #otoku h3 .exc img{
    width: 100%;
  }
  #otoku h4{
    font-size: clamp(10px, 2.7vw, 34px);
  }
  #otoku h4 .frame{
    font-size: clamp(10px, 2.7vw, 34px);
  }
  #otoku h4 .katsuyo{
    font-size: clamp(10px, 5.63vw, 71px);
  }
  #otoku .inner figure{
    width: 100%;
    max-width: 835px;
  }
  #otoku h5{
    font-size: clamp(10px, 4.44vw, 56px);
  }
  #otoku .text{
    width: 73%;
    margin: 2% auto 0;
    padding: 0 .25em .18em .25em;
    font-size: clamp(10px, 1.9vw, 24px);
  }
  #otoku figure{
    width: 85%;
  }
}

/* ----- Simulation ----- */
#simulation{
  margin-bottom: 6.51%;
}
#simulation h3{
  position: relative;
  margin: 6% 0 1.6666%;
  color: #1E5391;
  text-align: center;
  font-weight: 700;
  font-size: clamp(10px, 2.97vw, 57px);
}
#simulation h3::before{
  content: '例えば';
  display: inline-block;
  width: 7.91666%;
  max-width: 152px;
  min-height: 78px;
  color: #fff;
  padding: .35em 0;
  position: absolute;
  top: -120%;
  left: 21%;
  box-sizing: border-box;
  font-weight: 700;
  font-size: clamp(10px, 1.56vw, 30px);
  background: url(../images/simu_01.png) no-repeat top center;
  background-size: contain;
}
#simulation .ldk{
  width: 40.9375%;
  max-width: 786px;
  padding: .15em 0 .25em;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-weight: 700;
  font-size: clamp(10px, 2.14vw, 41px);
  background: #FA9601;
  border-radius: 51px;
}
#simulation table{
  width: 44.948%;
  max-width: 863px;
  margin: 2.34375% auto;
  padding: 0;
}
#simulation table th,
#simulation table td{
  padding: .5em 1em;
  vertical-align: middle;
}
#simulation table th{
  text-align: center;
  font-weight: 500;
  background: #9EDAE4;
}
#simulation table .th1{
  border-right: 6px solid #fff;
}
#simulation table .th2,
#simulation table .td1{
  border-bottom: 6px solid #fff;
}
#simulation table td{
  background: #eee;
}
#simulation .floor{
  width: 58.22916%;
  max-width: 1118px;
  margin: 0 auto;
}
#simulation .floor img{
  width: 100%;
}
#simulation .ldk{
  width: 40.9375%;
  max-width: 786px;
  margin: 0 auto;
}
#simulation .reform{
  width: 58.3854%;
  max-width: 1121px;
  margin: 0 auto 2%;
}
#simulation .reform img{
  width: 100%;
}
#simulation .note{
  width: 58.8541%;
  max-width: 1130px;
  margin: 0 auto;
}
@media screen and (max-width: 1260px){
  #simulation{
    margin-bottom: 9%;
  }
  #simulation h3{
    font-size: clamp(10px, 4.52vw, 57px);
  }
  #simulation h3::before{
    width: 10%;
    padding: .2em 0 .45em;
    top: -100%;
    left: 10%;
    font-size: clamp(10px, 2.38vw, 30px);
  }
  #simulation .ldk{
    width: 65.07936508%;
    max-width: 820px;
    font-size: clamp(10px, 3.17vw, 40px);
  }
  #simulation table{
    width: 69%;
    max-width: 868px;
  }
  #simulation .floor{
    width: 88.8888%;
    max-width: 1120px;
  }
  #simulation .ldk{
    width: 40.9375%;
    max-width: 786px;
  }
  #simulation .reform{
    width: 88.968%;
    max-width: 1120px;
    margin: -1% auto 3%;
  }
  #simulation .note{
    width: 88.968%;
    max-width: 1120px;
  }
}

/* ----- Casestudy ----- */
#casestudy{
  width: 100%;
  position: relative;
  background: url(../images/bg_casestudy.png) no-repeat top center;
  background-size: cover;
  aspect-ratio: 4 / 2.87;
}
#casestudy h3{
  position: absolute;
  top: -6.25%;
  left: calc((100% - 8.4375%) / 2);
  width: 8.958333%;
  max-width: 172px;
  min-height: 172px;
  color: #fff;
  padding: 2.35% 0 0;
  font-weight: 600;
  line-height: 1.25;
  font-size: clamp(10px, 1.67vw, 32px);
  text-align: center;
  background: url(../images/cs_bg_01.png) no-repeat top center;
  background-size: contain;
}
#casestudy h4{
  color: #fff;
  margin-bottom: 2.6%;
  padding-top: 5.10416%;
  text-align: center;
  font-weight: 600;
  font-size: clamp(10px, 1.67vw, 32px);
}
#casestudy ul{
  width: 57.8125%;
  max-width: 1110px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#casestudy ul li{
  width: 48%;
  margin-bottom: 5.25%;
}
#casestudy ul li:first-child{
  margin-right: 4%;
}
#casestudy ul li img{
  width: 100%;
}
@media screen and (max-width: 1260px){
  #casestudy{
    background: url(../images/bg_casestudy.png) no-repeat top center;
    background-size: cover;
    aspect-ratio: 4 / 3.2625;
  }
  #casestudy h3{
    position: absolute;
    top: -10%;
    left: calc((100% - 172px) / 2);
    width: 172px;
    padding: 5% 0 0;
    font-size: 32px;
  }
  #casestudy h4{
    padding-top: 8%;
    font-size: clamp(10px, 3.17vw, 40px);
  }
  #casestudy ul{
    width: 88.88888889%;
    max-width: 1120px;
  }
  #casestudy ul li{
    width: 48%;
    margin-bottom: 3.25%;
  }
}

/* ----- Renovation ----- */
#renovation{
}
#renovation h3{
  color: #1E5391;
  line-height: 1.4;
  font-weight: 600;
  margin-top: 4.948%;
  text-align: center;
  font-size: clamp(10px, 2.97vw, 57px);
}
#renovation h3 .t01{
  color: #1E5391;
  margin: 0 .25%;
  font-weight: bold;
  font-size: clamp(10px, 4.01vw, 77px);
  background: linear-gradient(transparent 70%, #F6FF00 30%);
}
#renovation h3 .t02{
  color: #FA9601;
  margin: 0 .25%;
  font-weight: 700;
  font-size: clamp(10px, 4.79vw, 92px);
}
#renovation h3 .t03{
  font-weight: 700;
}
#renovation .t04{
  color: #FA9601;
  margin: 2.8646% 0 5%;
  text-align: center;
  font-weight: 600;
  font-size: clamp(10px, 1.25vw, 24px);
}
#renovation h3 .ls{
  letter-spacing: .06em;
}
@media screen and (max-width: 1260px){
  #renovation h3{
    font-size: clamp(10px, 2.97vw, 57px);
  }
  #renovation h3 .t01{
    font-size: clamp(10px, 6.11vw, 77px);
  }
  #renovation h3 .t02{
    font-size: clamp(10px, 7.3vw, 92px);
  }
  #renovation .t04{;
    font-size: clamp(10px, 1.9vw, 24px);
  }
}

/* ----- Reason ----- */
#reason h3{
  text-align: center;
  padding: 8.3333% 0 2.604%;
  font-size: clamp(10px, 4.43vw, 85px);
}
#reason h3 .t01{
  font-size: clamp(10px, 2.76vw, 53px);
}
#reason h3 .t02{
  color: #176186;
  font-weight: 700;
  padding-left: .65%;
  font-size: clamp(10px, 4.69vw, 90px);
}
#reason .inner{
  width: 100%;
  margin: 5.2083% 0 0;
  background: url(../images/bg_rsn.jpg) no-repeat top center;
  background-size: contain;
  aspect-ratio: 4 / 3.2986;
}
#reason .inner ul{
  width: 58.54166%;
  max-width: 1124px;
  margin: 0 auto;
  padding-top: 5.9375%;
}
#reason .inner ul li{
  display: flex;
  justify-content: space-between;
  padding-top: 5.338%;
}
#reason .inner ul li:first-child{
  padding-top: 0;
}
#reason .inner ul li figure{
  width: 37.4555%;
  max-width: 421px;
}
#reason .inner ul li figure img{
  width: 100%;
}
#reason .point{
  width: 58.8967%;
  max-width: 662px;
  margin-top: 3.38%;
}
#reason li:nth-child(2) figure{
  order: 1;
}
#reason li:nth-child(2) .point{
  order: 0;
}
#reason li:nth-child(3) .point{
  margin-top: 2.38%;
}
#reason .point .pt{
  width: 27.19%;
  max-width: 180px;
}
#reason .point .pt img{
  width: 100%;
}
#reason .point h4{
  color: #1E5391;
  padding: 2.4169% 0 7.5528%;
  font-weight: 700;
  font-size: clamp(10px, 2.08vw, 40px);
}
#reason .point h4 span{
  font-size: clamp(10px, 2.6vw, 50px);
}
#reason .point .text{
  text-align: justify;
  font-size: clamp(10px, 1.04vw, 20px);
}
#reason .point .text .marker{
  background: linear-gradient(transparent 60%, #F6FF00 40%);
}
@media screen and (max-width: 1260px){
  #reason h3{
    font-size: clamp(10px, 6.75vw, 85px);
  }
  #reason h3 .t01{
    font-size: clamp(10px, 4.21vw, 53px);
  }
  #reason h3 .t02{
    font-size: clamp(10px, 6.75vw, 85px);
  }
  #reason .inner{
    padding-bottom: 8%;
    background: url(../images/bg_rsn.jpg) no-repeat top center;
    background-size: cover;
  }
  #reason .inner ul{
    width: 88.88888889%;
    max-width: 1120px;
  }
  #reason .inner ul li{
    padding-top: 4%;
  }
  #reason .point h4{
    color: #1E5391;
    padding: 2.4169% 0 7.5528%;
    font-weight: 700;
    font-size: clamp(10px, 3.17vw, 40px);
  }
  #reason .point h4 span{
    font-size: clamp(10px, 3.97vw, 50px);
  }
  #reason .point .text{
    font-size: clamp(10px, 1.59vw, 20px);
  }
}

/* ----- Product ----- */
#product h3{
  text-align: center;
  padding: 8.3333% 0 2.9166%;
  font-size: clamp(10px, 4.43vw, 85px);
}
#product h3 .t01{
  font-size: clamp(10px, 2.76vw, 53px);
}
#product h3 .t02{
  color: #176186;
  font-weight: 700;
  padding-left: .25%;
  font-size: clamp(10px, 4.69vw, 90px);
}
#product .inner{
  padding-top: 5.2083333%;
}
#product .inner ul li{
  width: 100%;
  background: #C0ECF4;
  padding-top: 4.47916%;
  padding-bottom: 2.08333%;
}
#product .inner ul li:nth-child(2n){
  position: relative;
  width: 100%;
  background: #fff;
  padding-top: 3.48958%;
  padding-bottom: 3.48958%;
}
#product .inner ul li:nth-child(2n)::before{
  content: '';
  position: absolute;
  top: 0;
  left: calc((100% - 7.291666%) / 2);
  display: inline-block;
  width: 7.291666%;
  max-width: 140px;
  min-height: 58px;
  background: url(../images/prd_08.png) no-repeat top center;
  background-size: contain;
}
#product .inner ul li .list_inner{
  width: 58.33333%;
  max-width: 1120px;
  margin: 0 auto;
}
#product .inner ul li .title{
  display: flex;
  align-items: center;
  width: 100%;
}
#product .inner ul li .title p:first-child{
  width: 14.28571%;
  max-width: 160px;
  color: #fff;
  font-weight: 700;
  text-align: center;
  background: #6ED8FF;
  border-radius: 4px 0 0 4px;
  font-size: clamp(10px, 1.56vw, 30px);
}
#product .inner ul li .title p:nth-child(2){
  width: 85.71428%;
  max-width: 960px;
  color: #1E5391;
  background: #fff;
  font-weight: 700;
  line-height: 1;
  padding: 1.08% 1.5em;
  border: 2px solid #6ED8FF;
  border-radius: 0 76px 76px 0;
  font-size: clamp(10px, 1.25vw, 24px);
}
#product .inner ul li .contents{
  display: flex;
  justify-content: space-between;
  padding: 3.2143% 0 1.0714%;
}
#product .inner ul li .contents figure{
  width: 50%;
  max-width: 560px;
}
#product .inner ul li .contents figure img{
  width: 100%;
}
#product .inner ul li .contents .text{
  width: 47.05357%;
  max-width: 527px;
}
#product .inner ul li .contents .text span{
  width: 25.04743%;
  max-width: 132px;
  color: #fff;
  border-radius: 8px;
  display: inline-block;
  margin-right: 3%;
  font-weight: 700;
  text-align: center;
  padding: 2% 0 2.5%;
  font-size: clamp(10px, 1.25vw, 24px);
}
#product .inner ul li .contents .text span:first-child{
  background: #F8CCCC;
}
#product .inner ul li .contents .text span:nth-child(2){
  background: #96A9C8;
}
#product .inner ul li .contents .text span:nth-child(3){
  width: 29.6015%;
  max-width: 156px;
  background: #E8E116;
}
#product .inner ul li .contents .text p{
  text-align: justify;
  padding-top: 3.221428%;
  font-size: clamp(10px, 1.25vw, 24px);
}
#product .inner ul li .catch{
  display: flex;
  align-items: center;
  width: 75.8928%;
  max-width: 850px;
  margin: 0 auto;
}
#product .inner ul li .catch.center{
  width: 81.17647%;
  max-width: 690px;
  margin: 0 auto;
}
#product .inner ul li .catch .icon{
  width: 27.97468%;
  max-width: 221px;
}
#product .inner ul li .catch.center .icon{
  margin-right: 4%;
}
#product .inner ul li .catch .icon img{
  width: 100%;
}
#product .inner ul li .catch .text{
  color: #1E5391;
  font-weight: 700;
  font-size: clamp(10px, 1.98vw, 38px);
}
#product .inner ul li .catch .text.text1{
  letter-spacing: -.04em;
  font-size: clamp(10px, 1.88vw, 36px);
}
#product .inner ul li:nth-child(2n) figure,
#product .inner ul li:nth-child(2n) figure img{
  width: 100%;
}
#product .inner ul li .catch .text span{
  display: inline-block;
  font-size: clamp(10px, 2.6vw, 50px);
  margin-right: .4em;
  line-height: 1;
  vertical-align: -.2em;
}
#product .inner ul li .catch .text span.rev{
  transform: rotate(120deg);
}
#product .inner .picbox{
  display: flex;
}
#product .inner .picbox figure:nth-child(1){
  width: 43.571428571%;
}
#product .inner .picbox figure:nth-child(2){
  width: 56.428571428%;
}
#product .inner .picbox figure img{
  width: 100%;
}
@media screen and (max-width: 1260px){
  #product h3{
    font-size: clamp(10px, 6.75vw, 85px);
  }
  #product h3 .t01{
    font-size: clamp(10px, 4.21vw, 53px);
  }
  #product h3 .t02{
    font-size: clamp(10px, 6.75vw, 85px);
  }
  #product .inner ul li .list_inner{
    width: 88.88888889%;
  }
  #product .inner ul li .title p:first-child{
    width: 19.04761905%;
    max-width: 240px;
    font-size: clamp(10px, 2.38vw, 30px);
  }
  #product .inner ul li .title p:nth-child(2){
    font-size: clamp(10px, 1.9vw, 24px);
  }
  #product .inner ul li .contents .text span{
    width: 25.04743%;
    max-width: 132px;
    color: #fff;
    border-radius: 8px;
    display: inline-block;
    margin-right: 3%;
    font-weight: 700;
    text-align: center;
    padding: 2% 0 2.5%;
    font-size: clamp(10px, 1.9vw, 24px);
  }
  #product .inner ul li .contents .text p{
    padding-top: 3.221428%;
    font-size: clamp(10px, 1.9vw, 24px);
  }
  #product .inner ul li .catch .text{
    font-size: clamp(10px, 3.17vw, 40px);
  }
  #product .inner ul li .catch .text.text1{
    font-size: clamp(10px, 3.02vw, 38px);
  }
  #product .inner ul li .catch .text span{
    font-size: clamp(10px, 2.6vw, 50px);
    vertical-align: -.1em;
  }
}

/* ----- Flow ----- */
#flow{
  max-height: 1336px;
  background: #EAEEF2;
  padding: 6.7708333% 0 11.7708333%;
}
#flow .title_line{
  margin: 1.510416% auto;
}
#flow h3{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  letter-spacing: .04em;
  font-size: clamp(10px, 2.76vw, 53px);
}
#flow h4{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  font-size: clamp(10px, 1.88vw, 36px);
}
#flow ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 58.33333%;
  max-width: 1120px;
  margin: 0 auto 1.5%;
  aspect-retio: 4 / 2.93525;
}
#flow ul li{
  width: 22.857%;
  max-width: 256px;
  margin-top: 6%;
  background: #fff;
  border-radius: 0 24px 24px 24px;
  box-shadow: 0px 4px 10px 4px rgba(0, 0, 0, .2);
}
#flow ul li .num{
  width: 17.968%;
  max-width: 46px;
  color: #fff;
  background: #3182B6;
  border-radius: 0 24px 24px 24px;
}
#flow ul li img{
  width: 100%;
}
#flow .list_inner{
  width: 85.9375%;
  max-width: 220px;
  margin: 0 auto;
  padding: .5em 0;
  text-align: center;
  box-sizing: border-box;
}
#flow .list_inner figure{
  width: 53.125%;
  max-width: 119px;
  margin: 0 auto;
}
#flow .list_inner h5{
  color: #3383B7;
  padding: 4% 0 5.5%;
  line-height: 1.3;
  font-weight: 700;
  font-size: clamp(10px, 1.2vw, 23px);
}
#flow .list_inner p{
  line-height: 1.75;
  padding-bottom: 1.5em;
  font-size: clamp(10px, 1.2vw, 16px);
}
@media screen and (max-width: 1260px){
  #flow{
    max-height: 1336px;
    background: #EAEEF2;
    padding: 6.5% 0 7.5%;
  }
  #flow .title_line{
    margin: 1.510416% auto;
  }
  #flow h3{
    font-size: clamp(10px, 4.21vw, 53px);
  }
  #flow h4{
    font-size: clamp(10px, 2.86vw, 36px);
  }
  #flow ul{
    width: 88.88888889%;
  }
  #flow .list_inner h5{
    color: #3383B7;
    padding: 4% 0 5.5%;
    line-height: 1.3;
    font-weight: 700;
    font-size: clamp(10px, 1.83vw, 23px);
  }
  #flow .list_inner p{
    font-size: clamp(10px, 1.27vw, 16px);
  }
}

/* ----- Case ----- */
#case{
  padding: 4% 0 0;
}
#case .title_line{
  margin: 1.510416% auto;
}
#case h3{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  font-size: clamp(10px, 2.76vw, 53px);
}
#case h4{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  margin-bottom: 1.875%;
  font-size: clamp(10px, 1.88vw, 36px);
}
#case .splide{
  width: 100%;
  background: #EAEEF2;
}
#case .splide__track{
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  border-left: 1px solid #ccc !important;
  border-right: 1px solid #ccc !important;
  box-shadow: inset 0px -16px 14px 0 rgba(0, 0, 0, .075);
}
#case .splide__arrows{
  position: relative;
  z-index: 10;
  width: 648px;
  margin: 0 auto;
}
#case .splide__arrow.splide__arrow--prev{
  position: absolute;
  top: calc((1122px - 70px) / 2);
  left: -90px;
}
#case .splide__arrow.splide__arrow--next{
  position: absolute;
  top: calc((1122px - 70px) / 2);
  right: -90px;
}
#case .splide__track .splide__list li{
  width: 648px !important;
  margin: 0 7% 4% 0;
  background: #fff;
  border-radius: 24px;
  box-shadow: 3px 8px 14px 0 rgba(0,0,0,.25);
}
@media screen and (max-width: 1750px){
  #case .splide__arrows{
    width: 590px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    top: calc((1020px - 70px) / 2);
    left: -85px;
  }
  #case .splide__arrow.splide__arrow--next{
    top: calc((1020px - 70px) / 2);
    right: -85px;
  }
  #case .splide__track .splide__list{
    padding-top: 6% !important;
  }
  #case .splide__track .splide__list li{
    width: 590px !important;
  }
}
@media screen and (max-width: 1595px){
  #case .splide__arrows{
    width: 538px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    top: calc((930px - 70px) / 2);
    left: -80px;
  }
  #case .splide__arrow.splide__arrow--next{
    top: calc((930px - 70px) / 2);
    right: -80px;
  }
  #case .splide__track .splide__list{
    padding-top: 12% !important;
  }
  #case .splide__track .splide__list li{
    width: 538px !important;
  }
}
@media screen and (max-width: 1450px){
  #case .splide__arrows{
    width: 489px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    top: calc((954px - 70px) / 2);
    left: -75px;
  }
  #case .splide__arrow.splide__arrow--next{
    top: calc((954px - 70px) / 2);
    right: -75px;
  }
  #case .splide__track .splide__list{
    padding-top: 20% !important;
  }
  #case .splide__track .splide__list li{
    width: 489px !important;
  }
}
@media screen and (max-width: 1320px){
  #case .splide__arrows{
    width: 445px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    top: calc((908px - 70px) / 2);
    left: -70px;
  }
  #case .splide__arrow.splide__arrow--next{
    top: calc((908px - 70px) / 2);
    right: -70px;
  }
  #case .splide__track .splide__list{
    padding-top: 30% !important;
  }
  #case .splide__track .splide__list li{
    width: 445px !important;
  }
}
@media screen and (max-width: 1210px){
  #case .splide__arrows{
    width: 408px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    top: calc((859px - 70px) / 2);
    left: -65px;
  }
  #case .splide__arrow.splide__arrow--next{
    top: calc((859px - 70px) / 2);
    right: -65px;
  }
  #case .splide__track .splide__list{
    padding-top: 30% !important;
  }
  #case .splide__track .splide__list li{
    width: 408px !important;
  }
}
@media screen and (max-width: 1120px){
  #case .splide__arrows{
    width: 378px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    left: -60px;
  }
  #case .splide__arrow.splide__arrow--next{
    right: -60px;
  }
  #case .splide__track .splide__list li{
    width: 378px !important;
  }
}
@media screen and (max-width: 880px){
  #case .splide__arrows{
    width: 297px;
    margin: 0 auto;
  }
  #case .splide__arrow.splide__arrow--prev{
    left: -55px;
  }
  #case .splide__arrow.splide__arrow--next{
    right: -55px;
  }
  #case .splide__track .splide__list li{
    width: 297px !important;
  }
}

#case .splide__arrow svg{
  display: block;
  clip-path: polygon(0 0, 93.6% 50%, 0 100%);
  height: 70px;
  aspect-ratio: 1;
  background: #1e5391;
  fill: #1e5391;
}
#case .splide__arrow.splide__arrow--prev svg{
  transform: rotate(180deg);
}
#case .splide__track .splide__list{
  display: flex;
  align-items: center;
  width: 100%;
  padding-top: 4% !important;
}

#case .splide__track .splide__list li img{
  width: 100%;
}
#case .list_inner{
  width: 100%;
  text-align: left;
}
#case .list_inner p{
  line-height: 1.6;
  font-size: clamp(10px, 0.83vw, 16px);
}
#case .list_inner h5{
  color: #fff;
  text-align: center;
  background: #1E5391;
  padding: .75em .5em;
  font-weight: 700;
  border-radius: 24px 24px 0 0;
  font-size: clamp(10px, 1.2vw, 23px);
}
#case .list_inner .area_01{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: .9em 0;
}
#case .list_inner .area_01 span{
  display: block;
  box-sizing: border-box;
}
#case .list_inner .area_01 span:nth-child(1){
  color: #fff;
  text-align: center;
  width: 21.3%;
  max-width: 138px;
  margin-right: 1em;
  padding: .25em .5em .3em;
  background: #45464B;
  border-radius: 48px;
}
#case .list_inner .area_01 span:nth-child(2){
  width: 66.358%;
  max-width: 430px;
  line-height: 1.5;
}
#case .list_inner figure img{
  width: 100%;
}
#case .list_inner .area_02{
  padding: .8em 1.75em;
  box-sizing: border-box;
}
#case .list_inner .area_02 .point{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: .9em;
}
#case .list_inner .area_02 .point span:nth-child(1){
  color: #fff;
  text-align: center;
  width: 23.148%;
  max-width: 150px;
  margin-right: 1em;
  padding: .25em .5em .3em;
  background: #FA9601;
  border-radius: 48px;
}
#case .list_inner .area_02 .point span:nth-child(2){
  width: 74%;
  max-width: 480px;
  line-height: 1.5;
  text-align: right;
}
#case .list_inner .area_02 h6{
  color: #FA9601;
  font-weight: 700;
  padding-bottom: .6em;
  font-size: clamp(10px, 1.2vw, 23px);
}
#case .list_inner .area_03{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 1.25em 2em;
  background: #EAEEF2;
}
#case .list_inner .area_03 dl{
  font-size: clamp(10px, 0.83vw, 16px);
}
#case .list_inner .area_03 dl:nth-child(1),
#case .list_inner .area_03 dl:nth-child(3){
  width: 45%;
  margin-bottom: .5em;
}
#case .list_inner .area_03 dl:nth-child(2),
#case .list_inner .area_03 dl:nth-child(4){
  width: 55%;
  margin-bottom: .5em;
}
#case .list_inner .area_03 dl dt{
  float: left;
  width: 42%;
}
#case .list_inner .area_03 dl:nth-child(2) dd,
#case .list_inner .area_03 dl:nth-child(4) dd{
  float: right;
  width: 58%;
}
#case .list_inner dt::before{
  content: '';
  display: inline-block;
  width: 16px;
	height: 16px;
	border-radius: 50%;
  margin-right: 1%;
  background: #45464B;
  vertical-align: -.1em;
}
#case .list_inner dd::before{
  content: '：';
  display: inline-block;
  margin-right: 2%;
}
#case .list_inner .area_04{
  padding: .75em 2em 2.5em;
}
#case .list_inner .area_04 p{
  padding: .5em 1em;
  border-radius: 64px;
  border: 3px solid #D9D9D9;
}
#case .list_inner .area_04 span{
  font-weight: 800;
}
@media screen and (max-width: 1260px){
  #case h3{
    font-size: clamp(10px, 4.21vw, 53px);
  }
  #case h4{
    font-size: clamp(10px, 2.86vw, 36px);
  }
}

/* ----- Voice ----- */
#voice{
  padding: 4% 0 0;
}
#voice .title_line{
  margin: 1.510416% auto;
}
#voice h3{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  font-size: clamp(10px, 2.76vw, 53px);
}
#voice h4{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  font-size: clamp(10px, 1.88vw, 36px);
}
#voice .inner{
  margin-top: 1.875%;
}
#voice .inner ul{
  width: 100%;
  background: #EAEEF2;
}
#voice .inner ul li{
  width: 100%;
  padding: 2.14286% 0;
}
#voice .inner ul li:nth-child(2n){
  background: #fff;
}
#voice .inner .contents{
  display: flex;
  justify-content: space-between;
  width: 58.33333%;
  max-width: 1120px;
  margin: 0 auto;
}
#voice .inner .contents .pic_area{
  width: 30.5357%;
  max-width: 342px;
}
#voice .inner .contents .pic_area figure{
  margin-bottom: 5%;
  box-shadow: 0 2px 10px 0 rgba(0,0,0,.45);
}
#voice .inner .contents .pic_area figure:nth-child(2){
  margin-bottom: 0;
}
#voice .inner .contents .pic_area figure img{
  width: 100%;
}
#voice .inner .contents .text_area{
  width: 66.6071%;
  max-width: 746px;
}
#voice .inner .contents .text_area p:nth-child(1){
  color: #3383B7;
  font-weight: 700;
  padding: 4.10714% 0;
  font-size: clamp(14px, 1.2vw, 23px);
}
#voice .inner .contents .text_area p:nth-child(2){
  padding: 2em 3em;
  background: #fff;
  border-radius: 24px;
  text-align: justify;
  font-size: clamp(10px, 1.2vw, 16px);
}
#voice .inner ul li:nth-child(2n) .contents .text_area p:nth-child(2){
  background: #EAEEF2;
}
#voice .voice_btn{
  margin-top: 2em;
  padding: 1.5em .5em;
  background: #EAEEF2;
}
#voice .voice_btn p{
  width: 58.33333%;
  max-width: 1120px;
  margin: 0 auto;
}
#voice .voice_btn a{
  display: block;
  color: #fff;
  width: 100%;
  margin: 3% auto;
  padding: .5em;
  opacity: 1;
  transition: .3s;
  text-align: center;
  box-sizing: border-box;
  background: #1E5391;
  border-radius: 16px;
  border: 5px solid #fff;
  font-size: clamp(14px, 1.98vw, 38px);
  box-shadow: 0 0 8px rgba(0, 0, 0, .3);
}
#voice .voice_btn a:hover{
  opacity: .7;
  transition: .3s;
}
@media screen and (max-width: 1260px){
  #voice h3{
    font-size: clamp(10px, 4.21vw, 53px);
  }
  #voice h4{
    font-size: clamp(10px, 2.86vw, 36px);
  }
  #voice .inner .contents{
    width: 88.88888889%;
  }
  #voice .inner .contents .text_area p:nth-child(1){
    font-size: clamp(10px, 1.9vw, 24px);
  }
  #voice .inner .contents .text_area p:nth-child(2){
    font-size: clamp(10px, 1.43vw, 18px);
  }
  #voice .voice_btn p{
    width: 88.88888889%;
  }
  #voice .voice_btn a{
    font-size: clamp(10px, 3.17vw, 40px);
  }
}

/* ----- Faq ----- */
#faq{
  padding: 4% 0 6%;
}
#faq h3{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  font-size: clamp(10px, 2.76vw, 53px);
}
#faq .title_line{
  margin: 1.510416% auto;
}
#faq .lead{
  color: #1E5391;
  font-weight: 700;
  text-align: center;
  font-size: clamp(10px, 1.2vw, 16px);
}
#faq .inner{
  width: 58.33333%;
  max-width: 1120px;
  margin: 3% auto 0;
}
#faq .inner .faq_menu{
  width: 100%;
  margin-bottom: 2em;
}
#faq .inner .faq_menu ul{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
#faq .inner .faq_menu ul li{
  width: 49%;
  padding: 0;
  border: none;
  margin-bottom: .25em;
  box-sizing: border-box;
}
#faq .inner .faq_menu ul li a{
  display: block;
  opacity: 1;
  color: #fff;
  transition: .3s;
  padding: .9em 0 .65em;
  font-weight: 500;
  text-align: center;
  background: #1E5391;
  border-radius: 50px;
  font-size: clamp(18px, 1.2vw, 23px);
}
#faq .inner .faq_menu ul li a::before{
  content: '';
  width: 35px;
  height: 32px;
  display: inline-block;
  vertical-align: middle;
  margin-right: .5em;
}
#faq .inner .faq_menu ul li:nth-child(1) a::before{
  background: url(../images/faq_icon_01.png) no-repeat;
  background-size: contain;
}
#faq .inner .faq_menu ul li:nth-child(2) a::before{
  background: url(../images/faq_icon_02.png) no-repeat;
  background-size: contain;
}
#faq .inner .faq_menu ul li:nth-child(3) a::before{
  background: url(../images/faq_icon_03.png) no-repeat;
  background-size: contain;
}
#faq .inner .faq_menu ul li:nth-child(4) a::before{
  background: url(../images/faq_icon_04.png) no-repeat;
  background-size: contain;
}
#faq .inner .faq_menu ul li a:hover{
  opacity: .7;
  transition: .3s;
}
#faq .inner h4{
  padding: 1em;
  color: #1E5391;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 700;
  border-radius: 10px 10px 0 0;
  border-top: 3px solid #367FA4;
  border-left: 3px solid #367FA4;
  border-right: 3px solid #367FA4;
  font-size: clamp(20px, 1.3vw, 25px);
  background: linear-gradient(0deg, rgba(250, 150, 1, 0), rgba(250, 150, 1, 0.3));
}
#faq .inner h4::after{
  content: '';
  width: 55px;
  height: 50px;
  display: inline-block;
  vertical-align: middle;
}
#faq .inner #ctg1 h4::after{
  background: url(../images/faq_icon_01_b.png) no-repeat;
  background-size: contain;
}
#faq .inner #ctg2 h4::after{
  background: url(../images/faq_icon_02_b.png) no-repeat;
  background-size: contain;
}
#faq .inner #ctg3 h4::after{
  background: url(../images/faq_icon_03_b.png) no-repeat;
  background-size: contain;
}
#faq .inner #ctg4 h4::after{
  background: url(../images/faq_icon_04_b.png) no-repeat;
  background-size: contain;
}
#faq .inner ul{
  width: 100%;
}
#faq .inner #ctg1,
#faq .inner #ctg2,
#faq .inner #ctg3,
#faq .inner #ctg4{
  padding-bottom: 2em;
}
#faq .inner #ctg1 ul li,
#faq .inner #ctg2 ul li,
#faq .inner #ctg3 ul li,
#faq .inner #ctg4 ul li{
  width: 100%;
  padding: 1.5em 1.35em;
  box-sizing: border-box;
  border-bottom: 1px solid #DAE9F6;
}
#faq .inner #ctg1 ul li:first-child,
#faq .inner #ctg2 ul li:first-child,
#faq .inner #ctg3 ul li:first-child,
#faq .inner #ctg4 ul li:first-child{
  border-top: none;
}
#faq .inner #ctg1 ul li:last-child,
#faq .inner #ctg2 ul li:last-child,
#faq .inner #ctg3 ul li:last-child,
#faq .inner #ctg4 ul li:last-child{
  border-bottom: none;
}
#faq .inner ul li h5{
  display: flex;
  align-items: center;
  color: #1E5391;
  font-weight: 700;
  line-height: 1.45;
  padding-bottom: .5em;
  font-size: clamp(10px, 1.2vw, 23px);
}
#faq .inner ul li h5::before{
  content: '';
  display: inline-block;
  min-width: 38px;
  min-height: 38px;
  margin-right: .7em;
  background: url(../images/faq_01.png) no-repeat top center;
  background-size: contain;
}
#faq .inner ul li p{
  padding: 0 1.5em 0 3.3em;
  font-size: clamp(10px, 1.2vw, 16px);
}
@media screen and (max-width: 1420px){
  #faq .inner ul li h5::before{
    min-width: 40px;
    min-height: 40px;
  }
}
@media screen and (max-width: 1260px){
  #faq h3{
    font-size: clamp(10px, 4.21vw, 53px);
  }
  #faq .lead{
    font-size: clamp(10px, 1.43vw, 18px);
  }
  #faq .inner{
    width: 88.88888889%;
  }
  #faq .inner ul li h5{
    padding-bottom: 2%;
    font-size: clamp(10px, 1.83vw, 23px);
  }
  #faq .inner ul li p{
    font-size: clamp(10px, 1.43vw, 18px);
  }
}
@media screen and (max-width: 960px){
  #faq .inner ul li h5::before{
    min-width: 28px;
    min-height: 28px;
  }
}

/* ----- Support ----- */
#support{
  width: 100%;
  background: #EAEEF2;
}
#support .contents{
  padding: 4.791666% 0;
  background: #1367B1;
}
#support .contents p{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 58.33333%;
  max-width: 1120px;
  margin: 0 auto;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  font-size: clamp(10px, 1.61vw, 31px);
}
#support .contents p::before{
  content: '';
  display: block;
  width: 20.35714%;
  max-width: 228px;
  height: 1px;
  background: #fff;
}
#support .contents p::after{
  content: '';
  display: block;
  width: 20.35714%;
  max-width: 228px;
  height: 1px;
  background: #fff;
}
#support .text{
  width: 58.33333%;
  max-width: 1120px;
  margin: 3% auto 0;
  padding-bottom: 4.5%;
}
#support .text h3{
  display: block;
  color: #1E5391;
  text-align: center;
}
#support .text span.marker{
  line-height: 3;
  font-weight: 800;
  font-size: clamp(10px, 2.08vw, 40px);
  background: linear-gradient(transparent 60%, #F6FF00 40%);
}
#support .text span.t01{
  font-weight: 800;
  padding-bottom: .5%;
  font-size: clamp(10px, 3.07vw, 59px);
}
#support .text span.t02{
  color: #FA9601;
  font-weight: 800;
  padding-bottom: .5%;
  font-size: clamp(10px, 4.79vw, 92px);
}
#support .text span.t03{
  line-height: 1.4;
  font-weight: 700;
  padding-bottom: .5%;
  font-size: clamp(10px, 2.97vw, 57px);
}
@media screen and (max-width: 1260px){
  #support .contents p{
    width: 88.88888889%;
    font-size: clamp(10px, 2.46vw, 31px);
  }
  #support .text{
    width: 88.88888889%;
  }
  #support .text span.marker{
    font-size: clamp(10px, 3.17vw, 40px);
  }
  #support .text span.t01{
    font-size: clamp(10px, 4.68vw, 59px);
  }
  #support .text span.t02{
    font-size: clamp(10px, 7.3vw, 92px);
  }
  #support .text span.t03{
    font-size: clamp(10px, 4.52vw, 57px);
  }
}

/* ----- Footer ----- */
footer{
  width: 100%;
}
footer .contents{
  width: 58.33333%;
  max-width: 1120px;
  margin: 3% auto 0;
  padding-bottom: 4.5%;
}
footer .contents .inner{
  width: 100%;
  display: flex;
  margin-top: .5em;
  padding: .75em 0;
  align-items: flex-end;
  border-top: 2px solid #ddd;
}
footer .contents img{
  width: 100%;
}
footer .contents .area_01{
  width: 57%;
}
footer .contents .area_01 .area_01_inner{
  display: flex;
}
footer .contents .area_01 .area_01_inner p{
  width: 20%;
  height: auto;
  margin-right: 2%;
}
footer .contents .area_01 .area_01_inner span{
  display: block;
  width: 76%;
  font-weight: 800;
  color: #e60012;
  font-size: clamp(10px, 3.59vw, 69px);
}
footer .contents .area_01 p{
  font-weight: 600;
  line-height: 1;
  padding-top: .25em;
  font-size: clamp(10px, 1.56vw, 30px);
}
footer .contents .area_02{
  width: 43%;
}
footer .contents .area_02 p{
  line-height: 1.4;
  font-size: clamp(10px, 1.3vw, 25px);
}
footer .contents .area_02 p a{
  opacity: 1;
  transition: .3s;
}
footer .contents .area_02 p a:hover{
  opacity: .6;
  transition: .3s;
}
footer p.copy{
  color: #fff;
  max-height: 85px;
  text-align: center;
  background: #1E5391;
  padding: 1.5% 0;
  letter-spacing: .06em;
  font-size: clamp(10px, 0.78vw, 15px);
}

/* ----- Pagetop ----- */
#pagetop{
  position: fixed;
  right: 0;
  bottom: 160px;
  font-size: 16px;
  line-height: 1;
  z-index: 99;
  padding: .75em 0 .5em;
  background: #2e538d;
  opacity: .6;
  transition: .3s;
}
#pagetop a{
  display: block;
  width: 40px;
  height: 40px;
  margin: 20px 20px 0;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(45deg);
  box-sizing: border-box;
}
#pagetop:hover{
  opacity: .85;
  transition: .3s;
}

/* ----- お問い合わせ常駐 ----- */
#fixed-action-wrap{
  position: fixed;
  right: 0;
  bottom: 12px;
  z-index: 50;
  width: 276px;
  padding: .8em 1.2em;
  box-sizing: border-box;
  border-radius: 12px 0 0 12px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}
#fixed-action-wrap .tel-wrap{
}
#fixed-action-wrap .tel-wrap .opentime{
  font-weight: 600;
  text-align: center;
  font-size: 13px;
}
#fixed-action-wrap .tel-wrap .tel{
  width: 89%;
  margin: 0 auto .6em;
}
#fixed-action-wrap .tel-wrap .tel img{
  width: 100%;
}
#fixed-action-wrap .contact-wrap a{
  display: block;
  width: 100%;
  color: #fff;
  padding: .95em .75em 1.05em;
  margin-bottom: .35em;
  font-weight: 600;
  text-align: center;
  background: #005BAC;
  box-sizing: border-box;
  letter-spacing: .075em;
  border-radius: calc(1px / 0);
  font-size: 14.5px;
  opacity: 1;
  transition: .3s;
}
#fixed-action-wrap .contact-wrap a:hover{
  opacity: .6;
  transition: .3s;
}
#fixed-action-wrap .contact-wrap a::before{
  content: '';
  width: 20px;
  height: 14px;
  display: inline-block;
  margin-right: .75em;
  vertical-align: middle;
  background: url(../images/icon_mailbox.png) no-repeat center center;
  background-size: contain;
}
/*
#fixed-action-wrap{
	position: fixed;
        right: 0;
        bottom: 12px;
        z-index: 50;
        display: flex;
        flex-direction: column;
        gap: 8px;
        align-items: end;
        padding: 18px;
        border-radius: 12px 0 0 12px;
        background: rgba(255, 255, 255, 0.9);
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}
#fixed-action-wrap .tel-wrap{
        display: grid;
        justify-content: center;
        text-align: center;
        gap: 0.2em;
        width: 100%;
}
#fixed-action-wrap .tel-wrap p.opentime{
        font-size: 86%;
        font-weight: 600;
}
#fixed-action-wrap .tel-wrap p.tel a{
    pointer-events: none;
}
#fixed-action-wrap .tel-wrap p.tel img{
        height: 38px;
}
#fixed-action-wrap .contact-wrap{
        border-radius: calc(1px / 0);
        background: #ffffff;
        overflow: hidden;
}
#fixed-action-wrap .contact-wrap a{
        color: #ffffff;
	background: #005BAC;
        width: 300px;
        height: 48px;
        font-size: 95%;
        font-weight: 600;
        line-height: 48px;
        text-align: center;
        letter-spacing: 0.075em;
        padding: 1em;
        border-radius: calc(1px / 0);
        box-sizing: border-box;
        position: relative;
}
#fixed-action-wrap .contact-wrap a:before{
        content: "";
        display: block;
        width: 20px;
        height: 14px;
        background: url(../images/icon_mailbox.png) no-repeat center center;
        background-size: contain;
        position: absolute;
        top: 50%;
        left: 24px;
        margin-right: .75em;
        transform: translateY(-50%);
}
*/
