@charset "utf-8";

/* ################################################################################################ */
/* ## 共通スタイル ################################################################################ */
/* ################################################################################################ */

/* -- 画面幅 -------------------------------------------------------------------------------- */
body
{
	min-width:320px;
	font-size:14px; font-size:1.4rem;
	background-color: #FFFFFF;
	color: #000;
	letter-spacing: 0.15rem;
}
#wrapper {
	background-color: #f7f0e6;
}
.sp_cover {
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.65);
	z-index: 1000;
}
.mincho {
    font-family:  "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-weight: bold;
}

.view {
	max-width: 1105px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.row
{
	padding: 0 10px;
}

.mainContentsArea {
	margin-left: auto;
	margin-right: auto;
}


.inline-block {
	display: inline-block;
}

/* -- header -------------------------------------------------------------------------------- */

header {
	background-color: #fca621;
}



/* -- サイド -------------------------------------------------------------------------------- */

#side_navi {
	padding-top: 38px;
	padding-left: 25px;
	padding-bottom: 30px;
	width: 270px;
	float: left;
	background-color: #FFF;
	box-sizing: border-box;
}

/* gnavi */
#gnavi li {
	margin-bottom: 20px;
	background-image: url(../_img/ic-gnavi.png);
	background-position: 0 50%;
	background-repeat: no-repeat;
	padding-left: 20px;
}
#gnavi li a {
	font-weight: bold;
	font-size: 14px; font-size: 1.4rem;
	letter-spacing: 0.1em;
}
#gnavi li a:hover,
#gnavi li a.on {
	border-bottom: 3px solid #FBA520;
}
.sub-navi {
	margin-top: -15px;
	margin-bottom: 15px;
}
#side_navi .sub-navi {
	display: none;
}
#side_navi .sub-navi.on {
	display: block;
}
#gnavi .sub-navi li {
	background: none;
	margin-bottom: 0;
}
#gnavi .sub-navi li a {
	color: #1E5681;
}




/* -- メイン -------------------------------------------------------------------------------- */

#wrap_main {
	float: right;
	width: 820px;
}
.contents_block {
	background-color: #FFF;
	margin-bottom: 8px;
	padding-left: 15px;
	padding-right: 15px;
}
.contents_block:last-child {
	margin-bottom: 0;
}



/* -- 見出し -------------------------------------------------------------------------------- */

#page_tit {
	background-color: #FFF;
	text-align: center;
	font-weight: bold;
	font-size: 23px; font-size: 2.3rem;
	margin-top: 20px;
	margin-bottom: 15px;
	width: 100%;
	padding: 32px 0;
}



/* -- footer -------------------------------------------------------------------------------- */

footer {
	background-color: #fca621;
	color: #FFF;
	padding-top: 32px;
	padding-bottom: 50px;
	font-size: 12px; font-size: 1.2rem;
}
footer ul li {
	padding-right: 5px;
	margin-right: 5px;
	border-right: 1px solid #FFF;
	display: inline;
}
footer ul li:last-child {
	border-right: none;
}

/* -- 行間 -------------------------------------------------------------------------------- */

.lh10 {line-height: 1.0;}
.lh11{line-height: 1.1;}
.lh12 {line-height: 1.2;}
.lh13 {line-height: 1.3;}
.lh14 {line-height: 1.4;}
.lh15 {line-height: 1.5;}
.lh16 {line-height: 1.6;}
.lh17 {line-height: 1.7;}
.lh18 {line-height: 1.8;}
.lh19 {line-height: 1.9;}
.lh20 {line-height: 2.0;}
.lh21 {line-height: 2.1;}
.lh22 {line-height: 2.2;}
.lh23 {line-height: 2.3;}
.lh24 {line-height: 2.4;}
.lh25 {line-height: 2.5;}
.lh26 {line-height: 2.6;}
.lh27 {line-height: 2.7;}
.lh28 {line-height: 2.8;}
.lh29 {line-height: 2.9;}
.lh30 {line-height: 3.0;}

/* -- トラッキング -------------------------------------------------------------------------------- */

