@charset "UTF-8";


/* *****************************************************
 *	root
 *	link
 *	layout
 *	base
 *	header
 *	container
 *	contents
 *	footer
 * *****************************************************/


/* *****************************************************
 *	root
 * *****************************************************/
* {
	margin: 0;
	padding: 0;

	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

img {
	border: none;
}

html {
	height: 100%;
	font-size: 62.5%;
}

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

p, h1, h2, h3, h4, h5, h6, h7, ul, ol, li, dl, dt, dd, p, caption, th, td, form, input, textarea, blockquote, embed, object {
	margin: 0;
	padding: 0;
	font-style: normal;
	font-weight: normal;
}

input, select, textarea {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

/* IE6 */
* html .clearfix {
	zoom: 1;
}

/* IE7 */
*:first-child+html .clearfix {
	zoom: 1;
}

.noto {
	font-family: 'Noto Sans JP', sans-serif;
}

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

/* *****************************************************
 *	link
 * *****************************************************/
a:link, a:visited, a:hover, a:active {
	text-decoration: none;
}

a:link {
	color: #333333;
}

a:visited {
	color: #333333;
}

a:hover {
	color: #515152;
}

a:focus {
	color: #333333;
}

/* *****************************************************
 *	layout
 * *****************************************************/
/* whole
-------------------------------------------------------*/
body {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 100%;
	margin: 0;
	padding: 0;
	background: #fff;
	color: #333333;
	font-size: 14px;
	font-size: 1.4em;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	line-height: 1.0;
	-webkit-text-size-adjust: 100%;
}

body {
	height: 100%;
	overflow-x: hidden;
}

* html div.wrap {
	height: 100%;
}

div.wrap {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 100%;
	margin: 0 auto;
}

/* pc_none */
.pc_none {
	display: none;
}

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 77%;
}

#page-top a {
	background: #666;
	text-decoration: none;
	color: #fff;
	width: 90px;
	padding: 20px 0;
	text-align: center;
	display: block;
	border-radius: 5px;
}

#page-top a:hover {
	text-decoration: none;
	background: #999;
}

/* *****************************************************
 *	base
 * *****************************************************/

/* pageWrap
-------------------------------------------------------*/
div.pageWrap {
	width: 100%;
}

/* header
-------------------------------------------------------*/
header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-end;
	-ms-flex-align: flex-end;
	align-items: flex-end;
	max-width: 1400px;
	margin: 0 auto;
	padding: 20px 40px;
}

header p.logo {
	margin-right: auto;
	line-height: 0;
}

header p.logo a {
	display: block;
}

header p.logo a img {
	max-width: 100%;
}

header nav {
	margin-left: auto;
}

header nav ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	list-style-type: none;
}

header nav ul li {
	margin-left: 30px;
}

header nav ul li:first-child {
	margin-left: 0;
}

/* container
-------------------------------------------------------*/
div.container {
	position: relative;
	max-width: 1400px;
	margin: 0 auto;
}

/* contents
-------------------------------------------------------*/
div.contents {
	width: 100%;
	height: auto;
}

/* footer
-------------------------------------------------------*/
footer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 100px 40px;
}

footer div.footer-box01 {
	margin-right: 20px;
}

footer div.footer-box01 div.logo {
	margin-bottom: 20px;
	line-height: 0;
}

footer div.footer-box01 div.text p {
	margin-bottom: 10px;
	line-height: 1.3;
}

footer div.footer-box01 div.text p.tel a {
	pointer-events: none;
}

footer div.footer-box01 div.text p span.copyright {
	color: #818181
}

footer div.footer-box02 {
	margin-left: auto;
}

footer div.footer-box02 ul.footer-link-btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	list-style-type: none;
}

footer div.footer-box02 ul.footer-link-btn li {
	margin-right: 30px;
}

footer div.footer-box02 ul.footer-link-btn li:last-child {
	margin-right: 0;
	margin: 0 0 0 auto;
}

