/* CSS Document */

/* reset.css, body, header, footer */


/* reset：20180615.ver_1.1 版
---------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, a, address, big,
em, img, small, strong, b, i,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, embed, figure, figcaption, 
footer, header, nav, output, ruby, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	font-style:normal;
	font-weight:normal;
	font-size:100%;
	vertical-align:baseline;
}

article, aside, details, figcaption, figure, iframe,
footer, header, hgroup, menu, nav, section, img {
	display:block;
}

ol, ul{
    list-style:none;
}

table{
    border-collapse:collapse; 
    border-spacing:0;
}

caption, th{
    text-align:left;
}

img{
	max-width:100%;
	width:100%;
	height:auto;
}

a{
	text-decoration:none;
	color:#000000;
}

a:focus {
	outline:none;
}

html{
	overflow-y:scroll;
}


/* body
---------------------------------------------------------------------*/
body{
	font-family:"ヒラギノ角ゴ Pro W3", "メイリオ", serif;
	overflow-x:hidden;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	body {
		width:480px;
		margin-right: auto;
		margin-left : auto;
	}
}



/* all
---------------------------------------------------------------------*/
/*- ID pageTitle -*/
#pageTitle{
	margin-top:10%;
	text-align:center;
	font-size:1.8rem;
	font-weight:bold;
	color:#E64966;
	line-height:1.75rem;
}

#pageTitle *{
	height:1.75rem;
	width:auto;
	margin:0 auto;
}

/*- ID userName -*/
#userName{
	background:#E64966;
	text-align:center;
	font-size:1.5rem;
	color:#FFFFFF;
	margin-top:5%;
	padding:5% 10%;
}

/*- ID contents -*/
#contents{
	padding:0 5%;
	margin-top:5%;
}

#contents .presetTitle01{
	padding:0;
}

/*- ID news -*/
#news{
	margin-top:5%;
}

#news dl{
	padding:0 5%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

#news dt,
#news dd{
	padding-bottom:1rem;
	border-bottom:1px dashed #734900;
}

#news dt:first-of-type ~ dt,
#news dd:first-of-type ~ dd{
	margin-top:5%;
}

#news dt{
	width:15%;
}

#news dd{
	width:85%;
	padding-left:10%;
	box-sizing:border-box;
}

#nres time,
#news .category{
	margin-bottom:10px;
}

#news .category{
	width:40vw;
	padding:10px 0;
	text-align:center;
	color:#FFFFFF;
	line-height:1rem;
	border-radius:30px;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	#news .category{
		width:192px;
	}
}
#news .party{
	background:#F05E4D;
}

#news .course{
	background:#F065A8;
}

#news .experi{
	background:#9FC230;
}

#news .sport{
	background:#3FCDD9;
}

/*- ID menu -*/
#menu{
	margin-top:5%;
}

#menu ~ footer{
	margin-top:0 !important;
}

#menu .presetTitle01 span{
	min-width:7rem;
}

#menu a,
#menu ul{
	display:flex;
}

#menu ul{
	flex-wrap:wrap;
	justify-content:space-between;
}

#menu li{
	background:#FCEDF0;
	width:50%;
}

#menu a{
	text-align:center;
	font-weight:bold;
	color:#E64966;
	height:30vw;
	align-items:center;
	justify-content:center;
	position:relative;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	#menu a{
		height:144px;
	}
}

#menu a:after{
	content:"";
	display:block;
	width:0;
	height:0;
	border:0.5rem solid #E64966;
	border-top-color:transparent;
	border-left-color:transparent;
	position:absolute;
	right:10px;
	bottom:10px;
}

#menu li:first-of-type,
#menu li:nth-of-type(4n),
#menu li:nth-of-type(4n + 1){
	background:#FADBE0;
}

/*- Class presetTitle01 -*/
.presetTitle01{
	margin-bottom:1rem;
	padding:0 5%;
	display:flex;
	align-items:center;
}

.presetTitle01 > *{
	flex:1;
	flex-basis:content;
}

.presetTitle01 span{
	padding:0 0.8rem;
	font-size:1.5rem;
	font-weight:bold;
	color:#E64966;
	text-align:center;
}

.presetTitle01:after,
.presetTitle01:before{
	content:"";
	display:block;
	width:100%;
	height:1px;
	background:#E64966;
}

