@charset "utf-8";
/*
Theme Name: mh-tec SmartPack_type03
Theme URI: https://mh-tec.co.jp/
Author: Mental Health Technologies Co.Ltd.
Author URI: https://mh-tec.co.jp/
Version: 2.0
*/

:root {
  /*--main-color: #7c6657;*/
  --main-color: #857163;
  --sub-color: #978a7f;
  /*--sub-color: #93867a;*/
  --sub-color1: #d18f8f;
  /*--sub-color2: #a6bf9e;*/
  --sub-color2: #acbaa5;
  --sub-color3: #eeeeee;
  --sub-color4: #e89e62;
}

/*--------------------------------------------------------------
html
--------------------------------------------------------------*/

  html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    background-color: #fff;
  }

    /*responsive*/
        @media (max-width: 767px) { /* xs */
        }
        @media screen and (min-width:767px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/*--------------------------------------------------------------
body
--------------------------------------------------------------*/

  body {
      font-family: "Zen Kaku Gothic New","Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
      font-size: 16px;
      line-height: 165%;
      color: #333;
      margin: 0;
      letter-spacing: 0px;
      font-weight: 500;
  }

  /* responsive */
        @media (max-width: 543px) { /* xs */
          body {
              font-size: 12px;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          body {
              font-size: 13px;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          body {
              font-size: 14px;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          body {
              font-size: 15px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          body {
              font-size: 16px;
          }
        }


/*--------------------------------------------------------------
common
--------------------------------------------------------------*/

  * {box-sizing:border-box;}
  article,aside,footer,header,nav,section {
    display: block;
  }
  figcaption,figure,main,section {
    display: block;
  }
  hr {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible;
  }
  a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
    color: #333;
    font-weight: 400;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    word-break: break-all;
  }
  a:active,a:hover {
    outline-width: 0;
    color: var(--main-color);
  }
  b,strong {
    font-weight: inherit;
    font-weight: 600;
  }
  small {
    font-size: 80%;
  }
  audio,video {
    display: inline-block;
  }
  img {
    border-style: none;
    max-width: 100%;
    height: auto;
  }
  button,input,optgroup,select,textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
  }
  button,input {
    overflow: visible;
  }
  button,select {
    text-transform: none;
  }
  textarea {
    overflow: auto;
  }
  .main-color {
    color: var(--main-color);
  }
  .sub-color {
    color: var(--sub-color);
  }

/*--------------------------------------------------------------
column
--------------------------------------------------------------*/

  .row {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
  }

/* ------------------------------------------------------------------------------------
  btn_type
------------------------------------------------------------------------------------ */

  a.btn_type01 {
    display: inline-block;
    margin: 0 0 10px;
    padding: 13px 20px 16px;
    background: var(--sub-color);
    background-image: url(./img/cta-arrow.png);
    background-position: center bottom 10px;
    background-repeat: no-repeat;
    background-size: 100px auto;
    border: 2px solid #fff !important;
    color: #fff!important;
    text-align: center;
    min-width: 150px;
    max-width: 90%;
    font-weight: 500;
    text-decoration: none!important;
  }

  a.btn_type01:hover {
    opacity: 0.5;
    text-decoration: none!important;
  }

  a.btn_red {
    background-color: var(--sub-color1);
  }

  a.btn_orange {
    background-color: var(--sub-color4);
  }

  a.btn_blue {
    background-color: #00767f;
    background: linear-gradient(to left, #3eafcd, #00767f);
  }

  a.btn_purple {
    background-color: #731485;
    background: linear-gradient(to left, #b87fb5, #731485);
  }

  a.btn_pink {
    background-color: #ed4a89;
    background: linear-gradient(to left, #f789b3, #ed4a89);
  }

  a.btn_green {
    background-color: var(--sub-color2);
  }

  #under-content a.btn_type01 {
    min-width: 240px;
  }

    /*btn_type responsive*/
        @media (max-width: 543px) { /* xs */
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/*--------------------------------------------------------------
information Zone
--------------------------------------------------------------*/


#information p {
  margin-bottom: 20px;
  box-sizing:border-box;
}
#information a.btn_type01 {
  float: right;
  font-size: 10px;
}
ul.info-list {margin-bottom: 20px;}
body.home ul.info-list .info_day {
  line-height: 100%;
}
ul.info-list .info_day {
  display: inline-block;
  text-align: left;
  font-size: 12px;
  font-weight: 400;
}
ul.info-list li {
  font-weight: 400;
  font-size: 14px;
  margin-bottom: 10px;
}
#under-content ul.info-list li {
    text-shadow: none;
}

#under-content ul.info-list li a {
    color: var(--main-color)!important;
}
#under-content ul.info-list .info_day {
    color: #444!important;
}

ul.info-list li a {color: #333!important;font-weight: 500;}
ul.next_post_link {margin-bottom: 60px;padding-top: 15px;margin-top: 30px;border-top: 1px solid #999;}
ul.next_post_link li {display: inline-block;width: 49%;}
ul.next_post_link li.left {text-align: left;}
ul.next_post_link li.right {text-align: right;}
ul.next_post_link li a {color: var(--main-color);display: inline-block;width: auto;padding: 3px 10px;line-height: 100%;font-size: 13px;}
.none-info {text-align: center;width: 100%;font-size: 20px;font-weight: 500;border-bottom: 2px dashed #fff;border-top: 2px dashed #fff;display: block;width: 100%;padding: 10px;}
img.attachment-index_thumbnail {padding: 15px;margin: 0 auto;}
    /*#information responsive*/
        @media (max-width: 543px) { /* xs */
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }


/*--------------------------------------------------------------
footer Zone
--------------------------------------------------------------*/

  footer#footer {
    position: relative;
    background: #fff;
  }

  body.home footer#footer {
  }

  body.home footer#footer .container {
    padding: 1vh 15px 2vh;
  }

  footer#footer .container {
    padding: 3vh 15px 2vh;
    font-size: 14px;
    line-height: 190%;
    color: #333;
  }

  footer#footer .container a {
    color: var(--main-color);
  }

  footer#footer .container h3 {
    position: relative;
    background: var(--main-color);
    line-height: 100%;
    padding: 10px 10px 10px 20px;
    position: relative;
    margin-bottom: 10px;
    letter-spacing: 0px;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    margin-top: 30px;
  }

  footer#footer .container h3:before {
    content: "";
    background: #fff;
    width: 3.5px;
    height: 85%;
    position: absolute;
    left: 8px;
    top: 0;
  }

  footer#footer .container h3:first-child {
      margin-top: 0;
  }

  footer#footer .container h3 a.btn_info {
    float: right;
    background: #fff;
    color: var(--main-color)!important;
    text-decoration: none!important;
    line-height: 100%;
    padding: 5px 15px 5px 17px;
    display: inline-block;
    font-size: 11px;
    text-align: center;
    font-weight: 500;
    margin-top: -3px;
    margin-right: 0px;
  }
  footer#footer .container h3 a.btn_info:hover {
    background-color: transparent;
    color: #fff!important;
  }

  footer#footer .container h4 {
    font-weight: 500;
    font-size: 13px;
    margin-bottom: 5px;
    color: #333;
    line-height: 155%;
  }

  footer#footer #footer-menu-left h3,
  footer#footer #footer-menu-right h3 {
    margin-bottom: 15px;
  }

  footer#footer p {
  }

  footer#footer p strong { 
    font-size: 15px;
    display: inline-block;margin-bottom: 5px;
  }

  footer#footer .textwidget {
      line-height: 145%;
  }

  footer#footer a {
      color: #fff!important;
  }

  footer#footer ul#menu-gnav-footer li a {
    color: var(--main-color)!important;
  }

  footer#footer .footer-sns {
    margin-top: 10px;
  }
  footer#footer .footer-sns a {
    display: inline-block;
  }
  footer#footer .footer-sns a i.fa-brands {
    font-size: 30px;
  }

  footer#footer #footer-copyright .textwidget {
      margin-bottom: 0;
  }

  footer#footer .copy p {margin-bottom: 0;color: #fff;}
  footer#footer .copy {
      text-align: center;
      font-size: 10px;
      color: #fff;
      text-align: center;
      padding: 10px 15px;
      
  }

      /*wrapper responsive*/
          @media (max-width: 543px) { /* xs */
            footer#footer {
              background-size: 250% auto;
            }
            footer#footer .container {padding: 5vh 15px 3vh;}
            footer#footer .textwidget {
              margin-bottom: 20px;
            }
          }
          @media screen and (min-width:544px) and (max-width:767px) { /* sm */
            footer#footer {
              background-size: 200% auto;
            }
            footer#footer .container {padding: 4vh 15px;}
          }
          @media screen and (min-width:768px) and (max-width:991px) { /* md */
            footer#footer .container {padding: 6vh 30px;}
          }
          @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
            footer#footer .container {padding: 6vh 30px;width: 980px;}
          }
          @media screen and (min-width:1200px) { /* xl */
            footer#footer .container {width: 980px;}
          }

/*--------------------------------------------------------------
side Zone
--------------------------------------------------------------*/

nav#menu {
  z-index: 999;
  
  position: relative;
}
nav {
    text-align: center;
    background: transparent;
}

ul#menu-gnav {
  list-style: none;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
ul#menu-gnav > li {
  display: inline-block;
  line-height: 100%;
  text-align: center;
  box-sizing:border-box;
  vertical-align: middle;
  position: relative;
  width: auto;
}
ul#menu-gnav > li a {
  display: block;
  text-align: center;
  font-weight: 600;
  display: block;
  color: #fff;
  font-size: 15px;
  letter-spacing: 0px;
  cursor: pointer;
  line-height: 120%;
  position: relative;
  vertical-align: middle;
  padding: 10px;
}

