/*------------------------------------------------------------
	FOR PC LAYOUT CSS
------------------------------------------------------------*/
@media screen and (min-width:768px){

/*------------------------------------------------------------
	BODY BASIC
------------------------------------------------------------*/
body{
width:100%;
min-width:82rem;
overflow:hidden;
font-size:16px;
line-height:1.75;
color:#745e48;
letter-spacing:.06em;
font-feature-settings:'palt';
background:url(img/bg.jpg) repeat;
}


/*------------------------------------------------------------
	RESPONSIVE
------------------------------------------------------------*/
.pconly{ display:block; }
.sponly{ display:none; }


/*------------------------------------------------------------
	HEADER
------------------------------------------------------------*/
header{
width:100%;
min-width:70rem;
display:flex;
justify-content:space-between;
align-items:center;
padding:10px 40px;
position:fixed;
top:0;
left:0;
z-index:10;
transition:all .5s;
}

.is-fixed header{
background:rgba(255,255,255,.9);
padding:10px 40px;
}

.head-l{
width:13.5rem;
display:flex;
align-items:center;
}
.class-name{
font-size:1.3rem;
line-height:1.4;
width:7.5rem;
margin-left:1.5rem;
font-weight:500;
}


.is-fixed .logo{
width:3.8rem;
}


.logo{
width:4.375rem;
transition:all .2s;
position:relative;
}
.logo a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:100;
}

.navi{
min-width:60rem;
display:flex;
align-items:center;
justify-content:space-between;
font-weight:500;
}
.navi li a{
font-size:15px;
color:#745e48;
padding:15px 0;
position:relative;
}

.navi li a::after{
content:'';
width:0;
height:1px;
background:#745e48;
transition:all .3s;
position:absolute;
bottom:0;
left:0;
}

.navi li a:hover::after{
width:100%;
height:1px;
background:#745e48;
}


.navi li:nth-child(7) a{
background:#745e48;
padding:15px 40px 15px 30px;
color:#fff;
border-radius:28px;
transition:all .2s;
position:relative;
}
.navi li:nth-child(7) a::after{
content:'';
width:6px;
height:6px;
border-right:2px solid #fff;
border-bottom:2px solid #fff;
transform:rotate(-45deg);
position:absolute;
top:50%;
right:15px;
left:auto;
bottom:auto;
margin-top:-4px;
background:none;
}


.navi li:nth-child(7) a:hover{
background:#FFB6C1;
color:#fff;
width:auto;
}



/*------------------------------------------------------------
	TOPPAGE
------------------------------------------------------------*/
#first{
width:100%;
position:relative;
display:flex;
justify-content:space-between;
align-items:center;
z-index:1;
height:auto;
padding:0;
overflow:visible;
}

.site-name{
padding:3rem 3rem 0 7rem;
width:100%;
max-width:30rem;
text-align:center;
font-weight:bold;
position:relative;
top:auto;
left:auto;
}
.site-name::before{
background:none;
}

.sn-sub-ttl{
font-size:1rem;
margin-bottom:2rem;
line-height:1.75;
}


.site-img{
width:100%;
max-width:90rem;
margin:0;
}
.site-img img{
width:auto;
height:auto;
border-radius:0 0 0 4rem;
}

.sn-mark{
font-family:'Kaisei Decol';
color:#745E48;
font-size:3rem;
line-height:1.5;
text-align:center;
width:16rem;
margin:0 auto 2.5rem;
}
.sn-en{
width:16rem;
margin:0 auto;
font-family:'Ephesis', cursive;
font-size:1.5rem;
}
.gosen01{
width:364px;
height:192px;
background:url(img/gosen01.svg) no-repeat;
background-size:364px;
position:absolute;
top:-2rem;
left:15rem;
z-index:2;
}


.gosen02{
width:364px;
height:192px;
background:url(img/gosen01.svg) no-repeat;
background-size:364px;
position:absolute;
bottom:-7.5rem;
right:-2rem;
z-index:2;
}


#index1{
padding:5rem 0;
max-width:80rem;
width:100%;
margin:0 auto;
}

.concept{
margin:0 auto;
text-align:center;
font-size:1.3rem;
margin-bottom:5rem;
font-weight:normal;
}
.concept span{
font-size:1.8rem;
display:block;
margin-bottom:1rem;
}

