@charset "utf-8";
/*
Theme Name: POYO
Description: POYO
Version: 9.1.0
*/

@charset "utf-8";
/* ----------------------------------
              COMMON
---------------------------------- */
body { 
    margin:0px auto;
    font-family:"Kaisei Opti", "M PLUS Rounded 1c", "Noto Sans JP", "メイリオ", meyrio;
    background:#fff; 
    font-size:16px; 
}
@media screen and (max-width:768px) {
    body {
        font-size:16px; 
    }
}
header,section,article,aside,footer{ 	
    display: block;
}
img { 
    margin:0;
    padding:0;
    border:none;
}
ul,ol {	
    margin:0;
    padding:0;
    list-style:none;
    list-style-position:outside;
}
h1,h2,h3,h4,h5,h6{
    margin:0;
    padding:0;
}
p { 
    margin:0;
    padding:0;
}
div {
    margin:0;
    padding:0;
}
*	{
	box-sizing:border-box;
}
/* ----------------------------------
           COMMON LINK
---------------------------------- */
a:link { 
    color:#333;
    text-decoration:none;
}
a:visited { 
    color:#000E3C;
    text-decoration:none;
}
a:hover { 
    color:#000E3C;	
    text-decoration:none; 
}
a:active { 
    color:#000E3C;
    text-decoration:none;
}
/*-------------------------------------
	画像下端/リンク透過
-------------------------------------*/
img { 
    display:block;
    width:100%;
    margin:0;
    padding:0;
    vertical-align: bottom; 
}
/*-------------------------------------
             PC TB SP
-------------------------------------*/
.pc { display:inline-block; }
.pctb  { display:inline-block; }
.pc-table {display:inline-table;}
.tb { display:none; }
.sp { display:none; }
.sp-table  { display:none; }

@media screen and (max-width : 769px){
	.pc { display:none; }
	.tb { display:inline-block; }
	.sp { display:none; }
	.sp-table  { display:none; }
  }
@media screen and (max-width : 480px) { 
	.pc { display:none; }
	.pctb { display:none; }
	.pc-table { display:none; }
	.tb { display:none; }
	.sp { display:inline-block; }
	.sp-table  { 
			display:inline-table;
			font-size:14px;
			width:100%;
	}
}
/*-------------------------------------
             FLEX
-------------------------------------*/
.flex-con {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}
.flex-10 {
	width:10%;
}
.flex-20 {
	width:20%;
}
.flex-25 {
	width:20%;
}
.flex-30 {
	width:30%;
}
.flex-33 {
	width:33.33%;
}
.flex-40 {
	width:40%;
}
.flex-50 {
	width:50%;
}
.flex-60 {
	width:60%;
}
.flex-70 {
	width:66.66%;
}
.flex-80 {
	width:80%;
}
.flex-90 {
	width:90%;
}
.flex-inner{
	padding:5%;
}

@media screen and (max-width:768px) {

}

@media screen and (max-width:480px) {
	.flex-40 {
		width:100%;
	}
	.flex-50 {
		width:100%;
	}
	.flex-60 {
		width:100%;
	}
	.flex-70 {
		width:100%;
	}
}

/*-------------------------------------
	     Header
-------------------------------------*/
header { 
    width:100%;
    height:auto;
    margin:0px auto;  
	background-image:url(image/fv-bg.jpg);
	background-size:cover;
	position:relative;
}
.header-inner { 
	position:relative;
	width:100%;
    max-width:1366px;
	height:55vw;
	max-height:780px;
    margin:0 auto;
    overflow: hidden;
}
.header-fv {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
    /* animation: riseHalfCircle 2.5s cubic-bezier(.38,.25,.36,1.01) forwards; */
    z-index: 0;
}
.header-fv img {
    position: relative;
    z-index: 1;
}
/* アニメーション */
@keyframes riseHalfCircle {
    0% {
        width:0px;
        opacity: 0;
		filter: blur(30px);
    }
    100% {
        width:100%;
        opacity: 1;
		filter: blur(0px);
    }
}
.header-fv-txt {
	position:absolute;
	bottom:27%;
	left:9.65%;
    /*animation: riseHalfCircle2 1.5s cubic-bezier(.38,.25,.36,1.01) forwards;
	animation-delay: 1s; */
    z-index: 10;
	opacity:1;
	color:#fff;
}
h1 {
	font-family:Kaisei Opti;
	font-size:45px;
	font-weight:400;
}
/* アニメーション */
@keyframes riseHalfCircle2 {
    0% {
        opacity: 0;
		filter: blur(30px);
    }
    100% {
        opacity: 1;
		filter: blur(0px);
    }
}
header .top-contact-box{
	display: flex;
    position: fixed;
    bottom: 20px;
    right: 24px;
    z-index: 100;
}
header .top-contact-box a{
	font-size:20px;
	background:#ffdf2c;
	color:#000E3C;
	padding:5px 50px;
	margin:0 10px;
	border-radius:30px;
	box-shadow: 0 0 3px 2px rgba(255, 223, 44, 1);
	transition:all 0.5s;
}
header .top-contact-box a:hover{ 
    background:rgba(255, 223, 44, 0.5);
	box-shadow: 0 0 3px 2px rgba(255, 223, 44, 0.5);
}
@media screen and (max-width : 1366px){
	h1 {
		font-size:max(3.29vw, 22px);
	}
}
@media screen and (max-width : 768px){
	header .top-contact-box{
		display:flex;
		width:100%;
		position:fixed;
		top:auto;
		bottom:30px;
		left:0;
		right:0;
		margin:auto;
		z-index:100;
	}
	header .top-contact-box p{
		width:50%;
		text-align: center;
	}
}

