@charset "s-jis";

/*
---------------------------------------------------------------------------*/
html,body,#container {height: 100%;}
html {
	font-family: 'Inconsolata', 'Crimson Text', 'Noto Sans JP', 'Hind', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	font-weight: 400;
	font-size: 62.5%;
	line-height: 1;
	letter-spacing: 0;
	position: relative;
  min-height: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%; }
body {
	margin: 0px;
	padding: 0px;
	font-size: 1.6em;
	line-height: 2;
	color: #333; }
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form,input,textarea,select {margin: 0px;padding: 0px;font-size: 100%;font-weight: normal;}
ul {list-style-type: none;}
ol {padding-left: 40px;padding-bottom: 20px;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
video {max-width: 100%;}
iframe {width: 100%;}
hr {
	margin-top: 1em;
	margin-bottom: 1em; }
.bold,
.fontB {
	font-weight: bold; }
.red{color: #ff0000;}
.medatu a{
	color: #fed03b !important;

}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #333;
	transition: 0.5s; }
a:hover {
	color: #fed03b;
	text-decoration: none;
	transition: 0.5s; }

/*inner
---------------------------------------------------------------------------*/
.inner {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 3%; }

/*hタグ、段落
---------------------------------------------------------------------------*/
h2, h3, h4, h5 {
	font-family: 'Crimson Text', 'Noto Sans JP', 'Hind', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	line-height: 1.4;
	padding-left: 10px;
	padding-right: 10px; }
h2 {
	font-size: 1.4em; }
h3 {
	font-size: 1.2em; }
h4 {
	font-size: 1em; }
	h5 {
		font-size: 1em; }
h2 {
	clear: both;
	margin-bottom: 20px;
	font-size: 26px;
	border-bottom: 2px solid #1F2F54;
	padding: 10px 0;
	color: #1F2F54;
	letter-spacing: 0.02em; }
h3 {
	clear: both;
	margin-bottom: 20px;
	background-color: #aaa;
	background: rgba(34, 75, 66, 0.3) url(../images/pattern.png) repeat;
	padding: 0.3em 0.6em;
	color: #1F2F54; }
h4,
h3.h4ttl {
	font-weight: bold;
	clear: both;
	margin-bottom: 20px;
	border-left: 0.3em solid #1F2F54;
	padding-left: 0.7em; }
h3.h4ttl {
	padding: 0 0.6em;
	background: none; }
	h5 {
		font-weight: bold;
	color: #1F2F54; }
p {
	padding: 20px; }
p + p {
	margin-top: 1em; }
h2 + p,
h3 + p,
h4 + p {
	margin-top: -20px; }
h2 + ul,
h3 + ul,
h4 + ul {
	margin-top: -5px; }
section + section {
	margin-top: 40px; }
table + h3 {
	margin-top: 40px; }
h3 + p {
	padding-top: 0.5em; }

/*ヘッダー
---------------------------------------------------------------------------*/
aside {
	margin-left: 25%; }

@media screen and (max-width:800px){
	aside {
		margin-left: 0; }
}

/*aside {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh; }
.mv {
	background-image: url(../images/mv.png);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }*/

/*mainとsubを囲むブロック
---------------------------------------------------------------------------*/
#contents {
	margin: 0;
	padding: 0;
	clear: both;
	display: flex;
	overflow: hidden; }

#main {
	margin-left: 25%;
	width: 75%;
	background-color: #fff;
	background: #fff url(../images/pattern.png) repeat;	}
#sub {
	position: fixed;
	top: 0;
	left: 0;
	width: 25%;
	height: 100vh; }

.abstract #main {
	margin-left: 0;
  width: 100%; }
.abstract h1 {
  margin: 20px 25px 25px;
  max-width: 300px;
  height: auto; }
.abstract footer {
	margin-left: 0; }

@media screen and (max-width:800px){
	#contents {
		display: block; }
	#main {
		margin-left: 0;
		width: 100%;	}
	#sub {
		display: none; }
	aside {
		height:
	}
}



.list2 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.list2 .item {
	width:48% ;
}

.list2 .regist div{
	display: block;
	width: 100%;
	margin-top: 20px;
}

/*itemBox
---------------------------------------------------------------------------*/
.itemWrap {
	margin-bottom: 20px; }
