@charset "UTF-8";
/* CSS Document */
.pc { display: none;}
.sp { display: block;}

/* Loading Animation */
#loading {
width: 100%;
height: 100%;
margin: 0;
background: #fff;
background-image: url(../img/loading.gif);
background-repeat: no-repeat;
background-position: center;
background-size: 50px;
opacity: 1;
position: fixed;
left: 0;
top: 0;
z-index: 99999;
}

/* Setup */
html,body {
width:100%;
height:100%;
font-size:12px;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
font-weight: 500;
line-height: 1.5em;
text-size-adjust: 100%;
font-smoothing:antialiased;
-moz-osx-font-smoothing: grayscale;
color: #555;
overflow-x: hidden;
-webkit-text-size-adjust: 100%;
}

/*** ===== common frame ===== ***/
.inner60 { width:60%; margin:0 20%; letter-spacing: -0.5em;}
.inner75 { width:80%; margin:0 10%; letter-spacing: -0.5em;}
.inner80 { width:80%; margin:0 10%; letter-spacing: -0.5em;}
.box25 { display: inline-block; width:25%; letter-spacing: normal; vertical-align: top;}
.box33 { display: inline-block; width:100%; letter-spacing: normal; vertical-align: top;}
.box33_mid { display: inline-block; width:100%; letter-spacing: normal; vertical-align: top;}
.box50_left { width:60%; letter-spacing: normal; margin:0 20%;}
.box50_right { width:100%; letter-spacing: normal;}
.box50_mid { display: inline-block; width:44%; letter-spacing: normal; margin-left:3%; margin-right:3%; vertical-align: top;}
.box40_left {width:calc(50% - 20px); letter-spacing: normal; margin:0 25% 30px 25%;}
.box60_right {width:100%; letter-spacing: normal; vertical-align: top;}

.box33 img {width:40%;}
.box33_mid img {width:40%;}
.box50_left img {margin-left:-11px;}

/* Header */
header {
width:100%;
height:80px;
z-index: 1000;
}

header h1 {
width:80%;
margin:18px 10% 16px 10%;
}

.nav_pc {
width:75.8%;
margin:0px 12.1% 50px 12.1%;
}

.menu_pc {
letter-spacing: -0.5em;
}

.menu_pc li {
display: inline-block;
letter-spacing: normal;
width:11%;
height:30px;
vertical-align: top;
text-align: center;
}

.menu_pc .main_logo {
display: inline-block;
letter-spacing: normal;
width:31%;
height:30px;
vertical-align: top;
}

.menu_pc .left {
width:calc(2.5% - 1px);
height:30px;
border-left: solid 1px #ddd;
}

.menu_pc .mid {
width:1px;
height:30px;
background: #ddd;
margin-left: 2.5%;
margin-right: calc(2.5% - 1px);
}

.menu_pc .right {
width:calc(2.5% - 1px);
height:30px;
border-right: solid 1px #ddd;
}

.logo_sp {
width:60%;
margin:0 auto;
}

.nav_sp {
width:100%;
height:auto;
background:rgba(40,20,20,1.0);
}

.menu_sp {
width:100%;
height:auto;
letter-spacing: -0.5em;
}

.menu_sp li {
display: inline-block;
width:calc(50% - 40.5px);
height:auto;
padding:10px 20px 8px 20px;
color:white;
letter-spacing: normal;
}

.menu_sp_li_border_bottom {
border-bottom: solid 1px rgba(255,255,255,0.1);
}

.menu_sp_li_border_right {
border-right: solid 1px rgba(255,255,255,0.1);
}


/*** Common decoration ***/
.section_icon {
width:55px;
margin:0 auto 10px auto;
}

.title {
margin: 0 auto 30px auto;
text-align: center;
}

.title_main {
font-size: 150%;
padding-left:1em;
padding-right:1em;
border-left:solid 1px #555;
border-right:solid 1px #555;
}

.title_sub {
}

/* article */
article {
position: absolute;
width:100%;
top:calc(100vh - 180px);
height:auto;
}

/* Main Visual */
.main_visual {
width:100%;
height:calc(100vh - 260px);
}

.main_slider{
margin: 0;
width: 100%;
}
.main_slider li{
width: 100%;
height:calc(100vh - 260px);
background-repeat: no-repeat;
background-size: cover;
background-position: center bottom;
}

/* Introdustion */
.introduction {
width:100%;
height:auto;
padding:30px 0 50px 0;
margin-bottom: 0;
background: rgba(255,255,255,1.0);
}

.position_point {
position: relative;
top:0;
left:0;
width:100%;
height:auto;
}

.photo_1 {
position: absolute;
top:0;
left:40%;
width:60%;
}