.t-cont-ttl{
font-size:3rem;
line-height:1.2;
color:#BC8F8F;
margin-bottom:2rem;
}

.t-cont-ttl span{
display:block;
font-size:1rem;
line-height:1.5;
position:relative;
padding-left:5rem;
color:#666;
margin-top:1rem;
}
.t-cont-ttl span::before{
content:'';
width:3rem;
height:1px;
background:#666;
position:absolute;
top:50%;
left:1rem;
}

.cont-ttl{
font-size:3rem;
line-height:1.2;
color:#BC8F8F;
margin-bottom:2rem;
}

.cont-ttl span{
display:block;
font-size:1rem;
line-height:1.5;
position:relative;
padding-left:5rem;
color:#666;
margin-top:1rem;
}
.cont-ttl span::before{
content:'';
width:3rem;
height:1px;
background:#666;
position:absolute;
top:50%;
left:1rem;
}

.cont-ttl2{
font-size:2.4rem;
color:#BC8F8F;
margin-bottom:2rem;
}

.cont-ttl2 span{
display:block;
font-size:1rem;
position:relative;
padding-left:5rem;
color:#666;
}
.cont-ttl2 span::before{
content:'';
width:3rem;
height:1px;
background:#666;
position:absolute;
top:50%;
left:1rem;
}

.trial{
width:62.5rem;
margin:0 auto;
display:flex;
justify-content:space-between;
padding:2.5rem 3rem;
position:relative;
align-items:center;
overflow:hidden;
}

.trial::after{
content:'';
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
background:url(img/bg01.jpg) repeat;
opacity:.2;
z-index:-1;
border-radius:1rem;
}

.trial::before{
content:'';
width:9rem;
height:9rem;
background:url(img/ill-key-note.png) no-repeat;
background-size:9rem;
opacity:.6;
position:absolute;
bottom:0;
right:0;
z-index:1;
}



.trial-img{
width:24rem;
margin:0;
}
.trial-img img{
width:24rem;
height:auto;
border-radius:0;
}

.trial-txt{
width:29rem;
}
.trial h2{
font-size:2rem;
margin-bottom:.75rem;
font-weight:normal;
}
.trial-desc{
margin-bottom:1.5rem;
}

.btn a{
padding:10px 40px 10px 20px;
background:#745e48;
color:#fff;
border-radius:24px;
transition:all .2s;
position:relative;
display:inline-block;
}


.btn a::after{
content:'';
width:6px;
height:6px;
border-right:2px solid #fff;
border-bottom:2px solid #fff;
transform:rotate(-45deg);
position:absolute;
top:50%;
right:15px;
left:auto;
bottom:auto;
margin-top:-4px;
}


.btn a:hover{
background:#FFB6C1;
color:#fff;
width:auto;
}


.philo{
padding:0 0 5rem;
max-width:80rem;
width:100%;
margin:0 auto;
}
.philo li{
width:70rem;
overflow:hidden;
margin:0;
}

.philo li:nth-child(odd){margin-right:10rem; }
.philo li:nth-child(even){margin-left:10rem; }


.philo li:nth-child(odd) .p-thumb{ float:left; position:relative; top:0; right:0;}
.philo li:nth-child(even) .p-thumb{ float:right; position:relative; top:0; left:0;}
.philo li:nth-child(odd) .p-txt{ float:right;}
.philo li:nth-child(even) .p-txt{ float:left;}



.p-thumb{
width:20rem;
height:20rem;
margin:0 auto;
position:relative;
top:auto;
left:auto;
}
.p-thumb img{
width:20rem;
height:20rem;
border-radius:50%;
overflow:hidden;
}
.philo li:nth-child(odd) .p-thumb img{ width:20rem; height:20rem; position:relative; right:0; }
.philo li:nth-child(even) .p-thumb img{  width:20rem; height:20rem; position:relative; left:0;} 

.p-txt{
width:45rem;
height:20rem;
display:flex;
flex-direction:column;
justify-content:center;
}

.p-ttl{
display:flex;
align-items:center;
margin-bottom:1.5rem;
}

