@charset "utf-8";
/* =======================================================================

   全体
   
======================================================================= */

/* -----------------------------------------------------------
　共通・可変画像（親要素幅まで）
----------------------------------------------------------- */

html {
	min-height: 100%;
	position: relative;
}

.fluid-image {
	max-width:100%;
	height: auto;
	width /***/:auto;
}

/* :::::::::: テキストリンク :::::::::: */

section p a {
	text-decoration:underline;
}

section p a:hover {
	text-decoration:underline;
	color:#CCCCCC;
}

.fontBL{font-weight:bold;font-size:150%;}

.mar0{margin:0!important;}


.indent1{padding-left:1em;}

.membershiptxt{font-weight:bold;color:#FF8C00;}

.std64 { border-top: #ddd dotted 1px; border-bottom: #ddd dotted 1px; }


@media screen and (min-width: 769px){
	
	/* :::::::::: 【PC】全体 :::::::::: */
	
	body {
		font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		font-size:17px;
		color:#333333;
		padding:0 0 200px;
		background:url(../images/bg_body_pc.jpg) repeat-x;
	}	
	
	.pc-cont {
	}
	
	.sp-cont {
		display:none;
	}
	
	figure {
		margin:0 auto 1.7em;
		text-align:center;
	}
	
	/* :::::::::: 【PC】画像・左寄せ回り込みなし :::::::::: */
	
	.pc-image-alignleft {
		width:100%;
		text-align:left;
	}
		
	/* :::::::::: 【PC】画像・右寄せ回り込み :::::::::: */
	
	.pc-image-right {
		margin:0 0 1.7em 1.7em;
		float:right;
		width:250px;
	}
	
	/* :::::::::: 【PC】画像・左寄せ回り込み :::::::::: */
	
	.pc-image-left {
		margin:0 1.7em 1.7em 0;
		padding:0;
		float:left;
	}
	
	/* :::::::::: 【PC】画像・2つ並びサイズ :::::::::: */
	
	.pc-image-half {
		width:48%;
		margin:0 4% 1.7em 0;
		padding:0;
		float:left;
	}
	
	.pc-image-half:nth-child(2n) {
		margin:0 0 1.7em;
	}
	
	/* ::::::::::【PC】 画像・3つ並びサイズ :::::::::: */	
	
	.pc-image-onethird {
		width:32%;
		margin:0 2% 1.7em 0;
		float:left;
	}
	
	.pc-image-onethird:nth-child(3n) {	
		margin:0 0 1.7em;
	}
	
	/* ::::::::::【PC】 ホバー時opacity :::::::::: */				
	
	.hover_img {
		opacity:1;
		-webkit-transition: 0.5s;		
		-moz-transition: 0.5s;
		transition: 0.5s;
	}
	
	.hover_img:hover {
		opacity:0.6;
		-webkit-transition: 0.5s;
		-moz-transition: 0.5s;
		transition: 0.5s;
	}
	
	figure figcaption span {
		font-size:1.2em;
	}
	
	
	
ul.guidelink{ padding: 0; margin: 0; width: 100%; }

ul.guidelink li{
    padding: 0 0 0 10px;
    margin: 0 5px 10px 0;
    list-style-type:none;
    float: left;
    width: 48.5%;
	background-color:#ffd0c2;
	border-radius: 6px;
	color: #6b4631;
}

ul.guidelink li a { display: block; }
ul.guidelink li a:hover { opacity:0.7; }
	
	
}

@media screen and (max-width: 768px){
	
	/* :::::::::: 【SP】全体・画像 :::::::::: */
	
	body {
		font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		-webkit-text-size-adjust: 100%;
		font-size:4.375vw;
		color:#333333;
		padding:0 0 1em;
	}	

	.pc-cont {
		display:none;
	}
	
	.sp-cont {
	}
	
.pc-image-right {
		width:70%;
	}	
	
	figure {
		margin:0 auto 5%;
		text-align:center;
	}	
	
	figure figcaption span {
		font-size:1.2em;
	}
	
	
	
	
	
ul.guidelink{ padding: 0; margin: 0; width: 100%; }

ul.guidelink li{
    padding: 0 0 0 10px;
    margin: 0 5px 10px 0;
    list-style-type:none;
    float:none;
	background-color:#ffd0c2;
	border-radius: 8px;
	color: #6b4631;
}

ul.guidelink li a { display: block; }
	
	
	
	
}


/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */

@media screen and (min-width: 769px){
	
	/* :::::::::: 【PC】ヘッダー :::::::::: */
	
	header {
		width:1000px;
		height:251px;
		margin:0 auto;
		position:relative;
	}
	
	header h1 {
		color:#666666;
		height: 20px;
		font-size: 11px;
		text-align: left;
		padding:0;
		font-weight:normal;
		letter-spacing:1px;
		margin:0;
	}
	
	header .h_logo {
		position:absolute;
		width:450px;
		height:194px;
		margin:auto;
		background:url(../images/h_logo_pc.png);
		position: absolute;
		left:0;
		right:0;
		top:0;
		bottom:0;
	}
	
	header figure.h_tel {
		width:262px;
		height:127px;
		background:url(../images/h_tel_pc.png);
		position: absolute;
    top: 10px;
    right: 0;
	}
	
	header figure.line {
		
		
		bottom: -2px;
    position: absolute;
    right: 0;
	}
			
			

	
	/* :::::::::: 【PC】メインナビ :::::::::: */
	
	nav {
		width:100%;
		min-width:1050px;
		height:70px;
	}
	
	nav p {display:none;}
	
	nav ul {
		width:1000px;
		height: 70px;
		margin:0 auto;
		background:#FFFFFF;
	}
	
	nav ul li {
		width:111px;
		height:70px;
		float:left;
		text-indent:-9999px;
	}
	
	nav ul li a {
		display:block;
		width:100%;
		height:100%;
		background:url(../images/mn.png);
	}
	
	nav ul li.mn01 a {background-position:0px 0;}
	nav ul li.mn02 a {background-position:-111px 0;}	
	nav ul li.mn03 a {background-position:-222px 0;}	
	nav ul li.mn04 a {background-position:-333px 0;}	
	nav ul li.mn05 a {background-position:-444px 0;}	
	nav ul li.mn06 a {background-position:-555px 0;}
	nav ul li.mn07 a {background-position:-666px 0;}
	nav ul li.mn08 a {background-position:-777px 0;}	
	nav ul li.mn09 a {background-position:-888px 0;}
	nav ul li.mn01 a:hover {background-position:0px -70px;}
	nav ul li.mn02 a:hover {background-position:-111px -70px;}	
	nav ul li.mn03 a:hover {background-position:-222px -70px;}	
	nav ul li.mn04 a:hover {background-position:-333px -70px;}	
	nav ul li.mn05 a:hover {background-position:-444px -70px;}	
	nav ul li.mn06 a:hover {background-position:-555px -70px;}
	nav ul li.mn07 a:hover {background-position:-666px -70px;}
	nav ul li.mn08 a:hover {background-position:-777px -70px;}	
	nav ul li.mn09 a:hover {background-position:-888px -70px;}					
	/* :::::::::: 【PC】TOPキービジュアル :::::::::: */
	
	#slider {
		position: relative;
		width: 100%;
		min-width:1050px;
		height:400px;	
		margin:0 auto 50px;
	}
	
	#wrapper {
		width: 100%;
		overflow: hidden;
		height:400px;	
		position:relative;	
	}
	
	#carousel {
		margin:0;
	}
	
	#carousel li {
		border: none;
		display: block;
		float: left;
		position:relative;
		height:400px;		
	}
	
	#carousel li img {
		width: 100%;
		height: 400px;
	}
	
	#key_text {
		position:absolute;
		width:280px;
		height:105px;
		margin:auto;
		top:325px;
		bottom:0;
		left:0;
		right:480px;
	}
	
	.tinytable {	
		position:absolute;
		width:390px;
		height:155px;
		margin:auto;
		top:225px;
		bottom:0;
		left:0;
		right:680px;
		background-color:#fff;
		padding: 10px 10px 0 10px;
		border-radius: 3px;
		opacity: 0.9;
	}
	
	/* :::::::::: 【PC】下層キービジュアル :::::::::: */
	
	.key_visual_sub {
		width:100%;
		height:200px;
		min-width:1050px;
		background:#E9DFCF;
		margin:0 0 50px;
	}
	
	.key_visual_sub h2 {
		width:1000px;
		height:200px;
		line-height:200px;
		background:url(../images/keyvisual_bg_pc.png) no-repeat right top;
		margin:0 auto;
		color:#744C33;
		font-size:32px;
	}
}