@media screen and (max-width : 480px){
	.header-inner{
		height:85vw;
	}
	.header-fv {
		overflow:hidden;
	}
	.header-fv img{
		width:125%;
		margin-left:-10%;
	}

	header .top-contact-box{
		left:0;
		transform: translateX(0%);
		z-index:100;
		width:90%;
	}
	header .top-contact-box a{ 
		font-size:14px;
		padding:5px 0;
		width:90%;
		display:block;
	}
	.header-fv-txt{
		bottom: 16%;
		left: 4%;
	}
}
/*-------------------------------------
          GLOBAL NAVIGATION 
-------------------------------------*/
nav { 
	position:absolute;
	top:0;
    width:100%;
	z-index:100;
}
.nav-inner {
    width:100%;
    margin:0 auto;
    display:flex;
    justify-content: space-between;
	align-items: self-start;
	padding:23px 32px;
	overflow:hidden;
}
.nav-inner .flex-80{
	width:auto;
}
nav img.logo{
	width:104px;
	height:104px;
}
.openList{ 
    width:100%;
    margin:0px auto; 
}
.openList  img { 
    display:none; 
}
.openList ul { 
    display:flex;
    flex-wrap:wrap;
	justify-content: center;
	align-items: center;
}
.openList li { 
    padding:0 15px;
    width:auto; 
    text-align:center; 
}
.openList li:last-child { 
    padding:0 0 0 15px;
}
.openList li a{ 
    color:#fff;
	font-size: 20px;
}
.openList li.contact a{ 
  padding: 4px 20px;
  border-radius: 9999px; 
  border: none; 
  background-color: #fff; 
  color: #000;
  box-shadow: 0 0 3px 2px rgba(255, 255, 255, 1);
  text-align: center;
  text-decoration: none;
  display: inline-block;
	transition:all 0.5s;
}
.openList li.contact a:hover{ 
    background:rgba(255, 255, 255, 0.5);
	box-shadow: 0 0 3px 2px rgba(255, 255, 255, 0.5);
}
@media screen and (max-width : 768px){
	nav img.logo{
		width:100%;
		max-width:104px;
		height:100%;
		max-height:104px;
	}
	header .header-box .flex-80 .openList{
		position:relative;
		z-index:10;
	}
	header .openList .open {
	}
	header .openList .close {
		display:block;
		position: absolute;
		top: -60px;
		right: 0;
	}
	header .header-box .flex-80 .openList .open img.openIcon{
		display:block;
		width:35px;
		height:26px;
		position:absolute;
		top:5px;
		right:0px;
		opacity:1;
		z-index:10;
	}
	header .header-box .flex-80 .openList .close img.openIcon{
		opacity:0;
	}
	header .header-box .flex-80 .openList .close img.closeIcon{
		display:block;
		width:21px;
		position:absolute;
		top:40px;
		right:25px;
		opacity:1;
		z-index:10;
	}
	header .header-box .flex-80 .openList .open img.closeIcon{
		opacity:0;
	}
	header .openList .open .top-mene-box{
		width:100vw;
		position:absolute;
		top:200px;
		left:0;
		opacity:0;
	}
	header .openList .close .top-mene-box{
		position:relative;
		top:0;
		opacity:1;
		transition: all 0.7s;
	}
	header .openList ul.cat-list {
		transition:all 0.5s;
		height:100vh;
		opacity:0;
		padding: 190px 0 50px;
		box-sizing:border-box;
	}
	header .home.openList ul.cat-list {
		transition:all 0.5s;
		height:100vh;
		opacity:0;
		padding: 190px 0 50px;
		box-sizing:border-box;
	}
	header.news .openList ul.cat-list {
		transition:all 0.5s;
		height:100vh;
		opacity:0;
		padding: 120px 0 120px;
		box-sizing:border-box;
	}
	header.page .openList ul.cat-list {
		transition:all 0.5s;
		height:100vh;
		opacity:0;
		padding: 190px 0 50px;
		box-sizing:border-box;
	}
	header.top .openList ul.cat-list {
		transition:all 0.5s;
		height:100vh;
		opacity:0;
		padding: 120px 0 120px;
		box-sizing:border-box;
	}
	header .openList .open ul {
		opacity:0;
	}
	header .header-con .flex-con {
        left: 3%;
    }
	header .header-con .flex-con .flex-70 h2 {
        font-size: 27px;
    }
    header .header-con .flex-con .flex-30 {
        display:none;
    }
	header .header-con .flex-con .flex-70 h3{
		font-size: 18px;
	}
}
@media screen and (max-width:480px) {
	.nav-inner{
		padding: 9px 15px;
	}
	nav img.logo{
		width:45px;
		height:45px;
	}
}