/*- Class presetTitle02 -*/
.presetTitle02{
	margin-bottom:1rem;
	text-align:center;
	font-size:1.25rem;
	font-weight:bold;
	color:#103675;
}

.presetTitle02:after{
	content:"";
	display:block;
	width:2rem;
	height:0.5rem;
	margin:5px auto 0;
	background:#95A6C2;
	border-radius:20px;
}

/*- Class presetTitle03 -*/
.presetTitle03{
	margin-bottom:1rem;
	padding:0 5%;
	display:flex;
	align-items:center;
}

.presetTitle03 > *{
	flex:1;
	flex-basis:content;
}

.presetTitle03 span{
	padding:0 0.8rem;
	font-size:1.5rem;
	font-weight:bold;
	color:#E64966;
	text-align:center;
}

.presetTitle03:after,
.presetTitle03:before{
	content:"";
	display:block;
	width:100%;
	height:1px;
	background:#E64966;
}

/*- Class miniTitle -*/
.miniTitle{
	background:#E64966;
	text-align:center;
	font-weight:bold;
	color:#FFFFFF;
	padding:5px 0;
	border-radius:20px;
}


/*- Class btnCircle -*/
.btnCircle,
.btnCircle a{
	display:flex;
}

.btnCircle{
	justify-content:space-between;
}

.btnCircle li{
	width:40vw;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.btnCircle li{
		width:192px;
	}
}

.btnCircle a{
	background:#E64966;
	height:40vw;
	color:#FFFFFF;
	font-weight:bold;
	font-size:1.5rem;
	border-radius:50%;
	position:relative;
	align-items:center;
	justify-content:center;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.btnCircle a{
		height:192px;
	}
}

.btnCircle a:after,
.btnCircle a:before{
	content:"";
	display:block;
	width:0px;
	height:0px;
	border:1.2rem solid transparent;
	position:absolute;
	left:50%;
	transform:translateX(-50%);
}

.btnCircle a:before{
	border-top:0.8rem solid #FFFFFF;
	top:71%;
}

.btnCircle a:after{
	border-top:0.8rem solid #E64966;
	top:70%;
}

.btnCircle li:nth-of-type(2) a{
	background:#517389;
}

.btnCircle li:nth-of-type(2) a:after{
	border-top-color:#517389;
}

/*- Class presetBtn -*/
.presetBtn{
	width:70vw;
	margin:5% auto 0;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.presetBtn{
		width:336px;
	}
}

.presetBtn a{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}

.presetBtn a:after{
	content:"";
	display:block;
	width:0.7rem;
	height:0.7rem;
	border-bottom:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}

.presetBtn input{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}

.presetBtn input:after{
	content:"";
	display:block;
	width:0.7rem;
	height:0.7rem;
	border-bottom:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}	

/*- Class presetBtn2 -*/

.presetBtn2-1,
.presetBtn2-2,
.presetBtn2-1 a,
.presetBtn2-2 a{
	display:flex;
}

.presetBtn2-1{
	justify-content:space-between;
}

.presetBtn2-2{
	justify-content:flex-end;
}

.presetBtn2-1 li,
.presetBtn2-2 li{
	width:30vw;
	margin-top:1rem;
	margin-bottom:1rem;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.presetBtn2-1 li,
	.presetBtn2-2 li{
		width:144px;
	}
}

.presetBtn2-1 a,
.presetBtn2-2 a{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}

/*- Class presetBtn3 -*/

.presetBtn3,
.presetBtn3 a{
	display:flex;
}

.presetBtn3{
	justify-content:space-between;
}

.presetBtn3 li{
	width:35vw;
	margin-top:5rem;
	margin-bottom:1rem;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.presetBtn3 li{
		width:168px;
	}
}

