@charset "utf-8";
/* CSS Document */

/*矢印用webフォント*/
@import url('https://fonts.googleapis.com/css2?family=Dela+Gothic+One&family=Kosugi+Maru&family=Lobster&display=swap');
/* font-family: 'Dela Gothic One', sans-serif;
font-family: 'Kosugi Maru', sans-serif;
font-family: 'Lobster', sans-serif; */

body{
	overflow-y: scroll;
}

/*リンク*/
a:link,
a:visited,
a:hover,
a:active {
	text-decoration: none;
}

a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	-webkit-transition: all 0.7s ease;
	-moz-transition: all 0.7s ease;
	-o-transition: all 0.7s ease;
	transition: all 0.7s ease;
}

.clr1p{color:#c1e4ec;}
.clr1n{color:#0891b2;}
.clr1s{color:#05576b;}
.clr2p{color:#d9e8c3;}
.clr2n{color:#65a30d;}
.clr2s{color:#3d6208;}
.clr3p{color:#f3f6c1;}
.clr3n{color:#d9d506;}
.clr3s{color:#826f04;}
.clr4p{color:#f6ddc1;}
.clr4n{color:#d97706;}
.clr4s{color:#824704;}
.clr5p{color:#ffb8b8;}
.clr5n{color:#dc2626;}
.clr5s{color:#9b2525;}
.clr6p{color:#fee7ec;}
.clr6n{color:#faa2b6;}
.clr6s{color:#d65472;}
.clr7p{color:#eae8f5;}
.clr7n{color:#9188c9;}
.clr7s{color:#534a88;}

.clrG1{color: #111;}
.clrG3{color: #bbb;}
.clrG5{color: #555;}
.clrG7{color: #777;}
.clrG9{color: #999;}
.clrGb{color: #bbb;}
.clrGc{color: #ccc;}
.clrGd{color: #ddd;}
.clrGe{color: #eee;}
.clrGf{color: #fff;}


.fs10{font-size: 10px;}
.fs12{font-size: 12px;}
.fs14{font-size: 14px;}
.fs16{font-size: 16px;}
.fs18{font-size: 18px;}
.fs20{font-size: 20px;}
.fs22{font-size: 22px;}
.fs24{font-size: 24px;}

.fwN{font-weight: normal;}
.fwB{font-weight: bold;}

.rBtn{
	width: 200px;
	padding: 5px 10px;
	border-radius: 5px;
}

.sBtn{
	width: 200px;
	padding: 5px 10px;
}

html {
	scroll-behavior: auto !important;
	overscroll-behavior: none;
}

body {
	word-wrap: break-word;
	padding: 0;
	margin: 0 auto;
	font-family: 'メイリオ', 'Meiryo', sans-serif;
	color: #111111;
	line-height: 1.25;
	background: #ffffff !important;
}


/************
	header
************/
header {
	width: 100%;
	height: 70px;
	text-align: center;
	border-top: #826f04 solid 5px;
	border-bottom: #f0f0f0 solid 1px;
}

#header_inner {
	width: 100%;
	height: 70px;
	margin:0 auto;
	position: relative;
}



/************
	main
************/
main{
	width: 100%;
	min-width: 1120px;
	min-height: calc(100vh - 80px);
	margin: auto;
	padding: 0px;
}

.content_wrap{
	width:100%;
	min-width:900px;	
	padding-bottom: 120px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	position: relative;
}


/****************
	btn_set
****************/


/****************
	pager
****************/
.pager {
	width:100%;
	margin:20px auto;
	}

.pager ul {
	width:100%;
	margin:10px auto;
	display: flex;
	justify-content: center;
	}

.pager ul li {
	width:	30px;
	height: 30px;
	margin: 0 1px;
	text-align:center;
	float: left;
	background:#ffffff;
	border: #9e9e9e solid 1px;
	cursor: pointer;
	}

.pager ul li.current {
	background:#9e9e9e;
	border: #9e9e9e solid 1px;
	}

.pager ul li a {
	display: block;
	font-size: 12px;
	line-height: 27px;
	}

.pager ul li a {
	color: #1b1b1b;
	text-decoration: none;
	}

.pager ul li a.current {
	color:#ffffff;
	border-radius: 50%;
	}

.w75{width: 75px;}
.w80{width: 80px;}
.w100{width: 100px;}
.w125{width: 125px;}
.w150{width: 150px;}
.w200{width: 200px;}
.w250{width: 250px;}
.w300{width: 300px;}
.w350{width: 350px;}
.w400{width: 400px;}
.w450{width: 450px;}
.w500{width: 500px;}
.w550{width: 550px;}
.w600{width: 600px;}
.w650{width: 650px;}
.w700{width: 700px;}

.display_hide{background: #ccc;}

.word_break{
	word-break: break-word !important;
}



/****************************
	top
****************************/


/****************************
	reserve
****************************/
#myForm{
	width: 80%;
	margin: auto;
}


#myForm select{
	margin: 10px auto;
	padding: 5px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border: #ccc solid 1px !important;
	border-radius: 5px;
	display: inline;
}

#myForm button{
	width: 30px;
	height: 30px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border: #ccc solid 1px;
	border-radius: 5px;
	display: inline;
}

.day_select{
	width: 371px;
	height: 30px;
	margin: 0 0 20px;
	position: relative;
}

#myForm .day_select button{
	width: 30px;
	height: 30px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border: #ccc solid 1px;
	border-radius: 5px;
	display: inline;
}

#myForm .day_select button:disabled{
	opacity: .3;
	cursor: auto;
}

#myForm .day_select button.prev{
	position: absolute;
	left: 0px;
}

#myForm .day_select .select_date{
	position: absolute;
	top: 2px;
	left: 40px;
}

#myForm .day_select button.next{
	position: absolute;
	left: 280px;
}

#period{
	width: 300px;
	text-align: center;
	display: inline-block;
}

.select_wd{
	width: 60px;
	height: 30px;
	position: relative;
}

.check_w{
	position: absolute;
	right:0;
	top: 0;
	border-top: #ccc solid 1px;
	border-bottom: #ccc solid 1px;
	border-right: #ccc solid 1px;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.check_d{
	position: absolute;
	left:0;
	top: 0;
	border-top: #ccc solid 1px;
	border-bottom: #ccc solid 1px;
	border-left: #ccc solid 1px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

#myForm input[type="radio"]:checked + label.display_radio,
#myForm input[type="radio"] + label.display_radio{
	width: 30px;
	height: 30px;
	margin: 0;
	text-align: center;
	line-height: 30px;
	/* border: #ccc solid 1px; */
	}

#myForm input[type="radio"]:checked + label.display_radio {
	background: #d9e8c3;/* マウス選択時の背景色を指定する */
	color: #3d6208; /* マウス選択時のフォント色を指定する */
	}

.select_wd input[type="radio"]:checked + label.display_radio {
	background: #d9e8c3;/* マウス選択時の背景色を指定する */
	color: #3d6208; /* マウス選択時のフォント色を指定する */
	}


#time_table,
#time_table2{
	width: 80%;
	margin: 10px auto;
	border: #bbb solid 1px;
}

#time_table td{
	width: 13.3%;
	padding: 0;
	border-right: #ccc solid 1px;
	vertical-align: top;
	background-color: #f5f5f5;
}

#time_table2 td{
	width: 93.1%;
	padding: 0;
	border-right: #ccc solid 1px;
	vertical-align: top;
	background-color: #f5f5f5;
}

.fixed01 {
	height: 50px;
	padding: 10px;
	text-align: center;
	line-height: 50px;
	position: sticky;
	top: 0;
	background: #333;
	z-index: 10;
	}

.fixed01:before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0px;
	width: 100%;
	height: 51px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	/* background: rgba(255, 0, 0, .5); */
	}

#time_table td.time_line,
#time_table2 td.time_line{
	width: 6.9%;
	padding: 0;
	background-color: #fff;
}

#time_table .time_list,
#time_table .main_time_list,
#time_table2 .time_list,
#time_table2 .main_time_list{
	width: 100%;
	height: auto;
	padding: 0;
	margin: 0;
	text-align: center;
	display: flex;
	flex-direction:column;
}

#time_table .time_list .time_list_item,
#time_table2 .time_list .time_list_item{
	width: 100%;
	height: 140px;
	padding: 0;
	margin: 0;
	text-align: center;
	position: relative;
}

#time_table .main_time_list .main_time_list_item,
#time_table2 .main_time_list .main_time_list_item{
	width: 100%;
	height: 280px;
	padding: 0;
	margin: 0;
	text-align: center;
	border-bottom: #bbb solid 1px;
	position: relative;
}

#time_table .main_time_list .main_time_list_item:last-child,
#time_table2 .main_time_list .main_time_list_item:last-child{
	border-bottom:none;
}

#time_table .main_time_list .main_time_list_item::before,
#time_table2 .main_time_list .main_time_list_item::before{
	content:"";
	display:block;
	width:100%;
	height:140px;
	border-bottom:#bbb dashed 1px ;
	border-top: #bbb dashed 1px ;
	position:absolute;
	top:70px;
	left:0;
}

#time_table .main_time_list .main_time_list_item::after,
#time_table2 .main_time_list .main_time_list_item::after{
	content:"";
	display:block;
	width:100%;
	height:1px;
	border-bottom:#bbb solid 1px ;
	position:absolute;
	top:140px;
	left:0;
}

#time_table .main_time_list .main_time_list_item .reserve_box,
#time_table2 .main_time_list .main_time_list_item .reserve_box{
	width: 90%;
	height: 210px;
	padding: 0;
	margin-left: -45%;
	text-align: center;
	background-color: #fff;
	border:#bbb solid 1px ;
	border-radius: 5px;
	position: absolute;
	top: 5px;
	left: 50%;
	z-index: 2;
	display: block;
	overflow: hidden;
}

#time_table .main_time_list .main_time_list_item .reserve_check,
#time_table2 .main_time_list .main_time_list_item .reserve_check{
background-color: rgba(255, 207, 207, 1);
}

#time_table .main_time_list .main_time_list_item .reserve_box_inner,
#time_table2 .main_time_list .main_time_list_item .reserve_box_inner{
	width: 100%;
	height: 100%;
	padding: 15px 0 0;
	position: relative;
}

#time_table .main_time_list .main_time_list_item .reserve_box_inner .time,
#time_table .main_time_list .main_time_list_item .reserve_box_inner .use_time,
#time_table .main_time_list .main_time_list_item .reserve_box_inner .reserve,
#time_table2 .main_time_list .main_time_list_item .reserve_box_inner .time,
#time_table2 .main_time_list .main_time_list_item .reserve_box_inner .use_time,
#time_table2 .main_time_list .main_time_list_item .reserve_box_inner .reserve{
	width: 94%;
	text-align: center;
	margin: auto;
	margin-bottom: 5px;
	display: block;
}

#time_table .main_time_list .main_time_list_item .reserve_box_inner .cover,
#time_table2 .main_time_list .main_time_list_item .reserve_box_inner .cover{
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(255, 0,0, .5);
	opacity: 0;
	cursor: pointer;
}


#reserve_form{
	width: 80%;
	margin: 20px auto;
}

#reserve_form .req{
	font-size: 12px;
	color: #f00;
}

#reserve_form input[type="text"]{
	width: 300px;
	height: 30px;
	padding: 0 5px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: left;
	border: #ccc solid 1px !important;
	border-radius: 5px;
	display: inline;
}

#reserve_form input[type="number"]{
	width: 300px;
	height: 30px;
	padding: 0 5px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: left;
	border: #ccc solid 1px !important;
	border-radius: 5px;
	display: inline;
}

#reserve_form select{
	width: 300px;
	height: 30px;
	padding: 0 5px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: left;
	border: #ccc solid 1px !important;
	border-radius: 5px;
	display: inline;
}