ul#menu-gnav li.update > a:before {
  display: inline-block;
  content: "New";
  background-color: red;
  line-height: 100%;
  padding: 3px 5px;
  color: #fff!important;
  font-size: 9px;
  position: absolute;
  right: 2px;
  top: 1px;
  font-weight: 400;
  width: auto;
  text-align: center;
}
ul#menu-gnav > li.pointer-events-none > a {
  pointer-events: none;
}
ul#menu-gnav > li.gray-out a {
  opacity: 0.6;
  pointer-events: none;
}
ul#menu-gnav > li.menu_2line a {
  padding: 8px 0;
}
ul#menu-gnav > li li a {text-shadow: none;}

/*ul#menu-gnav > li.menu-item-has-children > a {pointer-events:none;}*/

ul#menu-gnav > li.menu-item-has-children > a:after {
    font-family: 'Material Icons';
    font-weight: 400;
    content: "\e5cf";
    margin-left: 5px;
}
ul#menu-gnav > li > a:before {
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 3px;
}
ul#menu-gnav > li a:hover {
  text-decoration: none!important;
  opacity: 0.6;
}

ul#menu-gnav > li:hover ul {
  display: block;
}

ul#menu-gnav > li ul a {
  margin: 0;
  box-shadow: none;
  font-weight: normal;
  text-align: left;
  color: #333;
  width: 100%;
  display: block;
  padding: 2.5px 10px;
}
ul#menu-gnav > li ul a:before {display: none;}
ul#menu-gnav > li:hover ul li{
  overflow: visible;
  padding: 0;
  height: auto;
  font-weight: normal!important;
}

  /* responsive */
        @media (max-width: 543px) { /* xs */
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          ul#menu-gnav {
            list-style: none;
            width: 100%;
            max-width: 100%;
            display: block;
            justify-content: space-between;
            text-align: right;
          }
          ul#menu-gnav > li a {
            font-weight: 400;
            line-height: 120%;
            padding: 10px 15px;
          }
          ul#menu-gnav > li a:last-child {
            padding-right: 0;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          ul#menu-gnav {
            list-style: none;
            width: 100%;
            max-width: 100%;
            display: block;
            justify-content: space-between;
            text-align: right;
          }
          ul#menu-gnav > li a {
            font-weight: 400;
            line-height: 120%;
            padding: 10px 15px;
          }
          ul#menu-gnav > li a:last-child {
            padding-right: 0;
          }
          ul#menu-gnav {
            margin-top: 3px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          ul#menu-gnav {
            list-style: none;
            width: 100%;
            max-width: 100%;
            display: block;
            justify-content: space-between;
            text-align: right;
          }
          ul#menu-gnav > li a {
            font-weight: 400;
            line-height: 120%;
            padding: 10px 15px;
          }
          ul#menu-gnav > li a:last-child {
            padding-right: 0;
          }
        }


.pure-drawer {
  background: #f2f0eedd;
}
.pure-drawer ul {background: none !important;}

.pure-drawer #global-menu {float: none;display: block;}
.pure-drawer {width: 80%!important;max-width: 300px;}
.pure-drawer a {
  font-weight: 400;
  padding: 15px 15px;
  display: block;
  color: #473832;
  text-align: left;
}
.pure-drawer a br {display: none;}
.pure-drawer h2 {
  width: 100%;
  padding: 15px 20px;
  font-size: 15px;
  line-height: 20px;
  background-color: #93867A;
  color: #fff;
  text-align: left;
}
.pure-drawer li.menu-item-has-children > a:after {
    font-family: 'Material Icons';
    font-weight: 600;
    content: "\e5cf";
    margin-left: 5px;
}
.pure-drawer ul li a:hover {text-decoration: none!important;opacity:0.7}
.pure-drawer li.menu-item-has-children > a {border-bottom: none;/*pointer-events: none;*/}
.pure-drawer .sub-menu li:last-child a {border-bottom:none}

.pure-drawer ul#menu-gnav li {display: block;width: 100%;padding: 5px 15px;}
.pure-drawer ul#menu-gnav li a:after {
    content: "";
}

.pure-drawer ul#menu-gnav a {padding-right: 0;}
.pure-drawer ul#menu-gnav {margin-top: 0;margin-right: 10px;}
.pure-drawer li.gray-out > a {
  opacity: 0.6;
  pointer-events: none;
}
.pure-drawer li.update {
  position: relative;
}
.pure-drawer li.update > a:before {
  display: inline-block;
  content: "New";
  background-color: red;
  line-height: 100%;
  padding: 3px 5px;
  color: #fff!important;
  font-size: 9px;
  position: absolute;
  right: 5px;
  top: 5px;
  width: auto;
  text-align: center;
}

    /*navi responsive*/
        @media (max-width: 543px) { /* xs */
          .nav #menu {display: none;}
          .index_nav {height: auto!important;}
          .pure-drawer ul#menu-gnav {margin-right: 5px;margin-left: 30px;}
          .pure-drawer ul#menu-gnav li.top_sp a {margin-top: 1em!important;}
          .pure-drawer ul#menu-gnav li.top_sp a:before {content: "\f061"!important;font-size: 12px!important;}
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .nav #menu {display: none;}
          .pure-drawer ul#menu-gnav li.top_sp a {margin-top: 1em!important;}
          .pure-drawer ul#menu-gnav li.top_sp a:before {content: "\f061"!important;font-size: 12px!important;}
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          .nav #menu {display: none;}
          .pure-drawer ul#menu-gnav li.top_sp a {margin-top: 1em!important;}
          .pure-drawer ul#menu-gnav li.top_sp a:before {content: "\f061"!important;font-size: 12px!important;}
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          li.top_sp {display: none!important;}
          ul#menu-gnav > li ul a {
            min-width: 180px;
            padding: 10px 5px;
          }
          ul#menu-gnav a {font-size: 15px;}

        }
        @media screen and (min-width:1200px) { /* xl */
          li.top_sp {display: none!important;}
        }


/* ------------------------------------------------------------------------------------
  .pure-toggle-label
------------------------------------------------------------------------------------ */

  .pure-toggle-label {
    background: none !important;
    border: none !important;
  }

  .pure-toggle-label .pure-toggle-icon,
  .pure-toggle-label .pure-toggle-icon::before,
  .pure-toggle-label .pure-toggle-icon::after {
    width: 23px !important;
    border-radius: 0px!important;
    background: #fff !important;
  }
  .pure-toggle-label .pure-toggle-icon:before {
    transform: translate3d(-50%, -9px, 0);
    -webkit-transform: translate3d(-50%, -9px, 0);
  }
  .pure-toggle-label .pure-toggle-icon:after {
    transform: translate3d(-50%, 6px, 0);
    -webkit-transform: translate3d(-50%, 6px, 0);
  }
    .pure-toggle-label {
        top: 5px !important;
        right: 7px !important;
    }
  .pure-toggle[data-toggle="left"]:checked ~ .pure-toggle-label[data-toggle-label="left"] .pure-toggle-icon,
  .pure-toggle[data-toggle="right"]:checked ~ .pure-toggle-label[data-toggle-label="right"] .pure-toggle-icon,
  .pure-toggle[data-toggle="top"]:checked ~ .pure-toggle-label[data-toggle-label="top"] .pure-toggle-icon {
    background: transparent!important;
  }

    /*responsive*/



/*--------------------------------------------------------------
Page-top Zone
--------------------------------------------------------------*/
#page-top {
    position: fixed;
    bottom: 0px;
    right: 0px;
    font-size: 77%;
    margin-bottom: 0!important
}
#page-top a {
    text-decoration: none!important;
    color: #fff!important;
    padding: 6px 6px;
    text-align: center;
    display: block;
    font-weight: 400;
    background: var(--sub-color);
    text-shadow: none!important;
    

}
#page-top a i {display: block;font-size: 15px;}
#page-top a:hover {
    opacity: 0.6;
}
/*--------------------------------------------------------------
Responsive Free Zone
--------------------------------------------------------------*/
.content-area {
    padding: 10px;
}
.top-3pr {
  max-width: 100%;
  margin-bottom: 20px;
}
@media (min-width: 481px) {
  .content-area {
    padding: 10px;
}
.top-3pr {
  max-width: 100%;
  margin-bottom: 20px;
  margin: 0px 5px;
}
}
@media (min-width: 992px) {
  .content-area {
    padding: 10px;
}
.top-3pr {
  max-width: 100%;
  margin-bottom: 20px;
  margin: 0px 5px;
}
}
@media (min-width: 1200px) {
  .content-area {
    padding: 10px;
}
}

