@charset "utf-8";

/* Key
--------------------------------------------------------------------------*/

section.contents-tx, section.contents-tx2{
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin: auto;
    padding: 0;
}

section.contents-tx div.cnt-box{
    box-sizing: border-box;
	width: 100%;
    max-width: 1000px;
	padding: 25px 0px 25px 0px;
    margin: auto;
}

section.contents-tx2 div.cnt-box{
    box-sizing: border-box;
	width: 100%;
    max-width: 1000px;
	padding: 45px 0px 25px 0px;
    margin: auto;
}

section.contents-info{
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin: auto;
    padding: 10px 0 0 0;
    background:#faf8f0;
}

section.contents-info div.cnt-box{
    box-sizing: border-box;
	width: 100%;
    max-width: 1000px;
	padding: 45px 0px 45px 0px;
    margin: auto;
    border-bottom: dotted 1px #CFCDC3 !important;
}

section.contents-info div.cnt-box:last-child{
    border-bottom: none !important;
	padding: 45px 0px 45px 0px;
}


#key section.key-v{
    position: relative;
    box-sizing: border-box;
    width: 100%;
    background:#faf8f0;
}

#key section.key-v div.cnt-box-f{
    position: relative;
    width: 100%;
    max-width: 1000px;
    margin: auto;
}

#key section.key-v div.cnt-box-f div.cnt-box-r img{
    margin-top: 5%;
}

#key section.key-v div.key-v-tx{
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    padding: 30px 40px 10px 40px;
    background: #EFEFEF;
}


#key section.key-v div.ct-logo{
    margin-top: 15%;
}

#key section.key-v p{
    margin-bottom: 0px;
}

#key section.key-v div.tm{
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 30px;
    color: #f25488 !important;
    font-weight: bold !important;
  display: flex;
  justify-content: left;
  align-items: center;
    overflow: hidden;
}

#key section.key-v div.tm span.tm-box{
    position: relative;
    box-sizing: border-box;
    background: #f25488;
    padding: 15px 20px;
    color: #FFFFFF;
    font-weight: bold;
    display:inline-block;
    font-size: 110%;
    text-align: center;
}

#key section.key-v  div.tm span.tm-tx{
    position: relative;
    padding: 0 20px;
    font-size: 180%;
    font-weight: bold;
    display:inline-block;
}

#contents-key {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    padding: 0;
    border-top: 4px solid #3dbddf;
}

#key h4 {
    background: #3dbddf;
}

#key section#contents{
    padding: 0px 0 10px 0;
}


#key section#contents h6{
    position: relative;
    padding-left: 55px;
    border-bottom: none;
    margin-bottom: 15px;
    font-size: 140%;
}

#key section#contents h6:before{
    content:url("../img/yoga/icon-h5.png");
    position: absolute;
    display: inline-block;
    width: 50px;
    height: 46px;
    top:-7px;
    left: 0;
    margin: auto;
}


section.contents-tx h3{
    margin-bottom: 60px;
}

section.contents-tx p{
    margin-bottom: 0px;
}


h3.key-mark{
    margin:0 0 40px 0;
}

h3.key-mark img{
    width: 20%;
    margin: auto;
}


#key div.shop-info{
    display: block;
    margin-bottom: 15px;
}

#key .key-v-area{
    position:relative;
    width: 100%;
    background:#faf8f0;
}

#key .key-v-box{
    position:relative;
    box-sizing: border-box;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    background:url("../img/key/key-v-bg.png");
    overflow: hidden;
}

#key .key-v-box div.key-v-img-area{
    position:relative;
    width: 45%;
    float: left;
}

#key .key-v-box div.key-v-tx-area{
    position:relative;
    box-sizing: border-box;
    width: 55%;
    padding: 80px 3% 80px 0;
    float: right;
}

#key .key-v-box div.key-v-tx-area h3{
    color:#a61e42;
    background: none;
    text-align: center;
    font-size: 68px;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    padding: 0;
    margin-bottom: 12px;
}

#key .key-v-box div.key-v-tx-area h4{
    color:#111111;
    background: none;
    text-align: center;
    font-size: 30px;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    padding: 0;
    margin-bottom: 8px;
}

#key .key-v-box div.key-v-tx-area h5{
    color:#111111;
    font-size: 26px;
    padding: 0;
    margin-bottom: 5px;
}

#key .key-v-box div.key-v-tx-area h6{
    color:#111111;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    font-style: italic;
    font-size: 13px;
    padding: 0;
    margin-bottom: 40px;
    border: none;
    text-align: center;
}

#key .key-v-box div.key-v-tx-area p{
    box-sizing: border-box;
    color:#111111;
    font-size: 18px;
    margin:0 30px 0 30px;
}

.key-thc-area div.cnt-box-f{
    margin: 0 5%;
}

.key-thc-area h5{
    margin-bottom: 5px !important;
}

.key-thc-area h6{
    color:#FFF !important;
    background: #dd3b0b;
    padding: 8px 15px 6px 15px !important;
    border: none;
	border-radius:40px;
    font-size: 16px;
    margin: 0px auto 15px auto !important;
}

.key-thc-area img{
    margin-bottom: 5px;
}

.key-thc-area p.key-thc-no1, .key-thc-area p.key-thc-no2, .key-thc-area p.key-thc-no3{
    position: relative;
    box-sizing: border-box;
    padding: 0 0 0 40px;
    display: inline-block;
    line-height: normal !important;
    font-size: 16px !important;
}

