@charset "UTF-8";

/*!
Theme Name: Simplicity2 child
Template:   simplicity2
Version:    20161002
*/


/* Simplicity子テーマ用のスタイルを書く */

html,
body {
    width: 100%;
    height: 100%;
}
img{
    max-width: 100%;
    height: auto;
}
.right {
    text-align: right;
}

.left {
    text-align: left;
}

.center {
    text-align: center;
}

.color_0 {
    background: #eae7dc;
}

.w-40 {
    width: 40%;
}

.min {
    font-family: Georgia, 'Hiragino Mincho ProN', 'Yu Mincho', serif;
}
.flexbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.commov_area{
    text-align: center;
    margin:60px auto 20px auto;
}
.commov_area video{
    max-width: 100%;
    height: auto;
    margin:0 auto;
}
.top_face {
    width: 100%;
    height: 100%;
    background: url(images/main_bg.png);
    background-position: center bottom;
    background-size: cover;
    background-attachment: fixed;
    position: relative;
}

.page_face {
    width: 100%;
    height: 24%;
    background: url(images/main_bg.png);
    background-position: top;
    background-size: cover;
    background-attachment: fixed;
    position: relative;
}
#footer {
    clear: both;
    background-color: #2f5322;
    color: #fff;
    padding: 5px;
}
#site-title {
    text-align: center;
}
#site-title img{
    width:600px;
    height: auto;
}
.flex_box{
  display: flex;
  flex-flow: row wrap;    
}
div.wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: none; 
}
br.sm{
    display: none;
}
.sm2{
    margin-right: 2em;
}
h1#site-title {
    margin-top: 300px;
}

h2#site-description {
    text-align: center;
    color: white;
    font-size: 1.4em;
    text-shadow: 1px 1px 1px #333;
}
h4.st01{
    padding:10px 20px;
    border-left:8px solid #2f5322;
    color:#2f5322;
    font-size:1.5em;
}

.page_face #site-title {
    margin-top: 30px;
}

.page_face #site-description {
    text-align: center;
    color: white;
    font-size: 1.4em;
}
.grecaptcha-badge{
    bottom:100px !important;
}

#header-in,
#navi-in,
#body-in,
#footer-in {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}

.box_0 {
    clear: both;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 20px;
}

.box_1 {
    clear: both;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 20px;
}
.box_1_box {
    clear: both;
    width: 100%;
    max-width: 900px;
    margin: 20px auto;
    box-sizing: border-box;
    padding: 20px;
    background: #fafafa;
}


/* .box_img_1 {
    width: 100%;
    height: 30%;
    background: url(images/box_img_01_bg.png);
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    position: relative;
} */

.box_1 h2,
.box_0 h2 {
    line-height: 35px;
    text-align: center;
    letter-spacing: 0.4em;
    padding: 20px 0;
    border-bottom: 1px dashed #aa996f;
    margin-bottom: 20px;
}

.box_1 h2 img,
.box_0 h2 img {
    position: relative;
    top: 3px;
}

table {
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-collapse: collapse;
    width: 100%;
    margin: 0 auto 20px auto;
}

table td,
table th {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 1em 1em;
}

table th {
    text-align: center;
}
dl.table,
dl.table2,
dl.table3{
  display:flex;
  flex-wrap: wrap;
  border: 1px solid #ccc;
  border-top: none;
}
dl.table dt,
dl.table2 dt,
dl.table3 dt{
  background: #f9f7f3;
  width: 35%;
  padding: 10px;
  box-sizing: border-box;
  border-top: 1px solid #ccc; 
}
dl.table dd,
dl.table2 dd,
dl.table3 dd{
  padding: 10px;
  margin: 0;
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc; 
  width: 65%;
  background: #fff;
  box-sizing: border-box;
  text-align: right;
}
dl.table3 dd{
    text-align:left;
}

ul.block,
ul.block2{
  display:flex;
  flex-wrap: wrap;
}
ul.block li{
  list-style: none;
  width: 23%;
  margin:1%;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #ccc; 
  text-align: center;
}

ul.block2 li{
  list-style: none;
  width: 31%;
  margin:1%;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  text-align: center;
}


span.price {
    color: #914a72;
    font-size: 1.6em;
    margin: 0 0.2em;

}

.img_left {
    width: 45%;
    height: auto;
    float: left;
    margin-right: 20px;
    margin-bottom: 20px;
}