/*-------------------------------------
	   Main Contents
-------------------------------------*/
main.top {  
	color:#fff;
}
article { 
	position:relative;
    width:100%; 
    margin:0 auto;  
	background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url(image/article-bg.jpg);
	background-size:auto;
	background-attachment: fixed;
}
section {
    width:100%; 
	margin:0 auto;
	opacity:0;
}
section.show {
	opacity: 0;
    transform: translate(0, -50px);
    transition: all 1s ease;
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
    animation: fadeIn 1s ease 0s 1 normal;
    animation-fill-mode: forwards;
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.section-inner {
    max-width:1100px; 
	padding:40px 0;
    margin:0 auto;  
    box-sizing: border-box;
}
.contents-inner{
	max-width:1100px; 
    margin:0 auto;  
    box-sizing: border-box;
}
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
h2{
	position:relative;
	font-weight:400;
	line-height:90px;
	padding-left:15px;
	font-size:46px;
}
h2:after{
	content: '';
	display:block;
	width:278px;
	height:17px;
	position:absolute;
	bottom:0;
	left:0;
	background-image:url(image/h2-bg.svg);
}
h3{
	font-size:26px;
	font-weight:400;
}
h4{
	font-size:20px;
	font-weight:400;
}
@media screen and (max-width:1110px) {
    .section-inner {
		width:98%; 
		margin:0 auto;  
	}
}
@media screen and (max-width:768px) {
	.section-inner {
		width:94%; 
		margin:0 auto;  
		padding: 5.21vw 0;
	}
	h2{
		font-size:max(6vw, 28px);
		line-height:11.72vw;
		padding-left:15px;
	}
	h2:after{
		width:36.2vw;
		height:8px;
		background-size:100%;
	}
	h3{
		font-size:max(3.39vw, 18px);
	}
	h4{
		font-size:max(2.6vw, 16px);
	}
}
@media screen and (max-width:480px) {
	h3{
		line-height:2em;
	}
}

/*-------------------------------------
	   SECTION 01
-------------------------------------*/
.sec-01{
}
.sec-01 .section-inner{
	padding:170px 0 70px;
}
.sec-01 .flex-50{
	text-align:center;
}
.sec-01 .flex-50 h3{
	line-height:1.5em;
	padding-bottom:50px;
}
.sec-01 .flex-50 p{
	font-family:"M PLUS Rounded 1c";
	line-height:42px;
}

@media screen and (max-width:768px) {
	.sec-01 .section-inner{
		padding: 100px 0 40px;
	}
	.sec-01 .flex-50{
		width:90%;
		margin:10px auto;
	}
}
@media screen and (max-width:480px) {
	section.sec-01  {
		opacity:1;
	}
	section.sec-01.show {
		opacity:1;
		animation:none;
		transform: translate(0, 0px);
		padding-bottom:50px;
	}
	.sec-01 .section-inner{
		padding: 50px 0 20px;
	}
	.sec-01 .flex-50{
        width: 100%;
        margin: 10px auto;
    }
	.sec-01 .flex-50 h3{
        margin: 0px auto 0px;
		padding-bottom:25px;
    }
}

/*-------------------------------------
	   SECTION 02
-------------------------------------*/
.sec-02{
	padding:30px 0 40px;
}
.sec-02 .section-inner{
	padding:0 0;
}
.sec-02 h2 {

}
.sec-02 .price-plan {
	margin-top:50px;
}
.sec-02 .price-plan .flex-50 {
	text-align: center;
	width:49%;
	border-radius:5px;
}
.sec-02 .sec02-subttl,
.sec-02 .sec02-subttl2 {
	font-family:Kaisei Opti;
	font-size: 24px; 
	font-weight:500;
	border-radius:5px 5px 0 0;
	padding:5px 0;
}
.sec-02 .sec02-txt {
	font-family:Noto Sans JP;
	font-size: 56px; 
	background-color:#0C2843;
	border-radius:0 0 5px 5px;
	font-weight:500;
	padding-bottom:10px;
}
.sec-02 .sec02-txt span{
	font-size: 35px; 
}
.sec-02 .price-plan .flex-50 .sec02-subttl {
	background-color: #05A8B1;
}
.sec-02 .price-plan .flex-50 .sec02-subttl2 {
	/*background-color: #B49F00;*/
	background-color:#FF3399;
}
.sec-02 .sec02-box {
	font-family:"M PLUS Rounded 1c";
	background-color:#0C2843;
	padding:30px 40px;
	margin-top: 20px;
	font-size:16px;
}
.sec-02 .sec02-box p {
	line-height: 1.7;
}
.sec-02 .drink-menu {
	margin-top: 50px;
}
.sec-02 .drink-menu .flex-20 {
	width: 28%;
	position:relative;
}
.sec-02 .drink-menu .flex-25 {
	width: 23%;
	position:relative;
}
.sec-02 .sec02-ttl {
	font-size: 43px;
	line-height: 1.5em;
	margin: 0 0 0 20px;
}
.sec-02 .drink-menu img {
	width: 100%;
	height: auto;
}
.sec-02 .sec02-cap {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	text-align: center;
	font-size: 22px;
	padding:10px 0;
	background:rgba(0,0,0,0.4)
}

@media screen and (max-width:1366px) {
	.sec-02 .sec02-subttl,
	.sec-02 .sec02-subttl2 {
		font-size: max(1.76vw, 18px); 
	}
	.sec-02 .sec02-txt {
		font-size: max(4.1vw, 37px); 
	}
	.sec-02 .sec02-txt span{
		font-size: max(2.56vw, 23px); 
	}
	.sec-02 .sec02-ttl {
		font-size: max(3.15vw, 28px);
	}
	.sec-02 .sec02-cap {
		font-size: max(1.6vw, 12px);
	}
}
@media screen and (max-width: 768px) {
	.sec-02{
		padding:10px 0 10px;
	}
}
@media screen and (max-width:480px) {
	.sec-02{
		padding:20px 0 0px;
	}
	.sec-02 .flex-con {
		margin-top:30px;
	}
	.sec-02 .price-plan .flex-50{
		width: 100%;
	}
	.sec-02 .price-plan .flex-50:first-child{
		margin-bottom:15px;
	}
	.sec-02 .sec02-subttl, 
	.sec-02 .sec02-subttl2{
		padding:0;
	}
	.sec-02 .sec02-box {
		padding: 15px 10px;
	}
	 .sec-02 .sec02-txt {
        padding-bottom:10px;
    }
	.sec-02 p {
		padding-top: 0px;
	}
	.sec-02 .drink-menu {
		align-items: center;
	}
	.sec-02 .drink-menu .flex-20{
		width:100%;
	}
	.sec-02 .drink-menu .flex-25 {
		width:32%;
	}
	.sec-02 .sec02-ttl {
		text-align: center;
		margin: 0 0 10px 0px;
	}
}

/*-------------------------------------
	   SECTION 03
-------------------------------------*/
.sec-03{
	padding:30px 0 30px;
}
.sec-03 .flex-con{
	padding-top:25px;
}
.sec-03 .flex-con:after{
	content:"";
	display: block;
	width:31%;
}
.sec-03 .flex-33{
	width:31%;
	margin:0 1%;
	border-radius:10px;
}
.sec-03 .flex-33 img{
	height:auto;
}
.sec-03 .sec03-box{
	background:#fff;
	padding:5px 15px 15px;
	color:#000E3C;
	border-radius:0 0 10px 10px;
}
.sec-03 .sec03-box h4{
	line-height:45px
}
.sec-03 .flex-33 p{
	font-family:"M PLUS Rounded 1c";
}
.readmore {
	text-align:center;
	margin:60px auto 0;
}
.readmore a{
	background:#fff;
	color:#000E3C;
	padding:6px 40px;
	border-radius:20px;
	box-shadow: 0 0 3px 2px rgba(255, 255, 255, 1);
}
.readmore a:hover{
	background:rgba(255, 255, 255, 0.5);
	box-shadow: 0 0 3px 2px rgba(255, 255, 255, 1);
}
@media screen and (max-width:1100px) {
	.sec-03 .contents-inner{
		overflow-x: auto;
		white-space: nowrap;
		overflow-scrolling: touch;
		-webkit-overflow-scrolling: touch;
		scroll-behavior: smooth; 
		padding-bottom:20px;
	}
	.sec-03 .contents-inner::-webkit-scrollbar {
		height: 8px;
		border-radius:4px;
	}
	.sec-03 .contents-inner::-webkit-scrollbar-thumb {
		background: #555;
		border-radius:4px;
	}
	.sec-03 .contents-inner::-webkit-scrollbar-track {
		background: #aaa;
		border-radius:4px;
	}
	.sec-03 .flex-con{
		width:1100px;
	}
}
@media screen and (max-width:480px) {
	.sec-03{
		padding-top:0px;
	}
	.sec-03 .contents-inner::-webkit-scrollbar {
		height: 0px;
		border-radius:4px;
	}
	.readmore {
    text-align: center;
		margin: 40px auto 0px;
	}
	.sec-03 .flex-con{
		width: calc(100vw * 2.2);
	}
}
/*-------------------------------------
	   SECTION 04
-------------------------------------*/
.sec-04{
	position:relative;
	overflow: hidden;
	padding:30px 0 110px;
}
.sec-04:before{
    content: "";
    display: block;
    width: 100%;
    height: 80%;
    position: absolute;
	top:10%;
    transform: rotate(-4deg);
	background: linear-gradient( rgba(119, 190, 211, 0) 0%, rgba(119, 190, 211, 0.2) 40%, rgba(119, 190, 211, 0.2) 60%, rgba(119, 190, 211, 0) 100%);
    background-position: center;
    background-size: cover;
	pointer-events:none;
}
.sec-04 .readmore{
	text-align:left;
    z-index: 2;
    position: relative;
}
.sec-04 .flex-70 .flex-con{
	border-bottom:1px #fff solid;
	padding:23px 0 5px;
	font-family:"M PLUS Rounded 1c";
	font-size:14px;
}
.sec-04 .flex-70 a{
	color:#fff;
}
.sec-04 .flex-70 .flex-20{
	width:15%;
}
.sec-04 .flex-70 .flex-80{
	width:85%;
	font-size:18px;
}

@media screen and (max-width:768px) {
	.sec-04 .section-inner {
        padding: 5.21vw 0 80px;
	}
	.sec-04 .flex-30,
	.sec-04 .flex-70{
		width:100%;
	}
	.sec-04 .readmore{
		position: absolute;
		bottom: 50px;
		width: 100%;
		text-align: center;
		margin:20px auto 60px;
	}
	.sec-04:before{
		height: 100%;
	}
}
@media screen and (max-width:480px) {
	.sec-04{
		padding:0 0 50px;
	    margin-bottom: 20px;
	}
	.sec-04 .section-inner {
        padding: 5.21vw 0 80px;
	}
	.sec-04 h2{
		margin-bottom:10px;
	}
	.sec-04 .flex-70 .flex-20 {
		width: 100%;
	}
	.sec-04 .flex-70 .flex-con{
		padding: 10px 0 5px;
	}
	.sec-04 .readmore{
		bottom: 0px;
	}
}

/*-------------------------------------
	   SECTION 05
-------------------------------------*/
.sec-05{
	padding-top:100px;
	position:relative;
	overflow:hidden;
}
.sec-05 .section-inner{
	max-width:1971px;
	background-color: #1E3556;
	margin-top:350px;
	position: relative;
}
.sec-05 .section-bg{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 1971px;
	height: 911px;
	background-color: #1E3556;
	background-size: cover;
	background-position: center top;
	border-radius: 50% / 50%;
	z-index: 0;
	pointer-events: none;
}
.sec-05 .contents-inner{
	margin-top:-21%;
	overflow:hidden;
}
.sec-05 .flex-con{
    position: relative;
	padding-top:50px;
	font-family:"M PLUS Rounded 1c";
}
.sec-05 .flex-50 {
	width:48%;
}
.sec-05 .flex-50 .map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; 
}
.sec-05 .flex-50 .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.sec-05 .flex-50 h4{
	font-weight:500;
	line-height:35px;
	font-size:16px;
}
.sec-05 .flex-50 p.sec05-txt{
	color:#FFFFFF;
	line-height:30px;
	padding-bottom:14px;
	margin-bottom:10px;
	border-bottom:#fff 1px solid;
}
.sec-05 .contents-inner05{
	max-width: 1100px;
    margin: 0 auto;
	position:relative;
}
.sec-05 .contents-inner05{
	padding:100px 0 40px;
}
.sec-05 .contents-inner05 .flex-con{
	padding-top: 40px;
}
.sec-05 .contents-inner05 h2{
	padding:100px 0 0 15px;
}
.sec-05 .contents-inner05 p{
	padding:0px 0 20px;
	font-size:16px;
}
.sec-05 .contents-inner05 .readmore{
	padding:0px 0;
	margin-top: 40px;
	text-align:left;
	font-family:Kaisei Opti;
}
.sec-05 .contents-inner05 .readmore a{
	padding:8px 60px;
}
.sec-05 .sec05-img-box{
	width: 939px;
	position:absolute;
	bottom:0;
	right:0;
	left:43%;
}

