@charset "utf-8";
/* CSS Document */

body{
	background: url(../img/bg.png);
    background-size: contain;
    height: 100vh;
    margin: 0;
    max-width: 100%;
    overflow-x: hidden!important;
	font-family: 'Zen Kaku Gothic New', sans-serif;
}

body p, body span, body dl, h1, h2, h3, h4, h5, h6{
    transform: rotate(0.03deg);
    -moz-transform: rotate(0.03deg);
    -ms-transform: rotate(0.03deg);
    -o-transform: rotate(0.03deg);
    -webkit-transform: rotate(0.03deg);
}


@font-face {
  font-family: komorebi-gothic;
  src: url("../img/komorebi-gothic.ttf") format("truetype");/*For iOS Android*/
}

/* kokokara */

.kansai {
background-color: #FFFFFF;
padding: 7px 15px;
margin: 0;
font-size: clamp(2px,3vw,14px) !important;
font-weight: 400;
}
	
.hd {
background-color: #FFFFFF;
max-width: 100%;
padding: 0;
display: flex;
justify-content: space-between;
}
		
.hd .logo {
padding: 1px 10px 10px 13px;
max-width: 80%;	
	}
	
.head_reseve {
padding: 14px 5px 3px 17px;
text-align: right;
margin-right: 4px;
}

.linebox {
font-size: clamp(2px,2vw,14px) !important;
padding: 3px 0px 0px 2px;
line-height: 1.2;
margin: 0px;
}
 
#headerwrap {
position: relative;
background: url(../img/top.webp) no-repeat;
-webkit-background-size: cover;
background-size: cover;
padding: 60% 0% 0%;
}

#headerwrap h1 {
margin: 0 auto;
display: block;
position: absolute;
width: 42%;
top: 51%;
left: 36%;
}

.top_t {
position: relative;
background-color: #d8c62c;
-webkit-background-size: cover;
background-size: cover;
padding: 2% 0;
}

.top_t h2 {
text-align: center;
font-size: clamp(8px,3vw,38px) !important;
vertical-align: bottom;
margin: 0;
}

.free_p_box {
margin: 7% auto 10px;
max-width: 800px;
padding: 0px;
}

.top-h_box {
margin: 5% auto 0;
display: block;
}

.c-t-title {
margin-top: 5%;
color: #55514c;
font-size: clamp(16px,4vw,40px) !important;
font-family: komorebi-gothic;
font-weight: 600;
text-align: center;
line-height: 1.6;
}

.c-r {
color: #DD0003;
}

.cons-box {
width: min(90vw, 800px);
margin: 4% auto;
}

.i_box {
margin: 0px auto !important; 
padding-top: 30px;
max-width: 260px;
}

.c-title {
margin-top: 5%;
color: #55514c;
font-size: clamp(6px,5vw,40px) !important;
font-family: komorebi-gothic;
font-weight: 600;
text-align: center;
line-height: 1.6;	
}

.btnbox {
width: 82%;
margin: 9% auto 13%;
}

.section2 {
position: relative;
background: url(../img/173139627.webp);
-webkit-background-size: cover;
background-size: cover;
padding: 1% 0 6%;
vertical-align: bottom;
margin: 8% auto 8%;
}

.resolutionbox2 p {
margin-top: -2%;
margin-bottom: 5%;
color: #55514c;
font-size: clamp(15px,3vw,30px) !important;
font-family: komorebi-gothic;
font-weight: 600;
text-align: center;
line-height: 1.8;	
}

.p_box p {
padding: 3% 0 0;
font-size: clamp(6px,3.7vw,27px) !important;
font-weight: 600;
line-height: 1.7;
}

.d-title7 {
position: relative;
font-weight: 500;
padding: 1rem;
background: #7a4e15;
text-align: center;
color: #FFFFFF;
max-width: 790px;
margin: 6% auto 1%;
font-size: clamp(12px,3.7vw,35px) !important;
}

.d-title7:before {
position: absolute;
top: -56%;
left: 94%;
width: 100%;
height: 100%;
content: '';
background: url(../img/qa_ti_icon.png) no-repeat;
}

.kbox {
max-width: 900px;
width: 100%;
padding: 1%;
margin: 0 auto 1%;
}

.kbox p {
font-size: clamp(6px,3.7vw,28px) !important;
font-weight: 500;
line-height: 1.4;
margin: 4% auto 5%;
}

.room_p_box {
margin: 2px auto 10px;
max-width: 800px; 
padding: 0px;
}

.p_box {
padding: 3px 10px 1px 3px;
}

.p_box {
padding: 3px 10px 1px 3px;
}

.contactbox {
max-width: 900px;
margin: 0 auto;
text-align: center;	
}

.contactbox img {
padding: 2%;
}

/*概要*/
.content-about {
margin: 0 auto;
padding: 2% 4%;
}

.about-info {
margin: 0px auto 0;
text-align: center;
max-width: 700px;
border-top: 1px solid #FFFFFF;

}

.info-area {
border-bottom: 1px solid #FFFFFF;
padding: 15px 0;
pointer-events: none;
}

 .info-area dt {
font-weight: 400;
padding-bottom: 10px
}

.section1 {
background-color: #FFFFFF;
}

.problembox{
list-style-type:none;
padding: 0;
max-width: 900px;
margin: 0 auto;
}

.problembox li{
position: relative;
color: #fff;
text-align: center;
padding: 1.2%;
margin: 16px 0 10px 0px;
font-weight: 400;
font-size: clamp(3px,3.4vw,30px);
line-height: 2.2;
background: #549f9b;
border-radius: 50px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
transition: 0.3s;
}

.problembox li:before{
position: absolute;
left : 1.5em; 
content: "\f071";
font-family: "FontAwesome"; 
font-wigth: 400;
color:#FFDD00;
}

.problembox li:hover{
background: #0c6e69;
}

.resolutionbox {
max-width: 900px;
margin: 0 auto;	
}

.resolutionbox h4 {
font-size: clamp(6px,4vw,42px) !important;
text-align: center;
color: #333333;
font-family: komorebi-gothic;
line-height: 1.7;
font-weight: 600;
margin-bottom: 20px;
margin-top: 10px;
}

/* footer固定 */

footer::after {
    content: "";
    background: url(../img/f_img.png) repeat-x;
    /* background-size: contain; */
    background-position: center;
    display: block;
    /* bottom: -45px; */
    /* left: 0; */
    width: 100%;
    height: 110px;
}

.footer-lower {
background: #000000;
color: #ffffff;
padding-bottom: 0.1px;
}

#back-top a {
  position: fixed;
  bottom: 6%;
  right: 0;
  font-weight: bold;
  padding: 0.7em;
  text-align: center;
  transition: 1s;
  z-index: 1;
}

 #back-top a:hover{ 
    opacity: 0.75;
}

.footer_bg {
 padding-bottom: 1% !important;
 background-color: #324e78 !important;
}

.nav-link {color: #FFF;}
.nav-link:hover {color: #59FCFF;}

.nav-link {
    display: block;
    padding: 28% 1rem 0;
}


@media screen and (max-width: 767.9px) {

.hd .logo {
max-width: 50%;	
}

#headerwrap h1 {
width: 60%;
top: 57%;
left: 28%;
}

.c-title2:before {
content: '';
position: absolute;
bottom: -20px;
display: inline-block;
width: 149px;
 height: 8px;
}

.d-title7:before {
position: absolute;
top: -45%;
left: 5%;
width: 50%;
height: 100%;
content: '';
background: url(../img/s_qa_ti_icon.png) no-repeat;
}
	
}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767.9px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}