footer div.footer-box02 ul.footer-link-btn li a {
	display: block;
	width: 220px;
	padding: 25px 0;
	background: #1e3c72;
	text-align: center;
	line-height: 1.0;
}

footer div.footer-box02 ul.footer-link-btn li a:hover {
	opacity: 0.8;
}

footer div.footer-box02 ul.footer-link-btn li:nth-child(2) a {
	background: #2a7a66;
}

footer div.footer-box02 ul.footer-link-btn li:nth-child(3) a {
	background: #6db72b;
}

footer div.footer-box02 ul.footer-link-btn li.reserve a{
	background: #00e5ca; /* Old browsers */
	background: -moz-linear-gradient(left,  #00e5ca 1%, #1593cc 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #00e5ca 1%,#1593cc 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #00e5ca 1%,#1593cc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.fix-reserve a{
	position: fixed;
	bottom: 20px;
	right: 20px;
	display: block;
	width: 300px;
	height: 100px;
	background: #e5007f;
	background: -moz-linear-gradient(left, #e5007f 0%, #fabd00 100%);
	background: -webkit-linear-gradient(left, #e5007f 0%,#fabd00 100%);
	background: linear-gradient(to right, #e5007f 0%,#fabd00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5007f', endColorstr='#fabd00',GradientType=1 );
}

/* sp_nav
-------------------------------------------------------*/
.NavMenu {
	display: none;
}

.Toggle {
	display: none;
}

/* modal
-------------------------------------------------------*/
#lean_overlay {
	position: fixed;
	z-index: 100;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	background: #000;
	display: none;
}

#div787 {
	background: none repeat scroll 0 0 #FFFFFF;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
	display: none;
	padding: 20px;
	height: 130px;
	width: 400px;
	text-align: center;
	font-size: 18px;
	line-height: 1.3;
}

#div787 ul {
	list-style: none;
}

#div787 ul li a.blue_mail {
	color: #2cafe3;
}

#div787 ul li a:hover.blue_mail {
	color: #62D2FF;
}

.modal_close {
	position: absolute;
	top: 12px;
	right: 12px;
	display: block;
	width: 14px;
	height: 14px;
	z-index: 2;
}

div.model_bnr {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	position: fixed;
	width: 320px;
	height: 100px;
	background: #fff;
	right: 20px;
	bottom: 20px;
	z-index: 999999;
}