/*--------------------------------------------------------------
#under-kv
--------------------------------------------------------------*/

  #under-kv {
    max-width: 100%;
    width: 100%;
    position: relative;
    padding: 25vh 0 13vh;
    background-size: cover;
    background-position: center;
  }
  #under-kv:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: black;
    opacity: 0.4;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }

  #under-kv h1 {
    position: relative;
    color: #fff;
    font-size: 40px;
    letter-spacing: 2.5px;
    font-weight: 600;
    text-align: center;
    font-family: "Shippori Mincho", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "MS P明朝", "MS PMincho", "MS 明朝", serif;
  }


  .single #under-kv {
    padding: 20vh 0 13vh;
  }

  .single #under-kv h1 {
    font-size: 35px;
    letter-spacing: 1px;
    text-align: left;
    line-height: 110%;
    margin: 0 auto;
    max-width: 950px;
  }

  .single #under-kv h1 span {
    width: 100px;
    background-color: rgba(255, 255, 255, 0.8);
    display: block;
    letter-spacing: 0;
    color: var(--main-color);
    font-size: 12.5px;
    line-height: 100%;
    font-weight: 600;
    text-align: center;
    margin-bottom: 10px;
    padding: 5px 10px;
    font-family: "Zen Kaku Gothic New","Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  }

  /* responsive */
        @media (max-width: 543px) { /* xs */
          #under-kv {
            padding: 16vh 0 10vh;
          }
          #under-kv h1 {
            font-size: 25px;
            letter-spacing: 1px;
            max-width: 95%;
          }
          .single #under-kv {
            padding: 13vh 0 10vh;
          }
          .single #under-kv h1 {
            font-size: 20px;
            max-width: 95%;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          #under-kv {
            padding: 17vh 0 12vh;
          }
          #under-kv h1 {
            font-size: 30px;
            letter-spacing: 1px;
            max-width: 85%;
          }
          .single #under-kv {
            padding: 13vh 0 10vh;
          }
          .single #under-kv h1 {
            font-size: 25px;
            max-width: 85%;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          #under-kv {
            padding: 18vh 0 13vh;
          }
          #under-kv h1 {
            font-size: 35px;
            letter-spacing: 1.5px;
            max-width: 85%;
          }
          .single #under-kv h1 {
            max-width: 85%;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          #under-kv h1 {
            max-width: 85%;
          }
          .single #under-kv h1 {
            max-width: 85%;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/*--------------------------------------------------------------
#under-content
--------------------------------------------------------------*/

  #under-content {
    font-size: 14.5px;
    position: relative;
    padding: 0 0 3vh;
    margin-bottom: 0px;
    box-sizing: border-box;
    font-weight: 400;
    line-height: 155%;

    background-color: #fff;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: top;
    z-index: 1;
  }

  /* responsive */
        @media (max-width: 543px) { /* xs */
          #under-content {
            font-size: 14px;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          #under-content {
            font-size: 14px;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/*--------------------------------------------------------------
#under-content .breadcrumbs
--------------------------------------------------------------*/

  #under-content .breadcrumbs {
    margin-bottom: 5vh;
    margin-bottom: 30px;
    font-size: 12px;
    padding: 10px 0;
  }
  #under-content .breadcrumbs .current-item {
    color: var(--main-color);
  }
  #under-content .breadcrumbs small {
    font-size: 100%;
  }

  /* responsive */
        @media (max-width: 543px) { /* xs */
          #under-content .breadcrumbs {
            margin-bottom: 3vh;
            font-size: 11px;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          #under-content .breadcrumbs {
            margin-bottom: 4vh;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          #under-content .breadcrumbs {
            margin-bottom: 5vh;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          #under-content .breadcrumbs {
            margin-bottom: 6vh;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          #under-content .breadcrumbs {
            margin-bottom: 6vh;
          }
        }

/*--------------------------------------------------------------
#under-content .container
--------------------------------------------------------------*/

  #under-content .container {
    max-width: 950px;
    background-color: #fff;
    position: relative;
    z-index: 3;
  }

  /* responsive */
        @media (max-width: 543px) { /* xs */
          #under-content .container {
            max-width: 95%;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          #under-content .container {
            max-width: 85%;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          #under-content .container {
            max-width: 85%;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          #under-content .container {
            max-width: 85%;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
        }


/*--------------------------------------------------------------
#under-content .so-panel
--------------------------------------------------------------*/

  #under-content .so-panel .textwidget > *:last-child {
    margin-bottom: 0;
  }


/* ------------------------------------------------------------------------------------
#under-content table
------------------------------------------------------------------------------------ */

  #under-content .su-table {
    display: table;
    width: auto;
    min-width: 350px;
  }  
  #under-content .su-table.min-width-auto {
    min-width: initial;
  }
  #under-content .su-table.width-280,
  #under-content .su-table.width-280 table {
    min-width: 280px!important;
    max-width: 280px!important;
    width: 280px!important;
  }
  #under-content .su-table table {
    margin-bottom: 15px;
    width: auto;
    min-width: 350px;
    border: none!important;
  }
  #under-content .su-table.min-width-auto table {
    min-width: initial;
  }
  #under-content .su-table.table-border-leftright table {
    border-left: 2px solid var(--sub-color)!important;
    border-right: 2px solid var(--sub-color)!important;
  }
  #under-content .su-table {
    background: var(--sub-color);
    margin-bottom: 15px!important;
    border: none!important;
  }
  #under-content .su-table table {
    margin-bottom: 0px!important;
    letter-spacing: 0;
  }
  #under-content .su-table table th,
  #under-content .su-table table td {
    padding: 1em!important;
    font-size: 14px!important;
    vertical-align: middle!important;
    line-height: 145%;
    border-left: none!important;
    border-right: none!important;
  }
  #under-content .su-table table td p {
    font-size: 14px;
    line-height: 145%;
  }
  #under-content .su-table table th > *:last-child,
  #under-content .su-table table td > *:last-child {
    margin-bottom: 0!important;
  }
  #under-content .su-table table thead th {
    background: #f2f0ee!important;
    color: var(--main-color)!important;
    border-top: 2px solid var(--sub-color)!important;
    border-bottom: 2px solid var(--sub-color)!important;
    font-size: 15px!important;
  }
  #under-content .su-table table thead + tbody th {
    background: #fff!important;
    border-top: 1px solid #ccc!important;
    border-bottom: 1px solid #ccc!important;
  }
  #under-content .su-table table tbody th {
    background: #f2f0ee!important;
    color: var(--main-color)!important;
    border-right: none!important;
    border-top: 1px solid var(--sub-color)!important;
    border-bottom: 1px solid var(--sub-color)!important;
  }
  #under-content .su-table table tfoot td {
    padding-left: 0!important;
    padding-right: 0!important;
    border: none!important;
  }
  #under-content .su-table table.tbody-th-center tbody th,
  #under-content .su-table table.tbody-td-center tbody td {
    text-align: center;
  }
  #under-content .su-table table.tbody-th-left tbody th,
  #under-content .su-table table.tbody-td-left tbody td {
    text-align: left!important;
  }
  #under-content .su-table table.tbody-th-right tbody th,
  #under-content .su-table table.tbody-td-right tbody td {
    text-align: right;
  }
  #under-content .su-table table tbody th.center,
  #under-content .su-table table tbody td.center {
    text-align: center!important;
  }
  #under-content .su-table table tbody th.vertical-top,
  #under-content .su-table table tbody td.vertical-top {
    vertical-align: top!important;
  }
  #under-content .su-table table tbody td a,
  #under-content .su-table table tfoot td a {
    text-decoration: underline;
    color: var(--main-color);
  }
  #under-content .su-table table.first-row-nowrap tr > *:nth-child(1) {
    white-space: nowrap;
  }
  #under-content .su-table table tbody tr:nth-child(2n) th {
    background: #f2f0ee!important;
  }
  #under-content .su-table table thead + tbody tr:nth-child(2n) th,
  #under-content .su-table-alternate table tr:nth-child(2n) td {
    background: #fff!important;
  }
  #under-content .su-table table thead + tbody tr:last-child td,
  #under-content .su-table table thead + tbody tr:last-child th {
    border-bottom: 2px solid var(--sub-color)!important;
  }
  #under-content .su-table hr {
    padding: 0;
    margin: 8px 0;
    background: transparent;
    border-top: 1px dashed #ddd;
  }
  #under-content .su-table p.asterisk {
    font-size: 95%;
    line-height: 135%;
    margin-bottom: 0;
  }

  /*su_table_type02*/
  #under-content .su-table.su_table_type02,
  #under-content .su-table.su_table_type02 table {
    width: 100%;
    background: #fff;
  }
  #under-content .su-table.su_table_type02 table {
    border-collapse: separate!important;
    border-spacing: 0px 20px!important;
    margin-top: -10px!important;
  }
  #under-content .su-table.su_table_type02 table tr {
    position: relative;
  }
  #under-content .su-table.su_table_type02 table tr:before {
    content: "";
    width: 100%;
    height: 1px;
    border-top: 1px dashed var(--sub-color);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10px;
    opacity: 0.6;
  }
  #under-content .su-table.su_table_type02 table thead th,
  #under-content .su-table.su_table_type02 table thead td,
  #under-content .su-table.su_table_type02 table tbody th,
  #under-content .su-table.su_table_type02 table tbody td,
  #under-content .su-table.su_table_type02 table th,
  #under-content .su-table.su_table_type02 table td {
    border: none!important;
  }  
  #under-content .su-table.su_table_type02 table thead th,
  #under-content .su-table.su_table_type02 table tbody th,
  #under-content .su-table.su_table_type02 table th {
    font-weight: 500!important;
  }
  /* responsive */
        @media (max-width: 543px) { /* xs */
          #under-content .su-table.su_table_type02 table thead th,
          #under-content .su-table.su_table_type02 table thead td,
          #under-content .su-table.su_table_type02 table tbody th,
          #under-content .su-table.su_table_type02 table tbody td,
          #under-content .su-table.su_table_type02 table th,
          #under-content .su-table.su_table_type02 table td {
            display: block;
          }
          #under-content .su-table.su_table_type02 table thead th,
          #under-content .su-table.su_table_type02 table tbody th,
          #under-content .su-table.su_table_type02 table th {
            text-align: left!important;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          #under-content .su-table.su_table_type02 table thead th,
          #under-content .su-table.su_table_type02 table thead td,
          #under-content .su-table.su_table_type02 table tbody th,
          #under-content .su-table.su_table_type02 table tbody td,
          #under-content .su-table.su_table_type02 table th,
          #under-content .su-table.su_table_type02 table td {
            display: block;
          }
          #under-content .su-table.su_table_type02 table thead th,
          #under-content .su-table.su_table_type02 table tbody th,
          #under-content .su-table.su_table_type02 table th {
            text-align: left!important;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/* ------------------------------------------------------------------------------------
#under-content .so-panel section
------------------------------------------------------------------------------------ */

  #under-content .so-panel section {
    margin-bottom: 45px;
  }
  #under-content .so-panel > div > *:last-child {
    margin-bottom: 0;
  }
  #under-content .so-panel article {
    margin-bottom: 30px;
  }
  #under-content .so-panel section > *:last-child,
  #under-content .so-panel article > *:last-child {
    margin-bottom: 0;
  }

