@charset "UTF-8";
/* CSS Document */


/*
	全体にかかわるもの
*/
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
html { overflow:scroll;  font-size:16px; }
body { /*font-family: "FP-ヒラギノ角ゴ StdN W1";*/ font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color:#333; line-height:1.5; background-color: #f6f6f6; min-width: 1020px; }
img { vertical-align:bottom; width:100%; }
.container { width:100%; max-width:1020px; margin-left:auto; margin-right:auto; position: relative;}
article { background-color: #f2eadf; padding: 20px 0; }

/*
	画面サイズによって切り替えるフラグ
*/
.pc { display:block; }
.sp { display:none; }

@media (max-width: 767px) {
	/* 全体に関わる部分 */
	body { min-width: inherit;}
	.pc { display:none; }
	.sp { display:block; }
	.container { width:90%;}
}

@media (max-width: 480px) {
	/* 全体に関わる部分 */
	.container { width:95%;}
}



/*------------------------------------------------------
	ヘッダー
------------------------------------------------------*/
header { background-color: #fff;}
header h1 { font-size: 0.625em; padding: 10px 0 14px;}
header .headLogo { float: left; margin-right: 45px;}
header .headLogo a { text-indent: -9999px; display: block; background: url(../images/headLogo.png) no-repeat left top; width: 443px; height: 50px; background-size: 100% auto; max-width: 443px; }
header .telWrap { font-weight: bold; width: auto; /*float: left;*/ float: right; line-height: 1.3;}
header .telWrap .tel { font-size: 0.75em; color: #953c1f; }
header .telWrap .tel span { font-size: 2em; position: relative; vertical-align: middle; padding-left: 4px;}
header .telWrap .time { font-size: 0.813em; /*letter-spacing: -1px;*/ text-align: right; }
header .btnWrap { width: 208px; float: right; position: relative; bottom: -3px; /**/ display: none; }
header .btnWrap a { color: #fff; text-decoration: none; text-indent: 1em; display: block; padding: 9px 0; background: rgb(236,159,146); background: -moz-linear-gradient(top,  rgba(236,159,146,1) 0%, rgba(172,47,7,1) 100%); background: -webkit-linear-gradient(top,  rgba(236,159,146,1) 0%,rgba(172,47,7,1) 100%); background: linear-gradient(to bottom,  rgba(236,159,146,1) 0%,rgba(172,47,7,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ec9f92', endColorstr='#ac2f07',GradientType=0 ); text-align: center; border-radius: 8px; -webkit-border-radius: 8px; -moz-border-radius: 8px;}
header .btnWrap a:hover { opacity: 0.8;}
header .btnWrap a:before { content: ''; background: url(../images/iconEmergency.png) no-repeat left top; width: 22px; height: 22px; position: absolute; background-size: 100% auto; left: 10px;}
header .btnWrap a:after { content: ''; right: 10px; top: 17px; width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; }

/**/
#subNav { list-style-type: none; position: absolute; top: 4px; right: 0;}
#subNav li { width: auto; float: left;}
#subNav li:before { content:'●'; color: #ef5a24; display: inline-block; vertical-align: middle; -webkit-transform:scale(0.5); -moz-transform:scale(0.5); -ms-transform:scale(0.5); -o-transform:scale(0.5); transform:scale(0.5); }
#subNav li a { text-decoration: none; color: #333; font-size: 0.875em;}
#subNav li a:hover { text-decoration: underline;}

/* スマホメニューボタン */
#spMenuBtn { text-indent: -9999px; width: 50px; height: 50px; background: url(../images/spHeadMenuBtn.png) no-repeat left top; background-size: 100% auto; cursor: pointer; position: absolute; top: 10px; right: 0;}

/* グローバルナビ（PC） */
header nav.pc { margin-top: 20px; background: #c68921; border-bottom: 4px solid #906517; }
header nav.pc ul { padding: 16px 0 12px; list-style-type: none; }
header nav.pc ul li { box-sizing: border-box; width: 20%; float: left; border-left: 1px dotted #fff; padding: 3px 0; max-height: 30px; }
header nav.pc ul li:nth-child(2) a { line-height: 1; top: -4px; position: relative;}
header nav.pc ul li:last-child { border-right: 1px dotted #fff; }
header nav.pc ul li a { display: block; color: #fff; text-align: center; text-decoration: none; }
header nav.pc ul li a:hover { text-decoration: underline;}

/* 追従するナビ */
#scrollHead { position: fixed; z-index: 999; width: 100%; min-width: 1020px; background-color: #fff; padding-top: 5px; top: 0; -moz-transform: translateY(-100px); -webkit-transform: translateY(-100px); -o-transform: translateY(-100px); -ms-transform: translateY(-100px); transition:250ms; -webkit-transition:250ms; }
#scrollHead.active { -moz-transform: translateY(0px); -webkit-transform: translateY(0px); -o-transform: translateY(0px); -ms-transform: translateY(0px);transition:250ms; -webkit-transition:250ms; }
#scrollHead nav { margin-top: 5px; background: #c68921; border-bottom: 1px solid #906517; }
#scrollHead nav ul { padding: 8px 0; list-style-type: none; }
#scrollHead nav ul li { box-sizing: border-box; width: auto; float: left; border-left: 1px dotted #fff; padding: 0; max-height: 30px; font-size: 0.875em; margin: 0 10px; padding-left: 12px; }
#scrollHead nav ul li:last-child { border-right: 1px dotted #fff; padding-right: 12px; }
#scrollHead nav ul li a { display: block; color: #fff; text-align: center; text-decoration: none; }
#scrollHead nav ul li a:hover { text-decoration: underline;}
#scrollHead .headLogo { margin-right: 293px; margin-top: 5px;}
#scrollHead .headLogo a { text-indent: -9999px; display: block; background: url(../images/headLogo2.png) no-repeat left top; width: 195px; height: 36px; background-size: 100% auto; max-width: 195px; }



/* グローバルナビ（SP） */
header nav.sp { display: none;}
header nav.sp > div { display: table; padding: 10px; /**/ border-top: 1px solid #c78a21; }
header nav.sp #telSP,
header nav.sp > div span { display: table-cell; vertical-align: middle; }
header nav.sp #telSP { width: 75%; }
header nav.sp #telSP img { display: block; box-sizing: border-box; margin: 0 auto; max-width: 412px; padding-right: 15px; }
header nav.sp > div span { font-size: 0.75em; width: 25%; }
header nav.sp > div span a.btnOrange { display: block; }


.btnOrange { box-sizing: border-box; display: inline-block; margin-bottom: 1px; padding: 10px 10px 8px; border-radius: 8px; text-align: center; color: #fff; min-width: 80px; text-decoration: none; }
.btnOrange { background: #ed9315; background: -moz-linear-gradient(top,  #ed9315 0%, #ed7215 100%); background: -webkit-linear-gradient(top,  #ed9315 0%,#ed7215 100%); background: linear-gradient(to bottom,  #ed9315 0%,#ed7215 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ed9315', endColorstr='#ed7215',GradientType=0 ); box-shadow:2px 2px 0px 0px #b25724; -moz-box-shadow:2px 2px 0px 0px #b25724; -webkit-box-shadow:2px 2px 0px 0px #b25724; }
.brown { border-radius: 8px; -webkit-border-radius: 8px; -moz-border-radius: 8px; background: rgb(199,138,33); background: -moz-linear-gradient(top,  rgba(199,138,33,1) 0%, rgba(145,101,23,1) 100%); background: -webkit-linear-gradient(top,  rgba(199,138,33,1) 0%,rgba(145,101,23,1) 100%); background: linear-gradient(to bottom,  rgba(199,138,33,1) 0%,rgba(145,101,23,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c78a21', endColorstr='#916517',GradientType=0 ); color: #fff; text-decoration: none; padding: 8px 14px; display: inline-block; box-shadow:17px 27px 0px -50px #7d540e inset,2px 2px 0px 1px #7d540e; -moz-box-shadow:17px 27px 0px -50px #7d540e inset,2px 2px 0px 1px #7d540e; -webkit-box-shadow:17px 27px 0px -50px #7d540e inset,2px 2px 0px 1px #7d540e; min-width: 80px; text-align: center; }
.btnOrange:hover , .brown:hover { text-decoration: none; opacity: 0.7; }






header nav.sp ul { }
header nav.sp ul li { position: relative; display: block; border-top: 1px solid #ccc; padding: 10px; }
header nav.sp ul li a { color: #953c1f; text-decoration: none; display: block; }
header nav.sp ul li:before,
header nav.sp ul li:after { position: absolute; top: 50%; display: inline-block; content: ""; }
header nav.sp ul li:before {right: 10px;margin-top: -8px;width: 16px;height: 16px;-webkit-border-radius: 50%;border-radius: 50%;background: #906517;}
header nav.sp ul li:after { right: 16px; margin-top: -3px; width: 5px; height: 5px; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

/* 緊急に接見希望の方 */
#emergency { display: none; background-color: #c68921; position: relative; }
#emergency:after { display: block; content: ''; position: absolute; top: 1em; right: 12px; width: 16px; height: 16px; border-right: 3px solid #fff; border-bottom: 3px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
#emergency a { font-size: 1.625em; color: #fff; text-decoration: none; display: block; padding: 5px 0; background: url(../images/iconEmergency.png) no-repeat 10px center; text-indent: 2em; background-size: 28px auto;}

@media (max-width: 767px) {
	header .headLogo { width: 80%; margin: 10px 0;}
	header .headLogo a { width: 100%; background-position: left center;}
	#emergency { /*display: block;*/}
}

@media (max-width: 480px) {
	header nav.sp #telSP { width: 70%;}
	header nav.sp > div span { width: 30%; }
	header nav.sp > div span a.btnOrange { padding: 8px; }
}


/*------------------------------------------------------
	footer
------------------------------------------------------*/
footer { background-color: #fff;}

/* スペシャルサイトバナー */
#specialWrap { padding: 0 0 20px 0; border-bottom:#ccc 1px solid; }
#specialWrap #topBnrArea { background: #eee7db; padding: 20px 0; }
#specialWrap #topBnrArea a { display: block; }
#specialWrap #topBnrArea a img { display: block; max-width: 960px; margin: 0 auto; }
#specialWrap p { font-size:14px; margin-bottom:10px; font-weight:bold;}

/* サイトマップ */
#footSitemap { padding: 20px 0; }
#footSitemap p { margin-bottom: 22px;}
#footSitemap p a { color: #333; text-decoration: none; font-weight: bold;}
#footSitemap p a:hover { text-decoration: underline;}

#footSitemap ul { list-style-type: none; font-size: 0.875em; min-width: 20%;}
#footSitemap ul li a { text-decoration: none; color: #333; line-height: 1.8;}
#footSitemap ul li a:hover { text-decoration: underline;}
#footSitemap .left { width: 55%; float: left;}
#footSitemap .left ul { width: auto; float: left;}
#footSitemap .left ul li a:before { content: '・';}
#footSitemap .left ul li.red a { color: #953c1f; font-weight: bold; }
#footSitemap .left ul li.red a:before { content: '';}
#footSitemap .left ul:first-child { margin-right: 1.5em;}
#footSitemap .left ul:last-child { padding-top: 1.5em;}

#footSitemap .right { width: 45%; float: right;}
#footSitemap .right ul { width: auto; float: left; height: 170px; border-left: 1px solid #ccc; padding-left: 1em; min-width: 45%;}
#footSitemap .right ul li a { color: #953c1f; font-weight: bold;}

/* グローバルナビフッター（SP） */
footer nav.sp ul { }
footer nav.sp ul li { position: relative; display: block; border-top: 1px solid #ccc; padding: 10px; }
footer nav.sp ul li a { color: #953c1f !important; text-decoration: none; font-size: 1.125em; display: block; }
footer nav.sp ul li:before,
footer nav.sp ul li:after { position: absolute; top: 50%; display: inline-block; content: ""; }
footer nav.sp ul li:before {right: 10px;margin-top: -8px;width: 16px;height: 16px;-webkit-border-radius: 50%;border-radius: 50%;background: #906517;}
footer nav.sp ul li:after { right: 16px; margin-top: -3px; width: 5px; height: 5px; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg); }


/* footLogo */
footer div#footNav { margin: 30px 0; }
footer div#footNav #footLogo { float: left; display: block; background: url(/common/images/officeLogo.png) no-repeat center center; background-size: 210px auto; max-width: 210px; height: 40px; margin-right: 20px; overflow: hidden; text-indent: 100%; white-space: nowrap; }
footer div#footNav #footAdd { float: left; font-size: 0.75em; line-height: 1.6em; }
footer div#copyright { background: #603813; text-align: center; color: #fff; font-size: 0.75em; padding: 12px 0; }
footer div#copyright a { color: #fff; }

/* フッターバナー */
#footContents { margin-top: 50px; margin-bottom: 30px;}
#footContents a:hover { opacity: 0.8;}


@media (min-width: 768px) {

}

@media (max-width: 767px) {
	#specialWrap #topBnrArea { padding: 10px 0; }
	footer div#footNav { margin: 20px 0 10px; }
	footer div#footNav #footLogo { margin-bottom: 10px; }


	#footSitemap p { background-color: #953c1f; text-align: center; line-height: 1.2; padding: 20px 10px; margin-bottom: 0; }
	#footSitemap p a { color: #fff; font-weight: normal; font-size: 1.5em; }
	#footSitemap { width: 100%; padding: 0;}
}

@media (max-width: 480px) {

	footer div#copyright { font-size: 0.6em; }
	#footSitemap p a { font-size: 1.25em; }
}

@media (max-width: 374px) {

}


/* footer link */
#footLink *, #footLink *:before, #footLink *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
#footLink { padding: 30px 0 10px;}
#footLink .title { font-size: 1.25em; font-weight: bold; margin-bottom: 20px; line-height: 1;}
#footLink ul { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: flex-start; -webkit-justify-content: flex-start; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; list-style-type: none; }
#office { margin-bottom: 30px; }
#office li { width: -webkit-calc(25% - 20px); width: calc(25% - 20px); height: 80px; border: 1px solid #999; margin-bottom: 20px; margin-right: 26px;}
#office a { font-size: 1em; color: #333; padding: 0 35px 0 10px; display: block; height: 100%; line-height: 1.4; position: relative; display: flex; align-items: center;}
#office a:after { content: ''; position: absolute; right: 15px; top: -webkit-calc(50% - 8px); top: calc(50% - 8px); width: 16px; height: 16px; border-top: 3px solid #ee6815; border-right: 3px solid #ee6815; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
#office a span { font-weight: bold;}

#special {}
#special li { width: -webkit-calc(99.9% / 3 - 20px); width: calc(99.9% / 3 - 20px); margin-bottom: 15px;}
#special a { display: block; text-align: center; font-size: 0.813em; line-height: 1; color: #333;}
#special img { margin-bottom: 7px;}

@media (min-width: 768px) {
	#office li:nth-child(4n+4) { margin-right: 0;}
	#office a:hover { background-color: #F9C73D; color: #fff; text-decoration: none; -webkit-transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);  }
	#office a:hover:after { border-color: #fff; -webkit-transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1); }

    #special {}
	#special li:nth-child(3n+2) { margin-left: 30px; margin-right: 30px;}
}

@media (max-width: 767px) {
	#footLink .title { font-size: 2em; }
	#footLink ul { justify-content: space-between; -webkit-justify-content: space-between; }
	#office li { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px); height: 100px; margin-left: 0; margin-right: 0; }
	#office a { font-size: 1.5em; }
	#office a:after { right: 25px; top: -webkit-calc(50% - 14px); top: calc(50% - 14px); width: 28px; height: 28px; border-width: 5px; }

	#special li { width: 50%; width: -webkit-calc(50% - 10px); width: calc(50% - 10px);}
}

@media (max-width: 480px) {

	#footLink .title { font-size: 1.375em; }
	#office li { height: 65px; margin-bottom: 10px; }
	#office a { font-size: 1em; }
	#office a:after { right: 15px; top: -webkit-calc(50% - 10px); top: calc(50% - 10px); width: 20px; height: 20px; }

	#special li { width: 100%; margin-bottom: 10px;}
}


/*------------------------------------------------------
	トップへ戻る
------------------------------------------------------*/
#pageTop { position:fixed; bottom:20px; right:20px; font-size:14px; z-index:999; }
#pageTop a { background: #666; text-decoration: none; color:#fff; width:100px; padding:20px 0; text-align:center; display: block; border-radius: 5px; opacity:0.8;  }
#pageTop a:hover { text-decoration:none; background:#999; }


/*------------------------------------------------------
	コンテンツ
------------------------------------------------------*/
.contentsWrap { border: 1px solid #ccc; border-radius: 6px; -webkit-border-radius: 6px; -moz-border-radius: 6px; background-color: #fff; padding: 12px 30px 30px; position: relative; }
.contentsWrap:before { content: ''; border-top: 4px solid #c78a21; width: 99%; position: absolute; margin: auto; left: 0; right: 0; top: 0;}

@media (max-width: 767px) {

}
@media (max-width: 480px) {
	.contentsWrap { padding: 12px 10px 30px;}
}


/*------------------------------------------------------
	大見出し
------------------------------------------------------*/
.header1 { font-size: 2em; border-bottom: 1px solid #ccc; padding-left: 2.2em; padding-bottom: 22px; margin-top: 20px; }

@media (max-width: 767px) {

}
@media (max-width: 480px) {
	.header1 { line-height: 1.2; padding-left: 1.8em !important; background-position: 0.3em 0px !important;}
}
/*------------------------------------------------------
	中見出し
------------------------------------------------------*/
/*
.header2 { font-size: 1.625em; color: #603813; background-color: #f1e9e0; line-height: 1.3; font-weight: normal; padding: 23px 20px; margin-bottom: 25px;}
.header2:before { content: ''; border-left: 5px solid #603813; padding: 3px 0; padding-right: 10px;}
*/
.header2 { font-size: 1.625em; color: #603813; background-color: #f1e9e0; line-height: 1.3; font-weight: normal; padding: 23px 20px 23px 30px; margin-bottom: 25px;}
.header2:before { content: ''; border-left: 5px solid #603813; padding: 3px 0; /*padding-right: 10px;*/ position: relative; left: -10px;}

/*------------------------------------------------------
	小見出し
------------------------------------------------------*/
.header3 { font-size: 1.375em; border-bottom: 2px solid #c78a21; font-weight: normal; background: url(/common/images/icon01.png) no-repeat left top; background-size: 18px auto; padding-left: 24px; line-height: 1; padding-bottom: 6px; margin-bottom: 20px; }

/*------------------------------------------------------
	リスト
------------------------------------------------------*/
ul.type1 { list-style-type: none; margin-bottom: 25px;}
ul.type1 li { padding-left: 1.2em;}
ul.type1 li:before { content: '■'; color: #ef5a24; font-size: 0.75em; vertical-align: baseline; text-indent: -1.3em; display: inline-block;}
@media (max-width: 480px) {
	ul.type1 li:before { content: '■'; font-size: 1em; text-indent: -1em; }
}



/*------------------------------------------------------

------------------------------------------------------*/
#cntFootInfo { position: relative; /*left: -2%; width: 104%;*/ margin-top: 20px; }
@media (max-width: 767px) {

}
@media (max-width: 480px) {
	#cntFootInfo { left: 0; width: 100%;}
}


/*------------------------------------------------------
	パンクズリスト
------------------------------------------------------*/
#breadcrumb { font-size: 0.75em; background-color: #eee7db; padding: 3px; /*position: absolute; width: 98%; left: 1%;*/}
#breadcrumb p { color: #333; }
#breadcrumb p a { color: #333; text-decoration: none; }
#breadcrumb p a:hover { text-decoration: underline; }

@media (max-width: 767px) {

}
@media (max-width: 480px) {
	/*#breadcrumb { position: relative; width: 100%; left: 0;}*/
}

/*------------------------------------------------------
	SNS
------------------------------------------------------*/
#snsWrap { line-height: 0; margin-top: 10px;}
#snsWrap img { width: auto;}
#snsWrap .fb-like {line-height: 0.7;}


/*
    重要なお知らせ
*/
#importantWrap { background-color: #FFD200;}
#importantWrap .container.colWrap { display: flex; display: -webkit-flex; flex-direction: row; -webkit-flex-direction: row; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: space-between; -webkit-justify-content: space-between; align-items: stretch; -webkit-align-items: stretch; align-content: stretch; -webkit-align-content: stretch; }
#importantWrap .title {}
#importantWrap .title span { font-size: 12px; color: #fff; background-color: #E84109; border-radius: 12px; display: inline-block; text-align: center; width: 100%; line-height: 2;}
#importantWrap .body { font-size: 16px; line-height: 1.6;}
#importantWrap .body a { color: #0071BC;}
@media (min-width: 768px) {
    #importantWrap { padding: 13px 0;}
    #importantWrap .title { width: 120px;}
    #importantWrap .body { width: calc(100% - 140px); }
}
@media (max-width: 767px) {
    #importantWrap { padding: 10px 0;}
    #importantWrap .title { width: 100%; margin-bottom: 10px; }
    #importantWrap .body { width: 100%; font-size: 14px; }
}
@media (max-width: 480px) {

}