.img_right {
    width: 45%;
    height: auto;
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
}

#main {
    width: 830px;
}

#sidebar {
    width: 340px;
}

.entry-card-content {
    padding-top: 10px;
}

.btn_1 a {
    display: block;
    width: 200px;
    padding: 20px;
    text-align: center;
    background: #aa996f;
    color: white;
    margin: 10px auto;
    font-weight: bold;
    text-decoration: none;
    letter-spacing: 0.5em;
    border: 2px solid #FFF;
}

.btn_1 a:hover {
    border: 2px solid #aa996f;
    color: #aa996f;
    background: #FFF;
}

.btn_1 input[type="submit"] {
    display: block;
    width: 200px;
    padding: 20px;
    text-align: center;
    background: #aa996f;
    color: white;
    margin: 10px auto;
    font-weight: bold;
    text-decoration: none;
    letter-spacing: 0.5em;
    border: 2px solid #FFF;
}
.btn_1 input[type="submit"]:hover {
    border: 2px solid #aa996f;
    color: #aa996f;
    background: #FFF;
}

.header_fix_menu {
    display: none;
    width: 100%;
    height: 60px;
    position: fixed;
    top: 0;
    background: rgba(47, 83, 34, 0.9);
    z-index: 5;
}

.header_fix_menu img {
    width: 40%;
    height: auto;
    margin: 8px;
}
.taiken_area{
    padding:10px;
    margin:20px auto;
    box-sizing: border-box;
    border: 2px solid #e6a8bc;
}
.taiken_area h4{
    color:#e6a8bc;
    font-size:1.5em;
    font-weight: bold;
    letter-spacing: 0.2em;
}
.taiken_text_box{
    padding:20px !important;
}
.taiken_text{
    font-size: 1.5em;
}
.taiken_text i{
    color:#e6a8bc;
}
.taiken_text .taiken_price_1{
    font-size: 1.8em;
    color:#999;
    margin-right:0.2em;
}
.taiken_text .taiken_price_2{
    font-size: 1.8em;
    color:#dd6b90;
    margin-right:0.2em;
}
.inq_box{
    width:90%;
    margin:30px auto;
    background: #f9f7f3;
    border:1px solid #ccc;
    box-shadow: 1px 1px 1px #ccc;
}

.inq_box .flex_box{
    padding:20px;

}
.inq_box .inq_text{
    width:65%;
    padding:0 20px 0 0;
}
.inq_box .inq_img{
    width: 35%;
}
.inq_box h4{
    margin-bottom: 0.5em;
    padding:5px 15px;
    border-bottom:1px dashed  #666;
    color:#666;
    font-weight: 700;
}
.inq_box h4 span{
    font-size: 0.8em;
}
.inq_box .phone_number{
    color:#2a4f12;
    font-size: 2em;
    margin-left: 0.5em;
}
.fac_box_01 .flex_box >div{
    width:  25%;
    padding:20px;
    text-align: center;
}
.fac_box_02 .flex_box >div{
    width:  350px;
    height: 320px;
    overflow: hidden;
    text-align: center;
    margin:10px;
}
/*.fac_box_02 .flex_box >div{
    width:  320px;
    height: 320px;
    padding:20px;
    text-align: center;
}*/
.fac_box_02 .flex_box >div img,
.fac_box_02 .flex_box >div video{
    width:  320px;
    height: 320px;
    object-fit: cover;

}
.fac_box_03 .flex_box >div{
    width:  20%;
    padding:20px;
    text-align: center;
}
.fac_box_01 h3,
.fac_box_02 h3,
.fac_box_03 h3,
.fac_box_04 h3,
.fac_box_05 h3{
    border-bottom: 3px solid #159f5c;
    padding:10px 20px;
}
.fac_box_01 h3 span.title_num,
.fac_box_02 h3 span.title_num,
.fac_box_03 h3 span.title_num,
.fac_box_04 h3 span.title_num,
.fac_box_05 h3 span.title_num{
    color:#159f5c;
    font-size: 2em;
    margin-right: 0.2em;
}
.fac_box_01,
.fac_box_02,
.fac_box_03,
.fac_box_04,
.fac_box_05{
    padding:10px;

}

