@charset "utf-8";

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,td2,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
body {
    line-height:1em;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	text-decoration: none;
}
/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    margin:1em 0;
    padding:0;
}
input, select {
    vertical-align:middle;
}
/* Reset Stylesheet ここまで */







/* 全体の基本設定 */
body {
	background-color: #648CBE;
	overflow-y: scroll;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 300;
	font-style: normal;
}
p,a {
	color: #FFFFFF;
}
hr {
	margin: 0px auto 0px auto;
	clear: both;
	text-align: center;
}
td, th {
	vertical-align: middle;
}






/* header内オブジェクトの設定 */
header {
	width: 100%;
	height: 90px;
	background-color: #1950A0;
	position: fixed;
	z-index: 100000;
}
nav.header_menu {
	margin: 0px auto 0px auto;
	width: 1000px;
}
img.normal_menu {
	margin: 8px 0px 0px 20px;
	height: 62px;
}
img.normal_menu_icon {
	height: 30px;
}
table.normal_menu {
	float: right;
	margin: 25px 0px 0px 0px;
	border-right: 2px solid #FFFFFF;
}
th.normal_menu_icon {
	padding: 0px 10px 0px 0px;
}
th.header_menu_a {
	width: 120px;
	height: 35px;
	border-left: 2px solid #FFFFFF;
	background-color: #648CBE;
	transition-duration: 0.4s;
}
th.header_menu_a:hover {
	color: #1950A0;
	background-color: #DC8214;
	transition-duration: 0.4s;
}
th.header_menu_b {
	width: 120px;
	height: 35px;
	border-left: 2px solid #FFFFFF;
	transition-duration: 0.4s;
}
th.header_menu_b:hover {
	color: #1950A0;
	background-color: #DC8214;
	transition-duration: 0.4s;
}
a.header_menu_a {
	padding: 2px 0px 3px 0px;
	font-size: 13pt;
	font-weight: bold;
	display: block;
}
a.header_menu_b {
	padding: 2px 0px 3px 0px;
	font-size: 13pt;
	font-weight: bold;
	display: block;
}
hr.line_1 {
	margin: 3px 0px 5px 0px;
	height: 2px;
	background-color: #FFFFFF;
}





/* indexの設定 */
main {
	text-align: center;
}
/* スライドショーの白枠削除 */
.bx-wrapper {
	margin: 0 !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	border: none !important;
	background: none !important;
}
.sliderArea {
	max-width: 1000px;
	margin: 0px auto 0px auto;
	padding: 5px 0px 25px 0px;
}
section, figure {
	clear: both;
	width: 1000px;
	padding: 50px 0px 0px 0px;
	margin: 0px auto 0px auto;
}

h1 {
	font-size: 16pt;
	color: #FFFFFF;
}
hr.line_2 {
	margin: 6px 0px 30px 0px;
	height: 2px;
	background-color: #FFFFFF;
}

a.news {
	float: left;
	text-align: left;
	line-height: 1.2em;
	color: #648CBE;
	background-color: #FFFFFF;
}
p.news {
	text-align: left;
	font-size: 10pt;
}
p.news.strong {
	padding: 10px 0px 0px 0px;
}

video.shop {
	width: 100%;
	max-width: 950px;
}

address {
	margin: 30px 0px 0px 0px;
	padding: 0px 0px 20px 0px;
	background-color: #BED2E6;
}

.sns_icon {
	margin: 20px 40px 20px 40px;
	width: 80px;
	height: 80px;
}
p.address_a {
	font-size: 13pt;
	line-height: 1.5em;
	color: #1950A0;
}
a.mail {
	padding: 5px 15px 5px 15px;
	background-color: #FF0000;
	border-radius: 20px;
	font-weight: bold;
	border: 3px solid #FFFFFF;
}