/* ------------------------------------------------------------------------------------
#under-content paragraph
------------------------------------------------------------------------------------ */

  #under-content .so-panel p {
    margin-bottom: 15px;
  }
  #under-content .so-panel p:empty {
    display: none;
  }
  #under-content .so-panel p a:not([class]) {
    text-decoration: underline;
    color: var(--main-color);
    font-weight: 500;
  }
  #under-content .so-panel p a[href^="tel:"] {
    display: inline-block;
    font-weight: 500;
    text-decoration: none;
    font-size: 16px;
    padding-bottom: 1px;
    border-bottom: dashed var(--main-color) 1px;
  }
  #under-content .so-panel p a[href^="tel:"]::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f095";
    margin-right: 5px;
    color: var(--main-color);
  }

/*--------------------------------------------------------------
#under-content aside
--------------------------------------------------------------*/

#under-content aside {
  position: relative;
  border: 1px solid var(--main-color);
  padding: 20px;
  background: #f2f0ee;
}
#under-content aside:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  border-left: 20px solid var(--sub-color);
  border-bottom: 20px solid transparent;
}

#under-content aside > *:last-child {
  margin-bottom: 0!important;
}

/*--------------------------------------------------------------
#under-content h
--------------------------------------------------------------*/

#under-content h2 {
  position: relative;
  display: block;
  box-sizing: border-box;
  font-weight: 600;
  font-size: 27px;
  line-height: 135%;
  letter-spacing: 0.5px;
  text-align: left;
  color: var(--main-color);
  margin-bottom: 30px;
  padding: 0 10px 10px;
}
#under-content h2:after {
  content: "";
  background: #666;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0px;
  border-radius: 3px;
}
#under-content h2 + p,
#under-content h2 + ul {
  margin-top: -10px!important;
}
#under-content aside h2:after {
  background: transparent;
  border-bottom: dashed 1px var(--sub-color);
}
#under-content h2 small {
  color: var(--main-color);
  font-size: 14px;
  display: inline-block;
  letter-spacing: 0;
}
#under-content h3 {
  font-size: 19px;
  position: relative;
  padding: 15px 18px;
  background: var(--sub-color);
  margin-bottom: 15px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.5px;
}
#under-content h3::before {
    content: "";
    top: 2px;
    left: 2px;
    border-bottom: 7px solid transparent;
    border-left: 7px solid #fff;
    position: absolute;
    z-index: 100;
}
#under-content h3 small {
  color: #fff;
  font-size: 15px;
}
#under-content h3 > span {
  display: inline-block;
}
#under-content .su-table + h3,
#under-content table + h3,
#under-content h3 + h4 {
  margin-top: 30px;
}
#under-content h4 {
    position: relative;
    font-size: 17px;
    border-bottom: 1px solid #ddd;
    padding: 3px 15px 10px 16px;
    margin-bottom: 15px;
    line-height: 100%;
    letter-spacing: 1px;
    display: block;
    text-align: left;
    box-sizing: border-box;
    font-weight: 600;
}
#under-content h4:before {
  content: "";
  width: 4px;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 3px;
  background: linear-gradient(to bottom, var(--main-color), var(--sub-color));
}
#under-content .su-table + h4,
#under-content table + h4,
#under-content p + h4 {
  margin-top: 30px;
}

#under-content h5 {
  font-weight: 600;
  font-size: 17px;
  background-color: #f2f0ee;
  padding: 5px 15px;
  margin-bottom: 15px;
  line-height: 130%;
  position: relative;
  border-radius: 3px;
}

#under-content h5 i {
  color: var(--main-color);
}

#under-content h6 {
  font-weight: 600;
  font-size: 17px;
  margin-left: 0;
  padding: 0;
  margin-bottom: 15px;
  text-indent: -1em;
  padding-left: .5em;
}
#under-content h6:before {content: "【";margin-right: 0.5em;}
#under-content h6:after {content: "】";margin-left: 0.5em;}
#under-content h6:before,#under-content h5:after {
  color: var(--main-color);
}

/*#under-content h6 {
  font-weight: 600;
  font-size: 17px;
  margin-bottom: 10px;
  padding: 5px;
  border-bottom: 1px solid #ddd;
}*/
/*#under-content h6:before {content: "●";font-size: 10pt;margin-right: 0.5em;color: var(--main-color);}*/

    /*responsive*/
        @media (max-width: 767px) { /* xs */
          #under-content h2 {
            font-size: 25px;
            padding-bottom: 5px;
            margin-bottom: 30px;
          }
          #under-content h3 {font-size: 18px;}
        }
        @media screen and (min-width:767px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }


/* ------------------------------------------------------------------------------------
　下層 リスト
------------------------------------------------------------------------------------ */

  /*ul　通常*/

  #under-content ul:not([class]) {
    padding:0 0 0 0em;
    margin:0 0 15px;
    list-style: none;
  }
  #under-content ul:not([class]) > li {
    padding-left: 1.25em;
    position: relative;
  } 
  #under-content ul:not([class]) > li:before { 
    content: "●";
    font-size: 8px;
    color: var(--sub-color);
    position: absolute;
    left: 2px;
    top: 0.5px;
  }
  #under-content h3 + ul:not([class]) {
    padding-left: 15px;
  }

  /*ul　アスタリスク*/

  #under-content ul.asterisk_list {
    padding:0 0 0 0.5em;
    margin:0 0 20px;
    list-style: none;
  }
  #under-content ul.asterisk_list > li {text-indent: -1em;padding-left: 1em;} 
  #under-content ul.asterisk_list > li:before { content: "※";}


  /*ul　矢印*/

  #under-content ul.ul_arrow {
    padding:0 0 0 1.5em;
    margin:0 0 20px;
    list-style: none;
  }
  #under-content ul.ul_arrow > li {text-indent: -1.5em;padding-left: 1em;margin-bottom: 15px;} 
  #under-content ul.ul_arrow > li:before {
      font-family: 'Material Icons';
      font-weight: 400;
      content: "\e5cc";
      color: #2c3970;
      margin-right: 0.5em;
  }


  /*OL*/

  #under-content ol {
    padding:0 0 0 5px;
    margin:0 0 15px;
  }
   
  #under-content ol > li {
    list-style-type:none;
    list-style-position:inside;
    counter-increment: cnt2;
    text-indent: -1.5em;
    padding-left: 1.5em;
    margin-bottom: 10px;
  }

  #under-content ol > li:before{
    display: marker;
    content: counter(cnt2) "．";
    font-weight: bold;
    color: var(--main-color);
    font-size: 130%;
  }
  #under-content ol > li >*:last-child {
    margin-bottom: 0;
  }
  #under-content ol > li >* {
    text-indent: 0;
  }


  /* list + h */
  #under-content ul li h4,
  #under-content ol li h4,
  #under-content dl dd h4 {
    margin-top: 20px;
    font-size: 15.5px;
  }


  /*ul　通常*/

  #under-content dl:not([class]) {
    padding:0 0 0 0em;
    margin:0 0 15px;
    list-style: none;
  }
  #under-content dl:not([class]) > dt {
    position: relative;
    font-size: 16px;
    border-bottom: 1px solid #ddd;
    padding: 3px 15px 10px 1.5em;
    margin-bottom: 15px;
    line-height: 100%;
    letter-spacing: 1px;
    display: block;
    text-align: left;
    box-sizing: border-box;
    font-weight: 600;
    color: var(--sub-color);
  }
  #under-content dl:not([class]) > dt:before {
    position: absolute;
    top: 4px;
    left: 3px;
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f03a";
    color: var(--sub-color);
  }
  #under-content dl:not([class]) > dd {
    padding-left: 1.25em;
    position: relative;
  } 
  #under-content dl:not([class]) > dd:before { 
    content: "●";
    font-size: 8px;
    color: var(--sub-color);
    position: absolute;
    left: 2px;
    top: 0.5px;
  }

/*--------------------------------------------------------------
#under-content .su_spoiler-fqa
--------------------------------------------------------------*/

  #under-content .su_spoiler-fqa {
    border-bottom: 1px solid var(--main-color);
  }
  #under-content .su_spoiler-fqa .su-spoiler-title {
    padding: 15px 30px 15px 1.5em;
    font-size: 15px;
    border-top: solid 1px var(--main-color);
    font-weight: 500;
    border-bottom: 1px dashed var(--main-color);
    text-indent: -1.5em;
  }
  #under-content .su_spoiler-fqa .su-spoiler-title:focus{
    outline:none!important;
  } 
  .su-spoiler-icon-caret .su-spoiler-icon::before {
    content: '\f068'!important;
    font-weight: 600;
    color: var(--main-color);
  }
  .su-spoiler-icon-caret.su-spoiler-closed .su-spoiler-icon::before {
    content: '\2b'!important;
    font-weight: 600;
    color: var(--main-color);
  }
  #under-content .su_spoiler-fqa .su-spoiler-icon {
    top: 14px;
    right: 5px;
    left: auto;
  }
  #under-content .su_spoiler-fqa .su-spoiler-icon-plus .su-spoiler-icon::before {
    color: var(--main-color);
  }
  #under-content .su_spoiler-fqa .su-spoiler-title::before {
    content: 'Ｑ'!important;
    font-weight: bold;
    color: var(--main-color);
    margin-right: 0.5em;
  }
  #under-content .su_spoiler-fqa .su-spoiler-style-default > .su-spoiler-content {
    position: relative;
    font-size: 15px;
    padding: 15px 0 10px 3em;
  }
  #under-content .su_spoiler-fqa .su-spoiler-style-default > .su-spoiler-content::before {
      content: 'Ａ';
      font-weight: bold;
      color: var(--main-color);
      position: absolute;
      left: 1.5em;
      top: 15px;
  }
  /*閉じた状態のとき*/
  #under-content .su_spoiler-fqa .su-spoiler-closed {
    margin-bottom: 0;
  }
  #under-content .su_spoiler-fqa .su-spoiler-closed .su-spoiler-title {
    border-bottom: none;
  }
  #under-content .su_spoiler-fqa .su-spoiler-closed > .su-spoiler-content {
    display: none;
  }
  #under-content .su_spoiler-fqa .su-spoiler > .su-spoiler-content p {
    margin-bottom: 15px;
  }
  #under-content .su_spoiler-fqa .su-spoiler > .su-spoiler-content p:last-child {
    margin-bottom: 0px;
  }