div.model_bnr a {
	display: block;
	position: relative;
	background: #00e5ca; /* Old browsers */
	background: -moz-linear-gradient(left,  #00e5ca 1%, #1593cc 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #00e5ca 1%,#1593cc 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #00e5ca 1%,#1593cc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	line-height: 0;
	width: 100%;
	height: 100%;
}

div.model_bnr a:before{
	content: "";
	position:absolute;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	top: 50%;
	left: 5px;
	width: 2px;
	height: 89%;
	background: #fff;
}

div.model_bnr a:after{
	content: "";
	position:absolute;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	top: 50%;
	right: 5px;
	width: 2px;
	height: 89%;
	background: #fff;
}

div.model_bnr a .model_bnr_wrap{
	position: relative;
	display:-webkit-box;
	display: -webkit-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content:center;
	justify-content:center;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	width: 100%;
	height: 100%;
}

div.model_bnr a .model_bnr_wrap:before{
	content: "";
	position:absolute;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	top: 5px;
	left: 50%;
	width: 96.5%;
	height: 2px;
	background: #fff;
}

div.model_bnr a .model_bnr_wrap:after{
	content: "";
	position:absolute;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	left: 50%;
	bottom: 5px;
	width: 96.5%;
	height: 2px;
	background: #fff;
}

div.model_bnr a dl {
	position: relative;
}

div.model_bnr a dl dt {
	margin-bottom: 3px;
	font-size: 2.2rem;
	font-weight: bold;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
	line-height: 1.5;
	text-align: center;
	color: #fff;
	letter-spacing: 0.05em;
}

div.model_bnr a dl dd {
	font-size: 1.6rem;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W6", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
	line-height: 1.5;
	text-align: center;

	color: #fff;
}

/* genzei
-------------------------------------------------------*/
div.genzei-contents {
	position: relative;
	width: 100%;
	margin-bottom: 120px;
	text-align: center;
}

div.genzei-contents h3{
	margin-bottom: 35px;
}

div.genzei-contents .notes{
	margin-top: 20px;
	padding: 20px;
	background: #f0f0f0;
	font-size: 1.8rem;
	font-weight: 900;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1.8;
}

div.genzei-contents .price-image-text{
	margin-top: 50px;
	padding: 40px;
	background: #f0f0f0;
	border: 1px solid #333;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}

@media screen and (min-width: 768px){
div.model_bnr a{
	-webkit-transition: 0.7s ease;
-moz-transition: 0.7s ease;
-ms-transition: 0.7s ease;
transition: 0.7s ease;
}

div.model_bnr a:hover{
	opacity: 0.7;
	-webkit-opacity: 0.7;
}
}

/* tablet */
@media screen and (min-width:768px) and (max-width:1024px) {

	/* ------------------------------------------------------*/
	/* footer */
	footer {
		padding: 40px 60px 40px;
	}

	footer div.footer-box02 ul.footer-link-btn {
		display: block;
	}

	footer div.footer-box02 ul.footer-link-btn li {
		margin-right: 0;
		margin-bottom: 20px;
	}

	footer div.footer-box02 ul.footer-link-btn li:last-child {
		margin-bottom: 0;
	}
}

/* SP */
@media screen and (max-width: 767px) {

	/* ------------------------------------------------------*/
	#page-top a {
		padding: 17px 0;
	}

	/* pc_none */
	.pc_none {
		display: block;
	}

	/* sp_none */
	.sp_none {
		display: none;
	}

	/* header */
	header {
		display: none;
	}

	/* container */
	div.container {
		width: 100%;
	}

	/* footer */
	footer {
		display: block;
		max-width: 100%;
		padding: 40px 0 20px;
	}

	footer div.footer-box01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		margin-right: 0;
		margin-bottom: 0;
		padding: 0 20px;
	}

	footer div.footer-box01 div.logo {
		margin-bottom: 0;
		padding-right: 20px;
	}

	footer div.footer-box01 div.text {
		line-height: 1.3;
	}

	footer div.footer-box01 div.text p.tel a {
		pointer-events: auto;
	}

	footer div.footer-box01 div.text p:last-child {
		margin-bottom: 0;
	}

	footer div.footer-box02.sp_block {
		width: 100%;
		margin-bottom: 20px;
	}

	footer div.footer-box02 ul.footer-link-btn li {
		/* width: 50%;
		width: -webkit-calc(100% / 2);
		width: calc(100% / 2); */
		width: 100%;
		margin-right: 0;
		margin-bottom: 0;
	}

	footer div.footer-box02 ul.footer-link-btn li a {
		width: 100%;
		color: #fff;
		padding: 23px 0;
	}

	/* sp_nav */
	/*ナビメニューのスタイルを指定*/
	nav.NavMenu {
		position: fixed;
		/*表示位置を固定*/
		z-index: 2;
		/*重ね順を変更*/
		top: 0;
		/*表示位置を指定*/
		left: 0;
		/*表示位置を指定*/
		background: #fff;
		/*背景を白にする*/
		color: #000;
		/*文字色を黒にする*/
		text-align: center;
		/*テキストを中央揃え*/
		width: 100%;
		/*全幅表示*/
		transform: translateY(-100%);
		/*ナビを上に隠す*/
		transition: all 0.6s;
		/*アニメーションの時間を指定*/
	}

	nav.NavMenu ul {
		background: #ccc;
		/*背景をグレーにする*/
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}

	nav.NavMenu ul li {
		font-size: 1.1em;
		list-style-type: none;
		padding: 0;
		width: 100%;
		border-bottom: 1px dotted #333;
	}

	nav.NavMenu ul li:last-child {
		padding-bottom: 0;
		border-bottom: none;
		/*最後のメニュー項目のみ下線を消す*/
	}

	nav.NavMenu ul li a {
		display: block;
		/*クリックできる領域を広げる*/
		color: #000;
		padding: 1em 0;
	}

	/*トグルボタンが押されたときに付与するクラス*/
	nav.NavMenu.active {
		transform: translateY(0%);
	}

	/*トグルボタンのスタイルを指定*/
	.Toggle {
		display: block;
		position: fixed;
		right: 0;
		top: 0;
		width: 60px;
		height: 60px;
		background: rgba(255, 255, 255, 0.8);
		cursor: pointer;
		z-index: 3;
	}

	.Toggle span {
		display: block;
		position: absolute;
		width: 30px;
		border-bottom: solid 2px #000;
		-webkit-transition: .35s ease-in-out;
		/*変化の速度を指定*/
		-moz-transition: .35s ease-in-out;
		/*変化の速度を指定*/
		transition: .35s ease-in-out;
		/*変化の速度を指定*/
		left: 15px;
	}

	.Toggle span:nth-child(1) {
		top: 19px;
	}

	.Toggle span:nth-child(2) {
		top: 28px;
	}

	.Toggle span:nth-child(3) {
		top: 37px;
	}

	/* 最初のspanをマイナス45度に */
	.Toggle.active span:nth-child(1) {
		top: 28px;
		left: 16px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	/* 2番目と3番目のspanを45度に */
	.Toggle.active span:nth-child(2),
	.Toggle.active span:nth-child(3) {
		top: 28px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	/* modal */
	#div787 {
		background: none repeat scroll 0 0 #FFFFFF;
		box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
		display: none;
		padding: 30px;
		height: auto;
		width: 80%;
		margin: 0 auto !important;
		left: 10% !important;
		text-align: center;
		font-size: 14px;
	}

	.footer-link-btn {
		position: fixed;
		bottom: 0;
		line-height: 0;
		width: 100%;
		z-index: 200;
		box-shadow: 0 2px 6px #5a5a5a;
		-moz-box-shadow: 0 2px 6px #5a5a5a;
		-o-box-shadow: 0 2px 6px #5a5a5a;
		-ms-box-shadow: 0 2px 6px #5a5a5a;
		z-index: 9999999;
	}

	div.model_bnr {
		position: fixed !important;
		display: block;
		width: 100%;
		height: 65px;
		padding: 0;
		left: 0;
		bottom: 60px;
		right: 0 !important;
		margin-right: 0;
	}

	div.model_bnr a {
		width: 100%;
		box-shadow: none;
		z-index: 3;
	}

	div.model_bnr a::before{
		width: 1px;
		left: 3px;
	}

	div.model_bnr a::after {
		width: 1px;
		right: 3px;
	}

	div.model_bnr a .model_bnr_wrap:before {
		height: 1px;
		top: 3px;
		width: 98.5%;
	}

	div.model_bnr a .model_bnr_wrap:after {
		height: 1px;
		bottom: 3px;
		width: 98.5%;
	}

	div.model_bnr a dl:before {
		bottom: 13px;
	}

	div.model_bnr a dl:after {
		bottom: 19px;
	}

	div.model_bnr a dl dt {
		margin-bottom: 0;
		font-size: 1.8rem;
		line-height: 1.35;
	}

	div.model_bnr a dl dd{
		font-size: 1.4rem;
		line-height: 1.35;
	}

	/* genzei
	-------------------------------------------------------*/
	div.genzei-contents {
		margin-bottom: 60px;
	}

	div.genzei-contents .price-image-text{
		width: 85%;
		margin: 30px auto 0;
		padding: 20px;
		font-size: 1.6rem;
		line-height: 1.5;
	}
}