.presetBtn3 a{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	//font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}
.presetBtn3 a:after{
	content:"";
	display:block;
	width:0.7rem;
	height:0.7rem;
	border-bottom:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}

.presetBtn3 input{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	//font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}

.presetBtn3 input:after{
	content:"";
	display:block;
	width:0.7rem;
	height:0.7rem;
	border-bottom:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}	

/*- Class presetBtn4 -*/

.presetBtn4,
.presetBtn4 a{
	display:flex;
}

.presetBtn4{
	justify-content:space-between;
}

.presetBtn4 li{
	width:35vw;
	margin-top:5rem;
	margin-bottom:1rem;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.presetBtn4 li{
		width:168px;
	}
}

.presetBtn4 a{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	//font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}
.presetBtn4 a:after{
	content:"";
	display:block;
	width:0.7rem;
	height:0.7rem;
	border-bottom:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}

.presetBtn4 input{
	display:block;
	width:100%;
	padding:5% 0;
	text-align:center;
	//font-size:1.25rem;
	font-weight:bold;
	color:#FFFFFF;
	border-radius:50px;
	position:relative;
}

.presetBtn4 input:after{
	content:"";
	display:block;
	width:0.7rem;
	height:0.7rem;
	border-bottom:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}	

.presetBtn4 a{
	background:#E64966;
}

.presetBtn4 input{
	background:#E64966;
}

.presetBtn4 li:nth-of-type(2) a{
	background:#517389;
}

.presetBtn4 li:nth-of-type(2) a:after{
	border-top-color:#517389;
}


/*- Class centerInfo -*/
.centerInfo{
	padding:0 5%;
	margin-top:1rem;
}

.centerInfo section{
	border:10px solid #AEBBD0;
	padding:5%;
}

.centerInfo .txtC p{
	text-align:center;
}

/* header
---------------------------------------------------------------------*/
header{
	padding:5% 5% 0;
	position:relative;
}

header h1{
	/* width:60vw; */
	width:70%;
	margin:0 auto;
}

header > div{
	z-index:999;
	position:absolute;
	bottom:0;
	right:10vw;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	header > div{
		right:48px;
	}
}

header .nav{
	background:#FFFFFF;
	width:100vw;
	border-bottom:10px solid #E64966;
	z-index:99;
	position:absolute;
	top:0;
	left:0;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	header .nav{
		width:480px;
	}
}

header .nav ul{
	width:75vw;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	header .nav ul{
		width:360px;
	}
}

header .nav a{
	display:block;
	padding:5% 8%;
	position:relative;
}

header .nav a:after{
	content:"";
	display:block;
	width:0.5rem;
	height:0.5rem;
	border-bottom:1px solid #E64966;
	border-right:1px solid #E64966;
	position:absolute;
	top:50%;
	right:10%;
	transform:translateY(-50%) rotate(-45deg);
}

header .nav li:nth-of-type(odd) a{
	background:#FBE4E8;
}

header .nav li:nth-of-type(even) a{
	background:#FEF6F7;
}

/*- ボタン用スタイル -*/
.menu-trigger,
.menu-trigger span {
  	display: inline-block;
  	transition: all .4s;
  	box-sizing: border-box;
}
.menu-trigger {
  	position: relative;
  	width:10vw;
  	height:8vw;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	.menu-trigger {
		width:48px;
		height:38px;
	}
}
.menu-trigger span {
  	position: absolute;
  	left: 0;
  	width: 100%;
 	height: 2px;
  	background-color:#734900;
  	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  	top:0;
}
.menu-trigger span:nth-of-type(2) {
  	top:50%;
	transform:translateY(-50%);
}
.menu-trigger span:nth-of-type(3) {
  	bottom:0;
}

/* 展開時 */
.menu-trigger.active span:nth-of-type(1) {
  	transform: translateY(-50%) rotate(-315deg);
	top:50%;
}
.menu-trigger.active span:nth-of-type(2) {
  	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  	transform: translateY(-50%) rotate(315deg);
	top:50%;
}
/*- ボタン用スタイル -*/



/* footer
---------------------------------------------------------------------*/
footer{
	background:#E64966;
	color:#FFFFFF;
	margin-top:8%;
	padding:5%;
}

footer h2{
	font-weight:bold;
	font-size:1.5rem;
}

footer p{
	margin-top:1rem;
}

footer p a{
	text-decoration:underline;
	color:#FFFFFF;
}

footer #copyright{
	text-align:center;
}



/* top, login
---------------------------------------------------------------------*/
#top > *:not(footer),
#login > *:not(footer){
	margin-top:8%;
	padding:0 5%;
}

#top > header h1,
#login > header h1{
	width:70%;
}



/* top
---------------------------------------------------------------------*/
#top > header{
	margin-top:10%;
}

