@charset "UTF-8";


/* Key Visual & Wrapper
------------------------------------------- */

section#cokv{
	width:100%;
	height:300px;;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
	z-index:1;
    padding-top: 25%;
    position: relative;
}


/* Layput
------------------------------------------- */

section{
	width:100%;
    margin: 0 auto;
	z-index: 999;
}

div.contens{
	width: 96%;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}

.po_rea{
	position: relative;
}


/* Contents Title
------------------------------------------- */

div.title_wrap{
	width: 100%;
	height: 200px;
	margin-left: auto;
	margin-right: auto;
}

h2{
	text-align: center;
	font-size: 200%;
	font-weight: bold;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	line-height: 180%;
	position: absolute;
  	top: 50%;
  	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	color: #000;
	text-shadow: 2px 2px 2px #fff;
}

h3{
    text-align: center;
	font-size: 160%;
	font-weight: bold;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}


h4{
    text-align: center;
	font-size: 140%;
    position: relative;
    overflow: hidden;
    padding-bottom: 12px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

h4::before{
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  height: 5px;
  background: #002399;/*ピンク*/
}
h4::after{
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 50%;
  height: 5px;
  background: #008699;/*薄ピンク*/
}

h5{
    font-size: 120%;
    text-align: left;
    border-left: 20px solid #006699;
    padding: 20px 0 20px 30px;
    border-radius: 30%;
}




/* Text
------------------------------------------- */

p.co_txt{
	font-size: 100%;
	margin-left: 20px;
	margin-right: 20px;
	text-align: left;
	overflow: hidden;
    line-height: 200%;
}

p.co_txtc{
	font-size: 100%;
	margin-left: 20px;
	margin-right: 20px;
	text-align: center;
	overflow: hidden;
}

p.co_txtr{
	font-size: 100%;
	margin-left: 20px;
	margin-right: 20px;
	text-align: right;
	overflow: hidden;
}

p.co_txt img{
    width: 400px;
    height: auto;
}




/* Service
------------------------------------------- */

div.service_wrap{
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

div.service_box{
    width: 100%;
    margin-bottom: 120px;
}


div.service_box img{
    width: 96%;
    height: auto;
    margin: 0 auto;
}

p.service_title{
    font-size: 200%;
    font-weight: bold;
    color: #A58A8A;
    line-height: 90%;
    text-align: left;
}
p.service_title span{
    font-size: 40%;
    color: #000;
}
p.service_sub_title{
    font-size: 170%;
    text-align: left;
    line-height: 130%;
}
p.service_txt{
    text-align: left;
    line-height: 180%;
}

div.service_box2{
    width: 100%;
    margin-bottom: 40px;
}

div.service_box2 img{
    width: 96%;
    height: auto;
    margin: 0 auto;
}

p.service_title2{
    font-size: 180%;
    font-weight: bold;
    color: #A58A8A;
    line-height: 130%;
    text-align: left;
}

div.water_wrap{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

div.water_box{
    width: 100%;
    position: relative;
    vertical-align: top;
    margin-bottom: 50px;
}

div.water_box img{
    width: 90%;
    height: auto;    
}

p.r_label{
    width: 140px;
    padding: 8px 0;
    background-color: #ff6600;
    color: #FFF;
    position: absolute;
    top: 0;
    left: 0;
    box-shadow: 2px 2px 2px #333;
    transform: rotate(-5deg);
    line-height: 110%;
}

.balloon{
  position: absolute;
  width: 80px;
  height: 80px;
  line-height: 80px;
  border-radius: 50%;
  text-align: center;
  color: #ffffff;
  background-color: #8F74ED;
  top: -20px;
  right: 20px;
  box-shadow: 2px 2px 2px #333;
}
.balloon::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 2px;
  bottom: 2px;
  border-right: 20px solid #8F74ED;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(-45deg);
}

p.r_txt{
    text-align: left;
    margin: 10px 30px 0;
}













/* Table
------------------------------------------- */

table.outline{
	width: 96%;
	margin-left: auto;
    margin-right: auto;
	border-collapse: collapse;
}


table.outline th{
	width: 100%;
	padding: 25px 0 25px 20px;
	text-align: left;
	font-weight: normal;
	border-bottom: 1px dotted #aaa;
    display: block;
}

table.outline td{
	width: 100%;
	padding: 25px 0 25px 20px;
	text-align: left;
	font-weight: normal;
	border-bottom: 1px dotted #aaa;
    display: block;
}

/* Access Map
------------------------------------------- */

div#map_canvas{
	width: 100%;
    height: 300px;
}








/* Privacy Policy
------------------------------------------- */

dl.policy{
	margin-left: 30px;
	margin-right: 30px;
	padding:0;
}

dl.policy dt{
	margin:0;
	padding:15px 0 0 10px;
	text-align:left;
	font-weight: bold;
    font-size: 120%;
}

dl.policy dd{
	margin:0;
	padding:5px 0 0 40px;
	text-align:left;
	color: #333;
}



/* Button
------------------------------------------- */

div.button_area{
	width:340px;
	border-radius:6px;
	-moz-border-radius:6px;
  	-webkit-border-radius:6px;
}

.button {
	position: relative;
	z-index: 2;
	background-color: #000;
	color: #fff;
	line-height: 50px;
	font-size:100%;
	display: inline-block;
	width: 340px;
	height: 50px;
	text-align: center;
	text-decoration: none;
	outline: none;
	margin:23px auto 0;
	border-radius:6px;
	-moz-border-radius:6px;
  	-webkit-border-radius:6px;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	border-radius:6px;
	-moz-border-radius:6px;
  	-webkit-border-radius:6px;
	-webkit-transition: all .8s;
	transition: all .8s;
}

.button:hover {
	background-color: #000;
	color: #FFF;
}
.button::before,
.button::after {
	top: 0;
	width: 50%;
	height: 100%;
	background-color: #000;
}
.button::before {
	right: 0;
}
.button::after {
	left: 0;
}
.button:hover::before,
.button:hover::after {
	width: 0;
	background-color: #666;
}

.button span{
  position: relative;
}
.button span::before{
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  width: 12px;
  height: 12px;
  border-top: 3px solid #FFF;
  border-right: 3px solid #FFF;
  transform: rotate(45deg);
  margin-top: -7px;
}



div.reserve_info{
    width: 600px;
    margin-left: auto;
	margin-right: auto;
    border: 1px solid #ff6633;
}

p.info_tit{
    text-align: center;
    font-size: 120%;
}

div.tel_tit{
    width: 520px;
    background-color: #A874E4;
    margin-left: auto;
	margin-right: auto;
    border-radius:5px;
	-moz-border-radius:5px;
  	-webkit-border-radius:5px;
}

div.tel_tit p{
    text-align: center;
    font-size: 120%;
    color: #FFF;    
}

p.info_txt{
    text-align: center;
}
p.info_tel{
    font-size: 250%;
    font-weight: bold;
    text-align: center;
}
p.info_tel::before{
	font-family: "Font Awesome 5 Free";
	content: '\f095';
	font-size:110%;
	margin-right:5px;
	font-weight: bold;
}