#reserve_form textarea{
	width: 300px;
	height: 100px;
	outline: none;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: left;
	border: #ccc solid 1px !important;
	border-radius: 5px;
	display: inline;
}

#reserve_form input[type="submit"]{
	width: 300px;
	outline: none;
	background: #05576b;
	color: #fff;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border-radius: 5px;
	display: inline;
}

/*input[type="number"]用*/
.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
	-moz-appearance:textfield !important;
}


#confirm_form{
	width: 80%;
	margin: 20px auto;
}

#confirm_form .req{
	font-size: 12px;
	color: #f00;
}

#confirm_form input[type="submit"]{
	width: 150px;
	outline: none;
	background: #05576b;
	color: #fff;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border-radius: 5px;
	display: inline;
}

#confirm_form input[type="button"]{
	width: 150px;
	height: 40px;
	margin: 5px 0;
	outline: none;
	background: #05576b;
	color: #fff;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border-radius: 5px;
	display: inline;
}

#send_form,
#completion_form{
	width: 80%;
	margin: 20px auto;
}

#send_form button,
#completion_form button{
	width: 150px;
	height: 40px;
	margin: 5px 0;
	outline: none;
	background: #05576b;
	color: #fff;
	font-family: 'Kosugi Maru', sans-serif;
	text-align: center;
	border-radius: 5px;
	display: inline;
}

/****************************
	footer
****************************/


footer{
	height: 70px;
	line-height: 70px;
	color: #ffffff;
	text-align: center;
}

footer #f_inner{
	margin: 0 auto;
	color: #ffffff;
	text-align: center;
}