.photo_2 {
position: absolute;
top:200px;
left:0%;
width:90%;
}

.photo_3 {
position: absolute;
top:80px;
left:0%;
width:100%;
}

.intro_left_cover {
position: absolute;
top:-60px;
left:0;
width:100%;
}

.intro_right_cover {
position: absolute;
top:-60px;
left:0;
width:100%;
}

.main_copy {
width:90%;
margin:0 5%;
}

.inner80 p {
letter-spacing: normal;
}

/* feature */
.feature {
width:100%;
padding:30px 0 30px 0;
background:rgba(240,240,240,1.0);
}

.pc_margin {
}

.feature_photo {
padding: 8px 0;
background-image: url("../img/circle_bg.svg");
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}

.feature_title {
padding: 1em 0 0.5em 0;
font-size: 15px;
font-weight: bold;
color: rgba(30,130,0,1.0);
text-align: center;
}

.feature_text {
margin-bottom: 30px;
}

.circle_bg {
}

/* facility */
.facility {
position: relative;
margin: 0;
padding: 0;
width:100%;
height:auto;
}

.slider{
    margin: 0;
    width: 100%;
}
.slider img{
    position: relative;
    height: auto;
    width: 100%;
}

.slick-prev:before,
.slick-next:before {
    color: #000;
}

.zoom {
  transform: scale(1);
  transition: all .3s ease-in-out;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  overflow: hidden;
}
.zoom:hover {
  transform: scale(1.2);
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  overflow: hidden;
}

/* greeting */
.greeting {
width:100%;
padding:30px 0 30px 0;
background: rgba(255,255,255,1.0);
}

.greeting_table {
width:100%;
}

.sp_width {width:10em;}

.insert_photo {
padding: 10px;
border: solid 1px rgba(170,200,10,1.0);
}

/* hour */
.hour {
width:100%;
padding:30px 0 30px 0;
background: rgba(240,240,240,1.0);
}

.time_table {
width:90%;
margin:auto 5%;
border: solid 1px rgba(170,200,10,1.0);
font-size: 8px;
}

.time_table .width_big { width:30%;}
.time_table .width_mid { width:14%;}
.time_table .width_sma { width:8%;}

.day {
padding:20px 0;
text-align: center;
background: white;
}

.td_green {
background:rgba(170,200,10,1.0);
color:white;
}

.fa-leaf {
color: green;
}

.fa-bell {
color: orange;
}

.time_table .border_bottom { border-bottom: solid 1px rgba(255,255,255,0.3);}
.time_table .border_left { border-left: solid 1px rgba(255,255,255,0.3);}
.time_table .border_gr_bottom { border-bottom: solid 1px rgba(0,0,0,0.1);}
.time_table .border_gr_right { border-right: solid 1px rgba(0,0,0,0.1);}

/* NEWS */
.news {
width:100%;
padding:30px 0 50px 0;
background-image: url("../img/news_bg.jpg");
background-size: cover;
background-position: center;
}

.news_date {
display: inline-block;
width:calc(30% - 10px);
background: white;
padding:5px 5px 5px 5px;
letter-spacing: normal;
font-size: 10px;
height:3.5em;
vertical-align: top;
text-align: center;
}

.news_read {
display: inline-block;
width:calc(70% - 11px);
background: white;
padding:0 0 0 5px;
letter-spacing: normal;
border-top: solid 5px white;
border-bottom: solid 5px white;
border-right: solid 5px white;
border-left: dotted 1px #555;
font-size: 10px;
height:3.5em;
vertical-align: top;
overflow: hidden;
}

.news .space {
margin-bottom:20px;
}

/* access */
#gmap_area {
width:100%;
padding:30px 0 30px 0;
background: rgba(255,255,255,1.0);
}

#gmap {
width:100%;
height:50vh;
margin:30px 0 0 0;
}

/* footer */
footer {
width:100%;
padding:30px 0 0px 0;
background:rgba(55,55,55,1.0);
color: white;
}

.tel { 
display:block;
padding:0.8em;
width: 16em;
background-color:rgba(150,200,10,0.8);
border-radius:10px;
color:rgba(255,255,255,1.0) !important;
margin:2em auto 0 auto;
}

.tel:hover {
background-color:rgba(150,200,10,1.0);
transition: 0.3s ease-in-out;
}
.text_icon { width:18px; height:18px; margin-right:10px; vertical-align:-4px;}

.footerline {
width:100%;
height:20px;
margin-top:50px;
background:rgba(150,200,10,1.0);
}


/***** SNS LINK *****/

.sns_header {
position: absolute;
top:15px;
right:10px;
text-align: right;
z-index: 9999999;
}

.sns_icon {
display: inline-block;
opacity:1;
font-size: 100%;
margin-right: 10px;
}