@media screen and (max-width: 768px){
	
	/* :::::::::: 【SP】ヘッダー :::::::::: */	
	
	header {
		width:96%;
		height:auto;
		margin:0 auto;
	}
	
	header h1 {
		font-size: 0.8em;
		text-align: left;
		padding:0;
		font-weight:normal;
		margin:0 0 3%;
		line-height:1.1em;
		color:#666666;
	}
	
	header .h_logo {
		    width: 48%;
    margin: 0 auto 5%;
    display: inline-block;
	}
	
	header .h_tel {
		width:50%;
		display: inline-block;
		margin:0 auto 4%;
	}

	/* :::::::::: 【SP】メインナビ :::::::::: */	
	
	nav {
		width:96%;
		height:auto;
		margin:0 auto 3%;
	}
	
	nav p {
		box-sizing:border-box;
		width:100%;
		height:auto;
		padding:0.6em 0.7em 0.6em 2em;
		background:#F4F3E6;
		border:solid 1px #7A513A;
		color:#744C33;
		font-weight:bold;
		position:relative;
	}
	
	nav p:before {	
		position:absolute;
		content:"";
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
		border-top: 12px solid #744C33;
		left:0.5em;
		width:0;
		height:0;
		margin:auto;
		top:0;
		bottom:0;
		transition:0.5s;
	}	
	
	nav p.open:before {	
		transform:rotateX(180deg);
		transition:0.5s;
	}		
	
	nav ul {
		width:100%;
		height:auto;
		display:none;
	}
	
	nav ul li {
		width:100%;
		height:auto;
		background:#F4F3E6;
	}
	
	nav ul li a {
		box-sizing:border-box;
		display:block;
		width:100%;
		height:100%;
		color:#744C33;
		border:solid 1px #7A513A;
		border-top:none;
		text-decoration:none;
		padding:0.6em 0.7em;
	}
		
	/* :::::::::: 【SP】キービジュアル :::::::::: */
	
	#carousel {display:none;}
	
	#key_text {
		width:100%;
		height:auto;
		padding:34.47% 0 0;
		text-align:center;
		margin:0 auto 8%;
		background:url(../images/keyvisual_sp.png) no-repeat;
		background-size:100%;
	}
	
	/* :::::::::: 【PC】下層キービジュアル :::::::::: */
	
	.key_visual_sub {
		width:100%;
		height:auto;
		background:url(../images/keyvisual_bg_sp.png) no-repeat right top ,#E9DFCF;
		background-size:30%;
		margin:0 0 8%;
		box-sizing:border-box;
		border:solid 1px #CFCFCF;
		padding:28.12% 0 0;
		position:relative;
	}
	
	.key_visual_sub h2 {
		position:absolute;
		width:100%;
		height:1.1em;
		line-height:1.1em;
		margin:auto;
		color:#744C33;
		font-size:1.2em;
		top:0;
		bottom:0;
		left:1em;
	}	
}