.ls-10 {letter-spacing: 0.10em;}
.ls-11 {letter-spacing: 0.11em;}
.ls-12 {letter-spacing: 0.12em;}
.ls-13 {letter-spacing: 0.13em;}
.ls-14 {letter-spacing: 0.14em;}
.ls-15 {letter-spacing: 0.15em;}
.ls-16 {letter-spacing: 0.16em;}
.ls-17 {letter-spacing: 0.17em;}
.ls-18 {letter-spacing: 0.18em;}
.ls-19 {letter-spacing: 0.19em;}
.ls-20 {letter-spacing: 0.20em;}
.ls-21 {letter-spacing: 0.21em;}
.ls-22 {letter-spacing: 0.22em;}
.ls-23 {letter-spacing: 0.23em;}
.ls-24 {letter-spacing: 0.24em;}
.ls-25 {letter-spacing: 0.25em;}
.ls-26 {letter-spacing: 0.26em;}
.ls-27 {letter-spacing: 0.27em;}
.ls-28 {letter-spacing: 0.28em;}
.ls-29 {letter-spacing: 0.29em;}
.ls-30 {letter-spacing: 0.30em;}


/* -- 背景配色パターン -------------------------------------------------------------------------------- */
.bg-1  {background-color:#fca621;}
.bg-2  {background-color:#f7f0e6;}
.bg-3  {background-color:#07C377;}
.bg-4  {background-color:#39CF92;}
.bg-none {background-image: none;background-color: #FFFFFF;}


/* -- 文字配色パターン -------------------------------------------------------------------------------- */

/*.fc-0 {color: #;}*/

.fc-1  {color:#FBA520;}
.fc-2  {color:#07C377;}

.fc-white  {color:#FFFFFF;}


/* -- 枠線配色パターン -------------------------------------------------------------------------------- */
.bc-1  {border:1px solid #C8C8C8;}

/* -- 縦方向パターン -------------------------------------------------------------------------------- */
.vt  {vertical-align: top;}
.vm  {vertical-align: middle;}
.vb  {vertical-align: bottom;}


/* -- リンク配色パターン -------------------------------------------------------------------------------- */
#gnavi a,
#gnavi a:visited,
#gnavi a:link {
	color:#000;
}
#gnavi a:hover {
	color:#000;
	text-decoration: none;
}

.sub-navi a,
.sub-navi a:visited,
.sub-navi a:link {
	color:#1E5681;
	font-size: 12px; font-size: 1.2rem;
}
.sub-navi a:hover {
	text-decoration: none;
	border: none;
}


footer a,
footer a:visited,
footer a:link {
	color:#FFF;
}
footer a:hover {
	color:#FFF;
}

a {
	color:#000;
}
a.black {
	color:#000;
}

a.tx-ul {
	text-decoration: underline;
}

a.tx-ul:hover {
	text-decoration: none;
}

/* -- 横並びリスト -------------------------------------------------------------------------------- */
ul.horizon li
{
	float:left;
}
ul.horizon:after
{
	content: ".";
	display: block;
	clear: both;
	height: 0px;
	width: 0px;
	visibility: hidden;
	overflow:hidden;
}

/* -- 角丸ボックス -------------------------------------------------------------------------------- */
.rad3
{
	-webkit-border-radius:3px;
	   -moz-border-radius:3px;
	        border-radius:3px;
}

.rad5
{
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	        border-radius:5px;
}

.rad8
{
	-webkit-border-radius:8px;
	   -moz-border-radius:8px;
	        border-radius:8px;
}

.rad10
{
	-webkit-border-radius:10px;
	   -moz-border-radius:10px;
	        border-radius:10px;
}

.rad15
{
	-webkit-border-radius:15px;
	   -moz-border-radius:15px;
	        border-radius:15px;
}

.circle
{
	-webkit-border-radius:50%;
	   -moz-border-radius:50%;
	        border-radius:50%;
}

/* -- テキスト行間 -------------------------------------------------------------------------------- */


.lh-27 {
	line-height: 2.7rem;
}

.lh-28 {
	line-height: 2.8rem;
}


/* -- ボックス枠 -------------------------------------------------------------------------------- */
.frame-shadow
{
	box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.4);
}
.frame-border
{
	border-width:1px;
	border-style:solid;
}

/* -- 縦均等割り -------------------------------------------------------------------------------- */
.row2,
.row3,
.row4,
.row5
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position:relative;
}

.row2-1
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 0%;
	transform: translate(0%, 0%);
	height: 50%;
}

.row2-2
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	bottom: 0%;
	transform: translate(0%, 0%);
	height: 50%;
}

.row3-1
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 0%;
	transform: translate(0%, 0%);
	height: 33%;
}

.row3-2
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 50%;
	transform: translate(0%, -50%);
	height: 33%;
}

.row3-3
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	bottom: 0%;
	transform: translate(0%, 0%);
	height: 33%;
}