.p-num01,
.p-num02,
.p-num03,
.p-num04{
width:4rem;
height:4rem;
text-align:center;
font-size:2rem;
color:#fff;
position:relative;
margin-right:1rem;
}
.p-num::after{
content:'';
width:4rem;
height:4rem;
background:url(img/bg01.jpg) no-repeat;
background-size:4rem;
border-radius:50%;
z-index:-1;
position:absolute;
top:0;
left:0;
}

.p-num01::after{
content:'';
width:4rem;
height:4rem;
background:rgba(219, 112, 147, .2);
border-radius:50%;
z-index:-1;
position:absolute;
top:0;
left:0;
}
.p-num02::after{
content:'';
width:4rem;
height:4rem;
background:rgba(255, 99, 71, .2);
border-radius:50%;
z-index:-1;
position:absolute;
top:0;
left:0;
}
.p-num03::after{
content:'';
width:4rem;
height:4rem;
background:rgba(102, 51, 153, .2);
border-radius:50%;
z-index:-1;
position:absolute;
top:0;
left:0;
}
.p-num04::after{
content:'';
width:4rem;
height:4rem;
background:rgba(128, 128, 0, .3);
border-radius:50%;
z-index:-1;
position:absolute;
top:0;
left:0;
}
.p-ttl h3{
font-size:2rem;
font-weight:normal;
}



#index2{
padding:2rem 0 8rem;
max-width:80rem;
width:100%;
margin:0 auto;
}


.i2col{
display:flex;
justify-content:space-between;
}
.i2colL{
width:24rem;
margin:0;
}

.t-lec-thumb{
width:15rem;
margin:0 auto 2rem;
position:relative;
}
.t-lec-thumb img{
border-radius:50%;
}
.t-lec-thumb::after{
content:'';
width:18rem;
height:18rem;
background:url(img/hanaframe.svg) no-repeat;
background-size:18rem;
position:absolute;
top:-1.2rem;
left:-1.5rem;
z-index:2;
opacity:.5;
}

.t-lec-name{
width:10rem;
margin:0 auto 1rem;
font-size:1.5rem;
}
.t-lec-name span.t-lec-post{
font-size:.8rem;
display:block;
}
.t-lec-name span.en{
color:#999;
font-size:.8rem;
display:block;
}

.t-lec-cc{
width:16rem;
margin:0 auto 1.5rem;
}





.i2colR{
width:50rem;
}


.feed{
width:50rem;
margin:0 0 3rem;
}
.feed li{
position:relative;
display:flex;
padding:2rem 1rem;
border-bottom:1px solid #a0845e;
}
.feed li a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}


.feed-info{
display:flex;
width:12rem;
justify-content:space-between;
font-size:.9rem;
line-height:2rem;
margin-right:3rem;
}

.feed-date{
margin:0;
}

.feed-ttl{
width:33rem;
}

.feed li:hover .feed-ttl{
text-decoration:underline;
}


/*------------------------------------------------------------
	PANKUZU
------------------------------------------------------------*/
#pankuzu{
max-width:80rem;
width:100%;
margin:0 auto;
font-size:11px;
line-height:20px;
padding:10px 0;
}
#pankuzu .current{
font-weight:normal;
}



/*------------------------------------------------------------
	PAGE
------------------------------------------------------------*/
#page{
padding:10rem 0 5rem;
max-width:75rem;
width:100%;
margin:0 auto;
}

.page-head{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:4rem;
position:relative;
}

.page-head::after{
content:'';
width:364px;
height:192px;
background:url(img/gosen01.svg) no-repeat;
background-size:364px;
position:absolute;
bottom:-5.5rem;
right:-8rem;
z-index:2;
}


.teaser{
width:50rem;
}
.teaser img{
border-radius:3rem;
}

#page section{
width:60rem;
margin:0 auto 5rem;
}

#page section h2{
font-weight:normal;
font-size:2rem;
margin-bottom:1rem;
}

.cc-sub{
font-size:1.5rem;
margin-bottom:1.5rem;
}

.page-desc{
font-size:1.1rem;
}

.c-md{
font-weight:normal;
font-size:1.5rem;
margin-bottom:.5rem;
padding-left:2.5rem;
position:relative;
}

.cp-p{
margin-bottom:2rem;
margin-left:2.5rem;
}