#top #btm_btn a:after{
	content:"";
	display:block;
}

#top #btm_btn li:first-of-type ~ li{
	margin-top:5%;
}

#top #btm_btn a{
	display:block;
	color:#734900;
	padding:1rem;
	border:1px solid #734900;
	border-radius:10px;
	box-sizing:border-box;
	position:relative;
}

#top #btm_btn a:after{
	width:0.5rem;
	height:0.5rem;
	border-right:1px solid #734900;
	border-bottom:1px solid #734900;
	position:absolute;
	right:1rem;
	top:50%;
	transform:translateY(-50%) rotate(-45deg);
}



/* login
---------------------------------------------------------------------*/
#login header{
	padding:5% 5% 0;
	margin:0;
}

#login header p{
	background:#E64966;
	margin-top:5%;
	padding:10px 0;
	text-align:center;
	color:#FFFFFF;
	font-weight:bold;
	font-size:1.4rem;
	border-radius:50px;
}

#login > div{
	text-align:center;
}

#login h3{
	font-weight:bold;
	font-size:1.5rem;
}

#login h3 + p{
	margin-top:1rem;
}

#login form div{
	margin-top:5%;
	display:flex;
}

#login form div span{
	flex:1;
}

#login form div p{
	flex:8;
	overflow:hidden;
	border-top-right-radius:5px;
	border-bottom-right-radius:5px;
	box-shadow:0px 0px 5px 0px #B7B7B7 inset;
}

#login form div input{
	background:rgba(0,0,0,0);
	width:100%;
	height:100%;
	padding:0 0 0 1rem;
	border:none;
}

#login form div + p{
	margin-top:10px;
}

#login form div + ul{
	margin-top:8%;
}

#login form div + ul li:first-of-type ~ li{
	margin-top:1rem;
}

#login form div + ul a{
	line-height:1rem;
	display:flex;
	align-items:center;
	justify-content:center;
}

#login form div + ul a:after{
	content:"";
	display:block;
	width:0.5rem;
	height:0.5rem;
	margin-left:10px;
	border-right:1px solid #E64966;
	border-bottom:1px solid #E64966;
	transform:rotate(-45deg);
}

#login form .presetBtn a{
	background:#E64966;
}



/* matching
---------------------------------------------------------------------*/
/*
#matching .presetTitle01 span{
	color:#734900;
}

#matching .presetTitle01:after,
#matching .presetTitle01:before{
	background:#734900;
}
*/

#matching dt{
	margin-bottom:10px;
}

#matching dd .step_s2{
	display:flex;
	//justify-content:center;
}

#matching dd .step_t2{
	display:flex;
	justify-content:flex-start;
	align-items: flex-end;
	//margin-top:10px;
}

#matching dd > .step_s1 .block{
	width:100%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#matching dd > .step_s2 .block2{
	width:15%;
	margin-left:10px;
	margin-right:5px;
	margin-bottom:10px;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#matching dd > .step_s2 .block3{
	width:15%;
	margin-left:10px;
	margin-right:5px;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#matching #contents dd .step_t1 > *{
	width:100%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#matching #contents dd .step_t2 > *{
	width:25%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}
#matching #contents dd .step_t2 input{
	width:30%;
	padding:1rem;
}

#matching dd p,
#matching dd div{
	overflow:hidden;
	position:relative;
}

#matching dd .step_s1 div:after,
#matching dd .step_s2 div:after{
	content:"";
	display:block;
	width:0.5rem;
	height:0.5rem;
	border-right:1px solid #E64966;
	border-bottom:1px solid #E64966;
	position:absolute;
	top:50%;
	right:1rem;
	transform:translateY(-60%) rotate(45deg);
}

#matching dd input,
#matching dd textarea,
#matching dd select{
	background:rgba(0,0,0,0);
	border:none;
}

#matching dd select{
	width:130vw;
	padding:0.5rem;
	appearance:none;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	#matching dd select{
		width:624px;
	}
}

#matching dd input{
	width:100%;
	padding:1rem;
}

#matching dd textarea{
	width:100%;
	padding:0.5rem;
	height:10vw;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	#matching dd textarea{
		height:48px;
	}
}

#matching dt:first-of-type ~ dt{
	margin-top:5%;
}

