@charset "utf-8";
/* CSS Document */

html{
	font-size:18px;
	letter-spacing:0.2em;}

body{
  font-family: 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴシック', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
  margin:0;}

:root{
  --color-primary:#99D1CA;     /* メインカラー */}
	
.clear{
	content: " ";
	clear: both;
	width: 100%;}

span{
	display:inline-block;}
	
div {
	overflow:hidden;}
	
img{
	vertical-align: bottom;}	
	
a{
	text-decoration:none;
	color:inherit;}
	
h1,h2,h3{
	margin:inherit;
	font-weight:inherit;}	
	
#header img{
	width:100%;
	height:auto;}
	
	
.obi{
	background-color:var(--color-primary);
	margin:0 auto;}
	
.obi_title{
	font-weight:500;
	font-size: clamp(1.2rem, 0.63rem + 2.44vw, 1.8rem);
	text-align:center;}		


	
	
/*contents01----------------------------*/
.contents01{
	max-width:1000px;
	width:100%;
	margin:100px auto;}

.c01_box{
	display: flex;
	align-items:stretch;
	flex-wrap: wrap;
	justify-content:center;}
	
.c01_pict{
	max-width:300px;
	width:100%;
	margin:auto;}
	
.c01_text{
	max-width:650px;
	width:92%;
	margin:auto;}		
	
.c01bt_title{
	font-weight:400;
	font-size: clamp(1.2rem, 0.86rem + 0.87vw, 1.5rem);}	
	
	
/*contents02-----------------------------*/
.contents02{
	max-width:780px;
	width:95%;
	margin:50px auto;}
	
.c02_box{
	border:solid 1px var(--color-primary);
	padding:30px 0;}	
	
.c02_list{
	margin:auto;
	max-width:650px;
	padding:0 20px 0 40px;}	
	
.c02_list li{
	padding:7px 0;
	overflow-wrap: break-word;
	word-break: break-word;}	
	
	
	
/*contents03----------------------------*/
.contents03{
	margin:100px auto;}

.c_title{
	width:100px;
	height:50px;
	margin:auto;
	border: solid #B1B1B1;
	border-width: 1px 8px;
	font-weight:500;
	font-size:1.2em;
	text-align:center;
	display: flex;
	align-items: center;      
	justify-content: center;}
	
.c03_box{
	display: flex;
	align-items:stretch;
	flex-wrap: wrap;
	justify-content:center;
	margin:50px auto 0;}	

@media screen and (max-width:650px){
.c03_box{
	max-width:300px;
	width:100%;}	
}

	
.c03_block{
	max-width:300px;
	width:100%;
	border:solid 1px var(--color-primary);}	
	
.c03_title{
	background-color:var(--color-primary);
	font-weight:500;
	font-size:1.6em;
	text-align:center;
	padding:20px 0;
	margin:0 auto;}	
	
.c03_schedule{
	text-align:center;
	font-weight:500;
	font-size:1.4em;}	
	
.menu_box{
	margin:10px auto 30px;}	
	
.c03_menu{
	text-align:center;
	margin:5px auto;
	border: solid 1px #B1B1B1;
	width:200px;
	padding:8px 0;}
	
.c03_menu:hover{
	background-color:#CCC;}	

.c03_text{
	text-align:center;
	margin:10px auto 30px;}	
	
.plus{
	margin:auto 10px;
	font-weight:bold;
	font-size:2em;
	color:var(--color-primary);}	
	
.c03_memo{
	max-width:800px;
	width:100%;
	margin:auto;}
	
.c03memotext{
  list-style: none;
  padding-left: 0;
}

.c03memotext li{
  padding-left: 1.2em;
  position: relative;
  padding-top:8px;}

.c03memotext li::before{
  content: "※";
  position: absolute;
  left: 0;
}
	
	
/*contents04-------------------------*/
.contents04{
	margin:100px auto;}
	
.c04_box{
	display: flex;
	align-items:stretch;
	flex-wrap: wrap;
	justify-content:center;
	margin:50px auto 0;}	
	
.c04_block{
	max-width:300px;
	width:100%;
	border:solid 1px var(--color-primary);
	display: flex;
	flex-direction: column;
	margin:20px;}	

.c04_class{
	background-color:var(--color-primary);
	font-weight:500;
	font-size:1.4em;
	text-align:center;
	padding:20px 0;
	margin:0;
	width:100%;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	flex: 1 0 auto;   /* ← ここがポイント。余った高さをこの要素だけが吸収する */
}

.c04_day,
.c04_time{
	flex: 0 0 auto;   /* 文字量なりの高さのまま変化させない */
}

.c04_day{
	text-align:center;
	font-size:1.2em;
	font-weight:500px;}
	
.c04_time{
	background-color:var(--color-primary);
	text-align:center;
	font-size:1.2em;
	font-weight:500;
	padding:10px 0;
	margin:0;}	
	
	
/*contents05-------------------------*/
.contents05{
	margin:100px auto;}	
	
.price{
	text-align:center;
	font-weight:bold;
	font-size:2em;}	
	
	
/*toi-------------------------------*/	
.toi{
	margin:auto;
	text-align:center;}	

.toi_title{
	font-size:1.2em;
	font-weight:bold;}
	
.tt_ul{
	border-bottom:solid 1px #aaa;}	
	
.toi_sub_title{
	margin-bottom:0;}	
	
.tel{
	font-size:1.5em;
	font-weight:bold;
	margin-top:0;}
	
/*taiken-------------------------------*/
.taiken{
	width:100%;
	position:fixed;
	bottom:0;
	background:rgba(243,143,30,0.3);
	z-index: 50;}
	
.btn {
	background-color:#F38F1E;
	border-radius: 8px;
	white-space: nowrap;
	color: #fff;
	font-weight:bold;
	display: block;
	line-height: 35px;
	position: relative;
	text-align: center;
	width: fit-content;
	min-width: 200px;
	min-height: 35px;
	border-radius: 20px;
	padding: 5px 40px;
	margin:10px auto;
	box-shadow: 0px 0px 10px -5px #777777;
}	
	
	
.btn:hover{
	transform: scale(1.1, 1.1);
	opacity:1;}		
	
/*フッターまでスクロールしたら消す*/
.is-hidden {
  visibility: hidden;
  opacity: 0;}	
	
	
/*kai-logo--------------------------------*/
.kai-logo {
	width:300px;
	margin:50px auto 10px;}
	
.kai-logo img {
	width: 100%;
	height:auto}	
	
@media screen and (max-width:1024px){
	
}

@media screen and (max-width: 768px){
	
}

@media screen and (max-width: 485px){
}	
	
		
	
}