/* -----------------------------------------------------------
　メインコンテンツ
----------------------------------------------------------- */

@media screen and (min-width: 769px){
	
	/* :::::::::: 【PC】メインコンテンツ・共通要素 :::::::::: */	
	
	main {
		display:block;
		width: 100%;
		min-width:1050px;
		height:auto;
		overflow:hidden;
		margin:0 auto 120px;
	}
	
	#index main {
		margin:0 auto 30px;
	}	
	
	main section {
		width:1000px;
		height:auto;
		overflow:hidden;
		margin: 0 auto 50px;
		text-align:left;
		word-wrap: break-word;
	}
	
	main section section.h4_box {
		margin: 0px auto 40px;
	}
	
	main section section.h4_box section.h5_box {
		margin: 0px auto 30px;
	}
	
	main section section.h4_box section.half_w {	
		width:50%;
		float:left;
	}
	
	main section h3 {
		margin:0 0 20px;
		text-align:center;
		font-size:30px;
		color:#E54C64;
	}
	
	main section section.h4_box h4 {
		width:100%;
		height:36px;
		line-height:36px;
		border-top:solid 2px #FFDB6F;
		border-bottom:solid 2px #FFDB6F;
		color:#B07E0B;
		font-size:25px;
		text-align:center;
		margin:0 0 30px;
	}
	
	main section section.h4_box section.h5_box h5 {
		width:100%;
		height:auto;
		line-height:1.1em;
		color:#B2653B;
		font-size:25px;
		margin:0 0 20px;
	}
	
	main section:last-child,
	main section section.h4_box:last-child,
	main section section.h4_box section.h5_box:last-child {
		margin-bottom:0;
	}
	
	span.notice {
		font-weight: bold;
		color:#ff0000;
		font-size:25px;
		line-height: 1.5;
	}
	
	
		
	main section p {
		margin:0 0 1.7em;
		font-size:1em;
		line-height:1.5em;
	}
	
	main section ol {
		margin:0 0 1.7em 1.5em;
	}
	main section ol li {
		list-style-type:decimal;
		font-size:1em;
		line-height:1.7em;
		position:relative;
		padding:0 0 0 0.3em;
	}
	
	
	
	main ul {
		margin:0 0 1.7em 1.7em;
	}
	
	main ul li {
		list-style-type:disc;
		font-size:1em;
		line-height:1.7em;
	}
	
	main ul.bullet {
		margin:0 0 1.7em;
	}
	
	main ul.bullet li {
		list-style-type:none;
		font-size:1em;
		line-height:1.7em;
		position:relative;
		padding:0 0 0 1.7em;
	}	
	
	main ul.bullet li::before {
		position:absolute;
		content:"●";
		color:#FBA2A4;
		left:0;
	}	
	
	main dl {
		overflow:hidden;
		margin:0 0 1.7em;
	}
	
	main dl dt{
		font-size:1em;
		line-height:1.7em;
	}
	
	main dl dd{
		font-size:1em;
		line-height:1.7em;
	}
	
	
	
	main section .section_head {
		margin-bottom:2em;
	}
	
	#cost dl {
		overflow:hidden;
		margin:0 0 1.7em;
	}
	
	#cost dl dt{
		font-size:1em;
		line-height:1em;
	}
	
	#cost dl dd{
		font-size:1em;
		line-height:0.5em;
	}
		
}