#matching .centerInfo img{
	max-width:100%;
	width:auto;
	height:auto;
	display:inline-block;
}

#matching .centerInfo a{
	text-decoration:underline;
}

#matching #menu li{
	background:#F9F7EE;
}

#matching #menu a{
	color:#734900;
}

#matching #menu a:after{
	border-bottom-color:#734900;
	border-right-color:#734900;
}

#matching #menu li:first-of-type,
#matching #menu li:nth-of-type(4n),
#matching #menu li:nth-of-type(4n + 1){
	background:#F2EFDD;
}

#matching #menu ul + ul{
	margin:5% 0;
}

#matching #menu ul + ul li{
	background:#F3F5F8 !important;
	flex:1;
}

#matching #menu ul + ul a{
	color:#103675;
}

#matching #menu ul + ul a:after{
	border-bottom-color:#103675;
	border-right-color:#103675;
}

#matching #menu ul + ul li:nth-of-type(even){
	background:#E7EBF1 !important;
}


#matching #contents .presetTitle01 span{
	min-width:10.5rem;
}

#matching #contents .presetTitle03 span{
	min-width:30.5rem;
}

#matching #contents > section section{
	margin-top:5%;
}

/*
#matching > div{
	text-align:center;
}
*/

#matching #contents h4{
	text-align:center;
	font-size:1.25rem;
	font-weight:bold;
	color:#103675;
}

#matching #contents dl{
	border-top:1px dashed #734900;
	margin-top:5%;
	display:flex;
	flex-wrap:wrap;
}
/*
#matching #contents dt,
#matching #contents dd{
	margin-top:1rem;
	padding-bottom:1rem;
	box-sizing:border-box;
	border-bottom:1px dashed #734900;
}


#matching #contents dt:first-of-type ~ dt,
#matching #contents dd:first-of-type ~ dd{
}

#matching #contents dt{
	width:20%;
	padding-left:1rem;
	font-weight:bold;
	color:#734900;
	text-align:left;
}

#matching #contents dd{
	width:80%;
	padding-left:2rem;
	text-align:left;
}
*/
#matching #contents img{
	max-width:100%;
	width:auto;
	height:auto;
	display:inline-block;
}

#matching #contents dd a{
	color:#E64966;
	text-decoration:underline;
}

#matching #contents .supporter img{
	max-width:100px;
}

#matching #contents .btnCircle{
	margin-top:8%;
}

#matching .presetBtn a{
	background:#E64966;
}

#matching .presetBtn input{
	background:#E64966;
}

#matching .presetBtn3 a{
	background:#E64966;
}

#matching .presetBtn3 input{
	background:#E64966;
}




/* event
---------------------------------------------------------------------*/
#event #news .presetTitle01 span{
	min-width:9rem;
}



/* company
---------------------------------------------------------------------*/
#company .presetBtn a{
	background:#E64966;
}

#company #news .presetTitle01 span{
	min-width:12rem;
}

/* reserve
---------------------------------------------------------------------*/

#reserve #contents .presetTitle01 span{
	min-width:15rem;
}

#reserve div{
	text-align:center;
}

#reserve .txtL p{
	text-align:left;
}

#reserve dl{
	margin-top:20px;
}

#reserve form{
	padding:0 5%;
}

#reserve dt:first-of-type ~ dt{
	margin-top:5%;
}

#reserve dd{
	margin-top:10px;
}

#reserve dd .date{
	display:flex;
	justify-content:center;
}

#reserve dd > .date .block{
	width:30%;
	margin-left:10px;
	margin-right:5px;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#reserve dd > .area{
	width:100%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#reserve dd p,
#reserve dd div{
	overflow:hidden;
	position:relative;
}

#reserve dd .date .block:after{
	content:"";
	display:block;
	width:0.5rem;
	height:0.5rem;
	border-right:1px solid #E64966;
	border-bottom:1px solid #E64966;
	position:absolute;
	top:50%;
	right:1rem;
	transform:translateY(-60%) rotate(45deg);
}

#reserve dd .area:after{
	content:"";
	display:block;
	width:0.5rem;
	height:0.5rem;
	border-right:1px solid #E64966;
	border-bottom:1px solid #E64966;
	position:absolute;
	top:50%;
	right:1rem;
	transform:translateY(-60%) rotate(45deg);
}