.c-md::before{
content:'';
width:2rem;
height:2rem;
position:absolute;
top:.35rem;
left:0;
}
.c-list li:nth-child(1) .c-md::before{
background:rgba(219, 112, 147, .2);
border-radius:50%;
}
.c-list li:nth-child(2) .c-md::before{
background:rgba(255, 99, 71, .2);
border-radius:50%;
}
.c-list li:nth-child(3) .c-md::before{
background:rgba(102, 51, 153, .2);
border-radius:50%;
}
.c-list li:nth-child(4) .c-md::before{
background:rgba(128, 128, 0, .3);
border-radius:50%;
}


.acc-ttl{
font-size:1.5rem;
line-height:2:
margin-bottom:1rem;
text-align:center;
}


.map-wrap{
width:600px;
margin:0 auto;
border-radius:2rem;
}




#page section p{
margin-bottom:1.5rem;
}

.page-link{
width:40rem;
margin:0 auto;
display:flex;
justify-content:center;
align-items:center;
position:relative;
}
.page-link a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}

.page-link-ttl{
font-size:1.3rem;
margin:0 1rem;
position:relative;
}
.page-link-ttl::before{
content:'';
width:1.5rem;
height:1.5rem;
background:url(img/arrow-right.svg) no-repeat;
background-size:1.5rem;
position:absolute;
top:50%;
left:-5rem;
transform:translate(0, -50%);
transition:all .3s;
}

.page-link:hover .page-link-ttl::before{
left:-4.5rem;
}


.page-link-ttl span{
display:block;
font-size:1rem;
}


.page-link-thumb{
width:8rem;
border-radius:50%;
overflow:hidden;
margin:0 2rem;
transition:all .2s;
}
.page-link:hover .page-link-thumb{
opacity:0.8;
}


/* LESSON */

h2.l-md{
text-align:center;
font-size:2rem;
color:#BC8F8F;
margin-bottom:2rem !important;
}

h2.l-md span{
display:block;
font-size:1rem;
position:relative;
color:#666;
}