.itemWrap a:hover {
	color: #1F2F54;
	opacity: 0.85; }
.itemBox {
	padding: 30px;
	padding-top: 0; }
.itemBox:first-child {
	margin-top: 30px; }
.itemBox table {
	width: 100%;
	margin-bottom: 30px;
	font-size: 100%;
	border: none; }
.itemBox table th,
.itemBox table td {
	border: none;
	border-top: solid 1px #abb2bd;
	border-bottom: solid 1px #abb2bd; }
.itemBox table th {
	font-weight: 400;
	white-space: nowrap;
	padding: 0.5em 1em;
	background: #eee; }
.itemBox table td {
	padding-left: 1.5em; }
.itemBox.privacy ol > li {
	margin-bottom: 2em; }
.itemBox table.ta2 th {
	padding-left: 20px;
	text-align: left; }
div.scroll + h3 {
	margin-top: 30px; }


@media screen and (max-width:768px){
	.itemBox table.ta1 th,
	.itemBox table.ta1 td {
		border: none;
		display: block; }
	.itemBox table.ta1 th {
		font-size: 120%;
		padding: 0;
		border-top: solid 2px #abb2bd; }
	.itemBox table.ta1 td {
		padding: 1em;	}
	.itemBox table.ta1 {
		border-bottom: solid 2px #abb2bd; }
	.scroll {
		overflow-x: scroll; }
	.scroll::before {
    content: "* Horizontal scroll";
    font-size: 12px;
    color: #aeaeae; }
	.scroll table.ta2 {
		width: 800px; }
}

.itemBox ul {
	list-style: disc;
	padding-left: 2.5em;
	padding-bottom: 20px; }

	.itemBox ul.nondisc {
		list-style: none;
		padding-left: 1.5em;
		padding-bottom: 20px; }


.itemBox ol.kazari1 {
  list-style-type: none; }
.itemBox ol.kazari1 li {
  margin-bottom: 0.5em; }
.itemBox ol.kazari1 li:before {
  margin-left: -20px;
  margin-right: 5px;
  color: #fff;
  padding: 0.3em 0.4em;
  border-radius: 3px;
  background-color: #126e23; }
.itemBox ol.kazari1 li:nth-child(1):before {
  content: "1"; }
.itemBox ol.kazari1 li:nth-child(2):before {
  content: "2"; }
.itemBox ol.kazari1 li:nth-child(3):before {
  content: "3"; }
.itemBox ol.kazari1 li:nth-child(4):before {
  content: "4"; }
.itemBox ol.kazari1 li:nth-child(5):before {
  content: "5"; }
.itemBox ol.kazari1 li:nth-child(6):before {
  content: "6"; }
.itemBox ol.kazari1 li span {
  display: block;
  margin-left: 0.5em;
  font-size: 85%; }

.itemBox li.arrow1:after {
  display: block;
  margin-top: 0.5em;
  margin-left: 4em;
  content: "↓"; }

.itemBox .item1 p {
  padding: 0 1em; }
.itemBox .item1 figure {
  padding: 0 10px;
  width: 30%;
  text-align: right;
  float: left; }
.itemBox .item1 figure.fr {
  float: right; }
.itemBox .item1 figure.chirasi {
	width: 20%; }

.item1:before,
.item1:after {content:"";display:table;}
.item1:after{clear:both;}
.item1 {zoom:1;}

/*メニュー
---------------------------------------------------------------------------*/
/*スマホ用メニューを表示させない*/
#menubar-s {display: none;}
/*３本バーアイコンを表示させない*/
#menubar_hdr {display: none;}

.submenuBox {
	width: 100%;
	height: 100%;
	min-height: 100vh;
	box-sizing: border-box;
	background: #1F2F54 url(../images/pattern.png) repeat; }

.submenuBox .submenu {
	height: 100%;
	box-sizing: border-box;
	font-family: 'Crimson Text', 'Noto Sans JP', 'Hind', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif; }

@media screen and (max-height:800px){
	/*.submenuBox {
		overflow: hidden;	}*/
	.submenuBox .submenu {
		/*width: calc(100% + 16px);*/
		overflow-y: scroll; }
}

.submenuBox .submenu h1 {
	background: #fff;
	text-align: center; }
.submenuBox .submenu h1 a {
	padding: 1.2em 1em;
	display: block; }
.submenuBox .submenu h1 img {
	width: 100%;
	max-width: 325px;
	height: auto; }

.submenuBox .submenu ul li {
	letter-spacing: 0.05em;
	font-size: 1.1em;
	box-sizing: border-box;
	line-height: 1.4;
	border-bottom: solid 1px #eee; }
.submenuBox .submenu ul li a {
	display: block;
	padding: 0.4em 1em;
	color: #fff; }

.submenuBox .submenu .btn1 {
	background-color: #fff; }
.submenuBox .submenu .btn1 a {
	color: #fff;
	line-height: 1.4;
	padding: 1em;
	letter-spacing: 0.05em;
	font-size: 120%;
	display: block;
	background: #fff url(../images/btn1.png) no-repeat;
	background-size: cover;
	background-position: center center;
	text-shadow:  1px 1px 1px rgba(0,0,0,0.2), -1px 1px 1px rgba(0,0,0,0.2), 1px -1px 1px rgba(0,0,0,0.2), -1px -1px 1px rgba(0,0,0,0.2);
	border-bottom: solid 1px #eee; }

.submenuBox .submenu .link1 a {
	font-size: 0.95em;
	position: relative;
	color: rgba(255,255,255,.8);
	line-height: 1.4;
	padding: 0.4em 1em;
	text-decoration: none;
	display: block; }

.submenuBox .submenu a {
	text-decoration: none; }
.submenuBox .submenu a:hover {
	color: #fed03b; }
.submenuBox .submenu .btn1 a:hover {
	opacity: 0.85; }
.submenuBox .submenu .btn1 a:hover {
	color: #fff; }

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	margin-left: 25%;
	background-color: #fff;
	background: #fff url(../images/pattern.png) repeat;
	clear: both;
	font-size: 90%;
	color: #1F2F54;
	text-align: right;
	padding: 10px 0; }
footer small {
	padding-right: 2.5%;
	letter-spacing: 0.05em; }
footer small a {
	color: #1F2F54;
	text-decoration: none; }
footer small a:hover {
	color: #1F2F54; }

/*ボタン（btn）
---------------------------------------------------------------------------*/
input[type="submit"].btn,
input[type="button"].btn,
input[type="reset"].btn {
	padding: 5px 20px;
	border-radius: 3px;
	color: #666;
	background: #fff;
	background: linear-gradient(#fff, #eee); }
/*マウスオン時*/
input[type="submit"].btn:hover,
input[type="button"].btn:hover,
input[type="reset"].btn:hover {
	background: #fff;
	color: #111; }

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
/*アニメーションのキーフレーム設定（変更不要）*/
@keyframes scroll {
0% {opacity: 0;}
100% {opacity: 1;}
}
/*デフォルトでは非表示に*/
body .nav-fix-pos-pagetop a {display: none;}
/*ボタンの設定*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	display: block;text-decoration: none;text-align: center;z-index: 100;position: fixed;
	width: 60px;
	line-height: 60px;
	bottom: 60px;
	right: 3%;
	background-color: #1F2F54;
	background: #1F2F54 url(../images/pattern.png) repeat;
	color: #fff;
	animation-name: scroll;	/*上のアニメーションで指定しているkeyframesの名前（scroll）*/
	animation-duration: 1S;	/*アニメーションの実行時間*/
	animation-fill-mode: forwards;	/*アニメーションの完了後、最後のキーフレームを維持する*/
}
/*マウスオン時*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
	color: #fed03b; }

/*その他
---------------------------------------------------------------------------*/
.look {background: #000;background: rgba(0,0,0,0.3);padding: 5px 10px;border-radius: 4px;}
.mb15,.mb1em {margin-bottom: 15px !important;}
.mb30 {margin-bottom: 30px !important;}
.clear {clear: both;}
ul.disc {padding: 0 20px 20px 40px;list-style: disc;}
.color1, .color1 a {color: #fed03b;}
.pr {font-size: 10px;}
.wl {width: 96%;}
.ws {width: 50%;}
.c {text-align: center;}
.r {text-align: right;}
.l {text-align: left;}
img.fr {float: right;margin-left: 10px;margin-bottom: 10px;width: 30%;}
img.fl {float: left;margin-right: 10px;margin-bottom: 10px;width: 30%;}
.fr {float: right;}
.fl {float: left;}
.big1 {font-size: 28px;letter-spacing: 0.1em;}
.mini1 {font-size: 11px;display: inline-block;line-height: 1.5;}
.sh {display: none;}

/* registration */
.regist ul {
	padding: 0;
	margin: 0 0 40px 0;
	list-style: none!important;
	display: flex;
	width: 100%; }
.regist ul li {
	color: #1F2F54;
	background-color: #aaa;
	background: rgba(34, 75, 66, 0.1) url(../images/pattern.png) repeat;
	/* width: calc(100% / 2); */
	margin: 15px;
	padding: 20px;
	box-sizing: border-box;
	border: solid 1px rgba(182,194,192, .2);
	box-shadow: 0px 20px 40px rgba(182,194,192, .4); }
.regist h3 {
	background: none;
	text-align: center; }
.regist div {display: inline-block;}
.regist div a {
	background: #1F2F54;
	display: block;
	border-radius: 5px;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
	padding: 0.3rem 4.0rem;
	text-decoration: none;
	opacity: 0.85;
  -webkit-transition: all .3s;
  transition: all .3s; }
.regist div a:hover {
	color: #fff;
	opacity: 1;
  -webkit-transform: translateY(-3px);
  -ms-transform: translateY(-3px);
  transform: translateY(-3px); }
.regist p {
	padding-left: 0;
	padding-right: 0;
	font-size: 1.4rem;
	line-height: 1.4; }
@media screen and (max-width:800px){
	.regist ul {
		display: block; }
	.regist ul li {
		margin-top: 40px;	width: 100%;
		/* width: calc(100% - 40px);  */
		
		}

.regist div {display:block;
	width: 100%;
}
.regist div + div {margin-top: 10px;}
	.regist div a {
		/* max-width: 200px; */
		margin: auto; }
}
.txtC {text-align: center;}
.btn2 a {
	background: #1F2F54;
	display: inline-block;
	border-radius: 5px;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
	padding: 0.3rem 2em;
	text-decoration: none;
	opacity: 0.85;
  -webkit-transition: all .3s;
  transition: all .3s; }
.btn2 a:hover {
	color: #fff;
	opacity: 1;
  -webkit-transform: translateY(-3px);
  -ms-transform: translateY(-3px);
  transform: translateY(-3px); }

/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px){

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
header {
	background: #fff;
	margin-bottom: 20px; }
@media screen and (max-width:800px){
	header {
		margin-bottom: 0; }
}

/*ヘッダーブロックのinner*/
header .inner {
	height: auto;
	position: static;
	text-align: center;
	padding: 20px 3%;
}
/*ロゴ画像*/
header #logo img {
	position: static;
	padding-bottom: 20px;
}
/*ロゴ画像　※index.html(.home)への追加設定*/
.home header #logo img {
	padding-bottom: 0px;
}
/*「ご予約・お問い合わせ」ボタン*/
header #toiawase a {
	position: static;
	border-radius: 6px;
	max-width: 400px;
	margin: 0 auto;
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*アニメーションのフレーム設定。全100コマアニメーションだと思って下さい。透明度(opacity)0%から透明度100%にする指定。*/
@keyframes menu1 {
0% {opacity: 0;}
100% {opacity: 1;}
}
/*スマホ用メニューブロック*/
#menubar-s {
	display: block;overflow: hidden;
	position: absolute;z-index: 10;
	width: 100%;
	top: 0;
	animation-name: menu1;		/*上のkeyframesの名前*/
	animation-duration: 0.5S;	/*アニメーションの実行時間。0.5秒。*/
	animation-fill-mode: both;	/*アニメーションの完了後、最後のキーフレームを維持する*/ }
/*スマホ用メニューブロック　※index.html(.home)への追加設定*/
.home #menubar-s {
	top: 0px;
}
/*メニュー１個あたりの設定*/
#menubar-s li a,
#menubar-s li div {
	font-family: 'Crimson Text', 'Noto Sans JP', 'Hind', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	display: block;
	text-decoration: none;
	padding: 0 0.5em;
	border-bottom: 1px solid #fff;
	background-color: #1F2F54;
	background: #1F2F54 url(../images/pattern.png) repeat;
	color: #fff; }
#menubar-s li div {
	padding: 0.65em 0.5em; }
#menubar-s li > ul {
	list-style-type: circle; }
#menubar-s li ul li {
	margin-left: 2em; }
#menubar-s li ul li a {
	background: #fff;
	color: #1F2F54;
	margin-left: -1em; }
#menubar-s li a:hover,
#menubar-s li ul li a:hover,
#menubar-s li.current a {
	color: #fed03b; }
#menubar-s li ul li a:hover {
	background: #fff; }

@media screen and (max-width:480px){
	#menubar-s li a,
	#menubar-s li div {
		text-align: center; }
	#menubar-s li > ul {
		list-style-type: none; }
}

/*PC用メニューを非表示にする*/
#menubar {
	display: none; }

/*３本バーアイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: absolute;z-index: 20;
	top: 2px; right: 0; }

@media screen and (max-width:480px){
	#menubar_hdr {
		position: absolute;z-index: 20;
		top: 0; left: 0; }
}

/*３本バーブロック ※index.html(.home)への追加設定*/
.home #menubar_hdr {
	top: 20px;	/*上から20pxの場所に配置*/
	border: 1px solid #fff;	/*枠線の幅、線種、色*/
}
/*アイコン共通設定*/
#menubar_hdr.close,
#menubar_hdr.open {
	width: 50px;
	height: 50px;
}
/*三本バーアイコン*/
#menubar_hdr.close {
	background: url(../images/icon_menu2.png) no-repeat center top/50px; }
/*三本バーアイコン　※index.html(.home)への追加設定*/
.home #menubar_hdr.close {
	background: url(../images/icon_menu2.png) no-repeat center top/50px; }
/*閉じるアイコン*/
#menubar_hdr.open {
	background: url(../images/icon_menu2.png) no-repeat center bottom/50px; }
/*閉じるアイコン　※index.html(.home)への追加設定*/
.home #menubar_hdr.open {
	background: url(../images/icon_menu2.png) no-repeat center bottom/50px; }