#reserve dd select{
	background:rgba(0,0,0,0);
	border:none;
	width:100vw;
	padding:8px;
	appearance:none;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	#reserve dd select{
		width:480px;
	}
}

#reserve .presetBtn a{
	background:#E64966;
}

#reserve .presetBtn2 a{
	background:#E64966;
}

#reserve .presetBtn3 a{
	background:#E64966;
}

/* reserve-date
---------------------------------------------------------------------*/

#reserve-date #contents .presetTitle01 span{
	min-width:15rem;
}

#reserve-date div{
	text-align:center;
}

#reserve-date .txtL p{
	text-align:left;
}

#reserve-date .txtL p a{
	color:#E64966;
	text-decoration:underline;
}

#reserve-date #contents h4{
	text-align:center;
	font-size:1.25rem;
	margin-top:2%;
	margin-bottom:5%;
}

#reserve-date #contents .date dl{
	border-top:1px dashed #734900;
	display:flex;
	flex-wrap:wrap;
}

#reserve-date #contents .date dt,
#reserve-date #contents .date dd{
	margin-top:1rem;
	padding-bottom:1rem;
	box-sizing:border-box;
	border-bottom:1px dashed #734900;
}

#reserve-date #contents dt:first-of-type ~ dt,
#reserve-date #contents dd:first-of-type ~ dd{
}

#reserve-date #contents .date dt{
	width:50%;
	padding-left:1rem;
	font-weight:bold;
	color:#734900;
	font-size:1.25rem;
	text-align:left;
}

#reserve-date #contents .date a{
	color:#E64966;
	text-decoration:underline;
}

#reserve-date #contents .date dd{
	width:50%;
	font-size:1.5rem;
	padding-left:2rem;
	color:#734900;
	text-align:left;
}

#reserve-date table {
	background:#FCEDF0;
}

#reserve-date table a{
	text-decoration:underline;
	color:#E64966;
}

#reserve-date dd > .area{
	width:100%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#reserve-date dd p,
#reserve-date dd div{
	overflow:hidden;
	position:relative;
}

#reserve-date dd .area:after{
	content:"";
	display:block;
	width:0.5rem;
	height:0.5rem;
	border-right:1px solid #E64966;
	border-bottom:1px solid #E64966;
	position:absolute;
	top:50%;
	right:1rem;
	transform:translateY(-60%) rotate(45deg);
}

#reserve-date dd select{
	background:rgba(0,0,0,0);
	border:none;
	width:100vw;
	padding:8px;
	appearance:none;
}
@media screen and (min-width:781px){
	/*画面幅が781px以上の時*/
	#reserve-date dd select{
		width:480px;
	}
}

#reserve-date .presetBtn a{
	background:#E64966;
}

#reserve-date .presetBtn2-1 a,
#reserve-date .presetBtn2-2 a{
	background:#E64966;
}

#reserve-date .presetBtn3 a{
	background:#E64966;
}


/* reserve-time
---------------------------------------------------------------------*/

#reserve-time #contents .presetTitle01 span{
	min-width:15rem;
}

#reserve-time div{
	text-align:center;
}

#reserve-time .txtL p{
	text-align:left;
}

#reserve-time .txtL p a{
	color:#E64966;
	text-decoration:underline;
}

#reserve-time #contents h4{
	text-align:center;
	font-size:1.25rem;
	margin-top:2%;
	margin-bottom:5%;
}

#reserve-time #contents dl{
	border-top:1px dashed #734900;
	display:flex;
	flex-wrap:wrap;
}

#reserve-time #contents dt,
#reserve-time #contents dd{
	margin-top:1rem;
	padding-bottom:1rem;
	box-sizing:border-box;
	border-bottom:1px dashed #734900;
}

#reserve-time #contents dt:first-of-type ~ dt,
#reserve-time #contents dd:first-of-type ~ dd{
}

#reserve-time #contents dt{
	width:50%;
	padding-left:1rem;
	font-weight:bold;
	color:#734900;
	font-size:1.25rem;
	text-align:left;
}

#reserve-time #contents dt a{
	color:#E64966;
	text-decoration:underline;
}

#reserve-time #contents dd{
	width:50%;
	font-size:1.5rem;
	padding-left:2rem;
	color:#734900;
	text-align:left;
}