.course li{
margin-bottom:0;
position:relative;
padding:0;
}
.course li::after{
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.course-thumb{
width:18rem;
border-radius:50%;
overflow:hidden;
}
.course-txt{
width:30rem;
height:18rem;
display:flex;
align-items:center;
justify-content:center;
flex-direction:column;
position:relative;
}

.course li h3{
font-size:1.6rem;
margin-bottom:.5rem;
font-weight:normal;
}

.course li p span{
display:block;
font-size:1.2rem;
line-height:2;
text-align:center;
margin-bottom:.5rem;
}


.course li:nth-child(1) .course-thumb{ float:left; position:relative; top:auto;left:auto;}
.course li:nth-child(2) .course-thumb{ float:right; position:relative; top:auto;right:auto;}

.course li:nth-child(1) .course-txt{ float:right; margin-right:8rem; }
.course li:nth-child(2) .course-txt{ float:left; margin-left:8rem; }

.fee{
width:40rem;
margin:0 auto;
display:flex;
justify-content:center;
flex-wrap:wrap;
font-size:1.1rem;
}
.fee dt{
width:9rem;
margin:0 3rem 0 0;
line-height:1.75;
}
.fee dd{
width:28rem;
margin-bottom:1rem;
line-height:1.75;
}
.fee dd span.yen{
color:#cc2728;
font-size:1.1em;
}


/* PROFILE */

.prof-ttl{
font-size:2rem;
color:#BC8F8F;
margin-bottom:1rem;
}

.prof-ttl span{
display:inline-block;
font-size:1rem;
position:relative;
padding-left:5rem;
color:#666;
}
.prof-ttl span::before{
content:'';
width:3rem;
height:1px;
background:#666;
position:absolute;
top:50%;
left:1rem;
}

.bio-list{
margin-bottom:1.5rem;
}

.bio-list li{
padding-left:1.5rem;
position:relative;
}
.bio-list li::before{
content:'';
width:.5rem;
height:.5rem;
background:#BC8F8F;
border-radius:50%;
position:absolute;
top:11px;
left:4px;
}


.prof{
display:flex;
justify-content:center;
align-items:center;
}
.prof-thumb{
width:16rem;
margin-right:5rem;
position:relative;
}
.prof-thumb img{
border-radius:50%;
}

.prof-thumb::after{
content:'';
width:18rem;
height:18rem;
background:url(img/hanaframe.svg) no-repeat;
background-size:18rem;
position:absolute;
top:-1rem;
left:-1rem;
opacity:.5;
}

.prof-txt{
width:20rem;
}

.p-lec-name{
font-size:1.6rem;
}
.p-lec-post{
display:block;
font-size:1rem;
}
.en{
display:block;
font-size:1rem;
color:#999;
}

/* FAQ */

.faq dt{
padding-left:4rem;
font-size:1.2rem;
margin-bottom:2rem;
position:relative;
}

.faq dt::before{
content:'Q';
width:3rem;
height:3rem;
display:inline-block;
background:rgba(219, 112, 147, .4);
border-radius:50%;
line-height:3rem;
font-size:1.4rem;
color:#fff;
text-align:center;
position:absolute;
top:-.45rem;
left:0;
}

.faq dd{
padding-left:4rem;
position:relative;
margin-bottom:3rem;
margin-left:1.5rem;
}


.faq dd::before{
content:'A';
width:3rem;
height:3rem;
display:inline-block;
background:rgba(70, 130, 180, .4);
border-radius:50%;
line-height:3rem;
font-size:1.4rem;
color:#fff;
text-align:center;
position:absolute;
top:-.625rem;
left:0;
}

/* RESULTS */

.c-year{
color:#BC8F8F;
font-size:2rem;
margin-bottom:2rem;
}

.compe-wrap{
margin-bottom:3rem;
}
.compe-name{
font-size:1.3rem;
line-height:2;
margin:0 0 .5rem 2rem;
}
.compeT{
width:100%;
margin-left:2rem;
}
.compeT th{
padding:1rem;
text-align:left;
border:1px solid #745E48;
background:rgba(188, 143, 143, .2)
}
.compeT th:nth-child(1),
.compeT th:nth-child(2){
width:40%;
}
.compeT th:nth-child(3){
width:20%;
}
.compeT td{
padding:.5rem 1rem;
border:1px solid #745E48;
}
.compeT tr:nth-child(odd){
background:rgba(210, 180, 140, .2);
}


/*------------------------------------------------------------
	CONTACT MW WP FORM
------------------------------------------------------------*/
.req{
display:inline-block;
font-size:12px;
color:#cc2728;
position:relative;
top:-4px;
left:4px;
}


.form {
width:100%;
margin-bottom:2rem;
}
.form dt {
text-align:left;
overflow:hidden;
white-space:nowrap;
margin-bottom:.5rem;
font-size:1.1rem;
}
.form dd {
margin-bottom:2rem;
}

input[type="text"],
input[type="email"]{
width:100%;
padding:10px;
border-radius:6px;
box-sizing:border-box;
background:#fff;
border:none;
}

textarea {
width:100%;
border-radius:6px;
padding:10px;
box-sizing:border-box;
background:#fff;
border:none;
}

.mwform-checkbox-field input, .mwform-radio-field input{
margin:0;
}



.mwform-tel-field input[type=text] {
width:25%;
border-radius:4px;
padding:10px;
-webkit-appearance: none;
}



.formBtn {
display:flex;
justify-content:center;
}
.formBtn li {
display:inline-block;
margin:0 5px;
}

.mw_wp_form_confirm .formBtn input:hover,
.mw_wp_form_input .formBtn input:hover,
#submitback input:hover{
background:#ffb6c1;
color:#fff;
}


.mw_wp_form_input .sbmBtn input {
background:#745e48;
color:#fff;
width:12rem;
height:4rem;
overflow:hidden;
border:none;
cursor:pointer;
border-radius:6px;
transition:all .2s;
-webkit-appearance: none;
}
.mw_wp_form_confirm .sbmBtn input {
background:#745e48;
color:#fff;
width:12rem;
height:4rem;
overflow:hidden;
border:none;
cursor:pointer;
border-radius:6px;
transition:all .2s;
-webkit-appearance: none;
}
.backBtn input {
background:#D2B48C;
color:#fff;
width:5rem;
height:4rem;
overflow:hidden;
border:none;
cursor:pointer;
margin-right:1rem;
border-radius:6px;
transition:all .2s;
-webkit-appearance: none;
}
/*------------------------------------------------------------
	CATEGORY ARCHIVE
------------------------------------------------------------*/
#cat{
padding:10rem 0 5rem;
max-width:75rem;
width:100%;
margin:0 auto;
}

