@charset "UTF-8";
:root{
  --black:#333;
  --white:#fff;
  --main:#004098;
  --main-txt:#F2F7FF;
  --main-light:#F2F7FF;
  --main-light-2:#CBDCF7;
  --main-deep:#023781;
  --primary:#FF7F00;
  --primary-light:#FFEDDB;
  --primary-deep:#D15417;
  --green:#66B82B;
  --green-deep:#50941f;
  --green-light:#E8F5DF;
  --yellow:#FFF231;
  --yellow-deep:#FFCC00;
}

.tag-list.--green-light a{
  background-color:var(--green-light);
  color:var(--green);
}

.ttl.--fukidashi-text.--green{
  background-color:var(--green);
}
.ttl.--fukidashi-text.--green::before{
  background-image:url("../img/service_fukidashi_arrow_green.svg");
}

.fv__map{
  display:block;
  position:absolute;
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:min(600px, 160vw);
  top:min(20px, 5.3333333333vw);
}

.special{
  background-image:url("../img/special_bg.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  overflow:hidden;
  color:#fff;
}
.special__inner{
  position:relative;
  z-index:0;
  padding-top:40px;
  padding-bottom:320px;
}
.special__inner .clip-person-1,
.special__inner .clip-person-2{
  z-index:-1;
  position:absolute;
  display:block;
  content:"";
}
.special__inner .clip-person-1{
  background-image:url("../img/clip_person_special_1.webp?date=251030");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  left:0;
  bottom:0;
  transform:translateX(-54%);
  width:calc(355px * .67);
  height:calc(406px * .67);
  transform:translateX(-30%);
}
.special__inner .clip-person-2{
  background-image:url("../img/clip_person_special_2.webp");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  right:0;
  bottom:0;
  transform:translateX(58%);
  width:calc(338px * .7);
  height:calc(448px * .7);
  transform:translateX(40%);
}
.special__ttl{
  display:flex;
  justify-content:center;
}
.special__ttl picture{
  width:345px;
}
.special__text{
  margin-top:20px;
}
.special__text .text{
  text-align:center;
}
.special__cols{
  margin-top:40px;
}
.special-cols{
  display:flex;
  flex-direction:column;
  gap:40px;
}
.special-cols__item{
  flex:1;
}
.special-cols__ttl{
  font-weight:800;
  text-align:center;
  font-size:2.4rem;
}
.special-cols__text{
  margin-top:20px;
}
.special-cols__link{
  display:flex;
  justify-content:flex-end;
  margin-top:5px;
}
.special-cols__link a{
  text-decoration:underline;
  text-underline-offset:0.3em;
}
.special-cols__pic{
  display:flex;
  justify-content:center;
}

.branch-box{
  background-color:var(--main-light-2);
}
.branch-box::after{
  display:none;
}
.branch-list.--group{
  flex-direction:column;
  align-items:stretch;
  padding:0 0;
}
.branch-list.--group > *{
  width:100%;
}
.branch-list-pref-group__item + .branch-list-pref-group__item{
  margin-top:20px;
}
.branch-list-pref-group__inner{
  position:relative;
}
.branch-list-pref-group__inner .simplebar-track .simplebar-scrollbar::before{
  background:var(--main-light-2);
}
.branch-list-pref-group.--scrollable .branch-list-pref-group__inner{
  max-height:380px;
  padding-right:21px;
}
.branch-list-pref-group__more{
  text-align:center;
}
.branch-list-pref-group__more a{
  display:flex;
  min-height:50px;
  background-color:var(--main-light);
  color:var(--main);
  font-size:1.6rem;
  justify-content:center;
  align-items:center;
  border-radius:10px;
  margin-top:15px;
}
.branch-list-pref-item__ttl{
  position:relative;
  font-weight:800;
  color:var(--main);
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  font-size:1.6rem;
  padding-bottom:0.8rem;
  padding-left:25px;
  border-bottom:solid 3px var(--main);
  margin-bottom:15px;
}
.branch-list-pref-item__ttl a{
  position:relative;
  color:var(--black);
  font-size:1.2rem;
  padding-right:2em !important;
}
.branch-list-pref-item__ttl::before{
  position:absolute;
  display:block;
  content:"";
  background-image:url("./../img/ic_area.svg");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  left:0;
  top:50%;
  transform:translateY(calc(-50% - 0.1em));
  width:15px;
  height:18px;
}
.branch-list-pref-item__count{
  font-size:1.2rem;
  color:var(--black);
}
.branch-list-item-hor a{
  background-color:var(--main-light);
  display:flex;
  align-items:flex-start;
  height:100%;
  border-radius:10px;
  gap:15px;
  padding:15px;
}
.branch-list-item-hor__body{
  flex-grow:1;
  flex-shrink:1;
}
.branch-list-item-hor__thumb{
  flex-grow:0;
  flex-shrink:0;
  aspect-ratio:142/106;
  overflow:hidden;
  border-radius:10px;
  width:122px;
}
.branch-list-item-hor__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 0.3s ease;
}
.branch-list-item-hor__ttl{
  color:var(--main);
  font-size:1.5rem;
}
.branch-list-item-hor__address{
  margin-top:0.3em;
  font-size:1.2rem;
}
.branch-list-item-hor__phone{
  color:var(--main);
  font-size:1.4rem;
}