/*main,subコンテンツ
---------------------------------------------------------------------------*/
#main, #sub {
	float: none;
	width: auto;
	overflow: hidden; }

/*その他
---------------------------------------------------------------------------*/
body.s-n #sub,body.s-n #footermenu,.m-n {display: none;}

}

.spOnly {
	display: none; }

/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){


.spOnly {
	display: block; }
.ptOnly {
	display: none; }

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ロゴ画像*/
header #logo img {
	width: 180px;
	padding-bottom: 30px;
}

/*３本バーアイコン設定　※index.html(.home)への追加設定
---------------------------------------------------------------------------*/
.home #menubar_hdr {
	top: 13px; }

/*mainコンテンツ
---------------------------------------------------------------------------*/
/*#main p {
	padding: 0px 10px 20px;	}*/

/*ボックス（list）設定
---------------------------------------------------------------------------*/
/*ボックス１個あたりの設定*/
#main .list {
	padding: 10px;	/*ボックス内の余白。ここを変更する場合は、下の「#main .list a」の「margin」と「padding」の数字も変更。*/
}
#main .list a {
	margin: -10px;	/*ボックス内の余白。ここを変更する場合は、上の「#main .list」の「padding」の数字も変更。※マイナスを必ずつけて下さい。*/
	padding: 10px;	/*ボックス内の余白。ここを変更する場合は、上の「#main .list」の「padding」の数字も変更。*/
}
/*ボックスにリンク指定がされた場合に出る「→」マーク*/
#main .list a::before {
	right: 10px;		/*ボックスの右から10pxの場所に配置*/
	bottom: 10px;		/*ボックスの下から10pxの場所に配置*/
	width: 20px;		/*幅*/
	line-height: 20px;	/*高さ*/
}

/*list内のアイコン（シニア向け、ご家族向け、カップル向け）
---------------------------------------------------------------------------*/
/*アイコン全体を囲むボックス*/
ul.mark {
	margin-top: -10px;
}
/*アイコン１個あたりの設定*/
ul.mark li {
	font-size: 10px;
	padding: 2px 5px; }

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*ブロック全体の設定*/
#new dl {
	padding: 0 10px; }

/*その他
---------------------------------------------------------------------------*/
.ws,.wl {width: 94%;}
.big1 {font-size: 16px;}
img.fr,img.fl {float: none;margin: 0;width: 100%;}
.sh {display:block;}
.pc {display:none;}

}