#cat section{
width:60rem;
margin:0 auto 5rem;
}

#cat section h2{
font-weight:normal;
font-size:2rem;
margin-bottom:1rem;
}

/* REVIEWS */

.rev-list li{
position:relative;
padding:3rem 3rem;
border-radius:1rem;
margin-bottom:4rem;
}
.rev-list li:last-child{
margin:0;
}

.rev-list li::after{
content:'';
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
background:url(img/bg01.jpg) repeat;
opacity:.1;
z-index:-1;
border-radius:1rem;
}

.rev-ttl{
font-size:1.6rem;
margin-bottom:2rem;
padding-left:2.4rem;
position:relative;
}

.rev-ttl::before{
content:'';
width:2rem;
height:4.4rem;
position:absolute;
top:-.8rem;
left:-.5rem;
background:url(img/icon-tone.svg) no-repeat;
background-size:2rem;
opacity:.4;
}


.reviews dt{
padding-left:2.4rem;
position:relative;
font-size:1.1rem;
margin-bottom:.5rem;
}

.reviews dt::before{
content:'';
width:1.1rem;
height:1.1rem;
position:absolute;
top:.4rem;
left:.7rem;
}

.reviews dt:nth-child(1)::before{
background:rgba(219, 112, 147, .2);
border-radius:50%;
}
.reviews dt:nth-child(3)::before{
background:rgba(255, 99, 71, .2);
border-radius:50%;
}
.reviews dt:nth-child(5)::before{
background:rgba(102, 51, 153, .2);
border-radius:50%;
}
.reviews dt:nth-child(7)::before{
background:rgba(128, 128, 0, .3);
border-radius:50%;
}



.reviews dd{
padding-left:2.4rem;
margin-bottom:2rem;
}
.reviews dd:last-child{
margin-bottom:0;
}


/* GALLERY */

.gal-arc{
margin:0;
}
.gal-arc li{
padding:2rem 0;
overflow:hidden;
position:relative;
}

.gal-arc li a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}

.gal-arc li:first-child{
padding-top:0;
}

.gal-thumb{
width:16rem;
height:16rem;
border-radius:50%;
overflow:hidden;
}

.gal-txt{
width:30rem;
min-height:16rem;
display:flex;
justify-content:center;
flex-direction:column;
}

.gal-arc li:nth-child(odd) .gal-thumb{ float:left; }
.gal-arc li:nth-child(odd) .gal-txt{
float:right;
margin-right:10rem;
}

.gal-arc li:nth-child(even) .gal-thumb{ float:right; }
.gal-arc li:nth-child(even) .gal-txt{
float:left;
margin-left:10rem;
}






.archive{
width:60rem;
margin:0 auto 5rem;
}

.archive li{
position:relative;
padding:3.5rem 0;
}
.archive li::after{
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 1px;
background-size: 9px 3px;
background-image: linear-gradient(to right, #745e48, #745e48 1px, transparent 2px, transparent 2px);
background-repeat: repeat-x;
}
.archive li:last-child::after{
background:none;
}

.post-info{
display:flex;
margin-bottom:1rem;
}
.post-ttl{
font-size:2rem;
margin-bottom:1rem;
}

.post-cat{
margin-left:1rem;
}
.post-cat a{
color:#745e48;
}

.excerpt{
margin-bottom:1rem;
}

.more{
text-align:right;
}
.more a{
display:inline-block;
padding:.5rem 1.5rem;
border-radius:2rem;
color:#fff;
background:#745E48;
transition:all .2s;
}
.more a:hover{
background:#FFB6C1;
}



/*------------------------------------------------------------
	SINGLE
------------------------------------------------------------*/
#post{
padding:10rem 0 5rem;
max-width:75rem;
width:100%;
margin:0 auto;
}

#post section{
width:60rem;
margin:0 auto 5rem;
}

#post section h2{
font-weight:normal;
font-size:2rem;
margin-bottom:1rem;
}


.post{
margin:0 auto 5rem;
}

.post h3{
font-size:2rem;
line-height:2;
margin:1rem 0;
font-weight:normal;
}
.post p{
margin-bottom:2rem;
}
.post h4{
font-size:1.6rem;
line-height:2;
margin:1rem 0;
font-weight:normal;
}
.post h5{
font-size:1.2rem;
line-height:2;
margin:1rem 0;
font-weight:normal;
}