.row4-1
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 0%;
	transform: translate(0%, 0%);
	height: 25%;
}

.row4-2
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	bottom: 50%;
	transform: translate(0%, 0%);
	height: 25%;
}

.row4-3
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 50%;
	transform: translate(0%, 0%);
	height: 25%;
}

.row4-4
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	bottom: 0%;
	transform: translate(0%, 0%);
	height: 25%;
}
.row5-1
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 0%;
	transform: translate(0%, 0%);
	height: 20%;
}

.row5-2
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 20%;
	transform: translate(0%, 0%);
	height: 20%;
}

.row5-3
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	top: 50%;
	transform: translate(0%, -50%);
	height: 20%;
}

.row5-4
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	bottom: 20%;
	transform: translate(0%, 0%);
	height: 20%;
}

.row5-5
{
	-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;
	position: absolute;
	bottom: 0%;
	transform: translate(0%, 0%);
	height: 20%;
}

/* -- 背景柄 -------------------------------------------------------------------------------- */
.bg-slash-b
{
	background-image:url(../_img/bg_slash_b.png);
}
.bg-slash-w
{
	background-image:url(../_img/bg_slash_w.png);
}
.bg-dot-b
{
	background-image:url(../_img/bg_dot_b.png);
}
.bg-dot-w
{
	background-image:url(../_img/bg_dot_w.png);
}
.bg-grad-down-b
{
	background-image:url(../_img/bg_grad_down_b.png);
	background-repeat:repeat-x;
	background-size:auto 100%;
}
.bg-grad-down-w
{
	background-image:url(../_img/bg_grad_down_w.png);
	background-repeat:repeat-x;
	background-size:auto 100%;
}
.bg-grad-up-b
{
	background-image:url(../_img/bg_grad_up_b.png);
	background-repeat:repeat-x;
	background-size:auto 100%;
}
.bg-grad-up-w
{
	background-image:url(../_img/bg_grad_up_w.png);
	background-repeat:repeat-x;
	background-size:auto 100%;
}

/* -- アイコン -------------------------------------------------------------------------------- */

.ic_arrow {
	background-image: url(../_img/ic_arrow.png);
	background-position: right center;
	background-repeat: no-repeat;
}

.ic-triangle {
	background-image: url(../_img/ic_triangle.png);
	background-repeat: no-repeat;
	background-position: 0 8px;
}

.ic-mail01:before {
	content: url(../_img/ic_mail01.png);
	margin-right: 10px;
}

.block_mail {
	background-image: url(../_img/block_mail.png);
	background-position: 0 0;
	background-repeat: no-repeat;
}
footer .dot_block {
	border: 1px #FFF dashed;
	-webkit-border-radius: 10px ;
	-moz-border-radius: 10px;
	border-radius:10px;
}


/* ################################################################################################ */
/* ## パソコンサイト用スタイル(大画面) ############################################################ */
/* ################################################################################################ */
@media screen and (max-width: 9999px) {

	header h1
	{
		font-size:9px;
		font-size:0.9rem;
	}
	.logo
	{
		float:none;
	}
}

/* ################################################################################################ */
/* ## パソコンサイト用スタイル #################################################################### */
/* ################################################################################################ */
@media screen and (max-width: 9999px) {

	.sideContents {
		max-width: 100%;
	}

	.logo {
		background-image: url(../_img/bg_logo_triangle.png);
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: 40px 40px;
		text-align: center;
		padding-top: 35px;
		margin-bottom: 0px;
	}
	#btnMenu
	{
		display:none;
	}

	.mainContentsArea
	{

	}
	.footerArea
	{
		border-right:none;
	}
	.footerContents
	{
	}
	footer .sitemap {
		border-right: 1px solid #FFFFFF;
	}
}

