@charset "utf-8";

/*----------------------------*/
/*タグ再定義*/
/*----------------------------*/
*,
*::after,
*::before{ margin:0; padding:0; box-sizing: border-box; min-width: 0;}
html { -moz-text-size-adjust: none; -webkit-text-size-adjust: none; text-size-adjust: none}
body{ font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","游ゴシック", sans-serif; font-weight: 500; line-height: 1.77;overflow-wrap: break-word; font-feature-settings: "palt";letter-spacing: .1em;}
img { border: none; width: 100%; height: auto; display: block;}
a {color: inherit; text-decoration: none;}
ul,ol{list-style-type: none;}
h1,h2,h3,h4,h5,h6{line-height: 1.55;text-wrap: balance; word-break: auto-phrase;}
table, td, th{text-align: left;}
table{table-layout: fixed; width: 100%;}
input,button,textarea,select {font: inherit}
@media (hover: hover) {
  a { opacity: 1; transition: .3s ease;}
  a:hover { opacity: 0.7; text-decoration: none;}
}
@media(prefers-reduced-motion:no-preference) {
  /* 視覚効果を無効化していない環境に適用 */
  html { scroll-behavior: smooth }
  :target { scroll-margin-top: min(7.14vw,100px);}
}

.mt100{margin-top: 100px;}


/*----------------------------*/
/* ベース部分 */
/*----------------------------*/
:root{
  --blue:#32579f;
  --yellow: #ffeaad;
  --pale: #fffdf8;
  --orange:#ff5c0e;
  --green:#59c200;
  --light-blue:#eef4f6;
}

footer{text-align: center; background: linear-gradient(to right,  #f89b00 0%,#f9c500 100%);  color: #fff; font-size: 12px; padding: 40px 50px;}
.wrapper{ overflow-x: hidden; max-width: 2000px; margin: auto;}
/* ヘッダーとGナビ */
.header{position: fixed; left: 0; right: 0; top: 0; width: 100%; max-width: 2000px; margin: auto;z-index: 100;}
.header::before{content: ""; transition: 0.3s ease;}
.header.active::before{position: absolute; left: 0; right: 0; bottom: 0; top: 0; z-index: -1; box-shadow: 0 4px 18px 0 rgba(25,59,97,.24);-webkit-backdrop-filter: blur(4px) saturate(1.5);backdrop-filter: blur(4px) saturate(1.5);background: rgba(255,255,255,.7);}
.header__inner{display: flex; align-items: center;/* justify-content: space-between; */max-width: 1550px; margin-left: auto; padding: min(1.42vw,20px); letter-spacing: 0;}
.header-logo img{ width: min(19.71vw,276px);}
.header-gnav{flex: 1 1;}/* mac safari向けの記述。 */
.header-gnav__list{ float: right;}/* mac safari向けの記述。本来ならjustify-content: space-betweenだけで右に寄るが、スマホスタイルからPCスタイルに戻った時に不具合あった為 */
.header-gnav__btn {line-height: 1;}
.header-gnav__btn a{color: #fff; padding: min(1.42vw,20px) min(0.92vw,13px); border-radius: 100px; min-width: min(11.21vw,157px); text-align: center; display: inline-block;}
.header-gnav__btn--tel a{background-color: var(--orange);}
.header-gnav__btn--form a{background-color: var(--green);}
/* フローティングバナー */
.floating-banner{position: fixed; left: 0; right: 0; bottom: 0; background: #fff;box-shadow: 0 4px 18px 0 rgba(25,59,97,.24); padding: 30px;z-index: 99;}
.floating-banner__list{display: flex;gap: 2.04%;max-width: 1220px; margin: auto; align-items: center;}

@media screen and (min-width: 768px){
  /* ヘッダーとGナビ */
  .header-gnav__list {list-style-type: none; color: #1f3868; display: flex; gap: min(0.64vw,9px); align-items: center; font-size: min(1.28vw,18px);}
  .header-gnav__list-item{ margin-right: min(2.21vw,31px);}
  .header-gnav__btn { margin: 0;}
  .sp-nav-icon{display: none;}
}

@media screen and (max-width: 767px) {
  footer{font-size: min(2.66vw,20px); padding: 4%;}
  /* ヘッダーとGナビ */
  .header__inner{padding: 4%;}
  .header-logo img{ width: min(36.8vw,276px);}
  .header-gnav__list {text-decoration: none; position :fixed; top :0; left:100%; bottom: 0; overflow-y: scroll; z-index: 100;color: #fff; background: var(--blue); width: 80vw; transition: left 0.3s ease; font-size: min(4.26vw,32px); padding: 4%; display: flex; flex-direction: column; text-align: center;}
  .header-gnav__list.slide-in {left: 20%;}
  .header-gnav__list-item { list-style-type: none; margin-bottom: 4%;}
  .header-gnav__list-item:first-child { margin-top: auto;}
  .header-gnav__list-item:last-child { margin-bottom: auto;}
  .header-gnav__list-item a { display: block; text-decoration: none; font-weight: bold; color: #fff;}
  .header-gnav__btn { width: 100%; font-size: 1.2em;}
  .header-gnav__btn a { padding: 4%;}
  .header-gnav__btn--tel{margin-top: 6%;}
  .sp-nav-icon{z-index: 100;position: relative;width: min(9.33vw,70px); height: min(8.79vw,66px); background: url(images/nav-icon_sp.png) no-repeat center/50% auto;}
  .sp-nav-icon.close{background-image: url(images/nav-icon_close_sp.png);}
  /*Gナビ展開中はコンテンツ内部をスクロールさせない*/
  body.noscroll{overflow: hidden;}
  body.noscroll::after{content: "";position: fixed;top: 0;bottom: 0;left: 0;right: 0; background: rgba(0,0,0,.48);transition: .5s ease;-webkit-backdrop-filter: blur(2px);backdrop-filter: blur(2px); z-index: 99;}
  /*グレーアウトのボカシエリアをタップでGナビを閉じる*/
  body.noscroll .sp-nav-icon.close::after{content: "";position: fixed;top: 0;bottom: 0;left: 0;width: 20%;visibility: visible;}
  /* Gナビ展開した時ヘッダーを隠す */
  body.noscroll .header.active::before{ display: none;}
  body.noscroll .header-logo{ display: none;}
  /* フローティングバナー */
  .floating-banner{padding: 3%;}
  .floating-banner__list-item:first-child{display: none;}

}

/*----------------------------*/
/* コンテンツ部分 */
/*----------------------------*/

@media screen and (min-width: 768px){
  .eyecatch{
    background: url(images/fv_bg01.png) no-repeat right top/cover;
  }
  .eyecatch__inner{
    max-width: 1550px;
    padding: 0 min(1.42vw,20px); 
    margin-left: auto;
  }
  .eyecatch__inner img{max-width: 1250px;}
  .cta{ position: relative; z-index: 0;background: #fdfdfd; padding: min(8.53vw,128px) min(3.33vw,50px) min(16.33vw,244px);}
  .cta::before{content: ""; background: url(images/cta_bg01.png) no-repeat center top/min(133.33vw,2000px) auto;position: absolute; left: 0; right: 0; top: max(-10.73vw,-206px); bottom: 0;z-index: -1; pointer-events: none;}
  .cta__title{ max-width: 1400px; margin: auto;  border-radius: min(2.66vw,40px);}
  .cta__btn{display: flex;position: absolute;top: min(26.13vw,392px); left: 0; right: 0; margin: auto; max-width: min(78.66vw,1180px);gap: min(1.33vw,20px); background: #fff; border-radius: 100px;}
  .cta2{ position: relative; z-index: 0; padding: min(6.53vw,98px) min(3.33vw,50px) min(2.8vw,42px);}
  .cta2::before{content: ""; background: url(images/cta_bg02.png) no-repeat center top/min(133.33vw,2000px) 100%;position: absolute; left: 0; right: 0; top: max(-10.93vw,-164px); bottom: 0;z-index: -1; pointer-events: none;}
  .cta2__title{ max-width: 1400px; margin: auto; border-radius: min(2.66vw,40px);}
  .cta2__btn{display: flex;position: absolute;top: min(24.26vw,364px); left: 0; right: 0; margin: auto; max-width: min(78.66vw,1180px);gap: min(1.33vw,20px); background: #fff; border-radius: 100px;}
  .sec1{background: var(--light-blue);position: relative;z-index: 0;padding:  0 min(1.9vw,38px) min(2.05vw,41px);}
  .cta3{ position: relative; z-index: 0; padding: min(8.53vw,128px) min(3.33vw,50px) min(16.33vw,84px);}
  .cta3__title{ 
    max-width: 1400px; 
    margin: auto;  
    border-radius: min(2.66vw,40px);
  }
  .cta3__btn{
    display: flex;
    position: absolute;
    top: min(26.13vw,392px); 
    left: 0; 
    right: 0; 
    margin: auto; 
    max-width: min(78.66vw,1180px);
    gap: min(1.33vw,20px); 
    background: #fff; 
    border-radius: 100px;
  }

  .video {
    position: relative;
    z-index: 100;
  }
  video {
    display: block;
    width: 820px;
    height: auto;
    margin: 0 auto;
    position: relative;
    z-index: 100;
  }
    
  .sec1{
    background: var(--pale);
    position: relative;
    z-index: 0;
    padding:  0 min(1.9vw,38px) 200px;
    background: url(images/sec01_bg01.png) no-repeat center top / cover; 
  }
  .sec1__title{ max-width: 1220px; margin: auto;}
  .sec1__body{ max-width: 1400px; margin: auto;}

  .sec2{
    position: relative;
    padding: 0 min(1.9vw,38px) 200px;
  }
  .sec2::before{
    content: ""; 
    background: url(images/bg01.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -1;top: max(-8.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;}
  }
  .sec2__body{max-width: 1100px; margin: 80px auto 0;}
  .sec2__txtBox {
    margin-top: 30px;
  }
  .sec2__txtBox .before {
    color: var(--blue);
    font-weight: bold;
  }
  .sec2__txtBox .after {
    color: #ec881e;
    font-weight: bold;
  }
  .sec3 {
    position: relative;
    background-color: var(--pale);
    padding:  0 min(1.9vw,38px) 100px;
  }
  .sec3__body{max-width: 1220px; margin: auto;}
  .sec3::before{
    content: ""; 
    background: url(images/bg02.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -1;top: max(-8.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  .sec4{
    position: relative;
    background: url(images/sec04_bg01.png) no-repeat top /100%;
    padding: 100px 0;
    background-color: var(--pale); 
    z-index: -3;
  }
  .sec4__body{max-width: 1100px; margin: auto;}
  .sec5{
    position: relative;
    background: var(--pale); 
    padding:  50px min(1.9vw,38px) 240px;
    z-index: 1;
  }
  .sec5__arrow {
    position: absolute;
    left: calc(50% - 82px);
    top: -50px;
    width: 164px;
  }
  .sec5__title{max-width: 1220px; margin: 0 auto max(-2.66vw,-40px);position: relative;z-index: 2;}
  .sec5__body{
    max-width: 1220px; 
    background-color: #fff;
    padding: 50px;
    margin: 50px auto 0;
    box-shadow: 0px 0px 46px 0px rgba(6, 3, 4, 0.18); 
    border-radius: min(2.66vw,40px); 
    position: relative;
    z-index: 1;
  }

  .sec6{
    position: relative;
    scroll-margin-top: max(-20.49vw,-250px);
  }
  .sec6__title{max-width: 1400px; margin: auto; position:relative; z-index: 1;}
  .sec6__body{max-width: 1100px; margin: auto;position:relative; z-index: 1;}
  .sec6::before{
    content: ""; 
    background: url(images/bg01.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: 1; top: max(-10.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  .sec7{padding: 0 min(1.9vw,38px) 100px;}
  .sec7__title{max-width: 1100px; margin: auto;}
  .sec7__body{max-width: 1570px; margin: auto;}
  .sec7__list {
    display: flex; justify-content: center; gap: min(1.84vw,37px);
    flex-wrap: wrap;
  }
  .sec7__list-item {
    width: 30%;
  }
  .sec8{
    background: var(--pale);
    position: relative;
    z-index: -2; 
    padding: 0 min(3.33vw,50px) min(11vw,165px);
  }

  .sec8__title{max-width: 1220px; margin: auto;}
  .sec8__body{
    max-width: 1220px; margin: auto;}
  .sec8__bottom{
    max-width: 960px; margin: auto;
  }
  .sec9 {
    position: relative;
    padding:  0 min(1.9vw,38px) 240px;
  }
  .sec9__title {max-width: 1100px; margin: 0 auto;}
  .sec9__body{ max-width: 1815px; margin: auto;}
  .sec9::before{
    content: ""; 
    background: url(images/bg05.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -2;top: max(-20.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  .sec9__voice{display: flex; justify-content: space-between; gap: min(1.84vw,37px);}
  .sec9__voice-item{max-width: 580px; flex: 1 1;}
  .sec9__voice-item:nth-child(2){ margin-top: min(3.5vw,70px);}
  .sec9__voice-item:nth-child(3){ margin-top: min(7vw,140px);}
  .sec10 {
    position: relative;
    z-index: -2; 
    padding: 0 min(3.33vw,50px) min(11vw,165px);
  }
  .sec10__title {max-width: 1100px; margin: 0 auto;}
  .sec10__body{ max-width: 1100px; margin: auto;}
  .sec10::before{
    content: ""; 
    background: url(images/bg01.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -1; top: max(-10.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  .sec11 {
    background: var(--pale);
    position: relative;
    padding: 0 min(3.33vw,50px) 200px;
  }
  .sec11::before{
    content: ""; 
    background: url(images/bg02.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -1; top: max(-1.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  @media screen and (max-width: 767px) {
    .sec11 {
      background: #fff;
      padding: 0 min(3.33vw,50px);
    }
    .sec11::before{
      background: none; 
    }
  }
  .sec11__title {max-width: 1100px; margin: 0 auto;}
  .sec11__body{ max-width: 1220px; margin: auto;}
  .sec12 {
    position: relative;  
    z-index: 1;
    padding:  0 min(1.9vw,38px) 200px;
  }
  .sec12__title {max-width: 960px; margin: 0 auto; position: relative;}
  .sec12__body{ max-width: 960px; margin: auto;}
  .sec12::before{
    content: ""; 
    background: url(images/sec12_bg01.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -1; top: max(-10.73vw,-211px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  
  .sec_graph {padding: 100px min(1.9vw,38px) 200px;background-color: #fffdf8}
  .sec_graph__inner {max-width: 1100px; margin: auto;}
  .sec_graph__txt {margin-top: 70px;}
  @media screen and (max-width: 767px) {
    .sec_graph {
      padding: 40px min(1.9vw,38px);
    }
    .sec_graph__txt {margin-top: 30px;}
  }

  .sec13 {
    position: relative; 
    z-index: 1;
    padding:  0 min(1.9vw,38px) 120px;
  }
  .sec13__body{ max-width: 960px; margin: 0 auto 0; }
  .sec13::before{
    content: ""; 
    background: url(images/bg05.png) no-repeat center top/min(163.93vw,2000px) auto; 
    position: absolute;
    z-index: -1; top: max(-20.73vw,-311px); bottom: 0; left: 0; right: 0; 
    pointer-events: none;
  }
  .sec15 {padding: 0 min(3.33vw,50px) 200px;}
  .sec15__body{ max-width: 800px; margin: auto;}
  .sec16{background: #c67d03; color: #fff; font-size: min(1.2vw,18px); padding: min(2.33vw,35px) min(3.33vw,50px);}
  .sec16__inner{display: flex; max-width: 1400px; margin: auto; justify-content: space-between;}
  .sec16__adress h2{ font-size: min(1.86vw,28px); margin: min(1.33vw,20px) 0;}
  .sec16__map iframe{width: min(44.66vw,670px); height: min(22.33vw,335px); object-fit: fill;}

@media screen and (min-width: 768px) and (max-width: 1820px){
  .eyecatch__inner,
  .eyecatch__inner img{margin: auto;}

}
@media screen and (min-width: 768px) and (max-width: 1200px){
  video {
    width: 100%;
    margin: 30px auto;
  }
  .sec9__body{ max-width: 80%;}
  .sec9__voice{flex-wrap: wrap; justify-content: center;}
  .sec9__voice-item{ flex: 0 0 48%; margin-top: 0 !important;}
}
@media screen and (max-width: 767px) {
  .cta{ position: relative; z-index: 0;}
  .cta__btn{position: absolute; margin: auto; top:0; margin-top: 53.33%; left: 0; right: 0; max-width: 77.33%;}
  .cta__btn-item{ background: #fff; border-radius: 100px;}
  .cta__btn-item--tel{ margin-bottom: 2.66%;}
  .cta2{ position: relative; z-index: 0;}
  .cta2__btn{position: absolute; margin: auto; top:0; margin-top: 48.93%; left: 0; right: 0; max-width: 77.33%;}
  .cta2__btn-item{ background: #fff; border-radius: 100px;}
  .cta2__btn-item--tel{ margin-bottom: 2.66%;}
  .cta3{ position: relative; z-index: 0;}
  .cta3__btn{position: absolute; margin: auto; top:0; margin-top: 50%; left: 0; right: 0; max-width: 77.33%;}
  .cta3__btn-item{ background: #fff; border-radius: 100px;}
  .cta3__btn-item--tel{ margin-bottom: 2.66%;}

  video {
    width: 100%;
    margin: 30px auto;
  }

  .sec1 { 
    padding: 40px 0;
  }
  .sec1__title { margin: 0 4%;}
  .sec2 {padding: 40px 15px 100px;}
  .sec2__body {margin: 40px auto 0;}
  .sec2__txtBox {margin-top: 15px;font-size: 12px;} 
  .sec3 {padding: 40px 0;}
  .sec4{padding: 40px 0;}
  .sec5{position: relative; padding: 40px 15px 100px;}
  .sec5__arrow {
    width: 80px;
    height: auto;
    top: -50px;
    left: calc(50% - 40px);
  }
  .sec5__body {
    padding: 30px 15px;
  }
  .sec6 {padding: 40px 15px 50px;}
  .sec7 {padding: 40px 15px 50px;}
  .sec7__list {display: block;}
  .sec7__list-item {width: 100%;}
  .sec8{background: #fff;}
  .sec8__body {
    box-shadow: none;
  }
  .sec9 {
    padding: 40px 0;
    background: linear-gradient(to right,  #f89b00 0%,#f9c500 100%); 
  }
  .sec9::before{
    content: ""; 
    background: none; 
  }
  .sec9__voice{display: block;}
  .sec9__voice-item{max-width: 100%;margin: 6.66% 4%;}

  .sec10 { padding: 40px 0;}
  .sec11 { padding: 40px 0 0;}
  .sec12 { padding: 0 0; margin-top: -100px;}
  .sec12::before { background: none;}
  .sec13 { padding: 0;}
  .sec13::before{
    background: none;
  }
  .sec15 { padding: 0;}
  .sec16{background: #c67d03; color: #fff; padding: 12% 4%;word-break: auto-phrase; font-size: min(4vw,30px);}
  .sec16__inner{display: block;}
  .sec16__adress h2{ font-size: 1.1em;}
  .sec16__map iframe{width: 100%;height: auto; aspect-ratio: 4/3; object-fit: fill; margin-top: 5%;}
}

/* faq */
.sec14{ max-width: 1100px; padding: min(7.78vw,95px) min(4.91vw,60px) min(10vw,100px); margin: auto;}
.sec14__title h2{font-size: min(2.95vw,36px); text-align: center; margin-bottom: min(4.91vw,60px); color: var(--blue);}
.sec14__list-question{
  font-size: min(1.96vw,24px); 
  color: var(--blue); 
  background-color: #ffeaad; 
  border-radius: min(2.45vw,30px); 
  padding: min(1.63vw,20px) min(5.73vw,70px) min(1.63vw,20px) min(3.11vw,38px); 
  margin-bottom: min(1.14vw,14px);position: relative;cursor: pointer;
}
.sec14__list-question::after,
.sec14__list-question::before{
  content: ""; 
  width: min(3.03vw,37px); 
  height: min(0.24vw,3px); 
  position: absolute; right: min(2.7vw,33px); top: 0; bottom: 0; 
  margin: auto; background-color: var(--blue);
}
.sec14__list-question::before{transition: 0.3s ease;}
.sec14__list-question:not(.active)::before{transform: rotate(90deg);}
.sec14__list-answer{
  font-size: min(1.63vw,20px); 
  border-radius: min(2.45vw,30px); 
  padding: min(2.45vw,30px) min(5.73vw,70px); 
  border: 2px solid var(--blue); 
  margin-bottom: min(1.63vw,20px);	
  position: relative;}
.sec14__list-answer::after, .sec14__list-answer::before {
  bottom: 100%;left: 50%;border: solid transparent;content: "";height: 0;width: 0;position: absolute;pointer-events: none;}
.sec14__list-answer::after {border-bottom-color: #fff;border-width: 10px;margin-left: -10px;}
.sec14__list-answer::before {border-bottom-color:var(--blue);border-width: 13px;margin-left: -13px;}
@media screen and (max-width: 767px) {
  .sec14__title h2{font-size: min(5.33vw,40px);}
  .sec14__list-question{font-size: min(4.26vw,32px); padding: 4% 2em 4% 1em;}
  .sec14__list-question::after,
  .sec14__list-question::before{width: 1em; height: 3px; position: absolute; right: 1em; top: 0; bottom: 0; margin: auto; background-color: var(--blue);}
  .sec14__list-answer{font-size: min(4vw,30px); padding: 4% 1em;}
}

.readmore {
  position: relative;
}
.readmore-btn {
  bottom: 0;
  color: var(--blue);
  cursor: pointer;
  display: inline-block;
  font-size: 18px;
  left: 0;
  margin: auto;
  padding: 5px 15px;
  position: absolute;
  right: 0;
  text-align: center;
  transition: all .2s;
  width: fit-content;
  z-index: 1;
}
.readmore-btn::after {
  content: "＋ 続きを見る";
}
.readmore-btn:hover {
  background-color: #fff;
  color: #6495ed;
}
.readmore-text {
  overflow: hidden;
  position: relative;
}
.readmore-text.is-hide {
  height: 100px;
}
.readmore-text::before {
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.9) 50%, #fff 100%);
  background:         linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.9) 50%, #fff 100%);
  bottom: 0;
  content: "";
  height: 60px;
  position: absolute;
  width: 100%;
}
.readmore-btn.is-show {
  bottom: -3em;
}
.readmore-btn.is-show::after {
  content: "";
}
.readmore-btn.is-show + .readmore-text::before {
  display: none;
}
@media screen and (max-width: 767px){
  .readmore-text.is-hide {
    height: 150px;
  }
}

/* フォーム関係 */
.form{
  font-size: min(1.5625vw,16px); 
  background: linear-gradient(to right,  #f89b00 0%,#f9c500 100%); 
  position: relative; z-index: 0; padding: min(7.33vw,110px) min(3.33vw,50px) min(6.66vw,100px);}
.form__inner{max-width: 1400px; margin: auto;background: #fff; border-radius: min(2.66vw,40px); box-shadow: 0px 0px 46px 0px rgba(6, 3, 4, 0.18); padding: 1px min(3.33vw,50px) min(8vw,120px);}
.form::before{content: ""; background: url(images/form_bg01.png) no-repeat center top/min(163.93vw,2000px) auto; position: absolute;z-index: -1;top: max(-21.55vw,-263px); bottom: 0; left: 0; right: 0; pointer-events: none;}
.form__title{margin-top: max(-7.33vw,-110px);}
/* 既存LPからの移植 */
form {font-weight: 700;margin: 2em auto 0;max-width: 960px}
form .item {align-items: center;display: flex;margin-bottom: .8em}
form .item2 {align-items: flex-start}
form .item div {align-items: center;display: flex;line-height: 1.3;width: 40%}
form div p:nth-of-type(1) {background: #b6272d;border-radius: 4px;color: #fff;margin-right: .5em;padding: .2em 0;text-align: center;width: 3.5em; font-size: .8em;}
form div p:nth-of-type(1).any {background: #fff;border: 1px solid #333;color: #333}
form input.txt,form textarea {background: #f1f1f1;border: none;border-radius: 6px;padding: 1.8%;width: 80%}
form textarea {height: 130px}
.btn__submit {position: relative;background: #db0c24;border: none;border-radius: 2em;color: #fff;cursor: pointer;display: block;filter: drop-shadow(0 8px 8px rgba(0,0,0,.24));font-weight: 700;margin: 1.5em auto 0;padding: .8em 0;transition: .4s;width: 360px; font-size: 1.5em;}
.btn__submit:hover {background: #333}
::-webkit-input-placeholder {color: #ccc;}
@media screen and (max-width: 767px) {
  .form{font-size: max(4.26vw,16px); padding-bottom: 12%; margin-top: -50px;}
  /* 既存LPからの移植 */
  form .item {display: block}
  form .item div {margin-bottom: .3em;width: 100%}
  form input.txt,form textarea {padding: 2.2% 1.8%;width: 96.4%}
  form textarea {height: 130px}
  .btn__submit {width: 80%;font-size: 1.2em;}

}

.banner-container {
  margin-top: 20px; /* 上部に余白を追加 */
  text-align: left; /* バナーを中央寄せ */
}

.banner-link {
  text-decoration: none; /* リンクの下線を削除 */
}

.banner {
  display: inline-block; /* サイズを設定するために必要 */
  width: 300px; /* バナーの幅 */
  height: 80px; /* バナーの高さ */
  background-color: #DB0C24; /* バナーの背景色 */
  color: #fff; /* 文字色 */
  font-size: 18px; /* フォントサイズ */
  font-weight: bold; /* 文字を太く */
  line-height: 80px; /* 縦方向の中央揃え */
  text-align: center; /* 横方向の中央揃え */
  border-radius: 8px; /* 角を丸く */
  transition: background-color 0.3s; /* ホバー時のアニメーション */
}

.banner:hover {
  background-color: #000000; /* ホバー時の背景色 */
}

/*----------renew sec2----------*/
.modal-overlay{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:rgba(0,0,0,.85);bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:100;}
.modal-container{max-height:90vh;overflow-y:auto;padding:0;width:100%;max-width:1000px;background:#fff;padding:30px;}
.modal-header{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:space-between;}
.modal-content{line-height:1.5;margin-bottom:0;}
.modal-open{display:block;}
.micromodal-slide{display:none;}
.micromodal-slide.is-open{display:block;}
.sec2 .sec2__inner{max-width:1400px;margin:0 auto;}
.sec2__slide .slick-dots li{width:12px;height:12px;border-radius:50%;background-color:#cccccc}
.sec2__slide .slick-dots li:not(:last-child){margin-right:5px}
.sec2__slide .slick-dots li:hover{opacity:.7}
.sec2__slide .slick-dots li.slick-active:hover{opacity:1}
.sec2__slide .slick-dots li.slick-active{background-color:#022543}
.sec2__slide .slick-dots li button:before{content:""}
.sec2__slide .slick-dots li button{width: 12px;height: 12px;}
.sec2__slide .slick-list{z-index:1}
.sec2__slide .slick-dots{z-index:2;bottom: -57px;}
.sec2__slide .slick-next:hover{background:url(images/ic_slider_next.png) no-repeat center /contain;opacity: 0.7;}
.sec2__slide .slick-prev:hover{background:url(images/ic_slider_prev.png) no-repeat center /contain;opacity: 0.7;}
.sec2__slide .slick-prev,.sec2__slide .slick-prev:focus{left:-22px;background:url(images/ic_slider_prev.png) no-repeat center /contain;}
.sec2__slide .slick-next,.sec2__slide .slick-next:focus{right:-22px;background:url(images/ic_slider_next.png) no-repeat center /contain;}
.sec2__slide .slick-prev,.sec2__slide .slick-next,.sec2__slide .slick-prev:focus,.sec2__slide .slick-next:focus{z-index:95;height:73px;width:73px}
.sec2__slide .slick-prev:before,.slick-next:before{display:none}
.sec2__slide .sec2__slide_box{border:1px solid #022543;padding:20px;margin:0 15px;position:relative;}
.sec2__slide .sec2__slide_box .btn{width:80%;margin:0 auto;position:absolute;bottom:20px;left:0;right:0;}
.sec2__slide .sec2__slide_box .btn span{height:50px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#FFF;font-weight:bold;background-color:#022543;position:relative;letter-spacing:0.06rem;cursor:pointer;transition:all .3s;}
.sec2__slide .sec2__slide_box .btn span:before{content:"";position:absolute;width:28px;height:8px;background:url(images/ic_btn_arrow.png) no-repeat center / contain;right:20px;top:calc(50% - 6px);}
.sec2__slide .sec2__slide_box .btn span:hover{opacity:.85;}
.sec2__slide .sec2__slide_box .des{margin-top:-22px;position:relative;z-index:1;color:#022543;}
.sec2__slide .sec2__slide_box .des .ttl_case{background:#fff;padding:5px 30px;max-width:180px;margin:0 auto 10px;display:flex;justify-content:center;font-weight:700;font-size:18px;color:#022543;}
.sec2__slide .sec2__slide_box .des .ttl_case02{text-align:center;width:100%;color:#022543;font-weight:900;margin-bottom:15px;font-size:20px;}
.sec2__slide .sec2__slide_box .des .ttl_case03{width:100%;margin-bottom:20px;}
.sec2__slide .sec2__slide_box .des .ttl_case03 span{border:1px solid #ddd;color:#333;padding:5px 10px;font-weight:700;font-size:90%;border-radius: 50px;}
.sec2__slide .sec2__slide_box .des .ttl_case03 span .break_sp480{display: contents;}
.sec2__slide .sec2__slide_box .des .ttl_case04{font-weight:700;font-size:105%}
.sec2__slide .sec2__slide_box .des .txt_case{margin-bottom:70px;font-size:95%;padding:5px 0;font-weight: 400}
.sec2__slide__for .slider_modal h3{margin-bottom:20px;padding-right:0;text-align:left;font-size:20px;font-weight:700;color:#022543;}
.sec2__slide__for .slider_modal h3 span { margin-right: 10px; padding-right: 10px; border-right: 1px solid #022543; }
.sec2__slide__for .txt_modal { border: 1px solid #022543; padding: 20px; background: #f1f3f5; }
.sec2__slide__for .txt_modal p { margin-bottom: 1em; font-size: 15px; }
.sec2__slide__for .btn_modal { display: flex; justify-content: center; margin-top: 30px; }
.sec2__slide__for .btn_modal button { margin: 0 10px; width: 120px; font-weight: 700; transition: all .3s; font-size: 15px; cursor: pointer;}
.sec2__slide__for .btn_modal .btn_next_slide,
.sec2__slide__for .btn_modal .btn_prev_slide { border: 1px solid #022543; padding: 5px; display: inline-block; color: #022543; }
.sec2__slide__for .btn_modal button:hover { opacity: .85; }
.sec2__slide__for .btn_modal .btnClose { background: #022543; padding: 5px; color: #fff; border: none;}
.sec2__slide__for .slider_modal .img { max-width: 300px; margin: 0 auto 20px; }
.sec2__slide__for .slider_modal dl dt { font-weight: 700; margin-bottom: 5px; }
.sec2__slide__for .slider_modal dl.mb30 { margin-bottom: 30px; }
.sec2__slide__for .slider_modal dl ul{margin-left:20px;}
.sec2__slide__for .slider_modal dl ul li{list-style:disc;font-weight: 400}
.sec2__slide__for .slider_modal dl ul li:not(:last-child){padding-bottom: 5px;}
.break_pc{display: block;}

@media screen and (min-width: 768px) and (max-width: 1366px){
  .sec2__slide .sec2__slide_box .des .ttl_case02{font-size:110%;}
  .sec2__slide .sec2__slide_box .des .ttl_case03 span{font-size:75%;}
  .sec2__slide .slick-next, .sec2__slide .slick-next:focus{right: -10px;width: 50px;height: 50px;}
  .sec2__slide .slick-prev, .sec2__slide .slick-prev:focus{left: -10px;width: 50px;height: 50px;}
  .sec2__slide .sec2__slide_box .des .ttl_case{font-size: 100%}
}
@media screen and (min-width: 767px) and (max-width: 959px){
  .sec2__slide .sec2__slide_box .des .ttl_case03 span{font-size:65%;}
}
@media screen and (max-width: 767px) {
  .sec2__slide .sec2__slide_box{min-height:100%;height: auto !important;}
  .sec2__slide{margin-top:10vw;}
  .sec2__slide__for .modal-container{padding:4vw;width:95%;max-height:100vh;}
  .sec2__slide__for .btn_modal button{font-size:14px;}
  .sec2__slide__for .slider_modal h3{font-size:16px;line-height:1.6;margin-bottom:3vw;}
  .sec2__slide__for .txt_modal p{font-size:14px;}
  .sec2__slide__for .txt_modal .img{margin:0 0 4vw 0;}
  .sec2__slide__for .txt_modal{padding:4vw;height:70vh;overflow-x:auto;}
  .sec2__slide .sec2__slide_box .des .ttl_case{font-size: 90%}
  .sec2__slide .sec2__slide_box .des .ttl_case03 span{font-size:60%;display:inline-block;margin:0 auto;}
  .sec2__slide .sec2__slide_box .btn{position:unset;}
  .sec2__slide .sec2__slide_box .des .ttl_case02{font-size:90%;}
  .sec2__slide .sec2__slide_box .btn span{height:45px;}
  .sec2__slide .sec2__slide_box .des .txt_case{margin-bottom: 30px;}
  .sec2__slide .sec2__slide_box .des .ttl_case04{font-size: 90%}
  .sec2__slide .slick-prev,.sec2__slide .slick-next,.sec2__slide .slick-prev:focus,.sec2__slide .slick-next:focus{width:40px;height:40px;}
  .sec2__slide .slick-next,.sec2__slide .slick-next:focus{right:-4px;}
  .sec2__slide .slick-prev,.sec2__slide .slick-prev:focus{left:-4px;}
  .hide-block{margin-bottom:40px;}
  .sec2__slide .slick-dots{bottom:-8vw;}
  .sec2__slide .slick-dots li{width:10px;height:10px;}
  .break_pc{display: contents;}
}
@media screen and (max-width: 480px) {
  .sec2__slide .sec2__slide_box .des{margin-top: -4vw}
  .sec2__slide .sec2__slide_box .des .ttl_case03 span{font-size:70%;display: inline-flex;}
  .sec2__slide .sec2__slide_box .des .ttl_case02{font-size:4vw;}
  .sec2__slide .sec2__slide_box .des .txt_case{font-size:80%;}
  .sec2__slide .sec2__slide_box .des .txt_case{margin-bottom:15px;}
  .sec2__slide .sec2__slide_box .des .ttl_case{font-size: 3.2vw}
  .sec2__slide .sec2__slide_box .des .ttl_case03 span .break_sp480{display: block;}
}

/*renew*/
.mb90{
  margin-bottom: 90px !important;
}
.mb70{
  margin-bottom: 70px !important;
}
.mb50{
  margin-bottom: 50px !important;
}
.pdt0{
  padding-top: 0;
}
.idx_renew{
  padding: 100px 0 0 0;
}
.idx_renew .title01 .title_body{
  max-width: 1100px;
  margin: auto;
}
.idx_renew .title04 .title_body,
.idx_renew .title03 .title_body,
.idx_renew .title02 .title_body{
  max-width: 750px;
  margin: auto;
}
.idx_renew .img01 .img_body{
  max-width: 1100px;
  margin: auto;
}
.idx_renew .img02 .img_body{
  max-width: 1000px;
  margin: auto;
}
.idx_renew .box_reason{
  display: grid;
  grid-template-columns: repeat(3, 3fr);
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  gap: 30px;
}
.idx_renew .box_place{
  display: grid;
  grid-template-columns: repeat(4, 4fr);
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  gap: 30px;
}
.idx_renew .box_reason .item{
  box-shadow: 0px 10px 25px 0px rgb(50 50 50 / 15%);
  line-height: 0;
  border-radius: 30px;
}
.idx_renew .arrow {
  width: 300px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .idx_renew {
    padding: 12vw 4vw 0 4vw;
  }
  .idx_renew .box_reason{
    grid-template-columns: repeat(1, 1fr);
  }
  .mb90{
    margin-bottom: 12vw !important;
  }
  .mb70{
    margin-bottom: 9.333333333333333vw !important;
  }
  .mb50{
    margin-bottom: 6.666666666666667vw !important;
  }
  .renew #form{
    margin-top: 0;
  }
  .renew .sec7__body{
    padding-top: 8vw;
  }
  .renew .sec12 {
    margin-top: -80px;
  }
  .idx_renew .arrow {
  width: 150px;
  margin: 0 auto;
  }
}