.fac_box_01::after,
.fac_box_02::after,
.fac_box_03::after,
.fac_box_04::after{
    content:"⇩";
    text-align: center;
    font-size: 5em;
    display: block;
}
#line_btn a {
    background:#25af00;
    box-shadow:0 5px 0 #219900;
    font-size:95%;
    position:relative;
    display:block;
    padding:10px;
    color:#fff;
    border-radius:6px;
    text-align:center;
    text-decoration: none;
    font-weight: bold;
    width:280px;
    margin:0 0 5% 0;
}
#line_btn a i{
    font-size: 1.5em;
    margin-right:0.5em;
}
#sns_btn{
    font-size: 60px;
}
#sns_btn i{
    margin-right:0.2em;
    margin-bottom:0.2em;
}
#sns_btn a.twitter i{
    color:#1da1f2;
}
#sns_btn a.facebook i{
    color:#3b599f;
}
#sns_btn a.insta i:before {
    /* background: #e4007f; */
    background: -webkit-linear-gradient(top, rgba(89, 47, 197, 1) 0%, rgba(215, 51, 78, 1) 35%, rgba(234, 81, 76, 1) 75%, rgba(251, 131, 45, 1) 100%);
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
}
.hours{
    padding:20px;
    font-size:30px;
    letter-spacing:0.2em;
}
#a05  .flex_box{
    width:100%;
}
#a05 .item{
    width: 23%;
    margin:1%;
    padding:10px;
    font-size:0.9em;
    text-align:center;
    border:1px solid #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
}


.sd_01{
    font-size: 1.4em;
    line-height: 1.8em;
    font-weight: 800;
    text-align: center;
}
.sd_text{
    width:60%;
    padding:20px;
}
.sd_text h3{
    font-size: 1.5em;
    font-weight: 800;
    border-bottom:2px solid #219900;
    color:#159f5c;
    padding:0.5em;
}
.sd_text span.line{
    background:rgba(238,191,58,0.2);
    padding:3px 1em;
    display: inline-block;
    margin:3px 0
}
.sd_img{
    width:40%;
    padding:50px 0 0 0;
}
.sho{
    width:calc(100% / 3);
    padding:30px;
}
/*あとで消す*/



/* Large devices: Desktops (≥1200px) */

@media (min-width: 1200px) {}

@media screen and (max-width: 1110px) {
    div#header-in,
    div#navi-in,
    div#body-in,
    div#footer-in {
        width: 100%;
    }
}


/* Medium devices: Desktops (≥992px) */

@media (max-width: 991px) {
    .bana_area_01>div {
        height: auto;
        overflow-y: auto;
    }
}