@media screen and (max-width: 768px){

	/* :::::::::: 【SP】メインコンテンツ・共通要素 :::::::::: */
		
	main {
		display:block;
		width: 96%;
		height:auto;
		overflow:hidden;
		margin:0 auto 20%;
	}

	main section {
		margin: 0 0 8%;
		text-align:left;
		word-wrap: break-word;
		height:auto;
		overflow:hidden;
	}
	
	main section section.h4_box {
		margin: 0 0 6%;
	}
	
	main section section.h4_box section.h5_box {
		margin: 0 0 4%;
	}
	
	main section h3 {
		margin:0 0 3%;
		font-size:1.3em;
		line-height:1.1em;
		color:#E54C64;
	}
	
	main section section.h4_box h4 {
		width:100%;
		height:auto;
		line-height:1.1em;
		border-bottom:solid 2px #FFDB6F;
		color:#B07E0B;
		font-size:1.2em;
		margin:0 0 5%;
	}
	
	main section section.h4_box section.h5_box h5 {
		width:100%;
		height:auto;
		line-height:1.1em;
		color:#B2653B;
		font-size:1.1em;
		margin:0 0 4%;
	}
	
	main section:last-child,
	main section section.h4_box:last-child,
	main section section.h4_box section.h5_box:last-child {
		margin-bottom:0;
	}
	
	span.notice {
		font-weight: bold;
		color:#ff0000;
		font-size:1.1em;
		line-height: 1.5;
	}
	
	main section p {
		margin:0 0 3%;
		font-size:1em;
		line-height:1.7em;
	}
	
	main section ol {
		margin:0 0 3% 1.7em;
	}
	
	main section ol li {
		list-style-type:decimal;
		font-size:1em;
		line-height:1.7em;
	}
	
	main ul {
		margin:0 0 3% 1.7em;
	}
	
	main ul li {
		list-style-type:disc;
		font-size:1em;
		line-height:1.7em;
	}
	
	main ul.bullet {
		margin:0 0 3%;
	}
	
	main ul.bullet li {
		list-style-type:none;
		font-size:1em;
		line-height:1.7em;
		position:relative;
		padding:0 0 0 1.7em;
	}	
	
	main ul.bullet li::before {
		position:absolute;
		content:"●";
		color:#FBA2A4;
		left:0;
	}		
	
	main dl {
		overflow:hidden;
		margin:0 0 3%;
	}
	
	main dl dt{
		font-size:1em;
		line-height:1.7em;
	}
	
	main dl dd{
		font-size:1em;
		line-height:1.7em;
	}
	
	main section .section_head {
		margin-bottom:5%;
	}
	
	.caloobnr{text-align:center;}	
}

