@charset "UTF-8";
/* CSS Document */
@font-face {
  font-family: "notoserif";
  src: url("fonts/notoserifregular.woff") format("woff");
}
html,
body {
  width: 100%;
}

body {
  color: #354656;
  /*color: #3d4856;*/
  margin: 0 auto;
  font-family: "notoserif";
  /*font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;*/
  /*background: url(../images/cb.jpg) repeat;*/
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.mb0 {
  margin-bottom: 0px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.p15 {
  padding: 0 15px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.mb05em {
  margin-bottom: 0.5em !important;
}

.mb1em {
  margin-bottom: 1em !important;
}

.mb2em {
  margin-bottom: 2em !important;
}

.mb3em {
  margin-bottom: 3em !important;
}

.mb4em {
  margin-bottom: 4em !important;
}

.pb05em {
  padding-bottom: 0.5em !important;
}

.mr0 {
  margin-right: 0 !important;
}

li {
  list-style: none;
}

p {
  text-align: justify;
  -ms-text-justify: auto;
  text-justify: auto;
  text-justify: inter-ideograph;
}

h1,
h2,
h3,
h4,
h5,
h6,
strong {
  font-weight: normal;
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

.noborder {
  border: none !important;
}

.nomargin {
  margin: 0 0 !important;
}

.ta_r {
  text-align: right;
}

.ta_c {
  text-align: center;
}

.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

a {
  color: #3d4856;
  text-decoration: none;
}

.loading-area {
  background: #fff;
  width: 100%;
  height: 100%;
  height: 100vh;
  position: fixed;
  z-index: 22000;
}

.loading-area .loadeing-logo-area {
  position: absolute;
  top: 50vh;
  bottom: 0;
  left: 10px;
  right: 0;
  margin: auto;
  width: 580px;
  height: 200px;
  margin-top: -100px;
  text-align: center;
}

.loading-area .loadeing-logo-area img {
  display: none;
}

/*.loading-area .loadeing-logo-area img{ opacity: 0.6; }*/
/*@media screen and (max-width: 1119px){.loading-area .loadeing-logo-area{top:0;bottom:0;left:0;right:0;margin:auto}}*/
@media screen and (max-width: 750px) {
  .loading-area .loadeing-logo-area {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 50%;
    height: 300px;
  }
  .loading-area .loadeing-logo-area img {
    width: 100%;
    opacity: 1;
  }
}
.loading-area .loadeing-logo-area i {
  color: #ccc;
  display: block;
  margin: 30px auto 0;
}

@media (min-width: 751px) {
  .mb20 {
    margin-bottom: 20px !important;
  }
  .mb25 {
    margin-bottom: 25px !important;
  }
  .mb30 {
    margin-bottom: 30px !important;
  }
  .mb40 {
    margin-bottom: 40px !important;
  }
  .mb50 {
    margin-bottom: 50px !important;
  }
  .mb60 {
    margin-bottom: 60px !important;
  }
  .mb70 {
    margin-bottom: 70px !important;
  }
  .mb80 {
    margin-bottom: 80px !important;
  }
  .mb100 {
    margin-bottom: 100px !important;
  }
  .mb120 {
    margin-bottom: 120px !important;
  }
  .pt50 {
    padding-top: 50px !important;
  }
  .mr20 {
    margin-right: 20px;
  }
  .ls-1 {
    letter-spacing: -1px;
  }
  .ls-2 {
    letter-spacing: -2px;
  }
  .ls-3 {
    letter-spacing: -3px;
  }
  .ls-4 {
    letter-spacing: -4px;
  }
  .fs14 {
    font-size: 14px;
  }
  .fs16 {
    font-size: 16px;
  }
  .fs24 {
    font-size: 24px;
  }
  .fs26 {
    font-size: 26px;
  }
  a {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  a img {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  a:active,
  a:hover,
  a:hover img {
    opacity: 0.5;
  }
  .img_hidden {
    opacity: 0;
    -webkit-transition: 1s;
    transition: 1s;
  }
  .img_open {
    -moz-animation: imgfade 1s linear 0s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0s 1 normal forwards;
    -o-animation: imgfade 1s linear 0s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0s 1 normal forwards;
  }
  .img_open.ih2 {
    -moz-animation: imgfade 1s linear 0.3s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0.3s 1 normal forwards;
    -o-animation: imgfade 1s linear 0.3s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0.3s 1 normal forwards;
  }
  .img_open.ih3 {
    -moz-animation: imgfade 1s linear 0.6s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0.6s 1 normal forwards;
    -o-animation: imgfade 1s linear 0.6s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0.6s 1 normal forwards;
  }
  .img_open.ih4 {
    -moz-animation: imgfade 1s linear 0.9s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 0.9s 1 normal forwards;
    -o-animation: imgfade 1s linear 0.9s 1 normal forwards;
    -ms-animation: imgfade 1s linear 0.9s 1 normal forwards;
  }
  .img_open.ih5 {
    -moz-animation: imgfade 1s linear 1.2s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 1.2s 1 normal forwards;
    -o-animation: imgfade 1s linear 1.2s 1 normal forwards;
    -ms-animation: imgfade 1s linear 1.2s 1 normal forwards;
  }
  .img_open.ih6 {
    -moz-animation: imgfade 1s linear 1.5s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 1.5s 1 normal forwards;
    -o-animation: imgfade 1s linear 1.5s 1 normal forwards;
    -ms-animation: imgfade 1s linear 1.5s 1 normal forwards;
  }
  .img_open.ih7 {
    -moz-animation: imgfade 1s linear 1.8s 1 normal forwards;
    -webkit-animation: imgfade 1s linear 1.8s 1 normal forwards;
    -o-animation: imgfade 1s linear 1.8s 1 normal forwards;
    -ms-animation: imgfade 1s linear 1.8s 1 normal forwards;
  }
  .showup {
    opacity: 0;
    -webkit-transition: 1s;
    transition: 1s;
    transform: translateY(20px);
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px);
  }
  .upview {
    -moz-animation: showup 0.6s linear 0s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0s 1 normal forwards;
    -o-animation: showup 0.6s linear 0s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0s 1 normal forwards;
  }
  .upview.uv2 {
    -moz-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.3s 1 normal forwards;
  }
  .upview.uv3 {
    -moz-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.6s 1 normal forwards;
  }
  .upview.uv4 {
    -moz-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.9s 1 normal forwards;
  }
  .for_sp {
    display: none !important;
  }
  .for_tab {
    display: none !important;
  }
  .for_nw {
    display: none !important;
  }
  .tab .for_pcnotab {
    display: none !important;
  }
  .tab .for_tab {
    display: inline !important;
  }
  body {
    font-size: 14px;
    line-height: 16px;
  }
  .wrap {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  header {
    width: 100%;
    height: 120px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 500;
    background: #ffffff;
  }
  header h1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 450px;
  }
  header h1 a {
    display: block;
    width: 207px;
    height: 52px;
    margin-right: 28px;
    background: url(../images/logo.svg) center center no-repeat;
    overflow: hidden;
    text-indent: -10000px;
  }
  header h1 span {
    font-size: 13px;
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
  }
  #headmain .headtop {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #headmain .headtop .tel {
    width: 512px;
    height: 61px;
    text-indent: -10000px;
    overflow: hidden;
    background: url(../images/tel_hurry.svg) right top no-repeat;
  }
  .gnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .gnav li {
    position: relative;
  }
  .gnav li:after {
    content: "";
    width: 1px;
    height: 16px;
    background: #b5b5b6;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -8px;
  }
  .gnav li:last-child:after {
    background: none;
  }
  .gnav li a {
    display: block;
    line-height: 56px;
    font-size: 15px; /*font-size: 16px;*/
    position: relative;
    text-align: center;
    padding: 0 10px; /*padding: 0 14px;*/
  }
  .gnav li a:after {
    content: "";
    width: 0;
    height: 1px;
    background: #3d4856;
    position: absolute;
    bottom: 10px;
    left: 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  /*.gnav li:first-child a { padding-left: 0; }
  .gnav li:first-child a:after { left: -17px; }
  .gnav li:last-child a { padding-right: 0; }*/
  .gnav li a:hover {
    opacity: 1;
  }
  .gnav li a:hover:after,
  .gnav li a.active:after {
    width: 100%;
  }
  /*.gnav li:first-child a:hover:after,.gnav li:first-child a.active:after,
  .gnav li:last-child a:hover:after,.gnav li:last-child a.active:after { width: calc( 100% + 17px ); }*/
  #reqdocument {
    position: fixed;
    right: 0;
    top: 160px;
    z-index: 400;
    width: 80px;
  }
  /*contact*/
  #contact {
    background: #dbe3f1;
    padding: 50px 0;
  }
  #contact .mainw {
    position: relative;
    padding-right: 40px;
    background: #ffffff;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #contact .for_pc {
    margin-bottom: -50px;
  }
  #contact .tel {
    width: 340px;
    height: 123px;
    text-indent: -10000px;
    overflow: hidden;
    background: url(../images/tel_hurry_foot.svg) center center no-repeat;
  }
  #contact .btn_faq {
    width: 400px;
    height: 140px;
    display: block;
    background: #3d4856;
    line-height: 140px;
    text-align: center;
    color: #ffffff;
    font-size: 18px;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    position: relative; /*margin-left: 40px;*/
    border: #3d4856 1px solid;
  }
  #contact .btn_faq:before {
    content: "";
    width: 36px;
    height: 36px;
    position: absolute;
    left: 44px;
    top: 50%;
    margin-top: -18px;
    background: url(../images/icon_hatena.svg) center center no-repeat;
  }
  #contact .btn_faq:after {
    content: "";
    width: 6px;
    height: 12px;
    position: absolute;
    right: 32px;
    top: 50%;
    margin-top: -6px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    background: url(../images/icon_btn.svg) center center no-repeat;
  }
  #contact .btn_faq:hover {
    background: #ffffff;
    opacity: 1;
    color: #3d4856;
  }
  #contact .btn_faq:hover:after {
    right: 27px;
    background: url(../images/icon_btn_b.svg) center center no-repeat;
  }
  #contact .btn_faq:hover:before {
    background: url(../images/icon_hatena_on.svg) center center no-repeat;
  }
  /*footer*/
  footer {
    width: 100%;
    position: relative;
    padding-top: 30px;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  footer #footmain {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    padding-bottom: 35px;
    border-bottom: #e0e0e0 1px solid;
  }
  footer .faci_info .cflex {
    margin-bottom: 15px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  footer h2 a {
    display: block;
    width: 230px;
    height: 60px;
    text-indent: -10000px;
    overflow: hidden;
    background: url(../images/logo.svg) left center no-repeat;
    margin: 0 15px 0;
    background-size: contain;
  }
  /* sns_icon  */
  .sns_icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 80px;
  }
  .sns_icon img {
    max-width: 35px;
    width: 100%;
    display: block;
    margin: 0 auto;
  }
  footer address {
    font-style: normal;
  }
  footer address p {
    font-size: 15px;
    line-height: 24px;
  }
  footer address p a {
    pointer-events: none;
  }
  footer #footnav ul {
    margin-left: 45px;
  }
  footer #footnav ul:first-child {
    margin-left: 0;
  }
  footer #footnav li a {
    font-size: 16px;
    display: block;
    line-height: 36px;
    padding-left: 16px;
    background: url(../images/icon_li.svg) left center no-repeat;
  }
  footer .mainw {
    position: relative;
  }
  footer .copy {
    text-align: center;
    font-size: 12px;
    line-height: 68px;
  }
  /*pagetop*/
  #page-top {
    position: fixed;
    bottom: 0;
    left: 50%;
    margin-left: 610px;
    z-index: 300;
  }
  #page-top a {
    background: url(../images/icon_pagetop.svg) center center no-repeat #dbe3f1;
    text-align: center;
    display: block;
    width: 70px;
    height: 70px;
    position: relative;
    text-align: center;
  }
  #page-top a:after {
    content: "";
    width: 70px;
    height: 70px;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/icon_pagetop_on.svg) center center no-repeat;
    opacity: 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  #page-top a:hover {
    opacity: 1;
    background-color: #3d4856;
    background-position: center top -5px;
  }
  #page-top a:hover:after {
    opacity: 1;
    background-position: center top -5px;
  }
  #page-top.stop {
    position: absolute;
    bottom: 625px;
  }
  /*common*/
  .mainw,
  .mainw_pc {
    width: 1100px;
    margin: 0 auto;
  }
  .w1200 {
    width: 1200px;
    margin: 0 auto;
  }
  .w1100 {
    width: 1100px;
    margin: 0 auto;
  }
  .w1000 {
    width: 1000px;
    margin: 0 auto;
  }
  .w900 {
    width: 900px;
    margin: 0 auto;
  }
  .w800 {
    width: 800px;
    margin: 0 auto;
  }
  .w700 {
    width: 700px;
    margin: 0 auto;
  }
  .anchor {
    margin-top: -100px;
    padding-top: 100px;
  }
  .cflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  /*body { padding-top: 120px; }*/
  article {
    margin-top: 120px;
  }
  p {
    font-size: 14px;
    line-height: 24px;
  }
  #mv {
    width: 100%;
    height: 350px;
    overflow: hidden;
    text-align: center;
    position: relative;
  }
  #mv .img {
    width: 1300px;
    height: 300px;
    margin: 0 auto;
    position: relative;
  }
  #mv h2 {
    position: absolute;
    top: 90px;
    width: 550px;
    width: calc(50% - 250px);
    height: 120px;
    left: 0;
    padding-left: calc(50% - 555px);
    padding-top: 25px;
    background: #ffffff;
    font-size: 36px;
    line-height: 40px;
    text-align: left;
  }
  #mv h2 span {
    display: block;
    font-family: "Cinzel", serif;
    font-size: 15px;
  }
  #mv:before {
    content: "";
    width: 100%;
    height: 200px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #dbe3f1;
  }
  p.lead {
    font-size: 16px;
    line-height: 26px;
    text-align: center;
    margin: 0 0 20px;
  }
  /*.lead { text-align: center; margin-bottom: 70px; }
  .lead h4 { font-size: 20px; text-align: center; margin-bottom: 5px; line-height: 34px; }
  .lead p { font-size: 15px; line-height: 28px; text-align: center; }*/
  ul.noteul li {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 14px;
    line-height: 20px;
  }
  .h2wrp {
    background: #ffffff;
    height: 70px;
  }
  h2.mainh2 {
    font-size: 18px;
    text-align: left;
    font-weight: normal;
    margin: 0 auto;
    line-height: 70px;
    width: 1200px;
  }
  h2.mainh2 > span {
    font-size: 40px;
    font-family: "EB Garamond";
    display: inline-block;
    padding-right: 12px;
    margin-right: 12px;
    position: relative;
  }
  h2.mainh2 > span:after {
    content: "";
    position: absolute;
    width: 1px;
    height: 28px;
    right: 0;
    top: 21px;
    background: #ccc7be;
  }
  h2.mainh2 span span {
    color: #af8242;
  }
  h3.ch3 {
    font-size: 30px;
    margin-bottom: 45px;
    text-align: center;
    line-height: 36px;
    letter-spacing: 5px;
  }
  h3.ch3 span {
    font-size: 16px;
    font-family: "Cinzel", serif;
    display: block;
    letter-spacing: 3px;
  }
  h3.ch3_2 {
    font-size: 34px;
    margin-bottom: 40px;
    text-align: center;
    line-height: 1.1;
  }
  h3.ch3_2 span {
    font-size: 22px;
    position: relative;
    display: block;
    width: 96px;
    margin: 0 auto 5px;
  }
  h3.ch3_2 span:before {
    content: "";
    width: 66px;
    height: 1px;
    background: #3d4856;
    position: absolute;
    left: -70px;
    top: 50%;
  }
  h3.ch3_2 span:after {
    content: "";
    width: 66px;
    height: 1px;
    background: #3d4856;
    position: absolute;
    right: -70px;
    top: 50%;
  }
  h4.ch4 {
    font-size: 22px;
    line-height: 0.8;
    margin: 50px 0;
    text-align: center;
    position: relative;
  }
  h4.ch4:before {
    content: "";
    width: 100%;
    height: 1px;
    background: #3d4856;
    position: absolute;
    left: 0;
    top: 50%;
  }
  h4.ch4 span {
    width: 300px;
    display: block;
    background: #ffffff;
    margin: 0 auto;
    text-align: center;
    position: relative;
  }
  h4.ch4.short span {
    width: 120px;
  }
  h4.ch4 span.for_sp {
    display: none;
  }
  h4.ch4_2 {
    font-size: 30px;
    line-height: 36px;
    margin-bottom: 25px;
    text-align: left;
    position: relative;
    letter-spacing: 5px;
  }
  h4.ch4_2:before {
    content: "";
    width: 100%;
    height: 1px;
    background: #e0e0e0;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  h4.ch4_2:after {
    content: "";
    width: 100px;
    height: 1px;
    background: #3d4856;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  h4.ch4_2 span {
    font-size: 15px;
    font-family: "Cinzel", serif;
    letter-spacing: 3px;
  }
  h5.ch5 {
    font-size: 18px;
    margin: 30px 0 15px;
    width: 170px;
    border-bottom: #e0e0e0 1px solid;
    position: relative;
    padding-bottom: 10px;
  }
  h5.ch5:after {
    content: "";
    width: 30px;
    height: 1px;
    background: #3d4856;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .cmenu {
    width: 100%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    margin: -30px auto 0;
    padding-bottom: 80px;
  }
  .cmenu li {
    height: 80px;
    width: 320px;
    background: #dbe3f1;
    padding: 5px;
    margin-right: 10px;
  }
  .cmenu li:last-child {
    margin-right: 0;
  }
  .cmenu li a {
    display: block;
    height: 70px;
    width: 310px;
    position: relative;
    line-height: 24px;
    text-align: center;
    border: #d1dbe8 1px solid;
    background: #ffffff;
    font-size: 18px;
    padding-top: 10px;
  }
  .cmenu li a:after {
    content: "";
    position: absolute;
    top: 30px;
    right: 20px;
    width: 10px;
    height: 5px;
    text-align: center;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    background: url(../images/icon_btn_db.svg) center center no-repeat;
  }
  .cmenu li a:hover {
    opacity: 1;
  }
  .cmenu li a:hover:after {
    top: 35px;
  }
  /*.cmenu li a.l2 { line-height: 17px; }*/
  /*section .bx-wrapper .bx-viewport { left:0; }*/
  /*cb...color box*/
  .cb {
    background: #edf1f7;
  }
  /*bt...border top*/
  .bt {
    border-top: #e0e0e0 1px solid;
    padding-top: 30px;
  }
  /*bb...border bottom*/
  /*.bb { width: 100%; box-shadow: 2px 2px 5px #cccccc; padding-bottom: 15px; margin-bottom: 70px; }*/
  /*cbd...common border*/
  .cbd {
    height: 15px;
    width: 100%;
    background: #f2f2f2;
  }
  .cbtn {
    font-size: 16px;
    display: block;
    text-align: center;
    line-height: 50px;
    width: 250px;
    height: 50px;
    position: relative;
    color: #3d4856;
    background: url("../images/icon_btn_b.svg") right 15px center no-repeat #ffffff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  .cbtn:hover {
    background: url("../images/icon_btn.svg") right 10px center no-repeat #3d4856;
    opacity: 1;
    color: #ffffff;
  }
  .cbtn2 {
    font-size: 16px;
    display: block;
    text-align: center;
    line-height: 58px;
    width: 340px;
    height: 60px;
    position: relative;
    color: #ffffff;
    background: url("../images/icon_btn.svg") right 15px center no-repeat #3d4856;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    border: #3d4856 1px solid;
  }
  .cbtn2:hover {
    opacity: 1;
    background: url("../images/icon_btn_b.svg") right 10px center no-repeat #ffffff;
    color: #3d4856;
  }
  /*.cbtn3 { font-size: 15px; display: block; text-align: center; line-height: 48px;
  	 width: 260px; height: 48px; position: relative; color: #c30d23;
  	 background: url("../images/icon_arrow_right_red.svg") right 12px center no-repeat #FFFFFF;
  	 border-radius: 24px; border: 1px solid #c30d23;
  	 font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; }
  .cbtn3:hover { opacity: 1; color: #ffffff;
  	background: url("../images/icon_arrow_right_white.svg") right 7px center no-repeat #c30d23; opacity: 1; }*/
  table.ctable {
    width: 100%;
  }
  table.ctable tr th {
    width: 200px;
    font-weight: normal;
    text-align: left;
    position: relative;
  }
  table.ctable tr th,
  table.ctable tr td {
    position: relative;
    padding: 25px 15px;
    vertical-align: middle;
    border-top: 1px solid #e0e0e0;
    font-size: 16px;
  }
  table.ctable tr:nth-child(odd) {
    background: #f2f4f7;
  }
  table.ctable tr th:before {
    content: "";
    width: 125px;
    height: 1px;
    background: #3d4856;
    position: absolute;
    left: 0;
    top: 0;
  }
  table.ctable2 {
    border-collapse: collapse;
    width: 100%;
  }
  table.ctable2 tr:first-child th {
    border-top: #d8d4cb 1px solid;
  }
  table.ctable2 tr:first-child td {
    border-top: #d8d4cb 1px solid;
  }
  /*table.ctable2 tr:nth-child(2) td { padding-top: 10px; }
  table.ctable2 tr:last-child td { border-bottom: #d8d4cb 1px solid; padding-bottom: 10px; }*/
  table.ctable2 th {
    border-bottom: #d8d4cb 1px solid;
    vertical-align: middle;
    font-size: 14px;
    border-right: #d8d4cb 1px solid;
  }
  table.ctable2 th:last-child,
  table.ctable2 td:last-child {
    border-right: none;
  }
  table.ctable2 th {
    text-align: center;
    padding-left: 0;
    font-weight: normal;
    position: relative;
    background: #e5e1d7;
    height: 40px;
    line-height: 40px;
  }
  table.ctable2 td {
    padding: 10px;
    background: #ffffff;
    border-right: #d8d4cb 1px solid;
    line-height: 21px;
    border-bottom: #d8d4cb 1px solid;
  }
  table.ctable3 {
    border-top: 1px solid #e0dad1;
    font-size: 15px;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", メイリオ, sans-serif;
  }
  table.ctable3 th {
    font-weight: normal;
    vertical-align: middle;
    text-align: center;
    padding: 25px;
  }
  table.ctable3 td {
    font-weight: normal;
    vertical-align: middle;
    text-align: left;
    padding: 25px;
    border-left: 1px dotted #e0dad1;
  }
  table.ctable3 th,
  table.ctable3 td {
    border-bottom: 1px solid #e0dad1;
    line-height: 1.5;
  }
  ul.cul {
    text-align: left;
    font-size: 14px;
    line-height: 21px;
    padding-left: 1em;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  ul.cul li {
    padding-left: 1em;
    text-indent: -0.8em; /*list-style: disc;*/
  }
  ul.cul li:before {
    content: "●";
    color: #009657;
    display: inline-block;
    font-size: 10px;
    padding-right: 0.5em;
  }
  /*ul.cul li.note:before { content: ""; }*/
  dl.cdl {
    text-align: left;
    font-size: 15px;
    line-height: 30px;
    padding-left: 1em;
  }
  dl.cdl dt {
    font-size: 18px;
  }
  dl.cdl dd {
    padding-left: 1em;
    text-indent: -0.8em; /*list-style: disc;*/
  }
  dl.cdl dd:before {
    content: "●";
    color: #af8242;
    display: inline-block;
    font-size: 10px;
    padding-right: 0.5em;
  }
  /*cdl...common dl*/
  /*ul.bn { text-align: center; margin: 60px auto 110px; }
  ul.bn li { float: left; }
  ul.bn li:last-child { float: right; }
  ul.bn li img { width: 550px; }*/
  .f_req_d {
    margin-bottom: 80px;
  }
  .f_req_d li {
    margin-bottom: 30px;
  }
  .f_req_d li:last-child {
    margin-bottom: 0;
  }
  /* planimg */
  .planimg .notes {
    text-align: right;
    padding-top: 5px;
  }
}
@media (min-width: 751px) and (max-width: 1470px) {
  #page-top {
    right: 20px;
    left: auto;
    margin-left: 0;
  }
}
@media (min-width: 751px) and (max-width: 1245px) {
  .for_nw {
    display: inline !important;
  }
  .mainw,
  .mainw_pc,
  h2.mainh2 {
    width: 100%;
    padding: 0 2vw;
  }
  .mainw.anchor,
  .mainw_pc.anchor {
    padding: 100px 2vw 0;
  }
}
@media (min-width: 751px) and (max-width: 1145px) {
  .w1100 {
    width: 100%;
    padding: 0 2vw;
  }
  .w1100.anchor {
    padding: 100px 2vw 0;
  }
  .gnav li a {
    padding: 0 5px;
  }
  #contact .mainw {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 40px 40px 40px 280px;
    width: 92%;
    margin: 0 auto;
  }
  #contact .mainw img {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  #page-top.stop {
    bottom: 700px;
  }
  #contact .btn_faq {
    margin-top: 15px;
  }
}
@media (min-width: 751px) and (max-width: 1045px) {
  .w1000 {
    width: 100%;
    padding: 0 2vw;
  }
  .w1000.anchor {
    padding: 100px 2vw 0;
  }
  header {
    height: 170px;
  }
  #headmain .headtop {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #headmain .headtop .tel {
    margin-left: auto;
  }
  article {
    margin-top: 170px;
  }
}
@media (min-width: 751px) and (max-width: 970px) {
  .gnav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .gnav li a {
    line-height: 28px;
  }
  .gnav li a:after {
    bottom: 0;
  }
}
@media (min-width: 751px) and (max-width: 940px) {
  .w900 {
    padding: 0 2vw;
    width: 100%;
  }
}
@-webkit-keyframes imgfade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes showup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@media (max-width: 750px) {
  body {
    font-size: 4.2vw;
    line-height: 8vw;
  }
  .mb20 {
    margin-bottom: 2.6vw !important;
  }
  .mb25 {
    margin-bottom: 3.3vw !important;
  }
  .mb30 {
    margin-bottom: 4vw !important;
  }
  .mb40 {
    margin-bottom: 5.3vw !important;
  }
  .mb50 {
    margin-bottom: 6.6vw !important;
  }
  .mb60 {
    margin-bottom: 8vw !important;
  }
  .mb70 {
    margin-bottom: 9.3vw !important;
  }
  .mb80 {
    margin-bottom: 10.6vw !important;
  }
  .mb90 {
    margin-bottom: 12vw;
  }
  .mb100 {
    margin-bottom: 13.3vw !important;
  }
  .mb120 {
    margin-bottom: 16vw !important;
  }
  .pt50 {
    padding-top: 6.6vw !important;
  }
  .ls-1 {
    letter-spacing: -1px;
  }
  .ls-2 {
    letter-spacing: -2px;
  }
  .ls-3 {
    letter-spacing: -3px;
  }
  .ls-4 {
    letter-spacing: -4px;
  }
  .fs14 {
    font-size: 3.8vw;
  }
  .fs16 {
    font-size: 4.2vw;
  }
  .fs24 {
    font-size: 4.6vw;
  }
  .fs26 {
    font-size: 5vw;
  }
  body {
    width: 100%;
  }
  .wrap {
    width: 100%;
    overflow: hidden;
  }
  .for_pc {
    display: none !important;
  }
  .for_tab {
    display: none;
  }
  .for_pcnotab {
    display: none !important;
  }
  .for_nw {
    display: none !important;
  }
  .cf_s:before,
  .cf_s:after {
    content: "";
    display: table;
  }
  .cf_s:after {
    clear: both;
  }
  .cf_s {
    zoom: 1;
  }
  .showup {
    opacity: 0;
    -webkit-transition: 1s;
    transition: 1s;
    transform: translateY(4vw);
    -webkit-transform: translateY(4vw);
    -moz-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    -o-transform: translateY(4vw);
  }
  .upview {
    -moz-animation: showup 1s linear 0s 1 normal forwards;
    -webkit-animation: showup 1s linear 0s 1 normal forwards;
    -o-animation: showup 1s linear 0s 1 normal forwards;
    -ms-animation: showup 1s linear 0s 1 normal forwards;
  }
  header {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 20000;
  }
  #foot_spnav {
    width: 100%;
    height: 22vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    background: #ffffff;
    padding: 0 0 0 6vw;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    z-index: 6000;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #foot_spnav h1 a {
    display: block;
    width: 52vw;
    height: 13vw;
    text-indent: -10000px;
    overflow: hidden;
    background: url(../images/logo.svg) left center no-repeat;
    background-size: contain;
  }
  #foot_spnav #menu_sp {
    width: 22vw;
    height: 22vw;
    position: relative;
    padding: 6vw 0 0;
  }
  #foot_spnav #menu_sp .icon {
    width: 6vw;
    height: 6vw;
    position: relative;
    margin: 0 auto;
  }
  #foot_spnav #menu_sp span {
    position: absolute;
    display: block;
    width: 6vw;
    height: 1px;
    background: #251917;
    left: 0;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  #foot_spnav #menu_sp span:first-child {
    top: 0;
  }
  #foot_spnav #menu_sp span:nth-child(2) {
    top: 2vw;
  }
  #foot_spnav #menu_sp span:nth-child(3) {
    top: 4vw;
  }
  #foot_spnav #menu_sp p {
    color: #251917;
    text-align: center;
    font-size: 4.2vw;
  }
  .sp_yoko #fnav,
  .sp_yoko #foot_spnav,
  .sp_yoko #foot_spnav ul,
  .sp_yoko #foot_spnav ul li a,
  .sp_yoko #foot_spnav #menu_sp {
    height: 15vh;
  }
  #headmain {
    display: none;
    position: fixed;
    left: 0;
    top: 22vw;
    width: 100%;
    text-align: center;
    background: #ffffff;
    height: 100vh;
    overflow: auto;
    z-index: 4000;
  }
  #headmain ul.gnav {
    width: 86vw;
    margin: 0 auto 6.4vw;
  }
  #headmain ul.gnav li {
    border-bottom: #cecece 1px solid;
  }
  #headmain ul.gnav li a {
    display: block;
    width: 100%;
    line-height: 12vw;
    text-align: center;
    position: relative;
    font-size: 4.2vw;
  }
  #reqdocument {
    position: fixed;
    right: 0;
    bottom: 32vw;
    z-index: 400;
    width: 12vw;
  }
  /*contact*/
  #contact {
    background: #dbe3f1;
    padding: 6vw 0;
  }
  #contact .mainw {
    position: relative;
    padding: 6vw;
    background: #ffffff;
  }
  #contact .tel a {
    width: 73vw;
    height: 27vw;
    text-indent: -10000px;
    overflow: hidden;
    display: block;
    background: url(../images/tel_hurry_foot.svg) center center no-repeat;
    background-size: contain;
    margin-bottom: 6vw;
  }
  #contact .btn_faq {
    width: 73vw;
    height: 13vw;
    display: block;
    background: #3d4856;
    line-height: 13vw;
    text-align: center;
    color: #ffffff;
    font-size: 4vw;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    position: relative; /*margin-left: 40px;*/
  }
  #contact .btn_faq:before {
    content: "";
    width: 8vw;
    height: 8vw;
    position: absolute;
    left: 2vw;
    top: 50%;
    margin-top: -4vw;
    background: url(../images/icon_hatena.svg) center center no-repeat;
    background-size: contain;
  }
  #contact .btn_faq:after {
    content: "";
    width: 2vw;
    height: 1.8vw;
    position: absolute;
    right: 4vw;
    top: 50%;
    margin-top: -0.9vw;
    background: url(../images/icon_btn.svg) center center no-repeat;
    background-size: contain;
  }
  /*footer*/
  footer {
    width: 100%;
    position: relative;
    padding-top: 10vw;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  footer #footmain {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 10vw;
  }
  footer .faci_info .cflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 14vw auto 4vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  footer h2 a {
    display: block;
    width: 63vw;
    height: 17vw;
    text-indent: -10000px;
    overflow: hidden;
    background: url(../images/logo.svg) left center no-repeat;
    margin: 0 6vw 0;
    background-size: contain;
  }
  footer .f_link img {
    width: 10vw;
  }
  /* sns_icon  */
  .sns_icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 35vw;
    margin: 5vw auto;
  }
  .sns_icon li {
    margin: 0 auto;
  }
  .sns_icon img {
    max-width: 10vw;
    width: 100%;
    display: block;
    margin: 0 auto;
  }
  footer address {
    font-style: normal;
  }
  footer address p {
    font-size: 4vw;
    line-height: 6vw;
  }
  footer address p a {
    pointer-events: none;
  }
  footer #footnav .for_sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  footer #footnav ul {
    width: 50%;
  }
  footer #footnav li {
    /*display: inline-block; width: 50%;*/
  }
  /*footer #footnav li:last-child { margin-right: 0; }*/
  footer #footnav li a {
    font-size: 4vw;
    display: block;
    line-height: 10vw;
    padding-left: 3vw;
    background: url(../images/icon_li.svg) left center no-repeat;
    background-size: 1.4vw auto;
  }
  footer .mainw {
    position: relative;
  }
  footer .copy {
    text-align: center;
    font-size: 3.8vw;
    line-height: 16vw;
    border-top: #e0e0e0 1px solid;
    margin-bottom: 16vw;
  }
  /*pagetop*/
  #page-top {
    position: fixed;
    bottom: 16vw;
    right: 0;
    z-index: 300;
  }
  #page-top a {
    background: url(../images/icon_pagetop.svg) center center no-repeat #dbe3f1;
    text-align: center;
    display: block;
    width: 16vw;
    height: 16vw;
    position: relative;
    text-align: center;
    background-size: 16vw auto;
  }
  #page-top.stop {
    position: absolute;
    bottom: 225vw;
  }
  /*tel_sp*/
  #tel_sp {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 16vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    z-index: 3000;
  }
  #tel_sp li {
    width: 50%;
  }
  #tel_sp a {
    width: 100%;
    height: 16vw;
    display: block;
  }
  #tel_sp li:first-child a {
    background: url(../images/tel_hurry_sp.svg) center center no-repeat #da4b33;
    background-size: auto 16vw;
    text-indent: -10000px;
    overflow: hidden;
  }
  /*#tel_sp li:last-child a { background: url(../images/con_sp.svg) center center no-repeat #d9e4f2;
  background-size: auto 16vw; text-indent: -10000px; overflow: hidden; }*/
  #tel_sp li:last-child a {
    background: url(../images/doc_sp.png) center center no-repeat #d9e4f2;
    background-size: auto 16vw;
    text-indent: -10000px;
    overflow: hidden;
  }
  /*common*/
  .wrap {
    position: relative;
  }
  body {
    padding-top: 22vw;
  }
  article {
    /*padding-top: 22vw;*/
  }
  .mainw,
  .w1200,
  .w1100,
  .w1000,
  .w900,
  .w800,
  .w700 {
    width: 88vw;
    margin: 0 auto;
    padding: 0;
  }
  p {
    font-size: 4.2vw;
    line-height: 6vw;
  }
  #mv {
    position: relative;
    width: 100%;
    height: 48vw;
  }
  #mv .img {
    width: 100%;
    height: 48vw;
    position: relative;
  }
  #mv h2 {
    position: absolute;
    top: 50%;
    left: 0;
    text-align: left;
    width: 56vw;
    height: 18vw;
    background: rgba(255, 255, 255, 0.8);
    padding: 3vw 2vw 2vw 6vw;
    font-size: 6vw;
    line-height: 7vw;
    margin-top: -8vw;
  }
  #mv h2 span {
    display: block;
    font-family: "Cinzel", serif;
    font-size: 3.8vw;
  }
  #mv:before {
    content: "";
    width: 100%;
    height: 12vw;
    position: absolute;
    bottom: -10vw;
    left: 0;
    background: #dbe3f1;
  }
  p.lead {
    text-align: center;
    margin: 0 auto 6vw;
  }
  .note {
    padding-left: 1em;
    text-indent: -1em;
  }
  ul.noteul li {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 3.8vw;
    line-height: 4.6vw;
  }
  h3.ch3 {
    margin-bottom: 6vw;
    font-size: 6vw;
    text-align: center;
    line-height: 8vw;
    letter-spacing: 5px;
  }
  h3.ch3 span {
    font-size: 4.2vw;
    font-family: "Cinzel", serif;
    display: block;
    letter-spacing: 3px;
  }
  h3.ch3_2 {
    font-size: 6vw;
    margin-bottom: 8vw;
    text-align: center;
    line-height: 1.1;
  }
  h3.ch3_2 span {
    font-size: 4.2vw;
    position: relative;
    display: block;
    width: 22vw;
    margin: 0 auto 1vw;
  }
  h3.ch3_2 span:before {
    content: "";
    width: 14vw;
    height: 1px;
    background: #3d4856;
    position: absolute;
    left: -16vw;
    top: 50%;
  }
  h3.ch3_2 span:after {
    content: "";
    width: 14vw;
    height: 1px;
    background: #3d4856;
    position: absolute;
    right: -16vw;
    top: 50%;
  }
  h4.ch4 {
    font-size: 5vw;
    line-height: 7vw;
    margin: 6vw auto;
    text-align: center;
    position: relative;
    width: 88vw;
  }
  h4.ch4:before {
    content: "";
    width: 100%;
    height: 1px;
    background: #3d4856;
    position: absolute;
    left: 0;
    top: 50%;
  }
  h4.ch4 span {
    width: 44vw;
    display: block;
    background: #ffffff;
    margin: 0 auto;
    text-align: center;
    position: relative; /*line-height: 3vw;*/
  }
  h4.ch4.short span {
    width: 28vw;
  }
  h4.ch4 span.for_sp {
    display: inline;
    background: none;
  }
  h4.ch4_2 {
    font-size: 5vw;
    line-height: 7vw;
    margin-bottom: 4vw;
    text-align: left;
    position: relative;
    letter-spacing: 5px;
  }
  h4.ch4_2:before {
    content: "";
    width: 100%;
    height: 1px;
    background: #e0e0e0;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  h4.ch4_2:after {
    content: "";
    width: 20vw;
    height: 1px;
    background: #3d4856;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  h4.ch4_2 span {
    font-size: 3.4vw;
    font-family: "Cinzel", serif;
    letter-spacing: 3px;
  }
  h5.ch5 {
    font-size: 4vw;
    margin: 6vw 0 2vw;
    width: 170px;
    border-bottom: #e0e0e0 1px solid;
    position: relative;
    padding-bottom: 10px;
  }
  h5.ch5:before {
    content: "";
    width: 38vw;
    height: 1px;
    background: #e1e1e1;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  h5.ch5:after {
    content: "";
    width: 6vw;
    height: 1px;
    background: #3d4856;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .cmenu {
    width: 88vw;
    position: relative;
    margin: -8vw auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 10vw;
  }
  .cmenu li {
    width: 28vw;
    height: 17vw;
    padding: 2vw;
    background: #dbe3f1;
  }
  .cmenu li a {
    display: block;
    width: 24vw;
    height: 13vw;
    position: relative;
    text-align: center;
    font-size: 4vw;
    background: url(../images/icon_btn_db.svg) right 2vw center no-repeat #ffffff;
    background-size: 1.4vw auto;
    line-height: 4vw;
    border: #d1dbe8 1px solid;
  }
  .cmenu li a span {
    font-size: 3.8vw;
  }
  .f_req_d {
    margin-bottom: 16vw;
  }
  .f_req_d li {
    margin-bottom: 4vw;
  }
  .f_req_d li:last-child {
    margin-bottom: 0;
  }
  /* planimg */
  .punit .planimg {
    margin-bottom: 16vw !important;
  }
  .planimg .notes {
    text-align: right;
    padding-top: 2vw;
  }
  /*cb...color box*/
  .cb {
    background: #edf1f7;
  }
  .bg_mt_right {
    background: url(../images/bg_mt_right.png) right bottom no-repeat;
    background-size: 60vw auto;
  }
  .bg_mt_left {
    background: url(../images/bg_mt_left.png) left bottom no-repeat;
    background-size: 50vw auto;
  }
  /*.cb h3 { height: 17.6vw; background: url("../images/cb_h3_sp.svg") center bottom no-repeat;
  	font-family: "notoserif"; font-size: 6vw; line-height: 6vw; text-align: center;
  	margin-bottom: 8vw; background-size: 37vw auto; }
  .cb h3 span { color: #603813; font-size: 3.2vw; }*/
  /*.cb2 { background: #F4F1E9; border-top: #E8E3D3 10px solid; }*/
  .bt {
    border-top: #e0e0e0 1px solid;
    padding-top: 4vw;
  }
  /*.bb { width: 100%; box-shadow: 2px 2px 5px #cccccc; padding-bottom: 4vw; margin-bottom: 13vw; }*/
  /*cbd...common border*/
  .cbd {
    height: 2.4vw;
    width: 100%;
    background: url(../images/c_line.jpg) left top repeat-x;
    background-size: auto 2.4vw;
  }
  .cbtn,
  .cbtn_sp {
    font-size: 3.8vw;
    display: block;
    text-align: center;
    line-height: 12vw;
    width: 88vw;
    height: 12vw;
    position: relative;
    color: #3d4856;
    background: url("../images/icon_cbtn.svg") right 4vw center no-repeat #ffffff;
    background-size: 1.2vw auto;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  .cbtn2 {
    font-size: 3.8vw;
    display: block;
    text-align: center;
    line-height: 12vw;
    width: 88vw;
    height: 12vw;
    position: relative;
    color: #ffffff;
    background: url("../images/icon_btn.svg") right 4vw center no-repeat #3d4856;
    background-size: 1.2vw auto;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  .cbtn3 {
    font-size: 3.8vw;
    display: block;
    text-align: center;
    line-height: 12vw;
    width: 88vw;
    height: 12vw;
    position: relative;
    color: #ffffff;
    background: url("../images/icon_arrow_right_white.svg") right 4vw center no-repeat #c30d23;
    background-size: 2vw auto;
    border-radius: 6vw; /*border: 1px solid #FFFFFF;*/
    border: none;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  table.ctable {
    width: 100%;
  }
  table.ctable tr th {
    /*width: 20vw;*/
    font-weight: normal;
    text-align: left;
    position: relative;
  }
  table.ctable tr th,
  table.ctable tr td {
    position: relative;
    padding: 2vw;
    vertical-align: middle;
    border-top: 1px solid #e0e0e0;
    font-size: 4.2vw;
    display: block;
  }
  table.ctable tr:nth-child(odd) {
    background: #f2f4f7;
  }
  table.ctable tr th:before {
    content: "";
    width: 15vw;
    height: 1px;
    background: #3d4856;
    position: absolute;
    left: 0;
    top: 0;
  }
  table.ctable2 {
    width: 100%;
    border-collapse: collapse; /*display: flex; flex-wrap:wrap;*/
  }
  table.ctable2 tbody {
    /*display: flex; flex-wrap:wrap;*/
  }
  table.ctable2 th {
    vertical-align: middle;
    font-weight: normal;
    text-align: center;
    background: #e5e1d7;
  }
  /*table.ctable2 th:first-child,table.ctable2 td:first-child { padding-top: 2vw; }
  table.ctable2 th:last-child,table.ctable2 td:last-child { padding-bottom: 2vw;
  	 }*/
  table.ctable2 td {
    background: #ffffff;
  }
  table.ctable2 th,
  table.ctable2 td {
    font-size: 4.2vw;
    padding: 2vw; /*display: block; width: 100%;*/
    border-right: #d8d4cb 1px solid;
  }
  table.ctable2 th:last-child,
  table.ctable2 td:last-child {
    border-right: none;
  }
  table.ctable2 tr:first-child {
    border-top: #d8d4cb 1px solid;
    width: 100%;
  }
  table.ctable2 tr {
    border-bottom: #d8d4cb 1px solid; /*width: 50%;*/
  }
  /*table.ctable2 tr:nth-child(odd) { border-right: none; }*/
  table.ctable2 tr:last-child {
    width: 100%;
    border-right: none;
  }
  table.ctable3 {
    border-top: 1px solid #e0dad1;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", メイリオ, sans-serif;
  }
  table.ctable3 th {
    font-weight: normal;
    vertical-align: middle;
    text-align: center;
    padding: 1vw;
  }
  table.ctable3 td {
    font-weight: normal;
    vertical-align: middle;
    text-align: left;
    padding: 1vw;
    border-left: 1px dotted #e0dad1;
  }
  table.ctable3 th,
  table.ctable3 td {
    border-bottom: 1px solid #e0dad1;
    line-height: 1.5;
  }
  ul.cul {
    text-align: left;
    font-size: 4.2vw;
    line-height: 6vw;
    padding-left: 1em;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  }
  ul.cul li {
    padding-left: 1em;
    text-indent: -0.8em; /* list-style: disc;*/
  }
  ul.cul li:before {
    content: "●";
    color: #009657;
    display: inline-block;
    font-size: 2vw;
    padding-right: 0.5em;
  }
  ol.cul2 {
    text-align: left;
    font-size: 4.2vw;
    line-height: 6vw;
    padding-left: 1em;
  }
  ol.cul2 li {
    padding-left: 1em;
    text-indent: -1.4em;
  }
  ul.cul3 {
    text-align: left;
    font-size: 4.2vw;
    line-height: 6vw;
    padding-left: 1em;
  }
  ul.cul3 li {
    padding-left: 1em;
    text-indent: -0.5em;
    list-style: disc;
  }
  /*cdl...common dl*/
  dl.cdl {
    text-align: left;
    font-size: 4.2vw;
    line-height: 6vw;
    padding-left: 1em;
  }
  dl.cdl dt {
    font-size: 4vw;
  }
  dl.cdl dd {
    padding-left: 1em;
    text-indent: -0.8em; /*list-style: disc;*/
  }
  dl.cdl dd:before {
    content: "●";
    color: #af8242;
    display: inline-block;
    font-size: 2vw;
    padding-right: 0.5em;
  }
  /*.cdl {  width: 90vw; margin: 3vw auto; }
  .cdl dt { text-align: center; border-bottom: #e0e0e0 1px solid;
  	min-height: 8vw; line-height: 8vw; font-size: 4.2vw; background: #eeeeee; text-align: left;
  	padding-left: 2vw; }
  .cdl dt:first-child { border-top: #80ad1f 2px solid; }
  .cdl dd { border-bottom: #e0e0e0 1px solid; min-height: 8vw; line-height: 8vw;
  	font-size: 4.2vw; padding: 2vw; text-align: left; }

  ul.bn { text-align: center; margin: 13vw auto 20vw; }
  ul.bn li { margin-bottom: 2.6vw; }*/
  @-webkit-keyframes txtfade {
    0% {
      opacity: 0;
      -webkit-transform: translateY(4vw);
              transform: translateY(4vw);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
}
/******************************************************************************************* 20250527～追記 */
/* PC・SPの切り替え時に表示・非表示 */
.sp_only {
  display: none !important;
}
@media screen and (max-width: 750px) {
  .sp_only {
    display: inline !important;
  }
}

.pc_only {
  display: inline !important;
}
@media screen and (max-width: 750px) {
  .pc_only {
    display: none !important;
  }
}

.access_title_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 750px) {
  .access_title_area {
    margin-bottom: 20px;
  }
}

.access_hall {
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 750px) {
  .access_hall {
    font-size: 5.5vw;
  }
}

.access_title {
  font-size: 24px;
  line-height: 1.4;
  margin-bottom: 40px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.access_title.mb {
  margin-bottom: 0;
  margin-left: 15px;
}
@media screen and (max-width: 750px) {
  .access_title.mb {
    margin-left: 10px;
  }
}
.access_title span {
  display: inline-block;
  font-size: 48px;
  line-height: 1;
}
.access_title span.ml {
  margin-left: 10px;
}
.access_title span.mr {
  margin-right: 10px;
}
@media screen and (max-width: 750px) {
  .access_title span {
    font-size: 10.5vw;
  }
}
.access_title img {
  width: 165px;
  height: auto;
}
@media screen and (max-width: 750px) {
  .access_title img {
    width: 150px;
  }
}
@media screen and (max-width: 750px) {
  .access_title {
    font-size: 5.5vw;
    margin-bottom: 20px;
  }
}

.access_subtitle {
  font-size: 18px;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.access_subtitle span {
  display: inline-block;
  font-size: 36px;
  line-height: 1;
}
.access_subtitle span.ml {
  margin-left: 10px;
}
.access_subtitle span.mr {
  margin-right: 10px;
}
@media screen and (max-width: 750px) {
  .access_subtitle {
    font-size: 4.2vw;
  }
}

.common_section {
  margin-top: 120px;
}
@media screen and (max-width: 750px) {
  .common_section.mt_sp {
    margin-top: 0;
  }
}
@media screen and (max-width: 750px) {
  .common_section {
    margin-top: 60px;
  }
}

.concept_list {
  padding-top: 85px;
}
.concept_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.concept_list li.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 750px) {
  .concept_list li.reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 750px) {
  .concept_list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 750px) {
  .concept_list {
    padding-top: 0;
  }
}

.concept_box {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.concept_box:last-child {
  padding: 20px;
}
@media screen and (max-width: 750px) {
  .concept_box:last-child {
    padding: 20px 15px;
  }
}
@media screen and (max-width: 750px) {
  .concept_box {
    width: 100%;
  }
}

img.concept_img {
  max-width: 100%;
  width: 100%;
  height: 500px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
@media screen and (max-width: 750px) {
  img.concept_img {
    height: 200px;
  }
}

.concept_con {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.concept_num {
  margin-right: 20px;
}
.concept_num img.num_01 {
  width: 23px;
  height: auto;
}
@media screen and (max-width: 750px) {
  .concept_num img.num_01 {
    width: 13px;
  }
}
.concept_num img.num_02 {
  width: 43px;
  height: auto;
}
@media screen and (max-width: 750px) {
  .concept_num img.num_02 {
    width: 24px;
  }
}
.concept_num img.num_03 {
  width: 39px;
  height: auto;
}
@media screen and (max-width: 750px) {
  .concept_num img.num_03 {
    width: 20px;
  }
}
@media screen and (max-width: 750px) {
  .concept_num {
    margin-right: 10px;
  }
}

.concept_title {
  font-size: 33px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 750px) {
  .concept_title {
    font-size: 6vw;
  }
}

.concept_text {
  font-size: 24px;
  font-weight: 500;
  margin-top: 60px;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 750px) {
  .concept_text {
    font-size: 5vw;
    margin-top: 15px;
    line-height: 1.7;
  }
}

.hurry_area {
  background-color: #dbe3f1;
  padding: 45px 0;
}
.hurry_area.shizuka {
  background-color: #f4eaee;
}
@media screen and (max-width: 750px) {
  .hurry_area {
    padding: 20px 0;
  }
}

.hurry_list {
  max-width: 655px;
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.hurry_list li:first-child {
  margin-right: 15px;
}
.hurry_list li:first-child a {
  color: #fff;
  background: url(../images/icon_btn_d.svg) right 15px center no-repeat #3d4856;
}
@media (min-width: 751px) {
  .hurry_list li:first-child a:hover {
    color: #3d4856;
    background: url(../images/icon_btn_db.svg) right 15px top 40px no-repeat #fff;
    opacity: 1;
  }
}
@media screen and (max-width: 750px) {
  .hurry_list li:first-child a {
    background: url(../images/icon_btn_d.svg) right 4vw center no-repeat #3d4856;
    background-size: 1.6vw auto;
  }
}
.hurry_list li:last-child a {
  color: #3d4856;
  background: url(../images/icon_btn_b.svg) right 15px center no-repeat #fff;
}
@media (min-width: 751px) {
  .hurry_list li:last-child a:hover {
    color: #fff;
    background: url(../images/icon_btn.svg) right 10px center no-repeat #3d4856;
    background-size: 5px auto;
    opacity: 1;
  }
}
@media screen and (max-width: 750px) {
  .hurry_list li:last-child a {
    background: url(../images/icon_btn_b.svg) right 2vw center no-repeat #ffffff;
    background-size: 1.2vw auto;
  }
}
.hurry_list li a {
  width: 320px;
  height: 80px;
  border: #d1dbe8 5px solid;
  text-align: center;
  line-height: 70px;
  display: block;
  font-size: 18px;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.hurry_list li a.shizuka {
  border: #ddbfcb 5px solid;
}
@media screen and (max-width: 750px) {
  .hurry_list li a.shizuka {
    border: #ddbfcb 1vw solid;
  }
}
@media screen and (max-width: 750px) {
  .hurry_list li a {
    width: 42vw;
    height: 16vw;
    border: #d1dbe8 1vw solid;
    line-height: 4.6vw;
    display: block;
    font-size: 4vw;
    padding-top: 2.4vw;
  }
}
@media screen and (max-width: 750px) {
  .hurry_list {
    width: 88vw;
    height: 16vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.address_hall {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .address_hall {
    font-size: 5.5vw;
  }
}

.address_img {
  text-align: center;
  margin-top: 25px;
}
.address_img img {
  width: 170px;
  height: auto;
}
@media screen and (max-width: 750px) {
  .address_img img {
    width: 150px;
  }
}
@media screen and (max-width: 750px) {
  .address_img {
    margin-top: 15px;
  }
}

.address_area {
  max-width: 1100px;
  width: 95%;
  margin: 70px auto 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 750px) {
  .address_area {
    max-width: 100%;
    width: 90%;
    margin: 35px auto 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.address_table {
  min-width: 396px;
  margin-right: 20px;
}
.address_table table {
  width: 100%;
}
.address_table table th,
.address_table table td {
  font-size: 20px;
  font-weight: 500;
  font-style: normal;
  padding: 10px 0;
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 750px) {
  .address_table table th,
  .address_table table td {
    font-size: 4vw;
    padding: 5px 0;
  }
}
.address_table table th {
  text-align: left;
}
@media screen and (max-width: 750px) {
  .address_table {
    min-width: auto;
    margin-right: 0;
    margin-top: 10px;
  }
}

.seikaiha_img img {
  max-width: 100%;
}

.place_hall {
  font-size: 48px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  line-height: 1.4;
}
@media screen and (max-width: 750px) {
  .place_hall {
    font-size: 10.5vw;
  }
}

.shizuka_list li {
  padding: 100px 0;
}
.shizuka_list li:first-child {
  padding: 40px 0 100px;
}
@media screen and (max-width: 750px) {
  .shizuka_list li:first-child {
    padding: 20px 0 50px;
  }
}
.shizuka_list li.reverse {
  background-color: #f4eaee;
}
.shizuka_list li.reverse .shizuka_area {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.shizuka_list li.reverse .shizuka_area .shizuka_box {
  margin-right: 0;
  margin-left: 4%;
}
.shizuka_list li.reverse .shizuka_area .shizuka_box:last-child {
  margin-left: 0;
}
@media screen and (max-width: 750px) {
  .shizuka_list li.reverse .shizuka_area .shizuka_box {
    margin-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .shizuka_list li.reverse .shizuka_area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 750px) {
  .shizuka_list li {
    padding: 50px 0;
  }
}

.shizuka_all {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .shizuka_all {
    max-width: 100%;
    width: 90%;
  }
}

.shizuka_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 750px) {
  .shizuka_area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.shizuka_box {
  margin-right: 4%;
}
.shizuka_box:last-child {
  margin-right: 0;
}
.shizuka_box img {
  max-width: 100%;
}
@media screen and (max-width: 750px) {
  .shizuka_box {
    margin-right: 0;
  }
}

.shizuka_text {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
}
.shizuka_text.num {
  counter-reset: listnum;
}
.shizuka_text.num span {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.shizuka_text.num span::before {
  counter-increment: listnum;
  content: counter(listnum) ".";
  margin-right: 10px;
}
.shizuka_text.num span.mt {
  margin-top: 50px;
}
@media screen and (max-width: 750px) {
  .shizuka_text.num span.mt {
    margin-top: 15px;
  }
}
@media screen and (max-width: 750px) {
  .shizuka_text.num span {
    font-size: 4vw;
  }
}
@media screen and (max-width: 750px) {
  .shizuka_text {
    font-size: 4vw;
    margin-top: 10px;
  }
}

/**/
@media screen and (max-width: 750px) {
  #map.access {
    padding: 0;
  }
}

#map.hall {
  padding: 95px 0 0;
}
@media screen and (max-width: 750px) {
  #map.hall {
    padding: 40px 0 0;
  }
}

#map.hall.shizuka {
  position: relative;
  z-index: 0;
  padding: 0;
  margin: 95px 0 0;
}
#map.hall.shizuka::before {
  content: "";
  position: absolute;
  bottom: -110px;
  width: 100%;
  height: 100%;
  background-color: #aa5f7c;
}
@media screen and (max-width: 750px) {
  #map.hall.shizuka::before {
    bottom: 0;
    height: 10%;
  }
}
@media screen and (max-width: 750px) {
  #map.hall.shizuka {
    margin: 40px 0 0;
  }
}

body#top.hall {
  overflow-x: hidden;
}

.slide_wrp_i.shizuka::before {
  background: #aa5f7c;
}

#plan ul.shizuka {
  background: #e1c7d1;
}

#contact.shizuka {
  background: #e1c7d1;
  margin-bottom: 110px;
}
@media screen and (max-width: 750px) {
  #contact.shizuka {
    margin-bottom: 55px;
  }
}

#contact .mainw.shizuka {
  padding: 25px 40px;
  border: 1px solid #c897aa;
}
@media screen and (max-width: 750px) {
  #contact .mainw.shizuka {
    padding: 15px 20px;
  }
}

#contact .tel.shizuka {
  width: 338px;
  height: 148px;
  background: url(../images/tel_hurry_foot.svg) center center no-repeat;
}
@media screen and (max-width: 750px) {
  #contact .tel.shizuka {
    width: auto;
    height: auto;
    background: none;
  }
}

#contact .tel.shizuka a {
  display: none;
}
@media screen and (max-width: 750px) {
  #contact .tel.shizuka a {
    width: 73vw;
    height: 27vw;
    text-indent: -10000px;
    overflow: hidden;
    display: block;
    background: url(../images/tel_hurry_foot.svg) center center no-repeat;
    background-size: contain;
    margin-bottom: 6vw;
  }
}