.post img{
margin:1rem 0;
}



/* GALLERY */

.gal-ttl{
font-size:2rem;
line-height:2;
margin-bottom:2rem;
text-align:center;
}

.gal-wrap{
width:50rem !important;
margin:0 auto;
}


.galSlider{
margin:0 auto 3rem;
}

.galSlider li img{
border-radius:2rem;
}

.galThumbs{
max-width:50rem;
margin:0 auto 5rem;
display:flex;
justify-content:center;
flex-wrap:wrap;
}
.galThumbs li{
width:4rem;
height:4rem;
margin:0 .5rem 1rem;
}
.galThumbs li img{
border-radius:1rem;
}

.gal-txt-box{
width:40rem;
margin:0 auto 5rem;
}


/*------------------------------------------------------------
	FOOTER
------------------------------------------------------------*/
footer{

position:relative;
}
footer::after{
content:'';
width:100%;
height:100%;
background:url(img/bg03.jpg) repeat;
opacity:.2;
position:absolute;
top:0;
left:0;
z-index:-1;
}

.footer-inner{
padding:5rem 0 2rem;
max-width:70rem;
width:100%;
margin:0 auto;
display:flex;
justify-content:space-between;
align-items:end;
}
.f-left{
width:20rem;
text-align:center;
position:relative;
}

.gosen03{
width:200px;
height:124px;
background:url(img/gosen02.svg) no-repeat;
background-size:200px;
position:absolute;
top:-3rem;
left:78%;
}


.f-logo{
margin:0 auto 2rem;
}
.f-icon{
width:4rem;
margin:0 auto 2rem;
}
.f-site-logo{
text-align:center;
font-size:2.2rem;
line-height:1.5;
color:#745E48;
width:12rem;
margin:0 auto;
}

.f-add{
margin-bottom:.4rem;
}

.f-add a{
display:inline-block;
width:1rem;
height:1rem;
margin-left:.2rem;
color:#745e48;
}
.f-add a:hover{
color:#FFB6C1;
}

.f-tel{
font-size:1.2rem;
}
.f-tel li{
position:relative;
}

.f-mail a{
color:#745e48;
}


.f-right{
width:40rem;
flex-direction:column;
}



.f-navi{
display:flex;
flex-wrap:wrap;
margin-bottom:2rem;
}

.f-navi li{
width:30%;
margin-right:5%;
}
.f-navi li:nth-child(3n){
margin-right:0;
}

.f-navi li a{
padding:.5rem 0;
color:#745e48;
position:relative;
display:block;
}

.f-navi li a span{
display:block;
font-size:.7rem;
padding-left:2rem;
position:relative;
}
.f-navi li a span::before{
content:'';
width:1.5rem;
height:1px;
background:#745e48;
position:absolute;
top:50%;
left:0;
}


.f-contact{
margin-left:5rem;
width:35rem;
display:flex;
align-items:center;
justify-content:flex-end;
height:4rem;
position:relative;
}
.f-contact::after{
content:'';
width:100%;
height:100%;
border-right:1px solid #745e48;
border-bottom:1px solid #745e48;
position:absolute;
bottom:-.3rem;
right:-.3rem;
z-index:-1;
}
.f-cc{
width:25rem;
height:4rem;
border:1px solid #745e48;
border-right:0;
padding:0 1rem 0 4.6rem;
display:flex;
justify-content:center;
flex-direction:column;
position:relative;
}

.f-cc::before{
content:'';
width:2.4rem;
height:2.6rem;
background:url(img/heart-circle.svg) no-repeat;
background-size:2.4rem;
position:absolute;
top:.7rem;
left:1rem;
}


.f-cc span{
display:block;
font-size:.8rem;
}

.f-c-link{
width:10rem;
height:4rem;
}


.f-c-link a{
width:10rem;
height:4rem;
display:flex;
align-items:center;
color:#745e48;
justify-content:center;
text-align:center;
border:1px solid #745e48;
transition:all .2s;
}
.f-c-link a:hover{
background:#745e48;
color:#fff;
}





.copy{
text-align:center;
font-size:.7rem;
padding:1rem 0;
}





/*------------------------------------------------------------
	END PC LAYOUT CSS
------------------------------------------------------------*/
}