/* -----------------------------------------------------------
　フッタ
----------------------------------------------------------- */

@media screen and (min-width: 769px){
	
	/* :::::::::: 【PC】フッタ :::::::::: */	
	
	footer {
		width: 100%;
		min-width:1050px;
		clear: both;
		height: 200px;
		text-align:left;
		bottom: 0;
		position: absolute;
		background:#E9DED1;
		border-top:solid 3px #ED5C81;
	}
	
	footer .footer_box {
		width:1000px;
		height:140px;
		padding:60px 0 0;
		margin:0 auto;
		position:relative;
	}
	
	footer .footer_box figure.f_logo {
		width:456px;
		height:62px;
		float:left;
	}
	
	footer .footer_box ul.f_nav {
		width:auto;
		height: auto;
		margin: 10px 0 0;
		overflow:hidden;
		float:right;
	}
	
	footer .footer_box ul.f_nav li{
		float: left;
		font-size:0.8em;
		height:1em;
		line-height:1em;
		margin:0 0 0 0.5em;
		padding:0 0 0 0.5em;
		border-left:solid 1px #333333;
	}
	
	footer .footer_box ul.f_nav li:last-child{
		border-right:solid 1px #333333;
		padding:0 0.5em;
	}
	
	footer .footer_box ul.f_nav li a{
		text-decoration:none;
		color:#333333;
	}
	
	footer .footer_box ul.f_nav li a:hover {
		text-decoration:underline;
	}
	
	footer .copyright{
		clear:both;
		width:100%;
		height: 25px;
		text-align: center;
		font-size: 0.8em;
		line-height:25px;
		color:#333333;
		position:absolute;
		bottom:0.5em;
	}
	
	footer .copyright a {
		color:#333333;
		text-decoration:none;
	}
	
	#Pagetop{
		width:auto;		
		position: absolute;
		bottom: 195px;
		right:0;
	}
	
	#Pagetop li{
		width:121px;
		height:106px;
		background:url(../images/pagetop_pc.gif);
	}
	
}
	
@media screen and (max-width: 768px){
	
	/* :::::::::: 【SP】フッタ :::::::::: */	
		
	footer {
		width: 100%;
		clear: both;
		height: auto;
		bottom: 0;
		position: absolute;
		background:#E9DED1;
	}
	
	footer .footer_box .f_logo,
	footer .footer_box .f_nav {
		display:none;
	}
	
	footer .copyright{
		width:100%;
		height: auto;
		text-align: center;
		font-size: 0.7em;
		line-height:1.1em;
		color:#333333;
		margin:0;
		padding:0.3em 0;
		clear:both;
	}
	
	footer .copyright a {
		color:#333333;
		text-decoration:none;
	}
	
	#Pagetop{
		position: absolute;
		width:12%;
		bottom:3em;
		right:2%;
	}
	
	#Pagetop li{
		margin:0;
	}
}