#contact .for_pc.shizuka {
  margin-bottom: 0;
}

h3.ch3 span.shizuka {
  color: #aa5f7c;
}

/* bx-slider */
.address_area .bx-wrapper,
.shizuka_area .bx-wrapper {
  -webkit-box-shadow: 0 0 0 #ccc;
          box-shadow: 0 0 0 #ccc;
  border: 0px solid #fff;
}
.address_area .bx-wrapper .bx-pager.bx-default-pager a,
.shizuka_area .bx-wrapper .bx-pager.bx-default-pager a {
  background: #dbe3f1;
  width: 16px;
  height: 16px;
  margin: 0 10px;
  border-radius: 50%;
}
@media screen and (max-width: 750px) {
  .address_area .bx-wrapper .bx-pager.bx-default-pager a,
  .shizuka_area .bx-wrapper .bx-pager.bx-default-pager a {
    width: 10px;
    height: 10px;
    margin: 0 5px;
  }
}
.address_area .bx-wrapper .bx-pager.bx-default-pager a:hover,
.address_area .bx-wrapper .bx-pager.bx-default-pager a.active,
.address_area .bx-wrapper .bx-pager.bx-default-pager a:focus,
.shizuka_area .bx-wrapper .bx-pager.bx-default-pager a:hover,
.shizuka_area .bx-wrapper .bx-pager.bx-default-pager a.active,
.shizuka_area .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #aa5f7c;
}