@media screen and (max-width:1971px) {
	.sec-05 .contents-inner{
		margin-top:-420px;
	}
}
@media screen and (max-width:1366px) {
	.sec-05 .section-bg {
		height: calc(100% + 120px);
	}
}
@media screen and (max-width:768px) {
	.sec-05{
		padding-top: 70px;
	}
	.sec-05 .section-inner{
		padding-bottom:50vw;
		margin-top:0;
		padding-top:0;
	}
	.sec-05 .section-bg{
		width:256vw;
		height:110%;
	}
	.sec-05 .contents-inner{

	}
	.sec-05 .flex-50{
		width:100%;
	}
	.sec-05 .sec05-img-box{
		width: 120vw;
		left: 5%;
	}
	.sec-05 .flex-50 .map{
		padding-top: 55%;
		margin-bottom:20px;
	}
	.sec-05 .flex-con {
		padding-top: 20px;
	}
	.sec-05 .contents-inner05 {
		padding: 30px 0 40px;
	}
	.sec-05 .contents-inner05 h2 {
		padding: 10px 0 0 15px;
	}
	.sec-05 .flex-50 p.sec05-txt:last-child {
		border-bottom:none;
	}
}
@media screen and (max-width:480px) {
	.sec-05{
		padding-top: 50px;
	}
	.sec-05 .section-bg {
        width: 1073px;
    }
	.sec-05 .section-inner {
        padding-bottom: 57vw;
	}
	.sec-05 .contents-inner05 .flex-con{
		padding-top: 20px;
		font-size:14px;
	}
	.sec-05 .sec05-img-box{
		width: 140vw;
		left: 10%;
	}
	.sec-05 .flex-50 .map {
        padding-top: 62%;
        margin-bottom: 20px;
	}
	.sec-05 .contents-inner05 .readmore {
		margin-top: 30px;
	}
}
/*-------------------------------------
	   SECTION 06
-------------------------------------*/
.sec-06{
	padding:30px 0;
}
.sec-06 .section-inner{
}
.sec-06 h2{
	text-align:center;
	padding:10px 0 30px;
}
.sec-06 h2:after {
	background-image:none;
}
.sec-06 details{
	transition:all .5s;
	padding:3px 0;
	border-bottom:1px #EAEAEA solid;
	border-radius:10px;
	background:#fff;
	max-width:1000px;
	margin:0 auto 18px;
}
.sec-06 summary {
	position:relative;
	list-style: none;
	color:#2E2E2E;
	cursor: pointer;
}
.sec-06 summary::-webkit-details-marker {
  display:none;
}
.sec-06 details:last-child {
	border-bottom:none;
}
.sec-06 summary:before {
    content: "";
	position:absolute;
	right:1px;
	background-image: url("image/arrow-d-b2.png");
    background-position: center;
    background-size: contain;
	background-repeat:no-repeat;
	position:absolute;
	top:17px;
	right:17px;
    width: 20px;
    height: 10px;
}
.sec-06 details[open] summary:before,
.sec-06 summary details[open] summary:before {
    content: "";
	position:absolute;
	right:1px;
	background-image: url("image/arrow-u-b2.png");
    background-position: center;
    background-size: contain;
	background-repeat:no-repeat;
	position:absolute;
	top:17px;
	right:17px;
    width: 20px;
    height: 10px;
}

.sec-06 .question{
	font-family:"M PLUS Rounded 1c";
	font-size:16px;
	color:#2E2E2E;
	padding:8px 0 8px 20px;
	width:94%;
}
.sec-06 .question:before{
	content:"Q.";
	font-size:18px;
	font-weight:400;
	padding-right:10px;
}
.sec-06 .answer{
	font-family:"M PLUS Rounded 1c";
	font-size:16px;
	color:#02ADB4;
	display:flex;

	margin:0 20px 8px 20px;
	padding:8px 0 0;
	border-top:1px #999 solid;
}
.sec-06 .answer div{
	padding-top:2px;
}
.sec-06 .answer:before{
	content:"A.";
	font-size:18px;
	font-weight:400;
	padding-right:10px;
}
@media screen and (max-width : 1100px){
	.sec-careers-02 .contents-inner,
	.sec-careers-03 .contents-inner,
	.sec-06 .contents-inner{
		width:100%;
		padding:0 3% 0 9%;
		box-sizing:border-box;
	}
}
@media screen and (max-width : 768px){
	.sec-06 .contents-inner {
        width: 100%;
        padding: 0;
        box-sizing: border-box;
    }
	.sec-06 .question{
		font-size:max(2.08vw, 12px);
		width:92%;
	}
}
@media screen and (max-width:480px) {
	.sec-06{
		padding:0;
	}
	.sec-06 details {
		padding: 7px 0 5px;
	}
	.sec-06 .question{
		font-size:12px;
		margin-left:14px;
	    padding: 0px 0 0px 20px;
		width:86%;
	}
	.sec-06 summary:before {
		right:1px;
		background-image: url("image/arrow-d-b2.svg");
		top:7px;
		right:13px;
		width: 14px;
		height: 7px;
	}
	.sec-06 details[open] summary:before,
	.sec-06 summary details[open] summary:before {
		right:1px;
		background-image: url("image/arrow-u-b2.svg");
		top:17px;
		right:13px;
		width: 14px;
		height: 7px;
	}
	.sec-06 .question:before{
		font-size:12px;
		margin-left:-24px;
	}
	.sec-06 .answer{
		font-size:12px;
		margin:2px 0 0 14px;
        padding: 7px 0 0px 20px;
		width:86%;
	}
	.sec-06 .answer:before{
		font-size:12px;
		margin-left:-24px;
		margin-top:2px;
	}
}
/*-------------------------------------
	   SECTION 07
-------------------------------------*/
.sec-07{
	overflow:hidden;
}
.sec-07.show{
	transform: translate(0, 0);
}
.sec-07 .section-inner{
	width:100%;
	max-width:1920px;
	overflow:hidden;
	padding:10px 0 0;
}
.sec-07 .contents-inner{
	width:100%;
	max-width:unset;
}
.marquee-wrapper {
  overflow: hidden;
  width: 100%;
	position:relative;
	height: 17.5vw;
}
.marquee {
  display: flex;
  position: absolute; 
  top: 0;
  left: 0;
  white-space: nowrap;
  will-change: transform;
  width: calc(100vw / 3.5 * 4);
}
.marquee-item {
  flex: 0 0 auto;
  width: calc(100vw / 3.5);
}
.marquee-item img {
  width: 100%;
  height: auto;
}

@media screen and (max-width:480px) {
	.sec-07{
		margin-top:-40px;
	}
	.sec-07 .section-inner {
		padding: 0px 0 0;
	}
	.marquee-wrapper {
		height: 40vw;
	}
	.marquee {
		width: calc((100vw / 2) * 4);
	}
	.marquee-item {
		width: calc(100vw / 1.4); 
	}
}