@media (max-width: 767px) {
    body {
        overflow-x: hidden;
        width: 100%;
    }
    br.sm{
        display: block;
    }
    .sm2{
        margin-right: 0;
    }
    .top_face {
        width: 100%;
        height: 85%;
        background: url(images/main_bg2.png);
        background-position: bottom;
        background-size: cover;
        background-attachment: inherit;
        position: relative;
    }
    h1#site-title {
        margin-top: 40%;
    }
    h4.st01{
        font-size: 1em;
        padding:6px 15px;
        border-left:8px solid #2f5322;
    }
    .box_0{
        padding:0;
    }
    .box_1 h2,
    .box_0 h2 {
        line-height: 20px;
        font-size: 1.0em;
        text-align: center;
        letter-spacing: 0.1em;
        padding: 10px 0;
        border-bottom: 1px dashed #aa996f;
        margin-bottom: 10px;
    }
    .box_1 p,
    .box_0 p {
        font-size: 0.8em;
    }
    .box_1 ul li,
    .box_0 ul li {
        font-size: 0.8em;
    }
    .box_1 ul,
    .box_0 ul {
        padding: 8px 16px;
    }
    .box_1 h2 img,
    .box_0 h2 img {
        width: 10%;
        height: auto;
        top: 2px;
    }
    .box_img_1 {
        width: 100%;
        height: 30%;
        background: url(images/box_img_03_bg.png);
        background-position: center;
        background-size: cover;
        background-attachment: inherit;
        position: relative;
    }
    .box_img_2 {
        width: 100%;
        height: 30%;
        background: url(images/box_img_02_bg.png);
        background-position: center;
        background-size: cover;
        background-attachment: inherit;
        position: relative;
    }
    table td,
    table th {
        font-size: 0.7em;
    }
    #list {
        border-top: 2px dashed #f7b3bc;
    }
    #list article {
        border-bottom: 2px dashed #f7b3bc;
        padding: 20px 0;
    }
    #list article h2 {
        font-size: 0.7em;
    }
    .entry-snippet {
        opacity: 0;
    }
    .hm_menu_check {
        /* チェックボックスを隠す */
        display: none;
    }
    .hm_wrap {
        display: inline-block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
    }
    .hm_title {
        /* ハンバーガーメニューオープン時の見出し */
        position: absolute;
        color: #FFF;
        display: inline-block;
        float: left;
        margin: 0 0 0 0;
        opacity: 0;
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
        -webkit-transition: -webkit-transform 0.6s, opacity 0.5s;
        transition: transform 0.6s, opacity 0.5s;
        z-index: 2;
    }
    /* ▽▽メニューボタン▽▽ */
    .hm_btn {
        position: relative;
        width: 30px;
        height: 30px;
        cursor: pointer;
        display: block;
        float: right;
        margin: 15px 15px 0 0;
        z-index: 4;
    }
    .hm_btn::before {
        -webkit-box-shadow: #FFF 0 12px 0;
        box-shadow: #FFF 0 12px 0;
    }
    .hm_btn::after {
        bottom: 0;
    }
    .hm_btn::before,
    .hm_btn::after {
        width: 30px;
        height: 6px;
        background: #FFF;
        display: block;
        content: '';
        position: absolute;
        -webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
        transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
    }
    /* △△メニューボタン△△ */
    .hm_menu_wrap {
        width: 100%;
        height: 10000px;
        background: rgba(47, 83, 34, 0.9);
        position: absolute;
        right: -100%;
        top: 0;
        -webkit-transition: left 0.4s;
        transition: left 0.4s;
    }
    /* ▽▽開閉時のアニメーション▽▽ */
    .hm_menu_check:checked~.hm_title {
        opacity: 1;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
    .hm_menu_check:checked~.hm_btn::before {
        -webkit-box-shadow: transparent 0 0 0;
        box-shadow: transparent 0 0 0;
        -webkit-transform: rotate(45deg) translate3d(6px, 11px, 0);
        transform: rotate(45deg) translate3d(6px, 11px, 0);
    }
    .hm_menu_check:checked~.hm_btn::after {
        -webkit-transform: rotate(-45deg) translate3d(6px, -11px, 0);
        transform: rotate(-45deg) translate3d(6px, -11px, 0);
    }
    .hm_menu_check:checked~.hm_menu_wrap {
        left: 0;
    }
    /* △△開閉時のアニメーション△△ */
    /* ▽▽メニュー内のリストスタイル▽▽ */
    .hm_list {
        list-style-type: none;
        margin: 100px 20px 10px 20px;
        padding: 0;
    }
    .hm_list {
        border-top: 1px dashed #FFF;
    }
    .hm_list li a {
        color: #FFF;
        display: block;
        overflow: hidden;
        padding: 18px 0;
        position: relative;
        text-decoration: none;
        z-index: 1;
        border-bottom: 1px dashed #FFF;
        text-align: center;
    }
    .hm_list i {
        margin: 0 0.5em;
    }
    /* .hm_list li a::before {
    
        background: #eee;
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 100%;
        left: 0;
        -webkit-transition: bottom 0.4s;
        transition: bottom 0.4s;
        z-index: -1;
    } */
    .hm_list li a:hover::before {
        bottom: 0;
    }
    .hm_list li a:hover::after {
        opacity: 0.5;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .taiken_area h4,
    .taiken_area .taiken_text{
        text-align: center;
    }
    #line_btn a {
        margin:5% auto 5% auto;
    }
    #sns_btn a:first-of-type i{
        margin-left:0.2em;

    }
    #sns_btn{
        text-align: center;
    }
    #sns_btn i{
        margin-bottom:0;
    }
    .box_0 p.hours{
        padding:20px;
        font-size:20px;
        letter-spacing:0.2em;
    }
    .inq_box{
        width:98%;
        margin:10px auto;
        background: #f9f7f3;
        border:1px solid #ccc;
        box-shadow: 1px 1px 1px #ccc;
    }

    .inq_box .flex_box{
        padding:10px;

    }
    .inq_box .inq_text{
        width:100%;
        padding:0 0 0 0;
        order: 2;
    }
    .inq_box .inq_img{
        width: 100%;
        text-align: center;
    }
    .inq_box .inq_img img{
        width: 70%;
        height: auto;
        order: 1;
    }
    .inq_box h4{
        margin-bottom: 0.5em;
        padding:5px 15px;
        border-bottom:1px dashed  #666;
        color:#666;
        font-weight: 700;
        font-size: 0.8em;
    }
    .inq_box h4 span{
        font-size: 0.8em;
    }
    .inq_box .phone_number{
        color:#2a4f12;
        font-size: 1.2em;
        margin-left: 0.5em;
    }
    .fac_box_01 .flex_box >div{
        width:  33%;
        padding:6px;
        text-align: center;
        font-size: 0.8em;
    }
    .fac_box_02 .flex_box >div{
        width:  33%;
        padding:6px;
        text-align: center;
        font-size: 0.8em;
    }
    .fac_box_03 .flex_box >div{
        width:  33%;
        padding:6px;
        text-align: center;
        font-size: 0.8em;
    }
    .fac_box_01 h3,
    .fac_box_02 h3,
    .fac_box_03 h3,
    .fac_box_04 h3,
    .fac_box_05 h3{
        font-size: 1em;
        border-bottom: 2px solid #159f5c;
        padding:5px 10px;
    }
    .fac_box_01 h3 span.title_num,
    .fac_box_02 h3 span.title_num,
    .fac_box_03 h3 span.title_num,
    .fac_box_04 h3 span.title_num,
    .fac_box_05 h3 span.title_num{
        color:#159f5c;
        font-size: 1.5em;
        margin-right: 0.2em;
    }
    .fac_box_01,
    .fac_box_02,
    .fac_box_03,
    .fac_box_04,
    .fac_box_05{
        padding:0px;

    }

    .fac_box_01::after,
    .fac_box_02::after,
    .fac_box_03::after,
    .fac_box_04::after{
        content:"⇩";
        text-align: center;
        font-size: 3em;
        display: block;
    }

    dl.table,
    dl.table2,
    dl.table3{
      display:flex;
      flex-wrap: wrap;
      border: 1px solid #ccc;
      border-top: none;
      font-size:0.8em;
    }
    dl.table dt,
    dl.table2 dt,
    dl.table3 dt{
      background: #f9f7f3;
      width: 55%;
      padding: 6px;
      box-sizing: border-box;
      border-top: 1px solid #ccc; 
    }
    dl.table dd,
    dl.table2 dd,
    dl.table3 dd{
      padding: 6px;
      margin: 0;
      border-left: 1px solid #ccc;
      border-top: 1px solid #ccc; 
      width: 45%;
      background: #fff;
      box-sizing: border-box;
    }

    
    dl.table2 dt{

      width: 100%;

    }
    
    dl.table2 dd{

      width:100%;
      border-left: none;

    }
    dl.table2 dt{
        width: 30%;
    }
    dl.table2 dd{
        width:70%;
    }
    ul.block,
    ul.block2{
      display:flex;
      flex-wrap: wrap;
      padding:0;
      margin:0;
    }
    ul.block li,
    ul.block2 li{
      list-style: none;
      width: 48%;
      margin:1%;
      padding: 6px;
      box-sizing: border-box;
      border: 1px solid #ccc; 
      text-align: center;
    }
    #a05 .item{
        width: 98%;
        margin:1%;
        padding:6px;
        font-size:0.8em;
        text-align:center;
        border:1px solid #ccc;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .fac_box_02 .flex_box >div{
        width:  33%;
        height: auto;
        padding:20px;
        text-align: center;
        margin:0;
    }
    .fac_box_02 .flex_box >div img,
    .fac_box_02 .flex_box >div video{
        width:  100%;
        height: 250px;
        object-fit: auto;

    }
    .fac_box_02 .flex_box >div.sm_01{
        width:100%;
    }
    .sd_text{
        width:100%;
        padding:20px;
    }
    .sd_01 br{
        display: none;
    }
    .sd_img{
        width:100%;
        padding:10px 0 0 0;
    }
    .sho{
        width:100%;
        padding:3px 30px;
    }


}

@media screen and (max-width: 639px) {
    #h-top #site-description {
        font-size: 0.7em;
        line-height: 140%;
        margin-bottom: 10px;
    }

}