.area-nav-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.area-nav-list__item{
  display:flex;
  align-items:center;
  background-color:#fff;
  padding:15px;
  width:100%;
  flex:1;
  gap:10px;
}
.area-nav-list__item > *{
  flex:1;
  min-width:0;
}
.area-nav-container{
  display:flex;
  gap:10px;
}
.area-nav-container > *{
  flex:1;
  min-width:0;
}
.area-nav-select-wrap{
  position:relative;
}
.area-nav-select-wrap::after{
  position:absolute;
  display:block;
  content:"";
  aspect-ratio:16/9;
  background-image:url("../img/arrow_select.png");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  pointer-events:none;
  height:auto;
  width:12px;
  right:20px;
  top:50%;
  transform:translateY(-45%);
}
.area-nav-select-wrap select{
  cursor:pointer;
  background-color:var(--green);
  color:#fff;
  width:100%;
  display:block;
  text-align:center;
  font-weight:800;
  white-space:nowrap;
  border-radius:5px;
  font-size:1.4rem;
  padding:0.5em 1.5em;
}
.area-nav-select-wrap select:disabled{
  cursor:not-allowed;
  opacity:1;
  background-color:#999;
}

.voice-list-item__person picture{
  margin-bottom:10px;
}
.voice-list-item__area{
  margin-top:0;
}

.home .voice-list-item__area,
.page .voice-list-item__area{
  display:none;
}

.cat-nav-area + .area-specific-banner-wrap + *{
  margin-top:20px;
}

.blog-card-head > *{
  gap:10px;
}
.blog-card-head > * .__city{
  background-color:var(--green-light);
  color:var(--green);
}
.blog-tax-tag{
  padding:0.2em 1.5em 0.2em;
  border-radius:10em;
  font-size:1.4rem;
}
.blog-tax-tag.--pref{
  background-color:var(--green);
  color:#fff;
}
.blog-tax-tag.--city{
  background-color:var(--green-light);
  color:var(--green);
}