footer {
	text-align: center;
	background-color: #1950A0;
	margin: 0px auto 0px auto;
	padding: 15px 0px 10px 0px;
}
table.footer {
	text-align: left;
	margin: 15px auto 20px auto;
	min-width: 1000px;
}
table.footer th {
	padding: 0px 40px 0px 40px;
}
table.footer td {
	padding: 15px 40px 0px 55px;
}
table.footer a:hover {
	border-bottom: 1px solid #FFFFFF;
}

#copyright {
	text-align: center;
	padding: 5px 0px 30px 0px;
	background-color: #1950A0;
}





/* serviceページの設定 */
h2 {
	text-align: left;
	font-size: 15pt;
	color: #FFFFFF;
	margin: 0px 0px 0px 5px;
	padding: 0px 0px 0px 10px;
	border-left: 8px solid #FFFFFF;
}
ul.service {
	font-size: 14pt;
	color: #FFFFFF;
	text-align: left;
	margin: 0px 0px 0px 50px;
	line-height: 1.5em;
}
p.service {
	font-size: 12pt;
	font-weight: bold;
	text-align: left;
	line-height: 1.5em;
	color: #1950A0;
	margin: 5px 0px 0px 0px;
	padding: 20px 20px 20px 20px;
	background-color: #FFFFFF;
	border-radius: 10px;
	width: 460px;
}
hr.line_3 {
	margin: 0px 0px 80px 0px;
	height: 0px;
	background-color: #FF0000;
}





/* facilityページの設定 */
figure img {
	max-width: 500px;
}
figcaption {
	color: #FFFFFF;
	font-size: 14pt;
	text-align: left;
	line-height: 1.5em;
	margin: 0px 0px 60px 0px;
}





/* shopページの設定 */
th.shop, td.shop {
	font-size: 12pt;
	min-width: 120px;
	padding: 0px 4px 0px 4px;
	border: 2px solid #FFFFFF;
}

hr.line_4 {
	margin: 0px 0px 20px 0px;
	height: 0px;
	background-color: #FF0000;
}
img.shop_sns {
	float: left;
	margin: -10px 15px 0px 20px;
	width: 80px;
	height: 80px;
}
p.shop_sns {
	font-size: 12pt;
	line-height: 1.2em;
	text-align: left;
	margin: 0px 5px 0px 0px;
	padding: 10px 0px 0px 0px;
}
p.cashless {
	font-size: 12pt;
	font-weight: bolder;
	text-align: left;
	margin: -20px 0px 10px 20px;
	padding: 0px 0px 0px 0px;
}
img.cashless {
	margin: 0px 0px 10px 0px;
	padding: 0px 20px 0px 20px;
	max-width: 80%;
}








/* mailformページの設定 */
p.form-text {
	margin: 20px 10px 5px 10px;
}
span.font-red {
	font-size: 75%;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #FF0000;
	padding: 0px 8px 0px 8px;
	margin: 0px 0px 0px 8px;
	border-radius: 5px;
}
form {
	margin: 0px auto 0px auto;
	padding: 0px 60px 0px 0px;
	max-width: 600px;
	text-align: left;
}
input, textarea {
	margin: 0px 0px 0px 25px;
	padding: 5px 5px 5px 5px;
	width: 100%;
	border: 2px solid #1950A0;
	border-radius: 3px;
}
#button {

}
input.button {
	cursor: pointer;
	margin: 25px 20px 0px 20px;
	width: 100px;
	font-size: 17px;
	font-weight: bold;
	display: inline-block;
	padding: 0.3em 1em;
	text-decoration: none;
	color: #1950A0;
	border: 2px solid #1950A0;
	border-radius: 3px;
	transition-duration: 0.4s;
}
input.button:hover {
	background: #DC8214;
	color: #FFFFFF;
	transition-duration: 0.4s;
}
#privacy {
	text-align: left;
	max-width: 600px;
	margin: 0px auto 0px auto;
}
p.privacy {
	font-size: 10pt;
	margin: 10px 0px 10px 20px;
	line-height: 1.3em;
}
p.privacy strong {
	line-height: 1.8em;
	margin: 0px 0px 0px -15px;
	padding: 0px 10px 0px 10px;
	background-color: #1950A0;
	border-radius: 5px;
}