/* bx-slider END */
/* header menu */
.gnav li.menu_pc {
  display: block;
}
.gnav li.menu_pc .sub_menu {
  display: none;
  position: absolute;
  top: 45px;
  width: 100%;
}
.gnav li.menu_pc .sub_menu .sub_menu_link {
  display: block;
  background-color: #dbe3f1;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  color: #3d4856;
  padding: 10px 0;
  position: relative;
  z-index: 0;
  line-height: 1.4;
  border-bottom: 1px solid #fff;
  -webkit-transition: 0.3s ease-in;
  transition: 0.3s ease-in;
}
.gnav li.menu_pc .sub_menu .sub_menu_link::after {
  display: none;
}
.gnav li.menu_pc .sub_menu .sub_menu_link:last-child {
  border-bottom: none;
}
@media (min-width: 751px) {
  .gnav li.menu_pc .sub_menu .sub_menu_link:hover {
    background-color: #94adcf;
    color: #fff;
  }
}
@media screen and (max-width: 750px) {
  .gnav li.menu_pc {
    display: none;
  }
}

.gnav li.menu_sp {
  display: none;
}
.gnav li.menu_sp .sub_menu {
  display: none;
  width: 100%;
}
.gnav li.menu_sp .sub_menu .sub_menu_link {
  display: block;
  background-color: #dbe3f1;
  font-size: 4.2vw;
  font-weight: 500;
  text-align: center;
  color: #3d4856;
  position: relative;
  z-index: 0;
  line-height: 12vw;
  border-bottom: 1px solid #fff;
  -webkit-transition: 0.3s ease-in;
  transition: 0.3s ease-in;
}
.gnav li.menu_sp .sub_menu .sub_menu_link::after {
  display: none;
}
.gnav li.menu_sp .sub_menu .sub_menu_link:last-child {
  border-bottom: none;
}
@media (min-width: 751px) {
  .gnav li.menu_sp .sub_menu .sub_menu_link:hover {
    background-color: #94adcf;
    color: #fff;
  }
}
@media screen and (max-width: 750px) {
  .gnav li.menu_sp {
    display: block;
  }
}

/* header menu END */
/* footer display */
.f_req_d {
  display: block !important;
}

/* footer display END */
/******************************************************************************************* 20250527～追記 END */