.single-contents__breadcrumbs{
  margin-bottom:20px;
}
.single-contents__body{
  margin-bottom:20px;
}
.single-post-area-tags{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}
.single-post-area-tags.--center{
  justify-content:center;
}
.single-post-area-tags .blog-tax-tag{
  font-size:1.2rem;
}
.single-post-meta__area{
  margin:8px 0;
}
.single-post-header__area{
  margin-top:15px;
}
.single-post-bottom-tags{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.single-post-author-box{
  margin-bottom:20px;
}

.scroller-fade::before, .scroller-fade::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  pointer-events:none;
  z-index:1;
  transition:opacity 0.25s ease;
  opacity:0;
  height:10px;
}
.scroller-fade::before{
  top:0;
  background:linear-gradient(to bottom, #fff 0%, #fff 30%, rgba(255, 255, 255, 0) 100%);
}
.scroller-fade::after{
  bottom:0;
  background:linear-gradient(to top, #fff 0%, #fff 30%, rgba(255, 255, 255, 0) 100%);
}
.scroller-fade.is-scroll-fade-initialized::before, .scroller-fade.is-scroll-fade-initialized::after{
  opacity:1;
}
.scroller-fade.is-scroll-top::before{
  opacity:0;
}
.scroller-fade.is-scroll-end::after{
  opacity:0;
}

.footer-branch__group-list{
  display:flex;
  flex-direction:column;
  background-color:rgba(255, 255, 255, 0.05);
  margin-top:15px;
  border-radius:15px;
  padding:20px 30px 20px 20px;
  gap:20px;
}
.footer-branch-group__ttl{
  position:relative;
  font-weight:800;
  margin-bottom:5px;
  padding-left:1.4em;
  font-size:1.6rem;
}
.footer-branch-group__ttl::before{
  position:absolute;
  display:block;
  content:"";
  background-image:url("./../img/ic_area_white.svg");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center center;
  aspect-ratio:16/20;
  width:0.8em;
  left:0;
  top:50%;
  transform:translateY(-50%);
}
.footer-branch-group__list{
  display:flex;
  flex-wrap:wrap;
  gap:2px 20px;
}
.footer-branch-group__list li{
  position:relative;
}
.footer-branch-group__list li::after{
  position:absolute;
  display:block;
  content:"";
  content:"/";
  right:0;
  top:50%;
  transform:translateX(13px) translateY(-50%);
}
.footer-branch-group__list li:last-child::after{
  display:none;
}
.footer__copyright{
  margin-top:40px;
}

@media screen and (min-width: 501px) and (max-width: 750px){
  .fv__map{
    width:700px;
  }
}

@media screen and (min-width: 751px){
  .fv-branch{
    padding:min(30px, min(30px, 2.0833333333vw)) min(5px, min(5px, 0.3472222222vw)) min(20px, min(20px, 1.3888888889vw)) min(20px, min(20px, 1.3888888889vw));
  }
  .fv-branch__list-wrap{
    max-height:min(420px, min(420px, 29.1666666667vw));
    height:auto;
    width:min(178px, 12.3611111111vw);
  }
  .fv-branch__list{
    padding-right:min(15px, min(15px, 1.0416666667vw));
  }
  .special__inner{
    padding-top:60px;
  }
  .special__ttl picture{
    width:950px;
  }
  .special__text{
    margin-top:40px;
  }
  .special__cols{
    margin-top:40px;
    margin-left:auto;
    margin-right:auto;
  }
  .special-cols{
    gap:40px;
  }
  .special-cols__text{
    margin-top:20px;
    font-size:1.6rem;
  }
  .branch-box{
    background-color:#fff;
  }
  .branch-box .l-container{
    max-width:100%;
    padding:0;
  }
  .branch-list.--group{
    flex-direction:row;
    gap:20px;
  }
  .branch-list.--group > *{
    width:calc((100% - 40px) / 3);
  }
  .branch-list-pref-group.--scrollable .branch-list-pref-group__inner{
    padding-right:31px;
    max-height:600px;
  }
  .branch-list-pref-item__ttl{
    border-bottom-width:4px;
    font-size:2.4rem;
    margin-bottom:20px;
    padding-left:30px;
  }
  .branch-list-pref-item__ttl a{
    font-size:1.6rem;
  }
  .branch-list-pref-item__ttl::before{
    width:21px;
    height:26px;
  }
  .branch-list-pref-item__count{
    font-size:1.6rem;
  }
  .branch-list-item-hor a{
    border-radius:20px;
    padding:20px;
  }
  .branch-list-item-hor a:hover .branch-list-item-hor__thumb img{
    transform:scale(1.05);
  }
  .branch-list-item-hor__thumb{
    border-radius:15px;
  }
  .branch-list-item-hor__ttl{
    font-size:2rem;
  }
  .branch-list-item-hor__address{
    font-size:1.4rem;
  }
  .branch-list-item-hor__phone{
    font-size:1.6rem;
  }
  .branch-box .branch-list.--group{
    margin-top:0;
  }
  .area-nav-list{
    gap:15px;
  }
  .area-nav-list__item{
    flex-wrap:wrap;
    border-radius:15px;
    padding:10px 50px;
  }
  .area-nav-container{
    gap:15px;
  }
  .area-nav-select-wrap::after{
    width:14px;
    right:20px;
  }
  .area-nav-select-wrap select{
    font-size:2rem;
    padding:0.3em 1.5em;
  }
  .cat-nav-area + .area-specific-banner-wrap + *{
    margin-top:50px;
  }
  .blog-card-head > *{
    gap:10px;
  }
  .blog-card-head > * .__date{
    margin-left:10px;
  }
  .blog-tax-tag{
    font-size:1.8rem;
  }
  .single-contents__breadcrumbs{
    margin-bottom:20px;
  }
  .single-contents__body{
    margin-bottom:50px;
  }
  .single-post-area-tags{
    gap:10px;
  }
  .single-post-area-tags .blog-tax-tag{
    font-size:1.6rem;
  }
  .single-post-meta__area{
    margin:10px 0;
  }
  .single-post-bottom-tags{
    gap:20px;
  }
  .single-post-author-box{
    margin-bottom:50px;
  }
  .scroller-fade::before, .scroller-fade::after{
    height:10px;
  }
  .footer-branch__group-list{
    border-radius:20px;
    padding:40px 50px 40px 40px;
    gap:20px;
  }
  .footer-branch-group__ttl{
    font-size:1.8rem;
  }
  .footer__copyright{
    margin-top:100px;
  }
}

@media screen and (min-width: 751px) and (max-width: 1000px){
  .fv__map{
    width:700px;
    top:-10px;
  }
  .special__inner{
    padding-bottom:320px;
  }
  .special__inner .clip-person-1{
    width:calc(355px * .7);
    height:calc(406px * .7);
    transform:translateX(10%);
  }
  .special__inner .clip-person-2{
    width:calc(338px * .7);
    height:calc(448px * .7);
    transform:translateX(0%);
  }
  .special__cols{
    max-width:480px;
  }
  .special-cols__pic img{
    width:70%;
  }
  .branch-list-item-hor a{
    flex-direction:column-reverse;
    align-items:center;
    text-align:center;
    gap:10px;
  }
  .branch-list-item-hor__thumb{
    width:100%;
  }
}

@media screen and (min-width: 1001px){
  .fv__map{
    width:700px;
    top:-10px;
  }
  .special__inner{
    padding-bottom:120px;
  }
  .area-nav-list__item{
    gap:15px;
  }
}

@media screen and (min-width: 1001px) and (max-width: 1319px){
  .special__inner .clip-person-1{
    width:calc(355px * .8);
    height:calc(406px * .8);
    transform:translateX(-50%);
  }
  .special__inner .clip-person-2{
    width:calc(338px * .8);
    height:calc(448px * .8);
    transform:translateX(55%);
  }
  .special__cols{
    max-width:540px;
  }
  .special-cols__pic img{
    width:70%;
  }
  .branch-list-item-hor a{
    flex-direction:column-reverse;
    align-items:center;
    text-align:center;
    gap:10px;
  }
  .branch-list-item-hor__thumb{
    width:100%;
  }
}

@media screen and (min-width: 1320px){
  .special__inner .clip-person-1{
    width:355px;
    height:406px;
    transform:translateX(-54%);
  }
  .special__inner .clip-person-2{
    width:338px;
    height:448px;
    transform:translateX(58%);
  }
  .special__cols{
    max-width:840px;
  }
  .special-cols{
    flex-direction:row-reverse;
    align-items:center;
  }
  .special-cols__ttl{
    text-align:left;
  }
  .branch-list-item-hor a{
    flex-direction:row;
    align-items:flex-start;
    text-align:left;
    gap:20px;
  }
  .branch-list-item-hor__thumb{
    width:min(142px, 10.7575757576vw);
  }
  .area-nav-list{
    flex-direction:row;
  }
  .area-nav-list__item .cat-current-bar{
    font-size:2.8rem;
    min-height:0;
  }
  .area-nav-list.--pref-only .area-nav-list__item:first-child{
    flex:0 0 auto;
    width:33.3333333333%;
  }
}

@media screen and (max-width: 750px){
  .special__cols{
    padding:0 20px;
  }
  .branch-list-pref-group{
    background-color:#fff;
    padding:20px 15px 20px 20px;
    border-radius:15px;
  }
  .branch-list-pref-group.--scrollable{
    padding:20px 10px 20px 20px;
  }
  .single-post-bottom-tags .single-post-area-tags{
    justify-content:center;
    align-items:center;
  }
  .company-sec{
    padding-bottom:40px;
  }
}