/*--------------------------------------------------------------
#under-content other
--------------------------------------------------------------*/

  #under-content section {margin-bottom: 50px;}
  #under-content article {margin-bottom: 35px;}
  #under-content p {margin-bottom: 1.5em;line-height: 180%;text-align: left;text-align: justify;text-justify: inter-ideograph;/*ジャスティファイ*/}
  #under-content p a {text-decoration: underline;}
  #under-content .asterisk { display: inline-block;padding-left: 1em;text-indent: -1em; }
  #under-content .asterisk:before { content: "※"; }
  #under-content .red {color: #c6000b;}
  #under-content .wp-caption-text {text-align: center;}
  #under-content img {max-width: 100%;width: auto;}
  #under-content .nowrap { white-space:nowrap; }
  #under-content span.marker {background: linear-gradient(transparent 40%, #e7ff64 40%);padding: 0 5px;}
  #under-content .attention {
    box-sizing: border-box;
    padding:  25px;
    border: 1px dotted #ff0000;
    text-align: center;
    border-radius: 5px;
  }
  #under-content .attention table {
    width: auto;
    display: inline-block;
  }
  #under-content .attention table td {
    font-size: 18px;
    font-weight: 600;
  }
  
  #under-content p a {
    color: var(--main-color);
    text-decoration: underline;
  }

  #under-content p a.blank:after {
    font-family: 'Material Icons';
    font-weight: 400;
    content: "\e89e";
    margin: 0px 5px;
  }

  #under-content sup,
  #under-content sub {
    font-size: 60%;
  }
  #under-content sub {
    top: 0.6em;
  }
  #under-content sup {
    bottom: 0.6em;
  }

  #under-content hr {
    border: none;
    height: 1px;
    background-color: #ddd;
    padding: 0;
    margin: 15px 0;
  }

  #under-content .red {
    color: red;
  }
  #under-content del {
  background-image: linear-gradient(#fe3464, #fe3464);
  background-position: 0 50%;
  background-size: 100% 1px;
  background-repeat: repeat-x;
  text-decoration: none;
  }

  .wp-caption {text-align: center;margin: 0 auto;}

    /*wrapper responsive*/
        @media (max-width: 543px) { /* xs */
          #under-content .attention {padding: 15px;}
          #under-content .attention table td {font-size: 14px;}
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          #under-content .attention table td {font-size: 16px;}
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/* ------------------------------------------------------------------------------------
 mailform
------------------------------------------------------------------------------------ */

/*#section#mailform*/
  section#mailform {max-width: 980px;margin: 0 15px;}
  section#mailform dl {}
  section#mailform dt label {padding: 2px 10px;width: 100%;display: inline-block;border-left: 4px solid var(--main-color);font-weight: normal;border-bottom: 1px solid #ddd;margin-bottom: 15px;font-weight: 600;font-size: 16px;}
  section#mailform dt {padding: 5px 10px ;vertical-align: top;}
  section#mailform dd {padding: 0px 10px 20px;vertical-align: top;}
  section#mailform dd.privacy_policy {padding: 10px;}
  section#mailform dd.privacy_policy p {
    padding: 15px;
    border: 1px solid rgb(171, 171, 171);
    box-sizing:border-box;
    height: 100px;
    overflow-y: scroll;
    overflow-x: none;
    background-color: #fff;
  }

  span.xs {color: #ff0000;font-size: 12px;display: inline-block;margin-left: 10px;}
button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  border: 1px solid rgb(171, 171, 171);
  border-radius: 0px;
  padding: 7px 10px;
  width: 100%;
  background-color: #fff;
}

input[type="submit"], button.btn-check, button.btn-send, button.btn-back {
  color: #ffffff;
  /* text-shadow: 0px 0px 4px #fff; */
  font-weight: 600;
  letter-spacing: 0.2em;
  background-color: var(--main-color);
  border: 1px solid var(--main-color);
  border-radius: none!important;
  cursor: pointer;
  margin-bottom: 15px;
}

input[type="submit"]:hover {
  color: var(--main-color); 
  background-color: #fff;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

input.wpcf7-form-control.wpcf7-submit {
  background-color: #222;
  color: #fff;
  font-weight: 600;
  font-size: 1.3em;
  letter-spacing: .2em;
  border: 2px solid #222;
}

input::-webkit-input-placeholder {
  color: #c3c3c3;
  font-weight: normal;
}

input:-ms-input-placeholder {
  color: #c3c3c3;
  font-weight: normal;
}

input::-moz-placeholder {
  color: #c3c3c3;
  font-weight: normal;
}

input[type="checkbox"] {
  float: left;
  display: inline-block;
  width: 25px;
}

input[type="radio"] {
  width: 20px;
}

ul#menu-gnav p {
    font-weight: 500;
    display: block;
    color: #666;
    font-size: 18px;
    line-height: 120%;
    position: relative;
    vertical-align: middle;
}

.events_none { pointer-events: none; } /* aタグ無効 */

/*--------------------------------------------------------------
table 
--------------------------------------------------------------*/

table.tablepress {
  border-collapse: separate;
  border-spacing: 1px;
  width: 100%;
  border-top: 1px solid #999;
  border-bottom: 1px solid #999;
}
table.tablepress tr:nth-child(even) { background-color: #f1f1f1;/* 偶数番目の指定*/}


table.tablepress td {
  border-top: 1px solid #999;
  padding: 5px 10px;
}
table.tablepress th:nth-child(1), table.tablepress td:nth-child(1) {border-left: none;}
table.tablepress th {
  padding: 5px 10px;
  font-size:14px;
  background-color: #888!important;
  text-align: center;
  font-weight: 500!important;
  color: #fff;
  vertical-align: top;
  min-width: 4em;
}
table.tablepress td {font-size:14px;}
table.tablepress tbody strong {font-weight: 500;display: block;text-align: right;min-width: 4em;}
table.tablepress tbody strong:after {content: ":";}
table.tablepress .time {font-size:12px;text-align: center;vertical-align: middle;white-space: nowrap; }
table.tablepress .fa-chevron-right {font-size: 10px;}
table.tablepress .fa-file-pdf-o {margin-right: 5px;}
table.tablepress a {color: #afa02e;font-size: 95%;}


/*--------------------------------------------------------------
page link
--------------------------------------------------------------*/

#under-content ul.page_link {
  width: 100%;
  margin: 0 auto 0px;
  padding: 0;
  list-style: none;
  padding: 20px;
  box-sizing: border-box;
  border-top: 3px solid #e9fbff;
  border-bottom: 3px solid #e9fbff;
}
#under-content ul.page_link > li {
  display: inline-block;
  width: auto;
  text-align: left;
  padding: 7px 15px 7px 7px;
  border-right: 1px dotted;
  line-height: 130%;
  font-size: 14.5px;
  vertical-align: middle;
  margin-bottom: 10px;
  min-height: 41px;
  text-indent: 0;
  position: relative;
  letter-spacing: 0;

}
#under-content ul.page_link > li a {
    text-decoration: none;
}
#under-content ul.page_link > li::before {
    display: none;
}
#under-content ul.page_link > li::after {
    font-family: 'Material Icons';
    font-weight: 400;
    content: "\e5cf";
    
    position: absolute;
    right: 8px;
    /*top: 0;*/
    top: 50%; /* ADD */
    /*bottom: 0;*/
    margin: auto;
    transform: translateY(-50%); /* ADD */

}

    /*page_link responsive*/
        @media (max-width: 543px) { /* xs */
            #under-content ul.page_link > li {
                width: 49%;
            }          
            #under-content ul.page_link > li:nth-child(2n) {
                border-right: none;
            }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
            #under-content ul.page_link > li {
                width: 49%;
            }
            #under-content ul.page_link > li:nth-child(2n) {
                border-right: none;
            }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
            #under-content ul.page_link > li {
                width: 32%;
            }
            #under-content ul.page_link > li:nth-child(3n) {
                border-right: none;
            }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
            #under-content ul.page_link > li {
                width: 32%;
                min-height: 35px;
            }
            #under-content ul.page_link > li:nth-child(3n) {
                border-right: none;
            }
        }
        @media screen and (min-width:1200px) { /* xl */
            #under-content ul.page_link > li {
                width: 32%;
            }
            #under-content ul.page_link > li:nth-child(3n) {
                border-right: none;
            }
        }


/* ------------------------------------------------------------------------------------

------------------------------------------------------------------------------------ */
/* common */
h2 {
  font-family: "Shippori Mincho", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "MS P明朝", "MS PMincho", "MS 明朝", serif;
}
/* header */
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9;
  background: rgba(124, 102, 87, 0.8);
  padding: 14px 20px;
}
.header-logo-pc {
  width: 190px;
  display: block;
}
.header-logo-pc:hover {
  opacity: 0.5;
}
.header-logo-pc img {
  display: block;
}
.header-tel {
  display: block;
  position: fixed;
  top: 7px;
  right: 45px;
  width: 45px;
}
.header-tel:hover {
  opacity: 0.5;
}

  /* responsive */
        @media (max-width: 543px) { /* xs */
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
          header {
            padding: 15px 30px 5px;
          }
          .header-logo-pc {
            width: 300px;
          }
        }