/* 800px以上のみの設定 */
@media print, screen and (min-width: 800px) {
	.anchor {/* ページ内リンクの微調整用 */
		margin-top: -100px;
		padding-top: 120px;
	}
	nav.mobile_menu {
		display: none;
	}
	main {
		padding: 90px 0px 0px 0px;
		min-width: 1000px;
	}
	
	a.news {
		font-size: 13pt;
		margin: 0px 0px 20px 16px;
		padding: 10px 10px 10px 10px;
		border-radius: 10px;
		width: 210px;
		min-height: 65px;
	}
	
	iframe.map {
		width: 1000px;
		height: 500px;
	}
	
	ul.service {
		float: left;
	}
	article {
		float: right;
	}
	address.sub {
		display: none;
	}

	figure img {
		float: left;
		margin: 0px 25px 0px 0px;
	}
}





/* 800px以下のみの設定 */
@media print, screen and (max-width: 800px) {
	.anchor {/* ページ内リンクの微調整用 */
		margin-top: -130px;
		padding-top: 140px;
	}
	header {
		display: none;
	}
	main {
		min-width: 300px;
	}

	img.mobile_menu_back {
		top: 0px;
		left: 0px;
		text-align: center;
		width: 100%;
		height: 120px;
		object-fit: cover;
	}
	img.mobile_menu_logo {
		position: absolute;
		top: 15px;
		left: 5px;
		width: 90%;
		max-width: 350px;
	}
	img.mobile_menu_img {
		position: absolute;
		top: 50px;
		right: 10px;
		width: 70%;
		max-width: 200px;
	}
	table.mobile_menu {
		width: 100%;
		background-color: #1950A0;
		z-index: 100000;
	}
	a.mobile_menu_a {
		padding: 5px 0px 5px 0px;
		color: #1950A0;
		background-color: #FFFFFF;
		font-size: 14pt;
		font-weight: bold;
		display: block;
	}
	a.mobile_menu_b {
		padding: 5px 0px 5px 0px;
		font-size: 14pt;
		font-weight: bold;
		display: block;
	}
	th.mobile_menu_a {
		width: 400px;
		height: 40px;
		color: #FFFFFF;
		background-color: #FFFFFF;
		border: 2px solid #FFFFFF;
	}
	th.mobile_menu_b {
		width: 400px;
		height: 40px;
		color: #1950A0;
		background-color: #1950A0;
		border: 2px solid #FFFFFF;
	}
	.is-fixed {
		position: fixed;
		top: 0px;
		left: 0px;
		z-index: 2;
		width: 100%;
	}

	.sliderArea {
		max-width: 1000px;
		margin: 0px auto 0px auto;
		padding: 0px 0px 15px 0px;
	}
	iframe.map {
		width: 100%;
		height: 400px;
	}
	.sns_icon {
		margin: 20px 10px 20px 10px;
	}
	footer {
		display: none;
	}
	section, figure {
		width: 100%;
		margin: 0px auto 40px auto;
	}
	a.news {
		font-size: 12pt;
		margin: 0px 0px 10px 15px;
		padding: 5px 20px 10px 20px;
		background-color: #FFFFFF;
		border-radius: 5px;
		width: 80%;
	}
	
	article img {
		width: 95%;
		max-width: 500px;
		margin: 20px 0px 0px 0px;
	}
	p.service {
		margin: 5px auto 0px auto;
		width: 85%;
		max-width: 460px;
	}

	figure img {
		width: 100%;
	}
	figcaption {
		margin: 0px auto 0px auto;
		padding: 0px 10px 0px 10px;
		max-width: 500px;
	}
	
	table.shop {
		margin: 15px 0px 15px 0px;
		width: 100%;
	}
}



