/*------------------------------------------------------------
	FOR PC LAYOUT CSS
------------------------------------------------------------*/
@media screen and (min-width:768px){

/*------------------------------------------------------------
	BODY BASIC
------------------------------------------------------------*/
body{
font-size:16px;
line-height:1.75;
color:#333;
font-feature-settings:'palt';
font-weight:500;
width:100%;
overflow:hidden;
}

/*------------------------------------------------------------
	RESPONSIVE
------------------------------------------------------------*/
.pconly{ display:block; }
.sponly{ display:none; }


/*------------------------------------------------------------
	HEADER
------------------------------------------------------------*/
header{
position:fixed;
z-index:10;
width:100%;
padding:20px;
}
.corp-logo{
width:200px;
}

/*------------------------------------------------------------
DRAWER MENU
------------------------------------------------------------*/
#menuBtn{
position:fixed;
top:1rem;
right:2rem;
width:5rem;
height:5rem;
background-image: linear-gradient(120deg, #f6d365 0%, #fda085 100%);
cursor:pointer;
z-index:9999;
border-radius:50%;
}
#menuBtn span{
display:block;
position:absolute;
height:3px;
width:2.5rem;
border-radius:1.5px;
background:#fff;
left:0;
transition:all 0.2s ease-in-out;
}

#menuBtn span:nth-child(1){
top:1.5rem;
left:1.25rem;
}
#menuBtn span:nth-child(2){
top:calc(2.5rem - 1.5px);
left:1.25rem;
}
#menuBtn span:nth-child(3){
top:calc(3.5rem - 3px);
left:1.25rem;
}

.active#menuBtn span:nth-child(1){
top:2.4rem;
transform:rotate(45deg);
background:#fff;
}
.active#menuBtn span:nth-child(2){
width:0;
left:50%;
}

.active#menuBtn span:nth-child(3){
top:2.4rem;
transform:rotate(-45deg);
background:#fff;
}

#menuBox{
display:none;
width:100%;
background:linear-gradient(to bottom, #F5FFFA 0%, #FFF0F5 50%, #F5FFFA 100%)
height:100vh;
position:fixed;
top:0;
left:0;
box-sizing:border-box;
z-index:9998;
}

#menuBox.active{
display:block;
}

.menuInner{
width:100%;
height:100dvh;
display:flex;
align-items:center;
transform:translateX(-30px);
transition:all .5s;
opacity:.5;
}
.menuInner.active{
transform:translateX(0);
opacity:1;
}