/*-------------------------------------
	     Aside Drawer
-------------------------------------*/
aside.drawer{
	display:none;
}
@media screen and (max-width:768px){
	aside.drawer{
		display:block;
		position:fixed;
		top:0;
		left: 100vw;
		right: 0;
		height:100vh;
		width:100%;
		pointer-events:none;
		transition:all 0.7s;
	}
	aside.drawer.close{
		background: #1e3556;
		z-index: 100;
		left:0;
		transition:all 0.7s;
		pointer-events:auto;
	}
	aside.drawer.close .header-box{

	}
	aside.drawer.close .flex-con{
	}
	aside.drawer.close .flex-70{
		width:70%;
	}
	aside.drawer.close .flex-70 img{
		width:192px;
		margin:20px 0 0 20px;
	}
	aside.drawer.close .flex-30{
		width:30%;
	}
	aside.drawer .flex-30 .close-btn{
		width:30px;
		position:fixed;
		right:16px;
		top:13px;
		opacity:0;
		transition:all 0.7s;
		z-index:100;
	}
	aside.drawer.close .flex-30 .close-btn{
		width:30px;
		opacity:1;
	}
	aside.drawer.close .flex-30 .close-btn img{
		width:30px;
	}
	aside.drawer .top-mene-box{
		width:100%;
		transition:all 0.7s;
	}
	aside.drawer.close .top-mene-box{
		transition:all 0.7s;
	}
	aside.drawer ul.cat-list {
		text-align:center;
		transition:all 0.5s;
		padding: 90px 0 120px;
		box-sizing:border-box;
	}
	aside.drawer.close ul.cat-list {
		text-align:center;
		transition:all 0.5s;
		padding: 90px 0 120px;
		box-sizing:border-box;
	}
	aside.drawer.close .top-mene-box ul.cat-list li{
		width:60%;
		margin:0 auto;
		text-align:center;
		line-height:4em;
		opacity: 0;
		margin-left:100vw;
		font-size:20px;
	    animation: drawer 0.8s cubic-bezier(.51,.27,.33,.79) forwards;
	}
	aside.drawer.close .top-mene-box ul.cat-list li.item01{
		animation-delay: 0.1s;
	}
	aside.drawer.close .top-mene-box ul.cat-list li.item02{
		animation-delay: 0.3s;
	}
	aside.drawer.close .top-mene-box ul.cat-list li.item03{
		animation-delay: 0.5s;
	}
	aside.drawer.close .top-mene-box ul.cat-list li.item04{
		animation-delay: 0.7s;
	}
	/* アニメーション */
	@keyframes drawer {
		0% {
			opacity: 0;
			margin-left:60%;
		}
		100% {
			opacity: 1;
			margin-left:20%;
		}
	}

	aside.drawer.close  ul li a:link,
	aside.drawer.close  ul li a:visited{
		color:#fff;
		display:block;
		font-size:20px;
		font-weight:500;
	}
	aside.drawer.close .top-mene-box ul.cat-list li.menu-contact{
		line-height:2em;
		margin-top:40px;
	}

	aside.drawer.close .top-mene-box ul.cat-list li.menu-contact a:link,
	aside.drawer.close .top-mene-box ul.cat-list li.menu-contact a:visited{
		padding: 0px 20px;
		border-radius: 9999px;
		border: none;
		background-color: #fff;
		color: #000;
		box-shadow: 0 0 3px 2px rgba(255, 255, 255, 1);
		text-align: center;
		text-decoration: none;
		display: inline-block;
		transition: all 0.5s;
	}
}
@media screen and (max-width:480px){
	aside.drawer.close .top-mene-box ul.cat-list li{
		width:60%;
	}
}

/*-------------------------------------
	    Page News
-------------------------------------*/
.page-header-inner{
	position: relative;
	width: 100%;
    margin: 0 auto;
	height: 55vw;
    max-height: 760px;
	overflow: hidden;
}
.header-page-txt {
	display:flex;
	justify-content:center;
	align-items:center;
	padding:170px 0 50px;
}
.header-page-txt h1 {
	color:#fff;
	font-weight:400;
	text-align:center;
}
.header-page-txt h1 span{
	display:block;
	font-size:20px;
	font-weight:400;
}
.page-header-inner .header-bg{
	position: absolute;
    top: 350px;
    left: 50%;
    transform: translateX(-50%);
    width: 1971px;
    height: 911px;
    background-color: #fff;
    background-size: cover;
    background-position: center top;
    border-radius: 50% / 50%;
    z-index: 0;
    pointer-events: none;
}

@media screen and (max-width: 1366px) {
	.header-page-txt {
		padding:12.44vw 0 50px;
	}
	.page-header-inner .header-bg{
		top: 25.62vw;
	}
}
@media screen and (max-width: 768px) {
	.page-header-inner .header-bg{
		width: 256vw;
	}
	.header-page-txt h1 {
		font-size:max(3.29vw, 28px);
	}
	.header-page-txt h1 span {
		font-size:max(3.29vw, 12px);
	}
	.page-header-inner{
		height: 260px;
	}
	.page-header-inner .header-bg{
		top: 195px;
	}
}
@media screen and (max-width: 480px) {
	.page-header-inner .header-bg{
		top: 165px;
	}
	.page-header-inner{
		height: 210px;
	}
	.header-page-txt {
		padding: 65px 0 50px;
	}
}