/* ################################################################################################ */
/* ## タブレットサイト用スタイル ################################################################## */
/* ################################################################################################ */
@media screen and (max-width: 1105px) {

	#side_navi {
		padding-top: 38px;
		padding-left: 0px;
		padding-bottom: 30px;
		width: 100%;
		float: none;
		background-color: #FFF;
	}
	#gnavi li {
		float: left;
	}
	#wrap_main {
		width: 100%;
		float: none;
	}
	footer
	{
		width: 100%;
	}
	footer .sitemap {
		border: none;
	}
	#btn-menu-md {
		cursor: pointer;
	}
	#gnavi {
		background-color: #F7F0E6;
	}
	#gnavi li {
		width: 100%;
		background-color: #FFF;
		padding: 15px 0;
		background-position: 15px 50%;
		margin-bottom: 10px;
	}
	#gnavi li:first-child {
		margin-top: 10px;
	}
	#gnavi li a {
		padding-left: 40px;
		font-size: 16px; font-size: 1.6rem;
	}
	#side_navi {
		display: none;
	}
	#gnavi li a:hover, #gnavi li a.on {
    	border-bottom: none;
	}
	.sub-navi,
	.sub-navi.on {
		display: none;
	}
}
@media screen and (min-width: 640px) and (max-width: 700px) {
	#logo {
		display: block;
		width: 200px;
	}
}
/* ################################################################################################ */
/* ## スマホサイト用スタイル ###################################################################### */
/* ################################################################################################ */
@media screen and (max-width: 640px) {

	/*  予約ボタン  */
	#btn_reserve01 {
	/*
		position: fixed;
		width: 60px;
		height: 60px;
		right: 1%;
	*/
		display: none;
	}


	/*スマホメニュー*/
	#sp_menu {
		position: absolute;
		right: 10px;
		top: 10px;
		z-index: 9999;
	}
	#gnavi li a:hover {
		background-image: none;
	}
	.sm-in-show {
		display: inline;
	}
	footer {
		padding-bottom: 30px;
	}
	footer ul li {
		padding-right: 0px;
		margin-right: 0px;
		border-right: none;
		display: block;
	}
}
/* ----------------------------------------------------------------------------------------------------------------------------------------- */
/* 継承されないスタイル */
/* ----------------------------------------------------------------------------------------------------------------------------------------- */
/* ################################################################################################ */
/* ## パソコンサイト用スタイル(大画面) ############################################################ */
/* ################################################################################################ */
@media screen and (min-width:1181px) and (max-width:9999px) {



	.bg_headerArea {
		background-image: url(../_img/bg_navi.png);
		background-position: 0 0;
		background-repeat: repeat-y;
	}
	.headerAreaBottom {
		background-image: url(../_img/bg_navi_bottom.png);
		background-position: 0 0;
		height:  16px;
		background-repeat: no-repeat;
	}

}

/* ################################################################################################ */
/* ## パソコンサイト用スタイル #################################################################### */
/* ################################################################################################ */
@media screen and (min-width:1180px) and (max-width: 9999px) {

	.block_contact {
		background-color: #FFFFFF;
	}
	.bannerItem
	{
		display:inline;
	}
	.bannerItem:last-child
	{
	}
	.bannerItem img
	{
		width:150px;
	}
}

/* ################################################################################################ */
/* ## タブレットサイト用スタイル ################################################################## */
/* ################################################################################################ */
@media screen and (min-width:641px) and (max-width: 1105px) {

	.block_contact {
		position: absolute;
		top :0;
		right: 10px;
		background-color: #92D0D2;
		-webkit-border-bottom-left-radius: 8px;
		-webkit-border-bottom-right-radius: 8px;
		-moz-border-radius-bottomleft: 8px;
		-moz-border-radius-bottomright: 8px;
		border-radius:0px 0px 8px 8px;
	}
	.block_contact br {
		display: none;
	}
	.bg_headerArea {
		background-color: #FFFFFF;
	}
	.bannerItem
	{
		display:inline;
	}
	.bannerItem:last-child
	{
	}
	.bannerItem img
	{
		width:150px;
	}

}

/* ################################################################################################ */
/* ## スマホサイト用スタイル ###################################################################### */
/* ################################################################################################ */
@media screen and (max-width: 640px) {
	body {
		font-size: 1.6rem; font-size: 16px;
	}
	.headerArea {
		background-color: #FFFFFF;
	}
	.logo {
		background-size: 30px 30px;
	}
	.sm-br-none br {
		display: none;
	}
}