/* kv */
.kv-area {
  position: relative;
}
.kv-txt {
  position: absolute;
  top: 16%;
  left: 50%;
  transform: translateX(-50%);
  width: 26%;
  max-width: 190px;
}
.metaslider .flexslider {
  margin: 0 !important;
}
.kv-area-overlay {
  position: absolute;
  width: 100%;
  height: 150px;
  bottom: 0;
  left: 0;
  background: linear-gradient(#ffffff00, #ffffffff);
}

  /* responsive */
        @media (max-width: 543px) { /* xs */
          .kv-txt {
            top: 25%;
            transform: translate(-50%,0%);
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .kv-txt {
            max-width: 200px;
            top: 25%;
            transform: translate(-50%,0%);
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          .kv-txt {
            top: 20%;
            max-width: 150px;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          .kv-txt {
            top: 25%;
            max-width: 150px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          .kv-txt {
            top: 20%;
            max-width: 150px;
          }
        }


/* section1 */
.pr4-row {
  display: flex;
  justify-content: space-between;
  width: 640px;
  margin: -10vw auto calc(33vw - 100px);
  position: relative;
  flex-wrap: wrap;
  gap: 3px;
}
.pr4-row a {
  width: calc(50% - 2px);
  height: 25vw;
  text-align: center;
  background-image: url(./img/img-babys_hands.jpg);
  background-size: cover;
  background-position: center;
  position: relative;
  color: #fff;
  font-size: 14px;
}
.pr4-row a:hover {
  opacity: 0.5;
}
.pr4-row h2 {
  width: calc(100% - 48px);
  height: 70%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  padding: 4px;
}
.pr4-row h2 span {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  /*top: 0;*/
  top: 50%; /* ADD */
  /*bottom: 0;*/
  margin: auto;
  transform: translateY(-50%); /* ADD */
  line-height: 125%;
  font-weight: 500;
}
.pr4-row h2:before {
  content: "";
  border: 1px solid #fff;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  position: absolute;
  left: 0;
  right: 0;
  /*top: 0;*/
  top: 50%; /* ADD */
  /*bottom: 0;*/
  margin: auto;
  transform: translateY(-50%); /* ADD */
  opacity: 0.6;
}
.pr4-row a:nth-child(2) h2:before,
.pr4-row a:nth-child(3) h2:before {
  border: 1px solid #7c6657;
  opacity: 0.9;
}
.pr4-row a:nth-child(3) h2 span {
  padding: 11px 0;
}
.pr4-row a:nth-child(2) { background-image: url(./img/img-gynecology.jpg); }
.pr4-row a:nth-child(3) { background-image: url(./img/img-menstrual_cycle.jpg); }
.pr4-row a:nth-child(4) { background-image: url(./img/img-babys_feet.jpg); }
.pr4-row h2 { background-color: #7c665788; }
.pr4-row a:nth-child(2) h2,
.pr4-row a:nth-child(3) h2 { background-color: #ffffff88; color: #51453A;}

  /* responsive */
        @media (max-width: 543px) { /* xs */
          .pr4-row {
            width: 85%;
            width: calc(100% - 40px);
            margin: -10vw auto calc(28vw - 100px);
          } 
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .pr4-row {
            width: 85%;
            margin: -10vw auto calc(20vw - 100px);
            width: calc(100% - 60px);
            gap: 20px;
          } 
          .pr4-row a {
            width: calc(50% - 10px)!important;
            height: 25vw;
          }
          .pr4-row a h2 {
            width: 60%;
            height: 60%;
          }
          .pr4-row a h2 span {
            font-size: 17px;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          .pr4-row {
            width: 85%;
            margin: 0vw auto calc(15vw - 100px);
            position: relative;
            flex-wrap: wrap;
            gap: 3px;
          }
          .pr4-row a {
            width: calc(26% - 20px)!important;
            height: 12vw;
            font-size: 14px;
          }
          .pr4-row a h2 {
            width: 80%;
            height: 80%;
          }
          .pr4-row a h2 span {
            font-size: 17px;
          }
          .pr4-row a:nth-child(3) h2 span {
            font-size: 15px;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          .pr4-row {
            width: 80%;
            margin: -5vw auto calc(15vw - 100px);
            position: relative;
            flex-wrap: wrap;
            gap: 3px;
          }
          .pr4-row a {
            width: calc(26% - 20px)!important;
            height: 12vw;
            font-size: 14px;
          }
          .pr4-row a h2 {
            width: 70%;
            height: 70%;
          }
          .pr4-row a h2 span {
            font-size: 20px;
          }
          .pr4-row a:nth-child(3) h2 span {
            font-size: 17px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          .pr4-row {
            width: 1200px;
            margin: -10vw auto calc(10vw - 100px);
            position: relative;
            flex-wrap: wrap;
            gap: 3px;
          }
          .pr4-row a {
            width: calc(300px - 15px)!important;
            height: 12vw;
            font-size: 14px;
          }
          .pr4-row a h2 {
            width: 70%;
            height: 70%;
          }
          .pr4-row a h2 span {
            font-size: 20px;
          }
        }


/* section */
section {
  max-width: 1200px;
  margin: 0 auto;
}
section.kv-area {
  padding: 0;
  max-width: 100%;
}
section.news-section {
  background-image: url(./img/img-baby.jpg);
  background-size: calc(100% - 40px) auto;
  background-position: center top;
  background-repeat: no-repeat;
  padding-top: calc(30px + 60vw);
}

.news-section h2,
.information-section h2 {
  color: var(--main-color);
  font-size: 23px;
  font-weight: 600;
  letter-spacing: 1.5px;
  padding-bottom: 3px;
  padding: 0px 3px 3px;
  border-bottom: 1.5px solid;
  margin-bottom: 20px;
}
.news-section h2 span,
.information-section h2 span {
  font-size: 10px;
  color: #999999;
  font-weight: normal;
  letter-spacing: 0;
  margin-left: 5px;
  margin-bottom: 5px;
  font-family: "Zen Kaku Gothic New","Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
a.more-btn {
  margin-top: 12px;
  padding-right: 18px;
  background-image: url(./img/btn-arrow.png);
  background-size: 15px auto;
  background-position: right bottom;
  background-repeat: no-repeat;
  color: var(--main-color);
  font-size: 12px;
  float: right;
  display: block;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
  font-family: "Zen Kaku Gothic New","Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
a.more-btn:hover {
  text-decoration: none !important;
  opacity: 0.5;
}
.news-box {
  border-bottom: 1px solid var(--main-color);
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.news-time {
  font-size: 10px;
  line-height: 1.1;
}

.news-section-box {
  background: #efefef88;
  padding: 20px;
  width: calc(100% - 330px);
}

  /* responsive */
        @media (max-width: 543px) { /* xs */
          section.news-section {
            padding-top: calc(30px + 50vw);
          }
          .news-section-box {
            width: 100%;
            background: #fff;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          section.news-section {
            background-size: 70% auto;
            padding-top: calc(30px + 40vw);
          }
          .news-section-box {
            width: 100%;
            background: #fff;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          section.news-section {
            max-width: 85%;
            padding-top: 90px;
            background-size: 300px auto;
            background-position: right top;
          }
          .news-section-box {
            width: calc(100% - 200px);
          }
          a.more-btn {
            font-size: 15px;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          section.news-section {
            max-width: 80%;
            padding-top: 90px;
            background-size: 480px auto;
            background-position: right top;
          }
          .news-section-box {
            padding: 30px!important;
          }
          .news-section h2,
          .information-section h2 {
            font-size: 30px;
          }
          .news-section h2 span, .information-section h2 span {
            font-size: 13px;
          }
          .news-time {
            font-size: 13px;
          }
          a.more-btn {
              padding-right: 27px;
              background-size: 24px auto;
              font-size: 16px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          section.news-section {
            max-width: 80%;
            padding-top: 90px;
            background-size: 480px auto;
            background-position: right top;
          }
          .news-section-box {
            padding: 30px!important;
          }
          .news-section h2,
          .information-section h2 {
            font-size: 30px;
          }
          .news-section h2 span, .information-section h2 span {
            font-size: 13px;
          }
          .news-time {
            font-size: 13px;
          }
          a.more-btn {
              padding-right: 27px;
              background-size: 24px auto;
              font-size: 16px;
          }
        }


/* introduction */
.introduction-section {
  position: relative;
  padding: 60px 20px 20px 45px;
}
.introduction-section h2 {
  position: absolute;
  top: 20px;
  left: 20px;
  text-align: center;
  color: #fff;
  background-color: #93867A;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 2px;
  padding: 20px 20px;
  line-height: 120%;
}
.introduction-section h2 span {
  display: block;
  font-size: 10px;
  letter-spacing: 0;
  font-weight: normal;
  font-family: "Zen Kaku Gothic New","Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
.clear {
  clear: both;
}
.introduction-section > img {
  width: 442px;
}
.introduction-section > p {
  background: #ffffffcc;
  width: 90%;
  margin-left: auto;
  padding: 20px;
  position: relative;
  margin-top: -30px;
}
  /* responsive */
        @media (max-width: 543px) { /* xs */
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .introduction-section > p {
            margin-top: -60px;
            width: 70%;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          section.introduction-section {
            max-width: 90%;
            margin: 5vh auto;
          }
          .introduction-section h2 {
            font-size: 25px;
            padding: 25px 30px;
          }
          .introduction-section > p {
            margin-top: -60px;
            width: 70%;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          section.introduction-section {
            max-width: 80%;
            margin: 10vh auto;
          }
          .introduction-section h2 {
            top: 0px;
            left: 0px;
            font-size: 30px;
            letter-spacing: 2px;
            padding: 30px 35px;
          }
          .introduction-section h2 span {
            font-size: 13px;
          }
          .introduction-section > img {
            width: 40%;
            vertical-align: bottom;
          }
          .introduction-section > p {
            margin-top: 5vh;
            width: 60%;
            display: inline-block;
            float: right;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          section.introduction-section {
            max-width: 80%;
            margin: 10vh auto;
          }
          .introduction-section h2 {
            top: 0px;
            left: 0px;
            font-size: 30px;
            letter-spacing: 2px;
            padding: 30px 35px;
          }
          .introduction-section h2 span {
            font-size: 13px;
          }
          .introduction-section > img {
            width: 40%;
            vertical-align: bottom;
          }
          .introduction-section > p {
            margin-top: 10vh;
            width: 60%;
            display: inline-block;
            float: right;
          }
        }



/* information */
.information-section p {
  margin-bottom: 1em;
}
.information-section h3 {
  color: var(--main-color);
  line-height: 1;
  border-left: 3px solid;
  padding-left: 10px;
  margin-bottom: 8px;
  font-weight: 600;
  font-size: 15px;
}
.information-section table {
  width: 100%;
  font-size: 10px;
  color: var(--main-color);
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
}
.information-section td {
  width: calc(12.5% - 10px);
  text-align: center;
}
.information-section td:first-child {
  width: 80px;
  text-align: right;
  padding-right: 10px;
  font-size: 11px;
  font-weight: 600;
}
.information-section thead {
  background-color: #93867A;
  color: #fff;
}
td.td-close {
  background-color: #F1F1F1;
}
.information-section tbody tr:last-child {
  border-top: 1px solid var(--main-color);
}

  /* responsive */
        @media (max-width: 543px) { /* xs */
          section.information-section {
            width: calc(100% - 40px);
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          section.information-section {
            max-width: 90%;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          section.information-section {
            max-width: 85%;
          }
          .information-section td {
            font-size: 14px;
          }
          .information-section td:first-child {
            font-size: 13px;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          section.information-section {
            max-width: 85%;
          }
          .information-section td {
            font-size: 14px;
          }
          .information-section td:first-child {
            font-size: 13px;
          }
          .information-section-box {
            display: inline-block;
          }
          .information-section-box:nth-child(1) {
            width: 35%;
          }
          .information-section-box:nth-child(2) {
            width: 64%;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          section.information-section {
            max-width: 85%;
          }
          .information-section td {
            font-size: 14px;
          }
          .information-section td:first-child {
            font-size: 13px;
          }
          .information-section-box {
            display: inline-block;
          }
          .information-section-box:nth-child(1) {
            width: 35%;
          }
          .information-section-box:nth-child(2) {
            width: 64%;
          }
        }


/* footer */
footer {
  color: var(--main-color);
  border-top: 1px solid;
  margin-top: 50px;
}
.footer-menu {
  max-width: 1280px;
  margin: 0 auto;
  padding: 15px 20px;
}
.footer-menu .menu {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footer-menu .menu > li {
  width: 49%;
}
.footer-menu .sub-menu {
  display: none;
  width: 200px;
}
.footer-menu .sub-menu li a {
  padding: 10px;
}
.footer-menu a {
  text-decoration: none;
  font-weight: 500;
  font-size: 12px;
  display: block;
}
.footer-bottom {
  background-size: cover;
  background-image: url(./img/footer-bg-sp.jpg); 
  text-align: center;
  padding: 30px 20px 0;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.footer-bottom a[href^="tel:"] {
    color: #fff!important;
}
.footer-bottom-l,
.footer-bottom-r,
.copy {
  width: 100%;
}
.footer-bottom-l a:hover {
  opacity: 0.5;
}
.footer-bottom-l img {
  max-width: 205px;
  margin-bottom: 16px;
}
.footer-bottom-l p {
  line-height: 1.5;
  font-size: 12px;
}
.footer-bottom-l p span {
  font-size: 20px;
}
.footer-bottom-r {
  text-align: left;
}
.footer-bottom-r h3 {
  line-height: 1;
  border-left: 3px solid;
  padding-left: 10px;
  margin-bottom: 8px;
  font-weight: 600;
  font-size: 15px;
}
.footer-bottom-r p {
  margin-bottom: 1em;
}
/* cta */
.cta-box {
  padding: 20px 0;
  display: flex;
  justify-content: center;
  background-color: #EEEEEE;
  background-color: var(--sub-color);
  gap: 10px;
}
.cta-box a.btn_type01 {
  font-family: "Shippori Mincho", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "MS P明朝", "MS PMincho", "MS 明朝", serif;
  margin-bottom: 0;
  font-size: 16px;
  letter-spacing: 1.5px;
  text-align: center !important;
  width: calc(50% - 20px);
  max-width: 500px;
}
.pure-drawer .cta-box {
  background: none;
  padding: 10px 0;
}
.pure-drawer .cta-box a.btn_type01 {
  min-width: 125px;
  padding: 7px 0;
  background-position: center bottom 7px;
  background-size: 80px auto;
  font-size: 14px;
}
header > .cta-box {
  position: absolute;
  padding: 0;
  background: none;
  top: 12px;
  right: 60px;
}
header > .cta-box a.btn_type01 {
  font-size: 14px;
  padding: 5px 5px 8px;
  border: 1px solid !important;
  line-height: 1;
  background-position: center bottom 3px;
  background-size: 75px auto;
  min-width: 120px;
}
.header-tel span {
  display: inline-block;
  color: #fff;
}
a.header-tel[href^="tel:"] {
    color: #fff!important;
}

  /* responsive */
        @media (max-width: 543px) { /* xs */
          .header-tel span {
            display: none;
          }
          header > .cta-box {
            display: none;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .header-tel span {
            display: none;
          }
          header > .cta-box {
            display: none;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          .header-tel span {
            display: none;
          }
          header > .cta-box {
            display: none;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          header {
            padding: 10px 30px 0;
          }
          .header-logo-pc {
            width: 250px;
          }
          header > .cta-box {
            top: 10px;
            right: 20px;
          }
          header > .cta-box a.btn_type01 {
            font-size: 13px;
            padding: 8px 5px 9px;
            border: 1px solid !important;
            background-position: center bottom 5px;
            background-size: 75px auto;
            min-width: 110px;
          }
          .header-tel img {
            display: none;
          }
          .header-tel {
            width: auto;
            font-size: 20px;
            right: 270px;
            top: 12px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          header {
            padding: 10px 30px 0;
          }
          .header-logo-pc {
            width: 300px;
          }
          header > .cta-box {
            top: 15px;
            right: 30px;
          }
          header > .cta-box a.btn_type01 {
            font-size: 13px;
            padding: 8px 5px 9px;
            border: 1px solid !important;
            background-position: center bottom 5px;
            background-size: 75px auto;
            min-width: 110px;
          }
          .header-tel img {
            display: none;
          }
          .header-tel {
            width: auto;
            font-size: 20px;
            right: 280px;
            top: 17px;
          }
        }

/* menu */
.menu-item-has-children {
  position: relative;
}
.menu ul.sub-menu {
  display: none;
  position: absolute;
}
ul#menu-gnav > li ul.sub-menu,
.nav .menu ul.sub-menu {
  padding: 0;
  margin: 0;
  background: transparent;
}
ul#menu-gnav > li ul.sub-menu > li,
.nav .menu ul.sub-menu > li {
  padding: 0;
  margin: 0;
  background: transparent;
}
.menu li:hover .sub-menu {
  display: block;
}
.pure-drawer li a {
  display: block;
  border-top: 1px solid #c1b6ae!important;
  font-weight: 500;
  font-size: 15px;
}
.pure-drawer ul.sub-menu li a {
  background: #ffffff !important;
  padding-left: 1em!important;
}
.pure-drawer .menu ul.sub-menu {
  width: 100%;
}
.nav .menu ul.sub-menu a,
.footer-menu .menu ul.sub-menu a {
  word-break: keep-all;
  background: rgba(255, 255, 255, 0.8)!important;
}
.information-section-box > table {
  max-width: 720px;
}
.footer-bottom-l,
.footer-bottom-r {
  width: 50%;
  margin-bottom: 20px;
}
.footer-bottom-l > *:last-child,
.footer-bottom-r > *:last-child {
  margin-bottom: 0px;
}
.footer-bottom-r {
  padding-top: 20px;
}
.footer-bottom {
  gap: 0;
}
.footer-menu a {
  font-size: 13px;
}
@media screen and (min-width: 992px) {
  ul#menu-gnav > li {
    width: auto;
  }
  .information-section-row {
    display: flex;
    justify-content: flex-start;
    gap: 50px;
  }
  .information-section-box table {
    min-width: 500px;
    font-size: 14px;
  }
  .information-section td {
    width: calc(12.5% - 12px);
  }
  .information-section td:first-child {
    width: 96px;
    font-size: 13px;
  }
}
  /* responsive */
        @media (max-width: 543px) { /* xs */
          .footer-bottom-l,
          .footer-bottom-r {
            width: 100%;
          }
          .footer-bottom-l {
            margin-bottom: 10px;
          }
          footer#footer .footer-menu a {
            padding: 10px 0;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .footer-bottom {
            padding: 60px 20px 0;
          }
          .footer-bottom-l, .footer-bottom-r {
            margin-bottom: 0;
            padding-top: 0;
          }
          .footer-menu .menu > li {
            width: 32%;
          }
          footer#footer .copy {
            margin-top: 15px;
          }
          footer#footer .footer-menu a {
            padding: 10px 0;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          .footer-bottom {
            padding: 60px 20px 0;
          }
          .footer-bottom-l, .footer-bottom-r {
            margin-bottom: 0;
            padding-top: 0;
          }
          .footer-menu .menu > li {
            width: 32%;
          }
          footer#footer .copy {
            margin-top: 15px;
          }
          footer#footer .footer-menu a {
            padding: 5px 0;
          }
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          .footer-menu .menu {
            max-width: 90%;
            margin: 0 auto;
          }
          .footer-menu .menu {
            max-width: 90%;
          }
          .footer-menu .menu > li {
            width: auto;
          }
          .footer-menu a {
            font-size: 13px;
          }
        }
        @media screen and (min-width:1200px) { /* xl */
          .footer-menu {
            padding: 15px 0px;
          }
          .footer-menu .menu {
            max-width: 980px;
            margin: 0 auto;
          }
          .footer-menu .menu > li {
            width: auto;
          }
          .footer-menu a {
            font-size: 13px;
          }
        }



ul#menu-gnav > li ul.sub-menu {
  /*display: block;*/
  left: 10px;
  top: 39px;
  width: 200px;
}
ul#menu-gnav > li {
  position: relative;
}
ul#menu-gnav > li ul.sub-menu li > a {
  display: block!important;
  padding: 10px 10px;
  background: rgba(124, 102, 87, 0.8)!important;
  color: #fff!important;
  
}
.pure-drawer ul.sub-menu {
  display: block;
  position: relative;
}
.pure-drawer ul.sub-menu li a {
  background: transparent!important;
  padding-left: 2em!important;
}
.pure-drawer ul#menu-gnav-1 > li:last-child a {
  border-bottom: 1px solid #c1b6ae!important;
}

/* mw */
.mw-wp-form__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 80px;
}
.mw-wp-form dt,
.mw-wp-form dd {
  line-height: 1.75;
}
.mw-wp-form dt,
.mw-wp-form dd {
  margin-top: 30px;
}
.mw-wp-form dt {
  width: 320px;
  padding-top: 15px;
}
.mw-wp-form dd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 570px;
}
.form-age {
  width: 50px !important;
  margin-right: 10px !important;
}

.mw-wp-form__label {
  margin-right: 15px;
  padding: 8px 22px;
  border-radius: 2px;
  color: #fff;
  font-size: 14px;
  vertical-align: 1px;
}
.mw-wp-form__label--req {
  background: #BE1D1D;
}
.mw-wp-form__label--opt {
  background: #878D8E;
}
.mw-wp-form dd input[type="text"],
.mw-wp-form dd input[type="email"],
.mw-wp-form dd textarea {
  box-sizing: content-box;
  width: calc(100% - (20px * 2));
  padding: 15px 20px;
  background: #F5F5F5;
}
.mw-wp-form dd input[type="text"]:nth-child(n + 2) {
  margin-top: 15px;
}
.mw-wp-form dd input[type="tel"] {
  box-sizing: content-box;
  width: 66px;
  padding: 15px 20px;
  background: #F5F5F5;
}
.mw-wp-form dd textarea {
  height: calc(1.75em * 10);
}

.mw-wp-form dd input[type="text"]::placeholder,
/*.mw-wp-form dd input[type="tel"]::placeholder,*/
.mw-wp-form dd input[type="email"]::placeholder,
.mw-wp-form dd textarea::placeholder {
  color: #797979;
}

/* Microsoft Edge */
.mw-wp-form dd input[type="text"]::-ms-input-placeholder,
/*.mw-wp-form dd input[type="tel"]::-ms-input-placeholder,*/
.mw-wp-form dd input[type="email"]::-ms-input-placeholder,
.mw-wp-form dd textarea::-ms-input-placeholder {
  color: #797979;
}

/* Internet Explorer */
.mw-wp-form dd input[type="text"]:-ms-input-placeholder,
/*.mw-wp-form dd input[type="tel"]:-ms-input-placeholder,*/
.mw-wp-form dd input[type="email"]:-ms-input-placeholder,
.mw-wp-form dd textarea:-ms-input-placeholder {
  color: #797979;
}
.mw-wp-form__automatic {
  margin: 0 0 0 20px;
  font-size: 15px;
}
.mw-wp-form__buttons {
  display: flex;
  justify-content: center;
}
.mw-wp-form__buttons button[type="submit"] {
  display: block;
  position: relative;
  width: 360px;
  height: 60px;
  margin: 0 30px;
  border: 1px solid #1B201A;
  color: #1B201A;
  transition: opacity .6s;
}
.mw-wp-form__buttons button[type="submit"]:hover {
  opacity: .6;
}
.mw-wp-form__buttons button[type="submit"]:before {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-top: 1px solid #1B201A;
  border-right: 1px solid #1B201A;
  content: '';
}
.mw_wp_form_confirm .mw-wp-form dd {
  padding-top: 15px;
}

@media screen and (max-width: 430px) {
  .mw-wp-form__list {
    margin-bottom: 60px;
  }
  .mw-wp-form dt {
    width: 100%;
  }
  .mw-wp-form dd {
    width: 100%;
  }
  .mw-wp-form dd:first-of-type,
  .mw-wp-form dd:not(:first-of-type) {
    margin-top: 15px;
  }
  .mw-wp-form dd input[type="text"]:nth-child(n + 2) {
    margin-top: 10px;
  }
  .mw-wp-form dd textarea {
    height: calc(1.75em * 8);
  }
  .mw-wp-form__automatic {
    margin: 5px 0 0;
    font-size: 14px;
  }
  .mw-wp-form__buttons {
    flex-direction: column;
    align-items: center;
  }
  .mw-wp-form__buttons button[type="submit"] {
    width: 300px;
    margin: 0;
  }
  .mw-wp-form__buttons button[type="submit"]:not(:first-child) {
    margin-top: 30px;
  }
  .mw_wp_form_confirm .mw-wp-form dd {
    padding-top: 0;
  }
  .mw-wp-form__label {
    padding: 6px 16px;
  }
}
.form-status {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}
.form-status input {
  width: calc(100% - 140px)!important;
}
.form-notice {
  border: 1px solid #555;
  box-shadow: 0 0 2px #555;
  padding: 20px 20px 0;
  height: 250px;
  overflow-y: scroll;
}
.form-notice h2:first-child {
  margin-top: 0;
}
.form-notice h2 {
  margin-top: 50px;
}
.form-notice p,
.form-notice ul {
  margin-bottom: 1.5em !important;
}
.form-notice ul {
  list-style: disc;
  list-style-position: inside;
}

/* ------------------------------------------------------------------------------------
.btn_row 
------------------------------------------------------------------------------------ */

.btn_row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.btn_row a {
  display: block;
  background: #E89E62;
  color: #fff !important;
  padding: 3px 10px;
  text-decoration: none !important;
  border: 1px solid #dd7525;
}
.btn_row a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f054";
    margin-left: 5px;
}
.btn_row a:hover {
  color: #E89E62!important;
  background: #fff;
}


/* ------------------------------------------------------------------------------------
ul.btn_list
------------------------------------------------------------------------------------ */

ul.btn_list {
  font-size: 0;
  margin-bottom: 0;
}
ul.btn_list li {
  display: inline-block;
  margin: 0 40px 15px 0;
}
ul.btn_list li a {
  position: relative;
  font-size: 14px;
  text-align: center;
  display: inline-block;
  line-height: 120%;
  padding: 13px 25px 13px 15px;
  border: 1px solid var(--sub-color);
  min-width: 200px;
  background: #fff;
}
ul.btn_list li a:before {
  content: "";
  width: 40px;
  height: 5px;
  background-image: url(./img/btn-arrow.png);
  background-repeat: no-repeat;
  background-size: 40px 100%;
  background-position: right bottom;
  position: absolute;
  right: -20px;
  top: 50%;
  margin: auto;
  transform: translateY(-50%);
}
/*ul.btn_list li a:before {
  content: "";
  background: var(--main-color);
  width: 30px;
  height: 1px;
  position: absolute;
  right: -10px;
  top: 50%;
  margin: auto;
  transform: translateY(-50%);
}*/
ul.btn_list li a:hover {
  text-decoration: none!important;
  background-color: var(--sub-color);
  color: #fff!important;
}
  /* responsive */
        @media (max-width: 543px) { /* xs */
          ul.btn_list li {
            margin-right: 30px;
            width: 95%;
          }
          ul.btn_list li a {
            min-width: 100px;
            width: 100%;
          }
          ul.btn_list li a:before {
            width: 30px;
            right: -15px;
            background-size: 30px 80%;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/* ------------------------------------------------------------------------------------
br
------------------------------------------------------------------------------------ */
        @media (max-width: 543px) { /* xs */
          .br-none-sp br {display: none;}
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          .br-none-sp br {display: none;}
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
          .br-none-sp br {display: none;}
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
          .br-none-pc br {display: none;}
        }
        @media screen and (min-width:1200px) { /* xl */
          .br-none-pc br {display: none;}
        }


/* ------------------------------------------------------------------------------------
追加用
------------------------------------------------------------------------------------ */

  section.cta-box {
    margin: 7vh auto 7.5vh;
    padding: 20px;
    width: 100vw;
    max-width: 100%;
  }
  section.cta-box .cta-box__inner {
    width: 100%;
    max-width: 1200px;
    display: flex;
    justify-content: center;
    gap: 15px;
  }
  section.cta-box .cta-box__inner a.btn_type01 {
    max-width: 100%;
    border: none;
    margin: 0;
    width: 50%;
    max-width: 500px;
  }

        @media (max-width: 543px) { /* xs */
          section.cta-box {
            margin: 5vh auto 5.5vh;
          }
          section.cta-box .cta-box__inner {
            gap: 10px;
          }
        }
        @media screen and (min-width:544px) and (max-width:767px) { /* sm */
          section.cta-box {
            margin: 5vh auto 5.5vh;
          }
          section.cta-box .cta-box__inner {
            gap: 15px;
          }
        }
        @media screen and (min-width:768px) and (max-width:991px) { /* md */
        }
        @media screen and (min-width:992px) and (max-width:1199px) { /* lg */
        }
        @media screen and (min-width:1200px) { /* xl */
        }

/* ------------------------------------------------------------------------------------
追加用
------------------------------------------------------------------------------------ */

/* ------------------------------------------------------------------------------------
追加用
------------------------------------------------------------------------------------ */