main.page {
	width:100%;
    margin-top: -400px;
	padding-bottom:100px;
}
main.page article{
	background:none;
}
main.page article.single img{
	height:auto;
}
main.page .sec-05{
	opacity:1;
}
main.page .sec-05 .section-inner{
	background:#fff;
}
main.page .sec-05 .contents-inner{
	max-width:1200px;
}
main.page .sec-05 .flex-30{
	padding-bottom:60px;
}
main.page .sec-05 .flex-30 p{
	font-family:"M PLUS Rounded 1c";
}
main.page .sec-05 .flex-30 .date{
	font-size:14px;
	color:#ABABAB;
	line-height:20px;
	padding:10px;
}
main.page .sec-05 .flex-30 .ttl{
	font-size:18px;
	color:#343434;
	line-height:27px;
	padding:10px;
}
main.page .sec-05 .flex-30 .txt{
	font-size:14px;
	color:#343434;
	line-height:20px;
	padding:10px;
}
@media screen and (max-width: 1366px) {
	main.page {
		margin-top: -25vw;
		padding-bottom:50px;
	}
	main.page article{
		width:96%;
	}
	main.page .sec-05 {
		padding-top: 7.32vw;
	}
}
@media screen and (max-width: 768px) {
	main.page {
        padding-top: 0;
		margin-top: 0px;
	}
	main.page .sec-05 {
		background:#fff;
		padding-top: 0;
		margin-top:0;
	}
	main.page .sec-05 .section-inner{
		width:100%;
		padding:0;
		margin:0;
	}
    .sec-05 .contents-inner {
        margin-top: 0;
    }
	main.page .sec-05 .flex-30{
		width:47%;
	}
}
@media screen and (max-width: 480px) {
	main.page .sec-05 .flex-30{
		width:100%;
	}

}
/*-------------------------------------
	     Page Navi
-------------------------------------*/
.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi span,
.wp-pagenavi a {
	display:inline-block;
	width:32px;
	margin:0 5px;
	padding:0px 0 4px;
	border:1px #0D2843 solid;
	border-radius:3px;
	font-size:25px;
	line-height:28px;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink{
	border:none;
}
.wp-pagenavi span.current{
	color:#fff;
	background:#1e3556;
}
/*-------------------------------------
	     Event
-------------------------------------*/
.event-01 .calendar{
	max-width:1000px;
	margin: -25px auto 20px;
}
.event-01 .calendar > div{
	padding: 45px 0 0;
}
.event-01 h2.heading:not(.widget .mc-main .heading) {
	font-family:"M PLUS Rounded 1c";
	position: absolute;
    top: 47px;
    left: 0;
    right: 0;
    z-index: 200;
	pointer-events:none;
	font-size:26px;
	color:#343434;
	font-weight:400;
}
.event-01 .my-calendar-navigation{
	top:40px;
}
.event-01 .mc-main .my-calendar-navigation > div{
	padding-bottom:0;
	font-family:"M PLUS Rounded 1c";
	font-size:16px;
	color:#A8A8A8;
	width:100%;
}
.event-01 .mc-main .my-calendar-nav{
	width:100%;
}
.event-01 .mc-main .my-calendar-navigation ul{
	width: 50%;
    justify-content: space-between;
    text-align: center;
    margin: 0 auto !important;
}
.event-01 .mc-main .my-calendar-navigation li{
	width:49%;
	outline:none;
}
.event-01 .mc-main .my-calendar-navigation li.my-calendar-today{
	/* display:none; */
}
.event-01 .calendar .mc-main nav ul li a {
	display: inline-block;
	padding-top:8px;
	font-family:"M PLUS Rounded 1c";
	font-size:16px;
	color:#A8A8A8;
	outline:none;
}
.event-01 .calendar .mc-main nav ul li a span{
	display:none;
}
.event-01 .calendar .mc-main nav ul li:first-child a:before {
	content:"◀";
	width:20px;
	height:20px;
	margin-right:8px;
}
.event-01 .calendar .mc-main nav ul li:first-child a:after {
	content:"前月";
	width:20px;
	height:20px;
	margin-right:8px;
}
.event-01 .calendar .mc-main nav ul li:last-child a:after {
	content:"▶";
	width:20px;
	height:20px;
	margin-left:8px;
}
.event-01 .calendar .mc-main nav ul li:last-child a:before {
	content:"翌月";
	width:20px;
	height:20px;
	margin-left:8px;
}
.event-01 .calendar .mc-main nav ul li a:hover {
	outline:none;
}
.event-01 .mc-main td {
    height: 6.2em;
}
.event-01 .mc-main .current-day:not(.day .current-day, .list .current-day) {
    outline: none;
}
.event-01 .mc-main .mc_general .event-title, 
.event-01 .mc-main .mc_general .event-title a{
	width: 100%;
	font-family:"M PLUS Rounded 1c";
	font-weight:400;
	font-size:16px;
	text-decoration:underline;
    justify-content: center;
	text-align:center;
	background: #fff !important;
    color: #1A9DE3 !important;
}
.event-01 .mc-main .mc_general .event-title a div span{
	color:#A8A8A8;
	text-decoration: underline;
    text-decoration-color: cornsilk;
	display:block;
	padding-top:10px;
	font-size:12px;
}
.event-01 .mc-main .mc_general .event-title a:hover{
	background: #eee !important;
}
.event-01 .mc-main thead{
	border-bottom:none;
}
.event-01 .mc-main .mc_general .event-title a svg{
	display:none;
}
.event-01 .mc-main .mc-date,
.event-01 .mc-main .has-events .mc-date{
	font-family:"M PLUS Rounded 1c";
	text-align:center;
	font-size:13px;
	color:#343434;
	padding:4px 0;
	font-weight:400;
}

@media screen and (max-width:1000px){
	.event-01 h2.heading:not(.widget .mc-main .heading) {
		top: 50px;
		font-size:max(2.6vw, 14px);
		color:#343434;
		font-weight:400;
	}
	.event-01 .calendar .mc-main nav ul li a {
		padding-top:8px;
		font-size:max(1.6vw, 8px);
	}
	.event-01 .calendar .mc-main nav ul li:first-child a:before {
	width:15px;
	height:15px;
	margin-right:8px;
	}
	.event-01 .calendar .mc-main nav ul li:last-child a:after {
	width:20px;
	height:20px;
	margin-left:8px;
	}
	.event-01 .mc-main .mc_general .event-title, 
	.event-01 .mc-main .mc_general .event-title a{
		font-size:max(1.6vw, 12px);
	}
	.event-01 .mc-main .mc_general .event-title a div span {
		font-size:max(1.2vw, 10px);
	}
}
@media screen and (max-width:768px){
	.event-01 h2.heading:not(.widget .mc-main .heading) {
		top: 50px;
	}
	.event-01 .mc-main .my-calendar-navigation ul{
		width: 60%;
	}
}
@media screen and (max-width:710px){
	.event-01 .calendar > div {
		padding: 40px 0 0;
	}
	.event-01 .mc-content {
		margin-top: -5px;
	}
	.event-01 .mc-main th{
		font-size:12px;
		font-weight:400;
		padding:0;
	}
	.event-01 .mc-main.mini td {
		padding: 6px 0 !important;
	}
	.event-01 .mc-main td {
		height: 14vw;
	}
}
@media screen and (max-width:620px){
	.event-01 .mc-main {
		display: table !important;
	}
}
@media screen and (max-width:480px){
	.event-01 .section-inner{
		width:92%;
		margin:0 auto;
	}
	.event-01 h2.heading:not(.widget .mc-main .heading) {
		top: 50px;
	}
	.event-01 .mc-main .my-calendar-navigation ul{
		width: 70%;
	}
    .event-01 .calendar > div {
        padding: 40px 0 0;
        width: 100%;
    }
	.event-01 .mc-main td{
        height: 10vw;
        vertical-align: middle;
    }
	.event-01 .mc-main td.has-events{
		color:#fff;
		background:#1A9DE3;
		position: relative;
    }
	.event-01 .mc-main td.has-events .mc-date{
		color:#fff;
		background:#1A9DE3;
    }
	.event-01 .mc-main td.has-events .mc-event{
		position: absolute;
		top: 0;
	}
	.event-01 .mc-main td.has-events .mc_general .event-title, 
	.event-01 .mc-main td.has-events .mc_general .event-title a {
		background: none !important;
	}
	.event-01 .mc-main .mc_general .event-title a  {
        height: 42px;
    }
	.event-01 .mc-main .mc_general .event-title a div {
        display: none;
    }
}

.event-02 .section-inner{
	padding-bottom:0;
}
.event-02 .flex-50{
	width:48%;
	border:1px #707070 solid;
	border-radius:10px;
	margin-bottom:40px;
}
.event-02 .flex-50 img{
	height:auto;
	border-radius:9px 9px 0 0;
}

@media screen and (max-width: 1100px) {
    .event-02 .flex-con {
        width: 100%;
    }
}
@media screen and (max-width: 768px) {
	.event-02 .section-inner{
		width:100%;
	}
}
@media screen and (max-width:480px) {
	.event-02 {
		padding-top:0px;
		opacity:1;
	}
	 section.event-02.show{
		animation:none;
		transform: translate(0, 0px);
		opacity:1;
	}
	.event-02 .section-inner{
		width:100%;
		padding:0;
	}
	.event-02 .contents-inner{
		width:96%;
	}
	.event-01 .calendar, .event-02 .contents-inner {
		width: 94%;
	}
	.event-02 h2 {
		display:none;
	}
	.event-02 .flex-50 {
		width: 100%;
		margin-bottom:20px;
	}
	.event-02 .flex-50 p{
		display:flex;
		align-items:center;
		overflow:hidden;
		height:165px;
		border-radius:10px 10px 0 0;
	}
	.event-02 .flex-50 h4{
		font-size:14px;
		line-height: 2em;
	}
	.event-02  .sec03-box p{
		height:auto;
		font-size:12px;
		padding-top:5px;
	}
	.event-02 .wp-pagenavi{
		padding-top:30px;
	}
}
/*-------------------------------------
	     News
-------------------------------------*/
.news-01 .flex-con::after{
  content:"";
  display: block;
  width:30%;
}
@media screen and (max-width:480px) {
	.news-01 .contents-inner{
		width:90%;
		margin:0 auto;
	}
	main.page .news-01 .flex-30 .ttl {
		font-size: 18px;
		padding: 0 10px;
	}
	main.page .news-01 .flex-30 {
		padding-bottom: 30px;
	}
}
/*-------------------------------------
	     Rservation
-------------------------------------*/
.reserve-01 .calendar{
	max-width:803px;
	margin:0px auto;
	padding-top:30px;
	position:relative;
}
.reserve-01 .calendar table{
	width:100%;
}
.reserve-01 .calendar h2{
	font-family:"M PLUS Rounded 1c";
	font-size:22px;
	text-align: center;
	line-height: 1.5em;
}
.reserve-01 .calendar td{
	font-family:"M PLUS Rounded 1c";
	text-align: center;
	color:#BCBCBC;
	font-size:14px;
}
.reserve-01 .calendar td.dspPrev{
	text-align:right;
}
.reserve-01 .calendar td.scheduleTtl{
	text-align:center;
	width:180px;
}
.reserve-01 .calendar td button{
	color:#BCBCBC;
	font-size:14px;
	border:none;
	background:none;
	cursor: pointer;
}
.reserve-01 .calendar td.scheduleTtl select{
	font-family:"M PLUS Rounded 1c";
	font-size:22px;
	text-align: center;
	line-height: 1.5em;
	padding:5px 10px;
	border:1px #ccc solid;
	border-radius:5px;
}
.reserve-01 .calendar td.dspNext{
	text-align:left;
}
.reserve-01 .calendar .holidayText{
	display:none;
}
.reserve-01 .calendar ul{
	display:flex;
    flex-wrap: nowrap;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 20px;
    height: auto;
	margin-top: 10px;
	scroll-behavior: smooth;
}
/* 横スクロールバーを非表示にする */
.reserve-01 .calendar ul {
  scrollbar-width: none; /* Firefox対応 */
  -ms-overflow-style: none; /* IE・Edge対応 */
}
.reserve-01 .calendar ul::-webkit-scrollbar {
  display: none; /* Chrome, Safari対応 */
}

.reserve-01 .calendar li{
	width:calc(100% / 14);
	min-width: calc(100% / 14);
	text-align:center;
	border-top:1px #BCBCBC solid;
	border-right:1px #BCBCBC solid;
	border-bottom:1px #BCBCBC solid;
	font-family:"M PLUS Rounded 1c";
	font-size:14px;
	color:#343434;
	background:#F5F5F5;
	padding:5px 0 0;
}
.reserve-01 .calendar li:first-child{
	border-left:1px #BCBCBC solid;
}
.reserve-01 .calendar li.youbi_0{
	background:#FFD9D9;
}
.reserve-01 .calendar li.youbi_6{
	background:#D9ECFF;
}
.reserve-01 .calendar li div{
	border-bottom:1px #BCBCBC solid;
	background:#fff;
}
.reserve-01 .calendar li div.list1_1,
.reserve-01 .calendar li div.list1_x,
.reserve-01 .calendar li div.list1_2{
	border-top:1px #BCBCBC solid;
	margin-top: 5px;
}
.reserve-01 .calendar li.schedule-time div.list1_2{
	border-top:none;
	margin-top: 0px;
}
.reserve-01 .calendar li div div{
	border-bottom:none;
}
.reserve-01 .calendar li.schedule-time{
	background:#F5F5F5;
	position: sticky;
	left: 0;
	z-index: 10; 
	background: #F5F5F5; 
	border-left: 1px solid #BCBCBC; 
	width: calc(100% / 7);
    min-width: calc(100% / 7);
}
.reserve-01 .calendar li.schedule-time div{
	background:#F5F5F5;
}

.reserve-01 .calendar .schedulePulldownList {
	position:relative;
    padding: 22px 0;
}
.reserve-01 .calendar .reservBtnWrap{
	display: inline-block;
    font-family: 'Noto Sans JP';
    font-size: 32px;
    font-weight: 300;
	transform: scaleX(1.5);
	color:#707070;
	min-width: 100%;
    text-align: center;
    position: absolute;
    left: 0;
    top: 9px;
	background: none;
}
.reserve-01 .calendar .reservBtnWrap span.countNum{
	display:none;
}
.reserve-01 .calendar .reservBtnWrap form{
	display: inline-block;
	max-width: 33.6px;
}
.reserve-01 .calendar .reservBtnWrap input{
	border: none;
    background: none;
    color: #1A9DE3;
    font-size: 32px;
    font-weight: 300;
	transform: scaleX(0.7);
	line-height: 30px;
	padding:0;
	cursor: pointer;
}
.reserve-01 .calendar .reservBtnWrap input:disabled{
	display: none;
}
@media screen and (max-width:480px){
	.reserve-01 .calendar td button{
		font-size:10px;
	}
	.reserve-01 .calendar td.scheduleTtl select{
		font-size:14px;
	}
	.reserve-01 .calendar li{
		width:calc(100% / 8);
		min-width: calc(100% / 8);
		font-size:9px;
	}
	.reserve-01 .calendar li.schedule-time div {
		font-size:11px;
		padding: 13px 0 14px;
	}
	.reserve-01 .calendar .reservBtnWrap{
		font-size: 24px;
		top: 4px;
	}
	.reserve-01 .calendar .reservBtnWrap input{
		font-size: 24px;
	}
	.reserve-01 .calendar .schedulePulldownList {
		padding: 15px 0;
	}
}
/* 予約フォーム */
.reserve-02 .section-inner{
	max-width:800px;
	margin:80px auto 0;
	padding-bottom:20px;
	background:#FAFFFF;
	box-shadow:0 3px 6px rgba(0, 0, 0, 0.16);
}
.reserve-02 .contact-innner{
	max-width:600px;
	margin:0 auto;
	padding:0;
}
.reserve-02 h2{
	font-family:"M PLUS Rounded 1c";
	font-size:22px;
	font-weight:400;
	line-height: 1.2em;
    padding: 0 0 10px 0px;
	margin-bottom:10px;
	border-bottom:1px #BCBCBC solid;
}
.reserve-02 h2:after{
	width:0;
	height:0;
}
.reserve-02 .flex-con {
    padding: 0px;
	font-family:"M PLUS Rounded 1c";
}
.reserve-02 .flex-40{
	width:45%;
}
.reserve-02 .flex-10{
	width:10%;
	text-align: center;
}
.reserve-02 .flex-con input {
    width:calc(100% - 14px);
	margin:13px 7px;
    padding: 10px;
	border:1px #BCBCBC solid;
	border-radius:5px;
}
.reserve-02 .flex-con input.kana {
	margin:-2px 7px 13px;
}
.reserve-02 .flex-con select{
    width:calc(100% - 7px);
    padding: 10px;
	border:1px #BCBCBC solid;
	border-radius:5px;
}
.reserve-02 .flex-con select.select-left{
	margin:13px 0 13px 7px;
}
.reserve-02 .flex-con select.select-right{
	margin:13px 7px 13px 0;
}
.reserve-02 .flex-con select.select-person{
    width:calc(100% - 14px);
	margin:13px 0 13px 7px;
}
.reserve-02 .submit {
	text-align:center;
	margin:30px auto;
}
.reserve-02 .submit input {
	border:none;
	background:#05A8B1;
	color:#fff;
	width:250px;
	line-height:45px;
	cursor:pointer;
	border-radius:5px;
	font-size:18px;
}
@media screen and (max-width: 1100px) {
    .reserve-02 .flex-con {
        width: 100%;
    }
}
@media screen and (max-width: 768px) {
    main.page .reserve-01 {
        padding-top: 30px;
    }
}
@media screen and (max-width: 768px) {
	.reserve-02{
		padding:20px 0 0px;
	}
	.reserve-02 .section-inner {
		background: none;
		box-shadow: none;
	}
	.reserve-02 h2 {
		font-weight:300;
	}
	.reserve-02 .flex-20,
	.reserve-02 .flex-80 {
		width: 100%;
	}
	.reserve-02 .flex-20 p{
		font-weight:300;
		padding-top:10px;
	}
	.reserve-02 .flex-con input {
		width: calc(100% - 4px);
		margin: 4px 2px;
	}
	.reserve-02 .flex-con select.select-left {
		margin: 0;
	}
 	.reserve-02 .flex-con .res02-name{
		width:50%;
	}
	.reserve-02 .flex-con input.kana {
		margin: 2px 2px 3px;
	}
}

/*-------------------------------------
	    Page Single
-------------------------------------*/
.single-header-inner{
	position: relative;
	width: 100%;
    margin: 0 auto;
	height: 35vw;
    max-height: 400px;
	overflow: hidden;
}

.single-header-inner .header-bg{
	position: absolute;
    top: 80px;
    left: 50%;
    transform: translateX(-50%);
    width: 1971px;
    height: 911px;
    background-color: #fff;
    background-size: cover;
    background-position: center top;
    border-radius: 50% / 50%;
    z-index: 0;
    pointer-events: none;
}

@media screen and (max-width: 1366px) {
	.single-header-inner nav img{
		width: 7.32vw;
		height: 7.32vw;
	}
	.single-header-inner .header-bg{
		top: 80px;
	}
}
@media screen and (max-width: 768px) {
	.single-header-inner{
		height: 100px;
	}
	.single-header-inner .header-bg{
		top: 60px;
	}
	.single-header-inner .header-bg {
		width: 260vw;
	}
}
@media screen and (max-width: 480px) {
}

main.page .single-01{
	margin-top:100px;
	padding-top: 8vw;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-01 .contents-inner{
	max-width:800px;
}
main.page .single-01 h1{
	font-size:26px;
	font-weight:500;
	color:#343434;
	line-height:46px;
	margin-bottom:30px;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-01 h2{
	font-size:18px;
	font-weight:600;
	color:#343434;
	line-height:20px;
	margin:40px 0 20px;
	padding:8px 0;
	border-bottom:1px #05A8B1 solid;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-01 .goback-btn{
	text-align:center;
	margin:80px auto 20px;
}
main.page .single-01 .goback-btn a:link,
main.page .single-01 .goback-btn a:visited{
	width:250px;
	height:40px;
	padding:10px 40px;
	color:#fff;
	background:#05A8B1;
	border-radius:5px;
	font-size:18px;
}
@media screen and (max-width:480px){
	main.page .single-01{
		margin-top:30px;
	}
	main.page .single-01 .date{
		font-size:12px
	}
	main.page .single-01 h1{
		font-size:18px;
		line-height:1.5em;
		padding:5px 0;
		margin-bottom:10px;
	}
}
/*-------------------------------------
	    Page Single Event
-------------------------------------*/
main.page .single-event{
	margin-top:90px;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-event .contents-inner{
	max-width:800px;
}
main.page .single-event h1{
	font-size:26px;
	font-weight:500;
	color:#343434;
	line-height:46px;
	margin-bottom:3px;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-event article.single-event{
	margin-top:0;
	width:100%;
}
main.page .single-event .date{
	font-size:18px;
	font-weight:500;
	color:#343434;
	line-height:26px;
	margin-bottom:30px;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-event .date span{
	color:#fff;
	background:#05A8B1;
	margin-right:10px;
	padding:3px 6px;
	border-radius:5px;
}
main.page .single-event h2{
	font-size:18px;
	font-weight:600;
	color:#343434;
	background:#E2ECED;
	line-height:20px;
	margin:20px 0 20px;
	padding:12px 10px 9px;
	font-family:"M PLUS Rounded 1c";
}
main.page .single-event h2:after{
	content:none;
}
main.page .single-event h3{
	font-size:18px;
	font-weight:600;
	color:#343434;
	line-height:20px;
	padding:12px 0px 9px;
	font-family:"M PLUS Rounded 1c";
	border-bottom:1px #05A8B1 solid;
}
main.page .single-event .dateTimeBox{
	margin: 20px 0 30px;
}
main.page .single-event .time-block{
	display:none;
}
main.page .single-event .details .longdesc:before{
	content:"サブタイトル";
	display:block;
	width:100%;
	height:16px;
	background:#E2ECED;
	font-family:"M PLUS Rounded 1c";
	font-size:16px;
	font-weight:600;
	padding: 9px 10px 15px;
	margin: 20px 0;
}
main.page .single-event .view-full,
main.page .single-event .mc-event .mc_edit_links, 
main.page .single-event .my-calendar-modal .mc_edit_links, 
main.page .single-event .mc-main .details .mc_edit_links{
	display:none;
}

main.page .single-event h3.price{
	font-size:18px;
	font-weight:400;
	color:#343434;
	line-height:20px;
	padding:12px 0px 9px;
	margin-bottom:20px;
	font-family:"M PLUS Rounded 1c";
	border-bottom:1px #05A8B1 solid;
}
main.page .single-event .pricebox p{
	display:none;
}
main.page .single-event .pricebox .txt p {
	display:block;
	margin-top:20px;
}

main.page .single-event .goback-btn{
	text-align:center;
	margin:80px auto 20px;
}
main.page .single-event .goback-btn a:link,
main.page .single-event .goback-btn a:visited{
	width:250px;
	height:40px;
	padding:10px 40px;
	color:#fff;
	background:#05A8B1;
	border-radius:5px;
	font-size:18px;
}
@media screen and (max-width:480px){
	main.page .single-event{
		margin-top:30px;
	}
	main.page .single-event .date{
		font-size:14px
	}
	main.page .single-event h1{
		font-size:18px;
		line-height:1.5em;
		padding:5px 0;
		margin-bottom:10px;
	}
}
/*-------------------------------------
	    Page Contact
-------------------------------------*/
main.page .contact-01{
	opacity:1;
}
.contact-01 .section-inner{
	background:none;
	box-shadow:none;
}
.contact-01 .flex-con textarea {
    width:calc(100% - 14px);
	height:106px;
	margin:13px 7px;
    padding: 10px;
	border:1px #BCBCBC solid;
	border-radius:5px;
}

/*-------------------------------------
	     Footer
-------------------------------------*/
footer { 
    width:100%;
    text-align:center;
    margin:0px auto;
    background-color: #19273B; 
}
.footer-inner{
	width:100%;
	max-width:1366px;
    margin:0px auto;
	padding:40px 0;
	background:url(image/footer-bg.png);
	background-size:cover;
	background-position:center right;
}
footer .flex-con{
	width:65%;
	max-width:750px;
    margin:0px 22% 0 13%;
}

footer .flex-20 {
	width:109px;
	height:109px;
}
footer ul { 
    display:flex;
    flex-wrap:wrap;
	justify-content:space-around;
}
footer li { 
    width:auto; 
    padding:10px 0px;
}
footer li a:link,
footer li a:visited{ 
	font-size:20px;
    color:#fff;
}
address { 
    background-color: #05A8B1; 
	color:#fff;
	font-size:10px;
	padding:10px 0;
	font-style:normal;
	font-family:"M PLUS Rounded 1c";
}
@media screen and (max-width : 768px) {
	footer .flex-con{
		width:100%;
		margin:0px auto;
	}
}

@media screen and (max-width : 480px) {
	.footer-inner{
		width:100%;
		margin:0px auto;
		padding:20px 0 80px;
		background:url(image/footer-bg-sp.png);
		background-size:100%;
		background-position:center bottom 30px;
		background-repeat:no-repeat;
	}
	footer .flex-20 {
		display:none;
	}
	footer .flex-80 {
		width:100%;
	}
	footer ul { 
		display:flex;
		flex-wrap:wrap;
		justify-content:space-around;
	}
	footer li { 
		width:100%; 
		padding:20px 0px;
	}
}