.menu{
width:60rem;
margin:0 auto;
}
.menu li:nth-child(1) a{
background:linear-gradient(to right, #3ab5b0 0%, #3d99be 31%, #56317a 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.menu li:nth-child(2) a{
background:linear-gradient(to right, #eea2a2 0%, #bbc1bf 19%, #57c6e1 42%, #b49fda 79%, #7ac5d8 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.menu li:nth-child(3) a{
background:linear-gradient(to right, #4fb576 0%, #44c489 30%, #28a9ae 46%, #28a2b7 59%, #4c7788 71%, #6c4f63 86%, #432c39 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.menu li:nth-child(4) a{
background:linear-gradient(to right, #e4afcb 0%, #b8cbb8 0%, #b8cbb8 0%, #e2c58b 30%, #c2ce9c 64%, #7edbdc 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.menu li:nth-child(5) a{
background:linear-gradient(to right, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.menu li:nth-child(6) a{
background-image: linear-gradient(to right, #5ee7df 0%, #b490ca 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.menu li:nth-child(7) a{
background-image: linear-gradient(to right, #3f51b1 0%, #5a55ae 13%, #7b5fac 25%, #8f6aae 38%, #a86aa4 50%, #cc6b8e 62%, #f18271 75%, #f3a469 87%, #f7c978 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.menu li:nth-child(8) a{
background-image: linear-gradient(to right, #ff8177 0%, #ff867a 0%, #ff8c7f 21%, #f99185 52%, #cf556c 78%, #b12a5b 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}


.menu li a{
font-size:3rem;
line-height:5rem;
font-weight:bold;
color:#000;
display:block;
transition:all .3s;
margin:0;
}
.menu li a:hover{
filter:hue-rotate(90deg);
}



/*------------------------------------------------------------
	TOPPAGE
------------------------------------------------------------*/
#kv{
width:100%;
height:100vh;
position:relative;
background:url(img/slide1.jpg) no-repeat right center;
background-size:cover;
}

.top-copy{
width:870px;
height:240px;
position:absolute;
top:50%;
left:15%;
transform:translate(0, -50%);
font-weight:bold;
}

.sub-copy{
font-size:1.35rem;
line-height:1.5;
letter-spacing:.2rem;
margin-bottom:.75rem;
font-weight:bold;
}
.sub-copy span{
display:inline-block;
padding:.5rem 3rem .3rem;
background:#fff;
border-radius:5rem;
}


.main-ttl{
font-size:3.125rem;
font-weight:bold;
line-height:1.25;
letter-spacing:.2rem;
margin-bottom:.75rem;
}
.main-ttl span{
display:inline-block;
padding:.5rem 3rem .1rem;
background:#fff;
border-radius:5rem;

}

.sub-ttl{
font-size:2.5rem;
font-weight:bold;
line-height:1.25;
letter-spacing:.3rem;
margin-bottom:2rem;
}
.sub-ttl span.frame{
display:inline-block;
padding:.5rem 3rem .2rem;
background:#fff;
border-radius:5rem;
}
.sub-ttl span.str{
font-size:2.7rem;
color:#FF1493;
font-weight:bold;
}


.p-name{
font-size:.8rem;
color:#666;
}



#index1{
background:linear-gradient(to bottom, #F0FFFF 0%, #87CEFA 40%, #FFE4E1 80%);
}

.i1-wrap{
padding:5rem 0 6rem;
max-width:80rem;
width:94%;
margin:0 auto;
}
.i1-ttl{
font-size:3rem;
line-height:2;
margin-bottom:2rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #3ab5b0 0%, #3d99be 31%, #56317a 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.i1-lead{
font-size:1.35rem;
font-weight:500;
margin-bottom:5rem;
text-align:center;
}

.prob-list{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
margin-bottom:8rem;
}
.prob-list li{
width:48%;
background:#fff;
border-radius:2rem;
padding:3rem;
margin-bottom:4rem;
position:relative;
}
.prob-list li:nth-child(even){
margin:4rem 0 0;
}

.prob-list li::before{
content:'!';
width:5rem;
height:5rem;
background:#FFC0CB;
text-align:center;
border-radius:2.5rem;
font-size:3rem;
line-height:5rem;
color:#fff;
font-weight:900;
position:absolute;
top:-2rem;
left:-2rem;
transform:rotate(15deg);
}




.prob{
}

.prob dt{
font-size:1.9rem;
line-height:1.5;
margin-bottom:1rem;
color:#DB7093;
font-weight:bold;
padding-bottom:3rem;
position:relative;
text-align:center;
}

.prob dt::after{
content:'';
width:0;
height:0;
border-top:1.5rem solid #fecdd3;
border-left:2.5rem solid transparent;
border-right:2.5rem solid transparent;
position:absolute;
bottom:.5rem;
left:50%;
margin-left:-2.5rem;
}


.prob dt span{
display:block;
font-size:1rem;
font-weight:bold;
line-height:2;
}

.prob dd{
font-size:1.2rem;
border-radius:1rem;
}
.solu{
font-weight:bold;
color:#4169E1;
font-size:1.5rem;
line-height:1.5;
margin-bottom:1rem;
}

.i1-catch{
font-size:2.7rem;
text-align:center;
line-height:1.5;
background-image: linear-gradient(to right, #00dbde 0%, #fc00ff 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-weight:bold;
}



#index2{
background:linear-gradient(to bottom, #FFE4E1 0%, #FFF8DC 30%, #7FFFD4 100%);
}

.i2-wrap{
padding:4rem 0 6rem;
max-width:80rem;
width:94%;
margin:0 auto;
}
.i2-ttl{
font-size:3rem;
line-height:2;
margin-bottom:4rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #eea2a2 0%, #bbc1bf 19%, #57c6e1 42%, #b49fda 79%, #7ac5d8 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.reason{
max-width:80rem;
width:94%;
margin:0 auto 5rem;
display:flex;
justify-content:center;
gap:4rem;
font-size:1.1rem;
}
.reason li{
width:30%;
}
.r-img{
border-radius:1rem;
overflow:hidden;
}
.r-txt{
margin:1rem 0 0;
}
.r-ttl{
font-size:2rem;
font-weight:bold;
line-height:1.4;
margin-bottom:1rem;
}
.r-num{
font-size:1rem;
line-height:2;
margin-bottom:.5rem;
}

.r-num span{
width:2rem;
height:2rem;
margin-left:.5rem;
color:#fff;
border-radius:50%;
display:inline-block;
text-align:center;
}
.reason li:nth-child(1) .r-num span{ background-image: linear-gradient(to right, #fbc2eb 0%, #a6c1ee 100%); }
.reason li:nth-child(2) .r-num span{ background-image: linear-gradient(to right, #84fab0 0%, #8fd3f4 100%); }
.reason li:nth-child(3) .r-num span{ background-image: linear-gradient(to right, #f093fb 0%, #f5576c 100%); }



.r-txt p span{
font-size:1.2rem;
font-weight:bold;
color:#ff4500;
}

.i2-catch{
text-align:center;
font-size:2.75rem;
font-weight:bold;
line-height:2;
margin-bottom:1rem;
}

.i2-catch span:nth-child(1){
background-image: linear-gradient(to right, #f9d423 0%, #ff4e50 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
display:inline;
}


.i2-catch span:nth-child(2){
background-image: linear-gradient(to right, #50cc7f 0%, #f5d100 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
display:inline;
}

.i2-catch span:nth-child(3){
background-image: linear-gradient(to right, #0acffe 0%, #495aff 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
display:inline;
}


.i2-catch-desc{
text-align:center;
font-size:1.5rem;
line-height:2;
margin-bottom:4rem;
font-weight:bold;
}

.link{
text-align:center;
display:flex;
align-items:center;
justify-content:center;
height:5rem;
}

.btn-ef{
display:flex;
align-items:center;
}

.icon-comment{
width:4rem;
height:4rem;
color:#fff;
margin-right:2rem;
}

.icon-comment svg{
width:64px;
height:64px;
}



.link a{
font-size:2rem;
font-weight:bold;
  display: inline-block;
padding:1.2rem 3rem .8rem 2rem;
  background: linear-gradient(to right, #00dbde, #fc00ff);
  color: #fff;
  font-weight: bold;
  border-radius: 999px;
  text-decoration: none;
  transition:all 0.3s ease;

}

/* hover時にbounceアニメーションを適用 */
.link a:hover {
  animation: bounce 0.4s ease;
filter:brightness(1.1);
}

@keyframes bounce {
  0%   { transform: scale(1); }
  30%  { transform: scale(1.1); }  /* 少し大きく */
  60%  { transform: scale(0.95); } /* 少し戻る */
  100% { transform: scale(1); }    /* 元に戻る */
}


#index3{
background:linear-gradient(to bottom, #7FFFD4 0%, #F0E68C 50%, #FAEBD7 100%);
}

.i3-wrap{
padding:4rem 0 6rem;
max-width:80rem;
width:94%;
margin:0 auto;
}
.i3-ttl{
font-size:3rem;
line-height:2;
margin-bottom:2rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #4fb576 0%, #44c489 30%, #28a9ae 46%, #28a2b7 59%, #4c7788 71%, #6c4f63 86%, #432c39 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.flow{
width:60rem;
margin:0 auto 5rem;
}

.flow li{
display:flex;
gap:0 4rem;
padding:2rem 0;
position:relative;
}
.flow li::after{
content:'';
width:0;
height:0;
border-top:1rem solid #fff;
border-right:1.5rem solid transparent;
border-left:1.5rem solid transparent;
position:absolute;
bottom:-.55rem;
left:3.5rem;
}
.flow li:last-child::after{
border:none;
}

.flow-icon{
width:10rem;
}
.flow-icon img{
width:10rem;
height:10rem;
object-fit:cover;
border-radius:1rem;

}
.flow-txt{
width:46rem;
font-size:1.1rem;
line-height:1.5;
display:flex;

flex-direction:column;
justify-content:center;
}
.flow-ttl{
font-size:1.6rem;
line-height:2;
font-weight:bold;
margin-bottom:.5rem;
display:flex;
align-items:center;
}

.flow-ttl span{
display:inline-block;
width:3rem;
height:3rem;
text-align:center;
margin-right:1rem;
border-radius:50%;
color:#fff;
}
.flow li:nth-child(1) .flow-ttl span{ background-image: linear-gradient(120deg, #2af598 0%, #009efd 100%); }
.flow li:nth-child(2) .flow-ttl span{ background-image: linear-gradient(120deg, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%); }
.flow li:nth-child(4) .flow-ttl span{ background-image: linear-gradient(120deg, #37ecba 0%, #72afd3 100%);}
.flow li:nth-child(3) .flow-ttl span{ background-image: linear-gradient(120deg, #43e97b 0%, #38f9d7 100%);}
.flow li:nth-child(5) .flow-ttl span{ background-image: linear-gradient(120deg, #f78ca0 0%, #f9748f 19%, #fd868c 60%, #fe9a8b 100%);}

.period{
width:50rem;
margin:0 auto;
padding:1rem 5rem;
background:#fff;
font-size:1.2rem;
border-radius:3.5rem;
display:flex;
align-items:center;
}

.icon-dia{
width:5rem;
height:5rem;
margin-right:3rem;
}

.icon-dia svg{
width:5rem;
height:5rem;
}

.per-txt{
width:33rem;
}
.period h3{
font-size:2rem;
font-weight:bold;
line-height:3rem;
position:relative;
}

.period p{
line-height:2rem;
}

.period p span{
font-size:.9em;
}





#index4{
background:linear-gradient(to bottom, #FAEBD7 0%, #F0FFFF 50%, #D8BFD8 100%);
}


.i4-wrap{
padding:4rem 0 6rem;
max-width:80rem;
width:94%;
margin:0 auto;
}
.i4-ttl{
font-size:3rem;
line-height:2;
margin-bottom:2rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #e4afcb 0%, #b8cbb8 0%, #b8cbb8 0%, #e2c58b 30%, #c2ce9c 64%, #7edbdc 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.faq{
width:50rem;
margin:0 auto 3rem;
background:#fff;
padding:2rem 4rem;
border-radius:2rem;
}
.faq-last{
margin-bottom:6rem;
}

.faq dt{
min-height:4rem;
display:flex;
align-items:center;
font-size:1.75rem;
line-height:1.5;
padding:0 0 0 6rem;
position:relative;
margin-bottom:2rem;
}
.faq dt::before{
content:'Q';
width:4rem;
height:4rem;
text-align:center;
color:#fff;
background-image: linear-gradient(to top, #9795f0 0%, #fbc8d4 100%);
border-radius:50%;
font-size:2rem;
position:absolute;
top:0;
left:0;
line-height:4rem;
}

.faq dd{
background:#fff;
padding:0 0 0 6rem;
position:relative;
font-size:1.5rem;
line-height:1.5;
}

.faq dd::before{
content:'A';
width:4rem;
height:4rem;
text-align:center;
color:#fff;
font-size:2rem;
background-image: linear-gradient(to top, #ff758c 0%, #ff7eb3 100%);
position:absolute;
top:-.8rem;
left:0;
line-height:4rem;
border-radius:50%;
}








#index5{
padding:4rem 0 6rem;
background:linear-gradient(to bottom, #D8BFD8 0%, #FFF0F5 50%, #F5FFFA 100%);
}

.i5-ttl{
font-size:3rem;
line-height:2;
margin-bottom:2rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.i5-desc{
font-size:1.2rem;
font-weight:bold;
text-align:center;
margin:0 auto 4rem;
}



.function{
width:80rem;
margin:0 auto 6rem;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
gap:4rem;
}
.function li{
width:24rem;
margin:0;
}

.func-img{
border-radius:1rem;
overflow:hidden;
}
.func-ttl{
margin:1rem 0;
font-size:1.3rem;
line-height:1.25;
font-weight:bold;
position:relative;
padding:.375rem 0 0 2.4rem;
}
.func-ttl span{
position:absolute;
top:0;
left:0;
width:2.1rem;
height:2.1rem;
border-radius:50%;
color:#fff;
text-align:center;
line-height:2rem;
}
.function li:nth-child(1) .func-ttl span{background-image: linear-gradient(to right, #37ecba 0%, #72afd3 100%); }
.function li:nth-child(2) .func-ttl span{background-image: linear-gradient(to right, #e8198b 0%, #c7eafd 100%);}
.function li:nth-child(3) .func-ttl span{background-image: linear-gradient(to right, #9795f0 0%, #fbc8d4 100%); }
.function li:nth-child(4) .func-ttl span{background-image: linear-gradient(to right, #88d3ce 0%, #6e45e2 100%); }
.function li:nth-child(5) .func-ttl span{background-image: linear-gradient(to right, #abecd6 0%, #fbed96 100%); }
.function li:nth-child(6) .func-ttl span{background-image: linear-gradient(to right, #d558c8 0%, #24d292 100%); }

.func-desc{
padding-left:2.4rem;
}


.i5-catch{
font-size:3rem;
text-align:center;
line-height:1.5;
background-image: linear-gradient(to right, #00dbde 0%, #fc00ff 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-weight:bold;
}
.i5-catch span{
color:#ff4500;
 -webkit-text-fill-color: #ff4500;
font-size:4rem;
display:inline-block;
margin:0 .5rem;
position:relative;
top:.2rem;
}





#index6{
padding:4rem 0 6rem;
background:linear-gradient(to bottom, #F5FFFA 0%, #FFF0F5 50%, #F5FFFA 100%);
}

.i6-ttl{
font-size:3rem;
line-height:2;
margin-bottom:3rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #5ee7df 0%, #b490ca 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.i6-desc{
text-align:center;
font-size:1.2rem;
line-height:1.5;
margin:0 auto 5rem;
}

.slick-slide{
margin:0 .5rem;
}


.ex-image{
position:relative;
}
.ex-image a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}

.ex-image img{
transition:all .2s;
}

.ex-image:hover img{
transform:scale(1.05);
}


.ex-txt{
display:flex;
justify-content:center;
font-size:.8rem;
margin:1rem 0 0;
gap:0 .5rem;
}




#contact{
width:100%;
padding:0 0 5rem;
background:url(img/contactbg3.jpg) no-repeat right top;
/*background:url(img/piano-sabaku.jpg) no-repeat center center;*/
background-size:cover;
position:relative;
}

#contact::afterx{
  content: "";
  position: absolute;
  inset: 0;
background-image: linear-gradient(to top, #48c6ef 0%, #6f86d6 100%);
/*  background-image: linear-gradient(-225deg, #D4FFEC 0%, #57F2CC 48%, #4596FB 100%); */
  mix-blend-mode: overlay; /* ← 合成モード */
  opacity: 0.7;
z-index:1;
}
.contact-cont{
width:100%;
max-width:50rem;
margin:0 auto;
position:relative;
z-index:2;
}





.contact-ttl{
font-size:3rem;
line-height:2;
margin-bottom:1.5rem;
font-weight:bold;
text-align:center;
background-image: linear-gradient(to right, #3f51b1 0%, #5a55ae 13%, #7b5fac 25%, #8f6aae 38%, #a86aa4 50%, #cc6b8e 62%, #f18271 75%, #f3a469 87%, #f7c978 100%);
/*background-image: linear-gradient(-225deg, #77FFD2 0%, #6297DB 48%, #1EECFF 100%);*/
 background-blend-mode: multiply;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.contact-desc{
text-align:center;
font-size:1.2rem;
line-height:1.5;
}

.formAdd{
margin-bottom:2rem;
}
.formAdd li{
margin-bottom:1rem;
display:flex;
}
.formL{
width:16rem;
padding:1rem 0;
}
.formR{
width:40rem;
}

/*------------------------------------------------------------
	CONTACT MW WP FORM
------------------------------------------------------------*/
.req{
color:#cc2728;
position:relative;
top:-.75rem;
left:.5rem;
font-size:.7rem;
}

.form {
width:100%;
padding:5rem 0 0;
margin:0 0 3rem;
}

.form dt {
font-weight:bold;
text-align:left;
font-size:1.2rem;
margin-bottom:.5rem;
}
.form dd {
font-size:1.2rem;
line-height:1.5;
margin-bottom:1.5rem;
}

.formCap{
font-size:1rem;
margin:0 0 1rem;
}

input[type="text"],
input[type="email"]{
width:100%;
border-radius:.5rem;
border:0;
background:#fff;
color:#333;
padding:1rem;
box-sizing:border-box;
-webkit-appearance: none;
}

input[type="text"].zipcode{
width:6em;
}

select{
border-radius:.5rem;
border:0;
padding:1rem;
box-sizing:border-box;
-webkit-appearance: none;
}
.sele-ef{
position:relative;
}


.sele-ef::after{
content:'';
width:.5rem;
height:.5rem;
border-right:2px solid #ccc;
border-bottom:2px solid #ccc;
transform:rotate(45deg);
position:absolute;
left:6.5rem;
top:1.3rem;
pointer-events:none;
}



textarea {
width:100%;
height:20rem;
border-radius:.5rem;
border:0;
padding:1rem;
box-sizing:border-box;
-webkit-appearance: none;
background:#fff;
color:#333;
}

.mwform-tel-field input[type=text] {
width:25%;
border-radius:.5rem;
padding:1rem;
background:#fff;
color:#333;
-webkit-appearance: none;
}


.formBtn{
display:flex;
justify-content:center;
align-items:center;
gap:0 2rem;
}

.formBtn li{
}

.mw_wp_form_input .sbmBtn input {
background-image: linear-gradient(to right, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%);
  color: #fff;
  width: 20rem;
  height: 5rem;
font-size:2rem;
  border-radius: 2.5rem;
  border: none;
  cursor: pointer;
  font-weight: bold;
  -webkit-appearance: none;
transition:all .2s;
letter-spacing:.2em;
}
.mw_wp_form_confirm .sbmBtn input {
background-image: linear-gradient(to right, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%);
  color: #fff;
  width: 20rem;
  height: 5rem;
font-size:2rem;
  border-radius: 2.5rem;
  border: none;
  cursor: pointer;
  font-weight: bold;
  -webkit-appearance: none;
transition:all .2s;
letter-spacing:.2em;
}
.backBtn input {
background-image: linear-gradient(to top, #c4c5c7 0%, #dcdddf 52%, #ebebeb 100%);
color:#666;
width:12rem;
height:5rem;
font-size:2rem;
border-radius:2.5rem;
overflow:hidden;
border:none;
cursor:pointer;
transition:all .2s;
font-weight:bold;
letter-spacing:.2em;
-webkit-appearance: none;
}



/* hover時にbounceアニメーションを適用 */
.mw_wp_form_confirm .sbmBtn input:hover,
.mw_wp_form_input .sbmBtn input:hover,
.backBtn input:hover {
  animation: bounce 0.4s ease;
filter:brightness(1.1);
}

.disp-form,
.disp-confirm,
.disp-submit,
.disp-error{ display:none; padding:5rem 0 0; }


/*------------------------------------------------------------
	PANKUZU
------------------------------------------------------------*/
#pankuzu{
width:1040px;
margin:0 auto;
font-size:11px;
line-height:20px;
padding:10px 0;
}
#pankuzu .current{
font-weight:normal;
}

/*------------------------------------------------------------
	PAGE
------------------------------------------------------------*/
#container{
background-image: linear-gradient(
  to top,
  #faeaea 0%,   /* ごく淡いピンクベージュ */
  #f2f4f3 20%,  /* ほぼ白に近いグレージュ */
  #e8f6f9 45%,  /* ごく淡いアクア */
  #f1edf8 75%,  /* やさしいラベンダーミスト */
  #eef8fa 100%  /* 白に近いブルーグレー */
);
}

#page-head{
width:100%;
height:300px;
position:relative;
}

#contact-head{
width:100%;
height:0;
}

.page-title-area{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
font-weight:bold;
}


#page-head h1{
font-size:3.5rem;
line-height:2;
background-image: linear-gradient(to right, #4fb576 0%, #44c489 30%, #28a9ae 46%, #28a2b7 59%, #4c7788 71%, #6c4f63 86%, #432c39 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
text-align:center;
margin:0;
}

#page-head h1 span{
display:block;
font-size:1.2rem;
line-height:1.5;
}


.page-lead{
width:80rem;
margin:0 auto;
text-align:center;
font-size:1.2rem;
line-height:1.5;
}


#page{
width:100%;
padding:0 0 10rem;
}



.faq-copy{
text-align:center;
font-size:2.5rem;
background:linear-gradient(to right, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-weight:bold;
margin-bottom:3rem;
}

.faq dd span{
color:#FFA500;
font-size:1.1em;
font-weight:bold;
}


/*------------------------------------------------------------
	REVIEW ARCHIVE
------------------------------------------------------------*/
.rev-list{
width:70rem;
margin:0 auto 6rem;
}
.rev-list li{
position:relative;
display:flex;
justify-content:space-between;
padding:4rem 0;
}

.rev-list li::after{
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 2px;
background-size: 12px 2px;
background-image: linear-gradient(to right, #BA55D3, #BA55D3 2px, transparent 3px, transparent 3px);
background-repeat: repeat-x;
}




.rev-list-thumb{
width:15rem;
}
.rev-list-info{
width:50rem;
}


.rev-link{
margin-top:1.5rem;
text-align:right;
}
.rev-link a{
font-size:1.4rem;
font-weight:bold;
  display: inline-block;
padding:.6rem 1rem .4rem 3rem;
  background: linear-gradient(to right, #00dbde, #fc00ff);
  color: #fff;
  font-weight: bold;
  border-radius: 999px;
  text-decoration: none;
  transition:all 0.3s ease;
}

/* hover時にbounceアニメーションを適用 */
.rev-link a:hover {
  animation: bounce 0.4s ease;
filter:brightness(1.1);
}

@keyframes bounce {
  0%   { transform: scale(1); }
  30%  { transform: scale(1.1); }  /* 少し大きく */
  60%  { transform: scale(0.95); } /* 少し戻る */
  100% { transform: scale(1); }    /* 元に戻る */
}


.rev-link-icon{
width:1.4rem;
height:1.4rem;
margin-left:2rem;
position:relative;
top:-.35rem;
}





/*------------------------------------------------------------
	REVIEW
------------------------------------------------------------*/
.rev-title-area{
margin:0 auto 5rem;
}

.rev-title{
margin:0 auto 2rem;
}

.rev-title h2{
font-size:2.5rem;
line-height:1.35;
font-weight:bold;
background-image: linear-gradient(to right, #b8cbb8 0%, #b8cbb8 0%, #b465da 0%, #cf6cc9 33%, #ee609c 66%, #ee609c 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.rev-info{
width:100%;
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:flex-start;
}

.class-name{
display:flex;
align-items:center;
margin:0;
}

.rev-info h2{
font-size:1.6rem;
line-height:2;
font-weight:500;
background-image: linear-gradient(to right, #00dbde 0%, #fc00ff 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
margin:0;
}

.area{
font-size:1.1rem;
color:#222 !important;
font-weight:500;
margin-left:1rem;
}

.url{
display:flex;
align-items:center;
color:#888;
justify-content:flex-start;
}
.icon-link{
width:1.5rem;
height:1.5rem;
margin-right:.5rem;
}
.url a{
color:#222;
font-size:1rem;
}
.url a:hover{
color:#FF8C00;
}


.lec{
display:flex;
align-items:center;
margin-left:4rem;
margin-bottom:0;
}
.lec-thumb{
width:5rem;
height:5rem;
border-radius:50%;
overflow:hidden;
}
.lec-name{
margin-left:1rem;
font-size:1.1rem;
}


.rev-col{
width:100%;
max-width:80rem;
display:flex;
justify-content:space-between;
margin:0 auto 5rem;
}

.rev-colL{
width:50rem;
margin:0;
}
.rev-colR{
width:25rem;
}

.cont-section{
margin-bottom:2rem;
display:flex;
justify-content:space-between;
}

.cont-img-l{
width:15rem;
margin:0;
}
.cont-img-r{
width:15rem;
margin:0;
}

.cont-txt-r{
width:32rem;
}
.cont-txt-l{
width:32rem;
}

.cont-img-c{
width:50rem;
margin:0 auto 1.5rem;
}

.site-comment{
margin:1rem 0 0;
font-size:.8rem;
}

.img-cap{
margin:.5rem 0 0;
font-size:.8rem;
}

.cont-section h3.md01{
font-size:1.3rem;
line-height:1.35;
margin-bottom:.5rem;
}


/*------------------------------------------------------------
	FOOTER
------------------------------------------------------------*/
footer{

padding:5rem 0 1rem;
text-align:center;
}
.flogo{
width:296px;
margin:0 auto 1rem;
}
.f-add{
}

.acc-link{
margin:.5rem 0 0;
}

.acc-link a{
posiiton:relative;
color:#999;
}
.acc-link a:hover{
color:#f18e00;
}


.fd{
margin:3rem 0;
}
.fd-ttl{
}
.fd-tel{
padding:0 4rem;
position:relative;
font-size:3rem;
line-height:1.5;
font-weight:bold;
}
.fd-cap{
font-size:.8rem;
color:#666;
}

.fname{
font-size:1.2rem;
font-weight:bold;
}
.fmail{
font-size:2rem;
font-weight:bold;
margin-bottom:2rem;
}



.bnr-ttl{
margin-bottom:.5rem;
}
.bnr{
width:300px;
margin:0 auto 3rem;
}

.copy{
font-size:.8rem;
color:#666;
}







/*------------------------------------------------------------
	END PC LAYOUT CSS
------------------------------------------------------------*/
}