.key-thc-area p.key-thc-no1:before, .key-thc-area p.key-thc-no2:before, .key-thc-area p.key-thc-no3:before {
    position: absolute;
    display: inline-block;
    margin-left: -40px;
    margin-top: -10px;
    font-size: 45px;
    color: #7BE0E1;
}

.key-thc-area p.key-thc-no1:before {
    content: "1";
}

.key-thc-area p.key-thc-no2:before {
    content: "2";
}

.key-thc-area p.key-thc-no3:before {
    content: "3";
}

.key-thc-cbw3{
    width: 33%;
    margin-right: 2%;
}

.key-thc-cbw3e{
    width: 30%;
}

@media screen and (max-width:1050px) {

section.contents-tx div.cnt-box{
	padding: 25px 5% 25px 5%;
}

section.contents-tx2 div.cnt-box{
	padding: 45px 5% 25px 5%;
}

section.contents-info div.cnt-box{
	padding: 45px 5% 45px 5%;
}

section.contents-info div.cnt-box:last-child{
    border-bottom: none !important;
	padding: 45px 5% 0px 5%;
}

}

@media screen and (max-width:640px) {

section.contents-tx div.cnt-box{
	padding: 20px 8% 10px 8%;
}

section.contents-tx2 div.cnt-box{
	padding: 20px 8% 10px 8%;
}

section.contents-info div.cnt-box{
	padding: 20px 8% 10px 8%;
}

section.contents-info div.cnt-box:last-child{
    border-bottom: none !important;
	padding: 20px 8% 0px 8%;
}
    
section.contents-info div.cnt-box{
    max-width:none;
}

section.contents-info div.cnt-box{
    box-sizing: border-box;
	width: 100%;
    max-width: 1000px;
    margin: auto;
    border-bottom: dotted 1px #CFCDC3;
}

#key section.key-v div.ct-logo{
    margin-top: 5%;
}
    
#key section.key-v div.cnt-box-f div.cnt-box-r img{
    margin-top: 0;
}

h3.key-mark img{
    width: 40%;
    margin: auto;
}
    
#key .key-v-box div.key-v-img-area{
}

#key .key-v-box div.key-v-tx-area{
    padding: 30px 3% 30px 0;
}

#key .key-v-box div.key-v-tx-area h3{
    font-size: 40px;
    padding: 0;
    margin-bottom: 12px;
}

#key .key-v-box div.key-v-tx-area h4{
    font-size: 20px;
    padding: 0;
    margin-bottom: 8px;
}

#key .key-v-box div.key-v-tx-area h5{
    font-size: 18px;
    padding: 0;
    margin-bottom: 5px;
}

#key .key-v-box div.key-v-tx-area h6{
    font-size: 10px;
    padding: 0;
    margin-bottom: 20px;
}

#key .key-v-box div.key-v-tx-area p{
    font-size: 14px;
    margin:0;
}

}


@media screen and (max-width:440px) {

#key section.key-v div.tm{
  display:block;
  justify-content: left;
  align-items: center;
    overflow: hidden;
}

#key section.key-v div.tm span.tm-box{
    position: relative;
    padding: 8px 15px;
    display:block;
    font-size: 100%;
    width: 50%;
    margin-bottom: 10px;
}

#key section.key-v  div.tm span.tm-tx{
    position: relative;
    padding: 0px;
    font-size: 140%;
    display:block;
    width: 100%;
}

h3.key-mark img{
    width: 60%;
    margin: auto;
}

#key .key-v-box div.key-v-img-area{
    float:none;
    width: 50%;
    margin: auto;
}

#key .key-v-box div.key-v-tx-area{
    float:none;
    width: 100%;
    padding: 0 10% 30px 10%;
}

#key .key-v-box div.key-v-tx-area h3{
    font-size: 30px;
    padding: 0;
    margin-bottom: 10px;
}

#key .key-v-box div.key-v-tx-area h4{
    font-size: 18px;
    padding: 0;
    margin-bottom: 8px;
}

#key .key-v-box div.key-v-tx-area h5{
    font-size: 16px;
    padding: 0;
    margin-bottom: 5px;
}

#key .key-v-box div.key-v-tx-area h6{
    font-size: 10px;
    padding: 0;
    margin-bottom: 20px;
}

#key .key-v-box div.key-v-tx-area p{
    font-size: 14px;
    margin:0;
}

    
}


@media screen and (max-width:640px) {
    

.cp_actab input:checked ~  .cp_key-map { max-height:none; }

#key .cp_actab label {
    position:absolute;
    width: 70%;
    top:0;
    bottom: auto;
}
    
.page-sn-box-dtl img{
    width: 96%;
    margin: 0 2% 20px 2%x;
}
}


/* photo_layout
--------------------------------------------------------------------------*/

.img-hf img{
    width: 48%;
    display: inline-block;
}

.img-hf img:first-child{
    margin-right: 4%;
}


#key div.cnt-box-info{
    width: 100%;
}


@media screen and (max-width:640px) {


#key div.cnt-box-info{
    width: 70%;
    margin: 0 15%;
}

}

div.sp-data p:last-child{
    margin-bottom: 40px;
}

div.sp-data p.mb-30{
    margin-bottom: 30px;
}



#key h5.profile{
    text-align: center;
    font-size: 120%;
    margin-top: 20px;
}



/*PAGE NAVI
------------------------------------------------*/

#key section.page-navi li a{
    width: 31.333%;
    margin: 0 1%;
}