#reserve-time #contents dd a{
	color:#E64966;
	text-decoration:underline;
}

#reserve-time table {
	background:#FCEDF0;
}

#reserve-time table a{
	text-decoration:underline;
	color:#E64966;
}

#reserve-time .presetBtn a{
	background:#E64966;
}

#reserve-time .presetBtn2-1 a,
#reserve-time .presetBtn2-2 a{
	background:#E64966;
}

#reserve-time .presetBtn3 a{
	background:#E64966;
}


/* reserve-detail
---------------------------------------------------------------------*/

#reserve-detail #contents .presetTitle01 span{
	min-width:18rem;
}

#reserve-detail div{
	text-align:center;
}

#reserve-detail .txtL p{
	text-align:left;
}

#reserve-detail form{
	padding:0 5%;
}

#reserve-detail dt:first-of-type ~ dt{
	margin-top:2%;
}

#reserve-detail dl{
	margin-top:20px;
	margin-bottom:20px;
	background:#FCEDF0;
	padding:5%;
	box-shadow:0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}

#reserve-detail dd{
	margin-top:10px;
	padding-right:3%;
	padding-left:3%;
}

#reserve-detail dd p,
#reserve-detail dd div{
	overflow:hidden;
	position:relative;
}

#reserve-detail #contents dd a{
	text-decoration:underline;
	color:#E64966;
}

#reserve-detail .presetBtn a{
	background:#E64966;
}

#reserve-detail .presetBtn2 a{
	background:#E64966;
}

#reserve-detail .presetBtn3 a{
	background:#E64966;
}

#reserve-detail .txtFuri{
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
	border: solid 3px #000000;
	font-size:0.8em;
}
#reserve-detail .txtFuri p {
    margin: 0; 
	padding: 0;
}

/* reservation
---------------------------------------------------------------------*/

#reservation header{
	padding:5% 5% 0;
	margin:0;
}

#reservation > header h1{
	width:70%;
}

#reservation header p{
	background:#E64966;
	margin-top:5%;
	padding:10px 0;
	text-align:center;
	color:#FFFFFF;
	font-weight:bold;
	font-size:1.4rem;
	border-radius:50px;
}

#reservation #contents .presetTitle01 span{
	min-width:10em;
}

#reservation h3{
	font-weight:bold;
	font-size:1.5rem;
}

#reservation h3 + p{
	margin-top:1rem;
}

#reservation form div span{
	flex:1;
}

#reservation form div p{
	text-align:left;
}

#reservation dl{
	margin-top:20px;
}

#reservation form{
	padding:0 5%;
}

#reservation dt:first-of-type ~ dt{
	margin-top:5%;
}

#reservation dd{
	margin-top:10px;
	text-align:left;
}

#reservation dd .step2{
	display:flex;
	justify-content:flex-start;
	align-items: flex-end;
}

#reservation dd .step3{
	display:flex;
	justify-content:flex-start;
	align-items: flex-end;
}

#reservation dd .step1 > *{
	width:100%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#reservation dd .step2 > *{
	width:30%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#reservation dd .step3 > *{
	width:25%;
	border:none;
	border-radius:5px;
	box-sizing:border-box;
	box-shadow:0px 0px 5px 0px #BBBBBB inset;
	background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFFFFF), to(#FFFFFF));
	background-image: -webkit-linear-gradient(left, #FFFFFF, #FFFFFF);
}

#reservation dd .step1 input{
	width:100%;
	padding:1rem;
}

#reservation dd .step2 input{
	width:30%;
	padding:1rem;
}

#reservation dd .step3 input{
	width:25%;
	padding:1rem;
}

#reservation dd p,
#reservation dd div{
	overflow:hidden;
	position:relative;
}

#reservation dd input{
	width:100%;
	padding:1rem;
	background:rgba(0,0,0,0);
	border:none;
}

#reservation .presetBtn a{
	background:#E64966;
}

#reservation .presetBtn input{
	background:#E64966;
}

#reservation .presetBtn2-1 a,
#reservation .presetBtn2-2 a{
	background:#E64966;
}

#reservation .presetBtn3 a{
	background:#E64966;
}

#reservation .presetBtn3 input{
	background:#E64966;
}