@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: collapse;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

html { font-size: 62.5%;}
body{
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, メイリオ, sans-serif;
	color: #333;
	font-size: 1.6rem;
	line-height: 1.3;
	-webkit-text-size-adjust: none;
}
@media (max-width: 640px) {
	body{ font-size: 1.5rem;}
}
@media (max-width: 519px) {
	body{ font-size: 1.4rem;}
}
@media (max-width: 375px) {
	body{ font-size: 1.3rem;}
}

*{ box-sizing: border-box;}
.clearfix:after{
	visibility: hidden;
	display: block;
	content: ".";
	height: 0;
	clear: both;
}
* html .clearfix{ height: 1%;}
.clearfix{ display: block;}

p{ margin-bottom: 8px;}
p:last-child{ margin-bottom: 0;}
a{
	color: #00479d;
	text-decoration:none;
}
a:hover{ color: #001f4e; text-decoration: none;}
a:active, a:focus { outline: none;}
a:hover img{ opacity: 0.9;}

img{
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
hr{
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 2.0rem;
}


/* ---- ★★カラーの変更 ------------------------------ */
body.websiteA .titleA,/* websiteAタイトルのベースデザイン */
body.websiteB .titleB,/* websiteBタイトルB */
body.websiteC .titleC,/* websiteCタイトルC */
body.websiteD .titleD,/* websiteDタイトルD */
body.websiteE .titleE,/* websiteEタイトルE */
body.websiteF .titleF,/* websiteFタイトルF */
.topBar.type02.logoCenter a img,/* センターロゴバック */
.drawer-navbar,/* グローバルメニュー */
.drawer-navbar .drawer-dropdown-menu,/* ドロップダウンメニュー */
footer/* フッターバック */
{ background: #00479d;}

/* メニュー選択時　メニューより濃いカラー推奨 */
.drawer-menu-item:hover{ background: #01397d;}
/* ドロップダウンメニュー選択時　メニューより濃いカラー推奨 */
.drawer-dropdown-menu-item:hover { background: #01397d;}

/* フッターコピーライトバック　フッターと同じかフッターより濃いカラー推奨 */
footer small{ background: #003472;}

.titleR,/* リクルートページのご応募バック */
.goActionBox h3/* TEL、フォームでご応募バック */
{ background: #00479d;}
.titleR::before{ border-top: 10px solid #00479d}/* リクルートページのご応募バック */
.goActionBox{ border: 3px solid #00479d;}/* TEL、フォームでご応募バック */

.pagetop a,/* トップへ戻るバック */
#spFooterbox .spF-l a,/* スマホ用固定ボタン */
#spFooterbox .spF-r a/* スマホ用固定ボタン */
{ background-color: #00479d;}



/* ---- タイトルのベースデザイン ------------------------------ */
body.websiteA .titleA{
	color: #fff;
	padding: 15px 15px 12px 15px;
}
body.websiteB .titleA{
	background: #f6f6f6;
	color: #333;
	padding: 15px 15px 13px 15px;
	border-left: solid 5px #dbdbdb;
}
body.websiteC .titleA{
	padding: 20px 0;
	border-bottom: 1px solid #00479d;
}
body.websiteD .titleA{
	padding: 20px 0;
	position: relative;
}
body.websiteE .titleA::before{
	content: '';
	position: absolute;
	box-sizing: border-box;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: #d7d7d7;
	border-left: 150px solid #00479d;
}
body.websiteF .titleA{
	padding: 20px 0;
	border-bottom: 2px dotted #00479d;
}

body.websiteB .titleB{
	color: #fff;
	padding: 15px 15px 12px 15px;
	border: none;
}
body.websiteC .titleC{
	color: #fff;
	padding: 15px 15px 12px 15px;
	border: none;
}
body.websiteD .titleD{
	color: #fff;
	padding: 15px 15px 12px 15px;
	border: none;
}
body.websiteD .titleD::before{ display: none;}
body.websiteE .titleE{
	color: #fff;
	padding: 15px 15px 12px 15px;
	border: none;
}
body.websiteF .titleF{
	color: #fff;
	padding: 15px 15px 12px 15px;
	border: none;
}

/* ---- タイトルの個別デザイン ------------------------------ */
.titleA,
.titleB,
.titleC,
.titleD,
.titleE,
.titleF{ margin: 0 0 30px 0;}

.titleB{
	background: #f6f6f6;
	color: #333;
	margin: 0 0 30px;
	padding: 15px 15px 13px 15px;
	border-left: solid 5px #dbdbdb;
}
.titleC{
	margin: 0 0 30px;
	padding: 20px 0;
	border-bottom: 1px solid #00479d;
}
.titleD{
	margin: 0 0 30px;
	padding: 20px 0;
	position: relative;
}
.titleD::before{
	content: '';
	position: absolute;
	box-sizing: border-box;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: #d7d7d7;
	border-left: 150px solid #00479d;
}
.titleE{
	padding: 20px 0;
	border-top: 1px solid #00479d;
	border-bottom: 1px solid #00479d;
}
.titleF{
	padding: 20px 0;
	border-bottom: 2px dotted #00479d;
}
@media (max-width: 768px) {
	.titleA,
	.titleB,
	.titleC,
	.titleD,
	.titleE,
	.titleF{ margin: 0 0 20px;}
}
@media (max-width: 519px) {
	.titleA,
	.titleB,
	.titleC,
	.titleD,
	.titleE,
	.titleF{ margin: 0 0 15px;}
}


/* ---- フォントサイズ指定 ------------------------------ */
.fsize10{ font-size: 1.0rem;}
.fsize11{ font-size: 1.1rem;}
.fsize12{ font-size: 1.2rem;}
.fsize13{ font-size: 1.3rem;}
.fsize14{ font-size: 1.4rem;}
.fsize15{ font-size: 1.5rem;}
.fsize16{ font-size: 1.6rem;}
.fsize17{ font-size: 1.7rem;}
.fsize18{ font-size: 1.8rem;}
.fsize19{ font-size: 1.9rem;}
.fsize20{ font-size: 2.0rem;}
.fsize21{ font-size: 2.1rem;}
.fsize22{ font-size: 2.2rem;}
.fsize23{ font-size: 2.3rem;}
.fsize24{ font-size: 2.4rem;}
.fsize25{ font-size: 2.5rem;}
.fsize26{ font-size: 2.6rem;}
.fsize27{ font-size: 2.7rem;}
.fsize28{ font-size: 2.8rem;}
.fsize29{ font-size: 2.9rem;}
.fsize30{ font-size: 3.0rem;}
@media (max-width: 768px) {
	.fsize21,
	.fsize22,
	.fsize23,
	.fsize24,
	.fsize25,
	.fsize26,
	.fsize27,
	.fsize28,
	.fsize29,
	.fsize30{ font-size: 2.0rem;}
}
@media (max-width: 640px) {
	.fsize17,
	.fsize18,
	.fsize19,
	.fsize20,
	.fsize21,
	.fsize22,
	.fsize23,
	.fsize24,
	.fsize25,
	.fsize26,
	.fsize27,
	.fsize28,
	.fsize29,
	.fsize30{ font-size: 1.6rem;}
}
@media (max-width: 519px) {
	.fsize15,
	.fsize16{ font-size: 1.4rem;}
}
@media (max-width: 375px) {
	.fsize17,
	.fsize18,
	.fsize19,
	.fsize20{ font-size: 1.4rem;}
}


/* ---- 文字装飾 ------------------------------ */
.red{ color: #eb0e0e;}
.purple{ color: #e4007f;}
.blue{ color: #00479d;}
.water{ color: #00a0e9;}
.orange{ color: #fc8f01;}

.marker-yellow{ background: linear-gradient(transparent 40%, #ffff66 40%);}
.marker-lime{ background: linear-gradient(transparent 40%, #66FFCC 40%);}
.marker-water{ background: linear-gradient(transparent 40%, #66ccff 40%);}
.marker-pink{ background: linear-gradient(transparent 40%, #ff66ff 40%);}

.b{ font-weight: bold;}
.center{ text-align: center;}
.blockcenter{
	display: block;
	margin: 0 auto;
}


/* ---- マージン・パディング ------------------------------ */
.m0{ margin: 0!important;}
.m10-b{ margin-bottom: 10px!important;}
.m20-b{ margin-bottom: 20px!important;}
.m30-b{ margin-bottom: 30px!important;}
.m40-b{ margin-bottom: 40px!important;}
.m50-b{ margin-bottom: 50px!important;}
.m60-b{ margin-bottom: 60px!important;}
.m70-b{ margin-bottom: 70px!important;}
.m80-b{ margin-bottom: 80px!important;}
.m90-b{ margin-bottom: 90px!important;}
.m100-b{ margin-bottom: 100px!important;}
@media (max-width: 519px) {
	.m40-b{ margin-bottom: 30px!important;}
	.m50-b{ margin-bottom: 30px!important;}
	.m60-b{ margin-bottom: 40px!important;}
	.m70-b{ margin-bottom: 40px!important;}
	.m80-b{ margin-bottom: 50px!important;}
	.m90-b{ margin-bottom: 50px!important;}
	.m100-b{ margin-bottom: 60px!important;}
}
.m10-t{ margin-top: 10px!important;}
.m20-t{ margin-top: 20px!important;}
.m30-t{ margin-top: 30px!important;}
.m40-t{ margin-top: 40px!important;}
.m50-t{ margin-top: 50px!important;}
.m60-t{ margin-top: 60px!important;}
.m70-t{ margin-top: 70px!important;}
.m80-t{ margin-top: 80px!important;}
.m90-t{ margin-top: 90px!important;}
.m100-t{ margin-top: 100px!important;}
@media (max-width: 519px) {
	.m40-t{ margin-top: 30px!important;}
	.m50-t{ margin-top: 30px!important;}
	.m60-t{ margin-top: 40px!important;}
	.m70-t{ margin-top: 40px!important;}
	.m80-t{ margin-top: 50px!important;}
	.m90-t{ margin-top: 50px!important;}
	.m100-t{ margin-top: 60px!important;}
}


/* ---- フリーページ用文字入力 ------------------------------ */
.kakaku{
	font-weight: bold;
	color: #eb0e0e;
	background-image: url("../images/icon/arrowB_red.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 6px auto;
	padding: 0 0 0 11px;
}
.arrowRedB{
	background-image: url("../images/icon/arrowB_red.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 6px auto;
	padding: 0 0 0 11px;
}
.arrowSize05{
	background-size: 5px auto;
	padding: 0 0 0 10px;
}
.arrowSize10{
	background-size: 10px auto;
	padding: 0 0 0 15px;
}
.arrowSize12{
	background-size: 12px auto;
	padding: 0 0 0 17px;
}
@media (max-width: 768px) {
	.arrowSize12{
		background-size: 10px auto;
		padding: 0 0 0 15px;
	}
}
@media (max-width: 640px) {
	.arrowSize10,
	.arrowSize12{
		background-size: 6px auto;
		padding: 0 0 0 11px;
	}
}


/* ---- 数字連番リスト ---- */
.num{}
.num li{
	counter-increment: number;
	padding: 0 0 0 20px;
	position: relative;
}
.num li::before{
	content: counter(number)'. ';
	position: absolute;
	left: 0;
}
.num li > ul{
	counter-reset: number;
}
.num li > ul li{
	position: relative;
	padding: 0 0 0 30px;
	counter-increment: number;
}
.num li ul li::before{
	content: '(' counter(number) ')';
	position: absolute;
	left: 0;
}


/* ---- 中黒リスト ---- */
.circle li{
	position: relative;
	padding-left: 16px;
}
.circle li::before{
	content: '';
	background: url("../images/icon/icon-circle_black.png") no-repeat left center;
	background-size: 6px auto;
	width: 6px;
	height: 6px;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}


/* ---- 枠 ---- */
.waku01{
	margin: 10px 0;
	padding: 30px;
	background: #f6f6ed;
	border-radius: 5px;
}
.waku02{
	margin: 10px 0;
	padding: 30px;
	background: #fff;
	border: 1px solid #ccc;
}
.waku03{
	margin: 10px 0;
	padding: 30px;
	background: #cf9f58;
	color: #fff;
}
[class^="waku"].middle,
[class*=" waku"].middle{ padding: 20px;}
[class^="waku"].mini,
[class*=" waku"].mini{ padding: 10px;}
@media (max-width: 768px) {
	.waku01,
	.waku02,
	.waku03{ padding: 20px;}
}
@media (max-width: 767px) {
	.waku01,
	.waku02,
	.waku03,
	[class^="waku"].middle{ padding: 15px;}
}
@media (max-width: 519px) {
	.waku01,
	.waku02,
	.waku03,
	[class^="waku"].middle,
	[class*=" waku"].middle,
	[class^="waku"].mini,
	[class*=" waku"]{ padding: 10px;}
}


/* header
---------------------------------- */
.topBar{
	position: relative;
	padding: 20px;
	background: #eeeeee;
}
.topBar a{ display: inline-block;}
.topBar a img{
        width: auto;
        height: 60px;
}
.topRightBox{
	position: absolute;
	top: 0;
	right: 20px;
}
.topRightBox ul{ font-size: 0;}
.topRightBox li{
	display: inline-block;
	vertical-align: top;
	line-height: 1.2;
}
.corner01{}
.corner01 a{
	display: block;
	background: #00b7ee;
	border-radius: 0 0 5px 5px;
	padding: 15px 20px 14px;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
}
.corner01 a span{
	background: url("../images/icon/icon-mail_white.png") no-repeat left center;
	background-size: 20px auto;
	padding-left: 25px;
}
.corner01 a:hover{ background-color: #448aca;}
.corner02{
	margin: 0 0 0 10px;
	padding: 10px 20px;
	border: 1px solid #aaa;
	border-top: none;
	border-radius: 0 0 5px 5px;
	background: #fff;
	font-size: 12px;
	text-align: center;
}
.corner02 a{
	display: block;
	font-size: 26px;
}
.corner02 a span{
	background: url("../images/icon/icon-tel02_blue.png") no-repeat left center;
	background-size: 12px auto;
	padding-left: 17px;
}
@media (max-width: 1024px) {
	.corner01 a{
		padding: 15px 10px 14px;
		font-size: 13px;
	}
	.corner01 a span{
		background-size: 16px auto;
		padding-left: 21px;
	}
	.corner02{
		padding: 10px 15px;
		font-size: 10px;
	}
	.corner02 a{ font-size: 20px;}
	.corner02 a span{
		background-size: 10px auto;
		padding-left: 15px;
	}
}
@media (max-width: 767px) {
	.topBar{
		padding: 20px 10px;
		border-bottom: 1px solid #ccc;
	}
    .topBar a img{ height: auto; width: 230px;}/*調整*/
	.topRightBox{ right: 70px;}
	.topRightBox li.corner01{ display: none;}
	.corner02{ padding: 10px;}
	.corner02 a{ font-size: 16px;}
	.corner02 a span{
		background-size: 7px auto;
		padding-left: 12px;
	}
}
@media (max-width: 519px) {
	.topBar{ padding: 10px;}
    .topBar a img{
		display: inline-block;
		height: 40px;
        width: auto;/*調整*/
	}
	.topRightBox{ display: none;}
	.topRightBox li{
		display: block;
		margin: 0 auto;
		width: 300px;
	}
	.corner02{
		margin: 0;
		padding: 8px;
		border-top: 1px solid #aaa;
		border-radius: 5px;
	}
}
@media (max-width: 425px) {
	.topRightBox li{ width: 260px;}
	.corner02 a{ font-size: 15px;}
	.corner02 a span{
		display: inline-block;
		margin: 0 0 2px;
		background-size: 8px auto;
		padding-left: 13px;
	}
}
@media (max-width: 375px) {
	.topRightBox li{ width: 200px;}
}


/* ---- スライダー上に左上ロゴ --------------------------- */
.topBar.type02{
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
	background: inherit;
}
@media (max-width: 767px) {
	.topBar.type02{ border-bottom: none;}
}
@media (max-width: 519px) {
	.topBar.type02{ text-align: left;}
	.topBar.type02 a img{}
}
@media (max-width: 375px) {
	.topBar.type02 a img{}
}


/* ---- スライダー上にセンターロゴ --------------------------- */
.topBar.type02.logoCenter a img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	padding: 10px;
	width: 380px;
	height: 380px;
}
@media (max-width: 1440px) {
	.topBar.type02.logoCenter a img{
		width: 300px;
		height: 300px;
	}
}
@media (max-width: 1200px) {
	.topBar.type02.logoCenter a img{
		width: 260px;
		height: 260px;
	}
}
@media (max-width: 1024px) {
	.topBar.type02.logoCenter a img{
		width: 200px;
		height: 200px;
	}
}
@media (max-width: 900px) {
	.topBar.type02.logoCenter a img{
		right: auto;
		top: 10px;
		left: 10px;
		width: 180px;
		height: 180px;
	}
}
@media (max-width: 767px) {
	.topBar.type02.logoCenter a img{
		width: 120px;
		height: 120px;
	}
}
@media (max-width: 519px) {
	.topBar.type02.logoCenter a img{
		width: 80px;
		height: 80px;
	}
}


/* menu
---------------------------------- */
.drawer-navbar{}
/** グローバルメニューは基本は6リンクで5～7リンクまで変更可能 **/
/** 6リンク **/
.drawer-navbar .drawer-menu-item{
	width: 178px;
	padding: 15px 0 13px;
	font-size: 1.5rem;
	color: #fff;
}
li.menu00 a.drawer-menu-item{ width: 110px;}
.drawer-navbar .drawer-menu li{ text-align: center;}
.drawer-menu-item:hover{
	text-decoration: none;
}
.drawer-navbar .drawer-menu li.spOnly{ display: none;}

/** 5リンク **/
.drawer-navbar.five .drawer-menu-item{ width: 220px;}
.five li.menu00 a.drawer-menu-item{ width: 120px;}
/** 7リンク **/
.drawer-navbar.seven .drawer-menu-item{ width: 150px;}
.seven li.menu00 a.drawer-menu-item{ width: 100px;}
/** ドロップダウンメニュー **/
.drawer-navbar .drawer-dropdown-menu{ width: 178px;}
.drawer-navbar.five .drawer-dropdown-menu{ width: 220px;}
@media (max-width: 1024px) {
	.drawer-navbar .drawer-menu li{ width: 18%;}
	.drawer-navbar .drawer-menu-item{ width: 100%;}
	.drawer-navbar .drawer-menu li.menu00{ width: 10%;}
	li.menu00 a.drawer-menu-item{ width: 100%;}
	.drawer-navbar .drawer-menu-item{ font-size: 14px;}
	/** 5リンク **/
	.drawer-navbar.five .drawer-menu li{ width: 20%;}
	.drawer-navbar.five .drawer-menu-item{ width: 100%;}
	.drawer-navbar.five .drawer-menu li.menu00{ width: 20%;}
	.five li.menu00 a.drawer-menu-item{ width: 100%;}
	/** 7リンク **/
	.drawer-navbar.seven .drawer-menu li{ width: 15.5%;}
	.drawer-navbar.seven .drawer-menu-item{ width: 100%;}
	.drawer-navbar.seven .drawer-menu li.menu00{ width: 7%;}
	.seven li.menu00 a.drawer-menu-item{ width: 100%;}
	/** ドロップダウンメニュー **/
	.drawer-navbar.five .drawer-dropdown-menu{ width: 20%;}
	.drawer-navbar .drawer-menu li ul li,
	.drawer-navbar.five .drawer-menu li ul li,
	.drawer-navbar.seven .drawer-menu li ul li{ width: 100%;}
}
@media (max-width: 767px) {
	.drawer-navbar .drawer-menu li,
	.drawer-navbar.five .drawer-menu li,
	.drawer-navbar.seven .drawer-menu li{ width: 100%;}
	.drawer-navbar .drawer-menu li.menu00,
	.drawer-navbar.five .drawer-menu li.menu00,
	.drawer-navbar.seven .drawer-menu li.menu00{ width: 100%;}
	.drawer-navbar .drawer-menu-item,
	.drawer-navbar.five .drawer-menu-item,
	.drawer-navbar.seven .drawer-menu-item{
		padding: 10px 15px;
		text-align: left;
		color: #333;
	}
	.drawer-navbar .drawer-menu li.spOnly{ display: block;}
	.drawer-navbar .drawer-menu li{ border-bottom: 1px solid #ddd;}
	.drawer-menu-item:hover{ background: #efefef;}
	/** ドロップダウンメニュー **/
	.drawer-navbar .drawer-dropdown-menu{ width: 100%;}
	.drawer-navbar.five .drawer-dropdown-menu{ width: 100%;}
	.drawer-navbar .drawer-menu li ul li{
		border-top: 1px solid #ddd;
		border-bottom: none;
	}
	.drawer-navbar .drawer-dropdown-menu-item {
		padding: 10px;
		text-indent: 1em;
	}
}

/* ---- ハンバーガーメニュー時 ---- */
.drawer-nav.hamburgerMenu .drawer-menu-item{
	padding: 10px 15px;
	text-align: left;
	color: #333;
	font-size: 14px;
}
.drawer-nav.hamburgerMenu .drawer-menu-item:hover{ background: #efefef;}
.drawer-nav.hamburgerMenu .drawer-menu li{ border-bottom: 1px solid #ddd;}
.topBar.hamburgerMenu .topRightBox{ right: 80px;}
@media (max-width: 767px) {
	.topBar.hamburgerMenu .topRightBox{ right: 70px;}
}

.sticky-menu{
	position: sticky;
	top: 0;
	transition: .5s;
}


/* footer
---------------------------------- */
footer{}
footer .contBox{
	display: flex;
	justify-content: space-between;
	padding: 40px 0;
}
.footAddress{}
.footAddress img{
	display: inline-block;
	max-width: 100%;
	width: auto;
	height: 50px;
	margin: 0 0 20px;
}
.footAddress p{
	font-size: 13px;
	color: #fff;
}
.footAddress p a{ color: #fff;}
.footLinkBox{
	display: flex;
	justify-content: flex-end;
}
.footLink{ min-width: 140px;}
.footLink ul{ font-size: 0;}
.footLink li{ line-height: 2.4;}
.footLink li a{
    font-size: 12px;
    color: #fff;
}
footer small{
	display: block;
	padding: 8px 0;
	text-align: center;
    font-size: 10px;
    color: #ddd;
}
@media (max-width: 767px) {
}
@media (max-width: 680px) {
	footer .contBox{ display: block;}
	.footAddress{ margin: 0 0 20px;}
	.footLinkBox{ display: block;}
    .footLink li{
		float: left;
        margin: 0 1% 2%;
        width: 48%;
    }
    .footLink li a{
        display: block;
        border: 1px solid #ccc;
        border-radius: 4px;
        padding: 4px;
        text-align: center;
    }
}
@media (max-width: 425px) {
	.footAddress img{ height: 30px;}
}


/* pageTop
---------------------------------- */
.pagetop{
    display: none;
    position: fixed;
    bottom: 20px;
    right: 15px;
    z-index: 9999;
}
.pagetop a{
    display: block;
	background-image: url("../images/icon/arrow-w-up.png");
	background-repeat: no-repeat;
	background-position: center 10px;
	background-size: 10px auto;
    text-align: center;
    color: #fff;
    font-size: 10px;
    text-decoration: none;
    opacity: 0.6;
    width:40px;
    height:40px;
    border-radius: 30px;
    position: relative;
}
.pagetop a span{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
	padding: 10px 0 0 0;
}
.pagetop a:hover{ opacity: 1.0;}
@media (max-width: 519px) {
    .pagetop{ bottom: 80px;}
	.pagetop.simple { bottom: 20px;}
}


/* sp btn
---------------------------------- */
.sticky-btn{
	position: sticky;
	bottom: 0;
	transition: .5s;
}
#spFooterbox{
	display: none;
	width: 100%;
	padding: 0 1%;
	z-index: 999;
	background: rgba(000, 000, 000, 0.5);
}
#spFooterbox a{
	color: #fff;
	text-decoration: none;
	font-size: 16px;
	line-height: 40px;
}
#spFooterbox .spF-l,
#spFooterbox .spF-r{
	width: 50%;
	margin: 0;
}
#spFooterbox .spF-l a{
	display: block;
	height: 40px;
	margin: 10px 2%;
	padding: 0 0 0 20px;
	background-image: url("../images/icon/icon-mail_white.png");
	background-repeat: no-repeat;
	background-position: 25px center;
	background-size: 18px auto;
	border-radius: 4px;
	text-align: center;
}
#spFooterbox .spF-r a{
	display: block;
	height: 40px;
	margin: 10px 1%;
	padding: 0 0 0 20px;
	background-image: url("../images/icon/sp-phone.png");
	background-repeat: no-repeat;
	background-position: 35px center;
	background-size: 12px auto;
	border-radius: 4px;
	text-align: center;
}
@media (max-width: 519px){
	#spFooterbox{ display: flex;}
}
@media (max-width: 375px){
    #spFooterbox a{ font-size: 15px;}
    #spFooterbox .spF-l a{ background-position: 15px center;}
    #spFooterbox .spF-r a{ background-position: 20px center;}
}


/* common css parts
---------------------------------- */

/*---- footerや一部箇所用 ----*/
.contBox{
    max-width: 1000px;
    margin: 0 auto;
    padding: 60px 0;
}
@media (max-width: 1024px) {
    .contBox{ margin: 0 10px;}
}
@media (max-width: 640px) {
    .contBox{ padding: 40px 0;}
}

.pageMain{
	max-width: 1000px;
	margin: 80px auto 40px;
	padding: 0;
}
@media (max-width: 1024px) {
	.pageMain{ margin: 80px 10px 40px;}
}
@media (max-width: 519px) {
	.pageMain{ margin: 40px 10px 40px;}
}

/* ---- リンクボタン ---- */
.moreLink{}
.moreLink a{
	display: block;
	width: 240px;
	margin: 0 auto;
	padding: 15px 0;
	border: 1px solid #00479d;
	border-radius: 100px;
	font-size: 14px;
	text-align: center;
	color: #00479d;
	text-decoration: none;
	background: url(../images/icon/arrowA_blue.png) no-repeat right 20px center #fff;
	background-size: 10px auto;
	transition: all 0.4s ease;
	outline: none;
}
.moreLink a:hover{ background-color: #dbeaf0;}
.moreLink.long a{ width: 400px;}
.moreLink.w100per a{ width: 100%;}
@media (max-width: 519px) {
	.moreLink a,
	.moreLink.long a{ width: 100%;}
}


/* ---- ページヘッダ ---- */
.pageHead{
	background: #fff;
	min-height: 120px;
	display: flex;
	align-items: center;
}
.pageHead .inBox{
	width: 1000px;
	margin: 0 auto;
}
.pageHead h1{
	font-size: 3.6rem;
	font-family: 'Noto Serif JP', serif;
}
@media (max-width: 1024px) {
    .pageHead{ padding: 0 10px;}
	.pageHead h1{ font-size: 2.8rem;}
}
@media (max-width: 768px) {
	.pageHead{ min-height: 90px;}
	.pageHead h1{ font-size: 2.4rem;}
}
@media (max-width: 519px) {
	.pageHead{ min-height: 60px;}
	.pageHead h1{ font-size: 1.8rem;}
}

.hamburgerMenu + .pageHead{
	margin-top: 100px;
	border-top: 1px solid #ccc;
}
@media (max-width: 767px) {
	.hamburgerMenu + .pageHead{ margin-top: 90px;}
}
@media (max-width: 519px) {
	.hamburgerMenu + .pageHead{ margin-top: 60px;}
}


/* ---- パンくず ---- */
.bread{
	background: #f5f5f5;
	padding: 10px 0;
}
.bread ul{
	max-width: 1000px;
	margin: 0 auto;
	font-size: 0;
}
.bread li{
	position: relative;
	display: inline-block;
	font-size: 12px;
	color: #888;
}
.bread li a{
	padding: 0 30px 0 0;
	color: #333;
}
.bread li::after{
	content: '>';
	position: absolute;
	margin-left: -20px; 
}
.bread li:last-child::after{ display: none;}
.bread li a:hover{
	text-decoration: underline;
}
@media (max-width: 1024px) {
	.bread{ padding: 10px;}
}
@media (max-width: 519px) {
	.bread{
		padding: 5px 10px;
		overflow-x: scroll;
		word-break: keep-all;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
	.bread li{ font-size: 10px;}
	.bread li a{ padding: 0 27px 0 0;}
	.bread li::after{ margin-left: -16px; }
}

.stableLinkBox{
	background: #f5f5f5;
	padding: 40px 0;
}
.stableLinkBox ul{
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin: 0 auto;
}
.stableLinkBox li{}
.stableLinkBox li a{
	display: block;
	width: 320px;
	padding: 20px 40px 20px 20px;
	background: url("../images/icon/arrowA_blue.png") no-repeat right 15px center #fff;
	background-size: 12px auto;
	border: 1px solid #00479d;
}
.stableLinkBox li a:hover{ background-color: #dbeaf0;}
.stableLinkBox h4{
	font-size: 20px;
	margin: 0 0 5px;
}
.stableLinkBox p{
	color: #333;
	font-size: 14px;
}
@media(max-width: 1024px) {
	.stableLinkBox{ padding: 40px 10px;}
	.stableLinkBox li{ width: 33%;}
	.stableLinkBox li a{
		width: 100%;
		padding: 15px 40px 15px 15px;
	}
	.stableLinkBox h4{ font-size: 16px;}
}
@media(max-width: 767px) {
	.stableLinkBox{ padding: 30px 10px;}
	.stableLinkBox ul{ display: block;}
	.stableLinkBox li{
		width: 100%;
	}
	.stableLinkBox li:not(:last-child){ margin: 0 0 10px;}
}
@media(max-width: 519px) {
	.stableLinkBox li a{ padding: 10px 40px 10px 10px;}
	.stableLinkBox h4{
		margin: 0;
		font-size: 14px;
	}
	.stableLinkBox p{ font-size: 12px;}
}

a.telAct{ pointer-events: none;}
@media(max-width: 960px) {
	a.telAct{ pointer-events: auto;;}
}

.bg01{ background: #f5f5f5;}
.bg02{ background: #f6f6f6;}
.bdrT{ border-top: 1px solid #ccc;}
.bdrB{ border-bottom: 1px solid #ccc;}


table.typeA{
    width: 100%;
    margin: 0 0 40px 0;
	font-size: 1.6rem;
}
table.typeA th{
    width: 200px;
	padding: 30px 0;
    padding-right: 20px;
    color: #555;
	position: relative;
}
table.typeA th::before{
	content: '';
	border-bottom: 1px solid #00479d;
	width: 180px;
	height: 1px;
	position: absolute;
	bottom: 0;
}
table.typeA td{
    padding: 30px 0;
    border-bottom: 1px solid #ccc;
    color: #555;
}
@media (max-width: 768px) {
	table.typeA th{
		width: 180px;
		padding: 20px 0;
	}
    table.typeA th::before{ width: 160px;}
	table.typeA td{ padding: 20px 0;}
}
@media(max-width: 640px) {
	table.typeA th{
		width: 160px;
		font-size: 15px;
	}
	table.typeA th::before{ width: 140px;}
	table.typeA td{ font-size: 15px;}
}
@media (max-width: 519px) {
	table.typeA tr:first-child th{ border-top: 1px solid #ccc;}
    table.typeA th{
		display: block;
        width: 100%;
        padding: 10px;
        background: #f6f6f6;
		font-size: 14px;
		font-weight: bold;
    }
	table.typeA th::before{ display: none;}
    table.typeA td{
		display: block;
        width: 100%;
		padding: 10px;
		font-size: 14px;
    }
}

table.typeB{
	width: 100%;
	border: 1px solid #ccc;
}
table.typeB th{
    width: 200px;
    padding: 15px 10px;
	background: #d3e2ee;
    font-size: 15px;
    border-bottom: 1px solid #ccc;
}
table.typeB th{}
table.typeB td{
	background: #fff;
    padding: 15px 10px;
    border-bottom: 1px solid #ccc;
    font-size: 15px;
}
@media (max-width: 768px) {
	table.typeB th{ width: 180px;}
}
@media (max-width: 640px) {
	table.typeB th{ width: 160px;}
}
@media (max-width: 519px) {
    table.typeB{ border: none;}
	table.typeB tr:first-child th{ border-top: 1px solid #ccc;}
    table.typeB th{
		display: block;
        width: 100%;
        background: #d3e2ee;
        border-bottom: none;
        font-size: 14px;
		font-weight: bold;
        padding: 10px;
    }
    table.typeB td{
        display: block;
        width: 100%;
        border-bottom: 1px solid #ccc;
        padding: 10px;
		font-size: 14px;
    }
}
table.typeB.dash td + td{
	background: #f7f5f5;
	vertical-align: middle;
	font-size: 13px;
}
@media (max-width: 519px) {
	table.typeB.dash td{ border: none;}
	table.typeB.dash td + td{ border-bottom: 1px solid #9ec0db;}
}

table.typeC {
	width: 100%;
	border: 1px solid #ccc;
	margin: 0 0 20px;
}
table.typeC th{
	padding: 20px 10px;
	width: 200px;
	border-bottom: 1px solid #ccc;
	background: #f6f6f6;
    vertical-align: top;
	color: #555;
	font-size: 14px;
}
table.typeC td{
	padding: 20px 15px;
	border-bottom: 1px solid #ccc;
	background: #fff;
	vertical-align: middle;
	color: #555;
	font-size: 14px;
}
table.typeC td p{ margin: 0;}
table.typeC tr:last-child th{ border-bottom: none;}
table.typeC tr:last-child td{ border-bottom: none;}
@media (max-width: 768px) {
	table.typeC th{ width: 180px;}
}
@media (max-width: 640px) {
	table.typeC th{ width: 160px;}
}
@media (max-width: 519px) {
	table.typeC th{
        display: block;
		width: 100%;
		position: relative;
        padding: 10px;
	}
	table.typeC th br{ display: none;}
	table.typeC th span{
		position: absolute;
		top: 10px;
		right: 10px;
		margin: 0;
		padding: 3px 1px 2px;
		width: 36px;
		font-size: 10px;
	}
	table.typeC td{
        display: block;
		width: 100%;
		padding: 10px;
	}
    table.typeC tr:last-child th{ border-bottom: 1px solid #e9e9e9;}
}

table.typeZ{
    width: 100%;
    border-bottom: 1px solid #ddd;
    margin: 0 0 40px 0;
}
table.typeZ th{
    display: block;
    width: 100%;
    box-sizing: border-box;
    color: #555;
    background: #f6f6f6;
    border-top: 1px solid #ddd;
}
table.typeZ th{ padding: 10px;}
table.typeZ td{
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 15px 10px;
    color: #555;
}

/* ---- mini ver. ---- */
table.typeA.mini th,
table.typeA.mini td{
    padding: 20px 0;
    font-size: 13px;
}
table.typeB.mini th,
table.typeB.mini td{
    padding: 10px;
    font-size: 13px;
}
table.typeC.mini th,
table.typeC.mini td{
    padding: 10px;
    font-size: 13px;
}
table.typeZ.mini th,
table.typeZ.mini td{
    padding: 10px;
    font-size: 13px;
}
@media (max-width: 519px) {
	table[class^="type"].mini th,
	table[class*=" type"].mini th,
	table[class^="type"].mini td,
	table[class*=" type"].mini td{
		padding: 10px;
		font-size: 12px;
	}
}


/* slider img
---------------------------------- */
.topSlideBox{
	max-width: 2000px;
	margin: 0 auto;
	background: #efefef;
	position: relative;
}
.topSlideBox.size-middle,
.topSlideBox.size-small{ max-width: none;}
.topSlideBox.size-big .swiper-container{ height: calc(100vh - 165px);}
.topSlideBox.size-middle .swiper-container{ max-width: 1400px;}
.topSlideBox.size-small .swiper-container{ max-width: 1000px;}
.swiper-slide img{ width: 100%;}
@media (max-width: 1440px) {
	.topSlideBox[class^="size-"] .swiper-container,
	.topSlideBox[class*="size-"] .swiper-container{ height: auto;}
}

.swiper-pagination-bullet{ border: 1px solid #fff;}
.swiper-pagination-bullet-active{ background: #1ba1e6!important;}
a.scroll{
	text-decoration: none;
	color: #fff;
	position: absolute;
	text-align: center;
	bottom: 20px;
	left: 50%;
	margin-left: -50px;
	width: 100px;
    padding: 0 0 50px;
    z-index: 10;
	text-shadow: 2px  2px 3px #434343,
            -2px  2px 3px #434343,
             2px -2px 3px #434343,
            -2px -2px 3px #434343;
}
a.scroll span{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background: url("../images/common/topScroll.png") no-repeat center bottom;
	background-size: 6px auto;
	width: 6px;
	height: 41px;
}
a.scroll:hover{ opacity:0.8;}
@media (max-width: 1024px) {
}
@media (max-width: 767px) {
	a.scroll{
		padding: 0 0 30px;
		font-size: 12px;
	}
	a.scroll span{
		background-size: 4px auto;
		width: 4px;
		height: 28px;
	}
}
@media (max-width: 519px) {
	a.scroll{ display: none;}/*表示する場合は下のcssを使用*/
	/*a.scroll{
		bottom: 30px;
		padding: 0 0 20px;
		font-size: 11px;
	}
	a.scroll span{
		background-size: 3px auto;
		width: 3px;
		height: 20px;
	}*/
}


/* top page
---------------------------------- */
.topBox{
    max-width: 1000px;
    margin: 0 auto;
    padding: 60px 0;
}
.topBox h2{
	margin: 0 0 30px;
	text-align: center;
	font-size: 4.0rem;
	font-family: 'Noto Serif JP', serif;
}
.topBox h2 span{
	display: block;
	margin: 10px 0 0;
	font-size: 14px;
	color: #888;
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, メイリオ, sans-serif;
}
@media (max-width: 1024px) {
    .topBox{ margin: 0 10px;}
	.topBox h2{
		margin: 0 0 20px;
		font-size: 2.8rem;
	}
	.topBox h2 span{ font-size: 12px;}
}
@media (max-width: 768px) {
	.topBox h2{ font-size: 2.4rem;}
}
@media (max-width: 767px) {
	.topBox{ padding: 40px 0;}
}
@media (max-width: 519px) {
	.topBox h2{ font-size: 1.8rem;}
	.topBox h2 span{ font-size: 10px;}
}


/* ---- store name ---- */
.firstBox{ display: flex;}
.firstBox:not(:last-child){ margin: 0 0 50px;}
.firstL{
	width: 300px;
	margin: 0 30px 0 0;
}
.firstL img {
    display: block;
    margin: 0 auto;
}
.firstR{ width: calc( 100% - 330px );}
.firstR h1{
	margin: 0 0 40px;
	font-size: 4.0rem;
	font-family: 'Noto Serif JP', serif;
}
.firstR .square{
	margin: 0 0 20px;
	padding: 40px;
	border: 1px solid #aaa;
}
.firstR .moreLink{ float: right;}
.firstR .moreLink a{ width: 200px;}

@media (min-width: 1023px) {/** horizon 1023px over **/
    .horizon{
        display: flex;
        justify-content: space-between;
    }
    .horizon.four .firstBox{ width: 24%;}
    .horizon .firstBox{
        display: block;
        width: 32.33%;
    }
    .horizon .firstBox:not(:last-child){ margin: 0;}
    .horizon .firstL{
        width: 100%;
        margin: 0 0 20px;
    }
    .horizon .firstL img{ width: 100%;}
    .horizon .firstR{
        width: 100%;
        text-align: center;
    }
    .horizon .firstR h1{
        margin: 0 0 20px;
        font-size: 2.4rem;
    }
    .horizon .firstR .square{
        padding: 15px;
        text-align: left;
        font-size: 15px;
    }
    .horizon .firstR .moreLink{ float: none;}
    .horizon .firstR .moreLink a{ width: 100%;}
}
@media (max-width: 1024px) {
	.firstR h1{
		margin: 0 0 20px;
		font-size: 3.0rem;
	}
	.firstL{
		width: 240px;
		margin: 0 20px 0 0;
	}
	.firstR{ width: calc( 100% - 260px );}
}
@media (max-width: 767px) {
    .firstBox:not(:last-child){ margin: 0 0 30px;}
	.firstL{ width: 180px;}
	.firstR{ width: calc( 100% - 200px );}
	.firstR .square{
        margin: 0 0 15px;
        padding: 20px;
    }
	.firstR h1{ font-size: 2.0rem;}
}
@media (max-width: 640px) {
	.firstL{ width: 140px;}
	.firstR{ width: calc( 100% - 160px );}
}
@media (max-width: 519px) {
	.firstBox{ display: block;}
    .firstBox:not(:last-child){
        padding: 0 0 30px;
        border-bottom: 2px dotted #ccc;
    }
	.firstL{
		width: 100%;
		margin: 0 0 20px;
	}
	.firstL img{
		display: block;
		margin: 0 auto;
        max-width: 300px;
	}
	.firstR{
        width: 100%;
        margin: 0;
    }
	.firstR h1{
        margin: 0 0 10px;
        text-align: center;
    }
	.firstR .moreLink{ float: none;}
	.firstR .moreLink a{ width: 100%;}
}
@media (max-width: 425px) {
	.firstR h1{ font-size: 1.8rem;}
	.firstR .square{ padding: 10px;}
}


/* ---- news ---- */
/* お知らせ一覧と同様 */
.newsBox.top{ margin: 0 0 40px;}
@media (max-width: 519px) {
	.newsBox.top{ margin: 0 0 20px;}
}


/* ---- contents link ---- */
.linkBox{
	display: flex;
	justify-content: space-between;
	font-size: 0;
}
.linkBox li{
	font-size: 14px;
	text-align: center;
}
.linkBox li a{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin: 0 0 15px;
	padding: 20px;
	width: 320px;
	height: 160px;
	background: #fff;
	font-size: 30px;
	line-height: 1.2;
	color: #333;
	text-shadow: 
    #fff 2px 0px,  #fff -2px 0px,
    #fff 0px -2px, #fff 0px 2px,
    #fff 2px 2px , #fff -2px 2px,
    #fff 2px -2px, #fff -2px -2px,
    #fff 1px 2px,  #fff -1px 2px,
    #fff 1px -2px, #fff -1px -2px,
    #fff 2px 1px,  #fff -2px 1px,
    #fff 2px -1px, #fff -2px -1px;
}
.linkBox li p{ font-size: 14px;}
.linkBox li.link01 a{
	background: url("../images/common/top01.png") no-repeat 20px center #fff;
	background-size: 100px auto;
}
.linkBox li.link02 a{
	background: url("../images/common/top02.png") no-repeat 20px center #fff;
	background-size: 100px auto;
}
.linkBox li.link03 a{
	background: url("../images/common/top03.png") no-repeat 20px center #fff;
	background-size: 100px auto;
}
.linkBox li a:hover{ background-color: #dbeaf0;}

@media (max-width: 1024px) {
	.linkBox li{
		width: 32%;
		text-align: left;
	}	
	.linkBox li a{ width: 100%;}
}
@media (min-width: 640px) and (max-width: 1023px) {
	.linkBox li a{
		justify-content: center;
		align-items: flex-start;
		height: 170px;
		padding: 20px 10px;
		font-size: 20px;
	}
	.linkBox li a br{ display: none;}
	.linkBox li.link01 a{
		background-size: 80px auto;
		background-position: center 60px;
	}
	.linkBox li.link02 a{
		background-size: 80px auto;
		background-position: center 60px;
	}
	.linkBox li.link03 a{
		background-size: 80px auto;
		background-position: center 60px;
	}
	.linkBox li{ font-size: 12px;}
}
@media (max-width: 639px) {
	.linkBox{ display: block;}
	.linkBox li{
		width: 100%;
		margin: 0 0 10px;
		border: 1px solid #ccc;
	}
	.linkBox li a{
		margin: 0;
		justify-content: center;
		height: 80px;
		font-size: 20px;
	}
	.linkBox li a br{ display: none;}
	.linkBox li.link01 a{ background-size: 50px auto;}
	.linkBox li.link02 a{ background-size: 50px auto;}
	.linkBox li.link03 a{ background-size: 50px auto;}
	.linkBox li p{ padding: 5px;}
}
@media (max-width: 425px) {
	.linkBox li a{
		height: 60px;
		padding: 10px;
		font-size: 16px;
	}
	.linkBox li.link01 a{ background-size: 40px auto;}
	.linkBox li.link02 a{ background-size: 40px auto;}
	.linkBox li.link03 a{ background-size: 40px auto;}
}


/* ---- bottom link ---- */
.bottomLink{
	display: flex;
	justify-content: space-between;
}
.bottomLink li{ width: 490px;}
.bottomLink li a{
	display: block;
	margin: 0 auto;
	padding: 25px 0;
	border: 1px solid #00479d;
	border-radius: 50px;
	transition: all 0.4s ease;
	outline: none;
	font-size: 28px;
	line-height: 1.0;
	text-align: center;
	color: #00479d;
	text-decoration: none;
}
.bottomLink li a:hover{ background-color: #dbeaf0;}
.bottomLink li.link01 a span{
	background: url("../images/icon/icon-person01_blue.png") no-repeat left center;
	background-size: 30px auto;
	padding: 0 0 0 40px;
}
.bottomLink li.link02 a span{
	background: url("../images/icon/icon-mail01_blue.png") no-repeat left center;
	background-size: 30px auto;
	padding: 0 0 0 40px;
}
@media (max-width: 1024px) {
	.bottomLink li{ width: 49%;}
	.bottomLink li a{
		padding: 20px 0;
		font-size: 20px;
	}
}
@media (max-width: 768px) {
	.bottomLink li a{ font-size: 20px;}
	.bottomLink li.link01 a span{
		background-size: 20px auto;
		padding: 0 0 0 30px;
	}
	.bottomLink li.link02 a span{
		background-size: 20px auto;
		padding: 0 0 0 30px;
	}
}
@media (max-width: 519px) {
	.bottomLink{ display: block;}
	.bottomLink li{ width: 100%;}
	.bottomLink li.link01{ margin: 0 0 10px;}
	.bottomLink li a{
		padding: 15px 0;
		font-size: 16px;
	}
	.bottomLink li.link01 a span,
	.bottomLink li.link02 a span{
		background: none;
		padding: 0;
	}
	.bottomLink li.link01 a{
		background: url("../images/icon/icon-person01_blue.png") no-repeat 20px center;
		background-size: 20px auto;
	}
	.bottomLink li.link02 a{
		background: url("../images/icon/icon-mail01_blue.png") no-repeat 20px center;
		background-size: 20px auto;
	}
}


/* news line
---------------------------------- */
.newsBox .newLineBox{ margin: 0 0 40px;}
.newsBox li{
	padding: 30px 0;
	border-bottom: 1px solid #ccc;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 14px;
}
.newsBox li:first-child{ border-top: 1px solid #ccc;}
.newsBox li .date{
	display: inline-block;
	width: 140px;
	color: #555;
}
.newsBox li a{ font-size: 16px;}
.newsBox li a:hover{ text-decoration: underline;}
.newMark{
	display: inline-block;
	margin: 0 0 0 5px;
	padding: 3px 5px 2px;
	font-size: 10px;
	line-height: 1.0;
	background: #DE0000;
	color: #fff;
	font-weight: bold;
}
@media (max-width: 1024px) {
	.newsBox li{ padding: 20px 0;}
}
@media (max-width: 768px) {
	.newsBox li{
		overflow: auto;
		white-space: normal;
		text-overflow: inherit;
	}
	.newsBox li .date{
		display: block;
		width: 100%;
		margin: 0 0 5px;
	}
}
@media (max-width: 519px) {
	.newsBox li{
		padding: 15px 0;
		font-size: 12px;
	}
	.newsBox li a{ font-size: 14px;}
}


/* ---- ページャー ---- */
.pager{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 10px 0;
	text-align: center;
}
.pager a{
	display: inline-block;
    border: 1px solid #bbb;
    margin: 4px;
    padding: 8px 12px;
	border-radius: 3px;
    text-decoration: none;
	color: #333;
    font-size: 14px;
	font-weight: bold;
}
.pager a.current{
    background: #444;
    border: 1px solid #444;
    color: #fff;
    text-decoration: none;
	pointer-events: none;
}
.pager a:hover{
    background: #efefef;
    color: #333;
}
.overPagerPattern{
	padding:0 2px ;	
}
@media (max-width: 425px) {
	.pager a{
		padding: 4px 6px;
		font-size: 12px;
	}
}


/* news
---------------------------------- */
.newsSingleBox{}
.newsSingleBox h2{
	margin: 0 0 20px 0!important;
    font-size: 24px;
}
.newsSingleBox .date{
	margin: 0 0 40px;
	text-align: right;
	font-size: 14px;
}
.newsTextBox{ margin: 0 0 80px;}
.newsText{}
.detailUpfile{
	margin: 40px 0 0;
	text-align: center;
}
.backORcloseBtn{
	text-align: center;
	line-height: 100%;
	margin-top: 15px;
}
.backORcloseBtn a{
	display: inline-block;
	padding: 10px 15px;
	border: 1px solid #aaa;
	border-radius: 2px;
	font-size: 14px;
	color: #555;
}
.backORcloseBtn a:hover{ background: #efefef;}
.detailUpfile img{
	max-width:100%;
	height: auto;
}
@media (max-width: 519px) {
	.newsSingleBox h2{ font-size: 18px;}
	.newsSingleBox .date{ font-size: 12px;}
}
@media (max-width: 375px) {
	.newsSingleBox h2{ font-size: 16px;}
}


/* ---- 2カラム ------------------------------ */
main.column02{
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin: 0 auto;
}
main.column02 .pageMain{
	width: 730px;
	margin: 80px 0 40px;
}
main.column02 .side{
	width: 250px;
	margin: 80px 0 40px 20px;
}
main.column02.reverse{ flex-direction :row-reverse;}
main.column02.reverse .side{ margin: 80px 20px 40px 0;}
@media (max-width: 1024px) {
	main.column02{ margin: 0 10px;}
	main.column02 .pageMain{ width: 70%;}
	main.column02 .side{ width: 28%;}
}
@media (max-width: 768px) {
	main.column02 .pageMain{ width: 72%;}
	main.column02 .side{ width: 26%;}
}
@media (max-width: 767px) {
	main.column02{ display: block;}
	main.column02 .pageMain{ width: 100%;}
	main.column02 .side,
	main.column02.reverse .side{
		width: 100%;
		margin: 80px 0 10px;
		padding: 20px;
		border: 1px solid #ddd;
	}
}
@media (max-width: 425px) {
	main.column02 .side,
	main.column02.reverse .side{ padding: 20px 10px;}
}


.sideGoForm{ margin: 0 0 20px;}
.sideGoForm a{
	display: block;
	border-radius: 5px;
	padding: 15px 20px 14px;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
	background: url("../images/icon/arrowA_white.png") no-repeat right 15px center #fc8f01;
	background-size: 12px auto;
}
.sideGoForm a span{
	background: url("../images/icon/icon-mail_white.png") no-repeat left center;
	background-size: 20px auto;
	padding-left: 30px;
}
.sideGoForm a:hover{ background-color: #e07f00;}
.sideAbout{
	margin: 0 0 20px;
	border: 3px solid #faf3df;
	background: #fff;
}
.sideAbout div{ padding: 10px;}
.sideAbout h4{
	background: #faf3df;
	padding: 10px 0;
	text-align: center;
}
.sideAbout p{ font-size: 14px;}
.sideAbout p.more{
	text-align: right;
	margin-top: 20px;
}
.sideAbout p.more a{
	font-size: 12px;
	text-decoration: underline;
}
.sideAbout p.more a:hover{ text-decoration: none;}

.sideInfo{ margin: 0 0 20px;}
.sideInfo h4{
	background: #e5e5e5;
	padding: 10px 0;
	font-size: 14px;
	text-align: center;
}
.sideInfoIn{
	border: 1px solid #ddd;
	border-top: none;
}
.listSubBox{
	position: relative;
	overflow: hidden;
	border-bottom: 1px solid #ddd;
	font-size: 12px;
	line-height: 1.5;
	background: #fff;
}
.listSubBox:last-child{ border: none;}
.listSubBox a{
	display: block;
	text-decoration: none;
	overflow: hidden;
	padding: 10px;
	background: #fff;
}
.listSubBox a:hover { background: #efefef;}
.listSubBox a h5 {
	color: #333;
	font-weight: bold;
}
.listSubBox p{
	margin: 0;
	font-size: 12px;
	line-height: 1.3;
	color: #555;
}
.listSubBox .img{
	width: 50px;
	float: left;
	margin-right: 10px;
}

.sideBox{ margin: 0 0 20px;}
@media (max-width: 767px) {
	.sideBox{ text-align: center;}
}


/* ---- module pageContBox ---- */
.pageContBox{
	margin: 0 0 60px;
	background: #fff;
}
.wrap10{ padding: 10px;}
.wrap20{ padding: 20px;}
.wrap30{ padding: 30px;}
.wrap40{ padding: 40px;}
.line{ border: 1px solid #ccc;}
@media (max-width: 1024px) {
	main.column02 .wrap30,
	main.column02 .wrap40{ padding: 20px;}
}
@media (max-width: 768px) {
	.wrap30,
	.wrap40{ padding: 20px;}
	main.column02 .wrap20,
	main.column02 .wrap30,
	main.column02 .wrap40{ padding: 15px;}
}
@media (max-width: 767px) {
	.wrap20,
	.wrap30,
	.wrap40{ padding: 10px;}
	main.column02 .wrap20,
	main.column02 .wrap30,
	main.column02 .wrap40{ padding: 10px;}
}
@media (max-width: 519px) {
	.pageContBox{ margin: 0 0 40px;}
	.wrap10,
	.wrap20,
	.wrap30,
	.wrap40,
	main.column02 .wrap20,
	main.column02 .wrap30,
	main.column02 .wrap40{ padding: 10px 10px 15px;}
}


/* ---- module mdl_pairBox ---- */
.mdl_pairBox{ display: flex;}
.mdl_pairBox .contL{ width: 300px;}
.mdl_pairBox .contL img{
	width: 100%;
	height: auto;
}
.mdl_pairBox .contR{
	width: calc( 100% - 300px );
	padding: 0 0 0 30px;
	line-height: 1.5;
}
.mdl_pairBox .contR h2{ font-size: 24px;}

main.column02 .mdl_pairBox .contR{ padding: 0 0 0 20px;}
main.column02 .mdl_pairBox .contR h2{ font-size: 20px;}

@media (max-width: 1024px) {
	.mdl_pairBox .contR{ padding: 0 0 0 20px;}
	main.column02 .mdl_pairBox .contR h2{ font-size: 18px;}
}
@media (max-width: 768px) {
	.mdl_pairBox .contR h2{ font-size: 20px;}
	main.column02 .mdl_pairBox .contR{ padding: 0 0 0 10px;}
}
@media (max-width: 767px) {
	main.column02 .mdl_pairBox .contR h2{ font-size: 20px;}
	.mdl_pairBox .contR,
	main.column02 .mdl_pairBox .contR{ padding: 0 0 0 15px;}
	
	[class^="wrap"] .mdl_pairBox .contR,
	[class*=" wrap"] .mdl_pairBox .contR,
	main.column02 [class^="wrap"] .mdl_pairBox .contR,
	main.column02 [class*=" wrap"] .mdl_pairBox .contR{ padding: 0 0 0 10px;}
}
@media (max-width: 640px) {
	.mdl_pairBox .contR h2,
	main.column02 .mdl_pairBox .contR h2{ font-size: 16px;}
}
@media (max-width: 519px) {
	.mdl_pairBox{ display: block;}
	.mdl_pairBox .contL{
		width: 100%;
		margin: 0 0 20px;
	}
	.mdl_pairBox .contR{
		width: 100%;
		padding: 0;
	}
	main.column02 .mdl_pairBox .contR{ padding: 0;}
}
@media (max-width: 375px) {
	.mdl_pairBox .contR h2{ font-size: 14px;}
}

.mdl_pairBox .contR p + h2,
.mdl_pairBox .contR p + h3,
.mdl_pairBox .contR p + h4,
.mdl_pairBox .contR p + h5,
.mdl_pairBox .contR p + h6{ margin-top: 40px;}
@media (max-width: 798px) {
	.mdl_pairBox .contR p + h2,
	.mdl_pairBox .contR p + h3,
	.mdl_pairBox .contR p + h4,
	.mdl_pairBox .contR p + h5,
	.mdl_pairBox .contR p + h6{ margin-top: 30px;}
}
@media (max-width: 519px) {
	.mdl_pairBox .contR p + h2,
	.mdl_pairBox .contR p + h3,
	.mdl_pairBox .contR p + h4,
	.mdl_pairBox .contR p + h5,
	.mdl_pairBox .contR p + h6{ margin-top: 20px;}
}

.mdl_pairBox.size200 .contL{ width: 200px;}
.mdl_pairBox.size200 .contR{ width: calc( 100% - 200px );}
.mdl_pairBox.size250 .contL{ width: 250px;}
.mdl_pairBox.size250 .contR{ width: calc( 100% - 250px );}
.mdl_pairBox.size300 .contL{ width: 300px;}
.mdl_pairBox.size300 .contR{ width: calc( 100% - 300px );}
.mdl_pairBox.size350 .contL{ width: 350px;}
.mdl_pairBox.size350 .contR{ width: calc( 100% - 350px );}
.mdl_pairBox.size400 .contL{ width: 400px;}
.mdl_pairBox.size400 .contR{ width: calc( 100% - 400px );}
.mdl_pairBox.size500 .contL{ width: 500px;}
.mdl_pairBox.size500 .contR{ width: calc( 100% - 500px );}
.mdl_pairBox.size600 .contL{ width: 600px;}
.mdl_pairBox.size600 .contR{ width: calc( 100% - 600px );}

main.column02 .mdl_pairBox.size600 .contL{ width: 500px;}
main.column02 .mdl_pairBox.size600 .contR{ width: calc( 100% - 500px );}

@media (max-width: 1440px) {
	.mdl_pairBox.size500 .contL,
	.mdl_pairBox.size600 .contL{ width: 450px;}
	.mdl_pairBox.size500 .contR,
	.mdl_pairBox.size600 .contR{ width: calc( 100% - 450px );}
	
	main.column02 .mdl_pairBox.size500 .contL,
	main.column02 .mdl_pairBox.size600 .contL{ width: 500px;}
	main.column02 .mdl_pairBox.size500 .contR,
	main.column02 .mdl_pairBox.size600 .contR{ width: calc( 100% - 500px );}
}
@media (max-width: 1024px) {
	
	.mdl_pairBox.size250 .contL,
	.mdl_pairBox.size300 .contL{ width: 240px;}
	.mdl_pairBox.size250 .contR,
	.mdl_pairBox.size300 .contR{ width: calc( 100% - 240px );}
	
	.mdl_pairBox.size350 .contL,
	.mdl_pairBox.size400 .contL{ width: 300px;}
	.mdl_pairBox.size350 .contR,
	.mdl_pairBox.size400 .contR{ width: calc( 100% - 300px );}
	
	.mdl_pairBox.size500 .contL,
	.mdl_pairBox.size600 .contL{ width: 360px;}
	.mdl_pairBox.size500 .contR,
	.mdl_pairBox.size600 .contR{ width: calc( 100% - 360px );}
	
	main.column02 .mdl_pairBox.size250 .contL,
	main.column02 .mdl_pairBox.size300 .contL{ width: 220px;}
	main.column02 .mdl_pairBox.size250 .contR,
	main.column02 .mdl_pairBox.size300 .contR{ width: calc( 100% - 220px );}
	
	main.column02 .mdl_pairBox.size350 .contL,
	main.column02 .mdl_pairBox.size400 .contL{ width: 240px;}
	main.column02 .mdl_pairBox.size350 .contR,
	main.column02 .mdl_pairBox.size400 .contR{ width: calc( 100% - 240px );}
	
	main.column02 .mdl_pairBox.size500 .contL,
	main.column02 .mdl_pairBox.size600 .contL{ width: 280px;}
	main.column02 .mdl_pairBox.size500 .contR,
	main.column02 .mdl_pairBox.size600 .contR{ width: calc( 100% - 280px );}
}
@media (max-width: 768px) {
	main.column02 .mdl_pairBox.size200 .contL,
	main.column02 .mdl_pairBox.size250 .contL,
	main.column02 .mdl_pairBox.size300 .contL{ width: 160px;}
	main.column02 .mdl_pairBox.size200 .contR,
	main.column02 .mdl_pairBox.size250 .contR,
	main.column02 .mdl_pairBox.size300 .contR{ width: calc( 100% - 160px );}
	
	main.column02 .mdl_pairBox.size350 .contL,
	main.column02 .mdl_pairBox.size400 .contL{ width: 160px;}
	main.column02 .mdl_pairBox.size350 .contR,
	main.column02 .mdl_pairBox.size400 .contR{ width: calc( 100% - 160px );}
	
	main.column02 .mdl_pairBox.size500 .contL,
	main.column02 .mdl_pairBox.size600 .contL{ width: 180px;}
	main.column02 .mdl_pairBox.size500 .contR,
	main.column02 .mdl_pairBox.size600 .contR{ width: calc( 100% - 180px );}
}
@media (max-width: 767px) {
	.mdl_pairBox.size200 .contL,
	.mdl_pairBox.size250 .contL,
	.mdl_pairBox.size300 .contL,
	.mdl_pairBox.size350 .contL,
	.mdl_pairBox.size400 .contL,
	.mdl_pairBox.size500 .contL,
	.mdl_pairBox.size600 .contL{ width: 200px;}
	.mdl_pairBox.size200 .contR,
	.mdl_pairBox.size250 .contR,
	.mdl_pairBox.size300 .contR,
	.mdl_pairBox.size350 .contR,
	.mdl_pairBox.size400 .contR,
	.mdl_pairBox.size500 .contR,
	.mdl_pairBox.size600 .contR{ width: calc( 100% - 200px );}
	
	main.column02 .mdl_pairBox.size200 .contL,
	main.column02 .mdl_pairBox.size250 .contL,
	main.column02 .mdl_pairBox.size300 .contL,
	main.column02 .mdl_pairBox.size350 .contL,
	main.column02 .mdl_pairBox.size400 .contL,
	main.column02 .mdl_pairBox.size500 .contL,
	main.column02 .mdl_pairBox.size600 .contL{ width: 200px;}
	main.column02 .mdl_pairBox.size200 .contR,
	main.column02 .mdl_pairBox.size250 .contR,
	main.column02 .mdl_pairBox.size300 .contR,
	main.column02 .mdl_pairBox.size350 .contR,
	main.column02 .mdl_pairBox.size400 .contR,
	main.column02 .mdl_pairBox.size500 .contR,
	main.column02 .mdl_pairBox.size600 .contR{ width: calc( 100% - 200px );}
}
@media (max-width: 519px) {
	.mdl_pairBox.size200 .contL,
	.mdl_pairBox.size250 .contL,
	.mdl_pairBox.size300 .contL,
	.mdl_pairBox.size350 .contL,
	.mdl_pairBox.size400 .contL,
	.mdl_pairBox.size500 .contL,
	.mdl_pairBox.size600 .contL{ width: 100%;}
	.mdl_pairBox.size200 .contR,
	.mdl_pairBox.size250 .contR,
	.mdl_pairBox.size300 .contR,
	.mdl_pairBox.size350 .contR,
	.mdl_pairBox.size400 .contR,
	.mdl_pairBox.size500 .contR,
	.mdl_pairBox.size600 .contR{ width: 100%;}
	
	main.column02 .mdl_pairBox .contR{ padding: 0;}
	
	main.column02 .mdl_pairBox.size200 .contL,
	main.column02 .mdl_pairBox.size250 .contL,
	main.column02 .mdl_pairBox.size300 .contL,
	main.column02 .mdl_pairBox.size350 .contL,
	main.column02 .mdl_pairBox.size400 .contL,
	main.column02 .mdl_pairBox.size500 .contL,
	main.column02 .mdl_pairBox.size600 .contL{ width: 100%;}
	main.column02 .mdl_pairBox.size200 .contR,
	main.column02 .mdl_pairBox.size250 .contR,
	main.column02 .mdl_pairBox.size300 .contR,
	main.column02 .mdl_pairBox.size350 .contR,
	main.column02 .mdl_pairBox.size400 .contR,
	main.column02 .mdl_pairBox.size500 .contR,
	main.column02 .mdl_pairBox.size600 .contR{ width: 100%;}
}

.reverse{ flex-direction :row-reverse;}
.reverse.mdl_pairBox .contR{ padding: 0 30px 0 0;}
main.column02 .reverse.mdl_pairBox .contR{ padding: 0 20px 0 0;}
@media (max-width: 1024px) {
	.reverse.mdl_pairBox .contR{ padding: 0 20px 0 0;}
}
@media (max-width: 768px) {
	main.column02 .reverse.mdl_pairBox .contR{ padding: 0 10px 0 0;}
}
@media (max-width: 767px) {
	main.column02 .reverse.mdl_pairBox .contR{ padding: 0 15px 0 0;}
	[class^="wrap"] .reverse.mdl_pairBox .contR,
	[class*=" wrap"] .reverse.mdl_pairBox .contR,
	main.column02 [class^="wrap"] .reverse.mdl_pairBox .contR,
	main.column02 [class*=" wrap"] .reverse.mdl_pairBox .contR{ padding: 0 10px 0 0;}
}
@media (max-width: 519px) {
	.reverse.mdl_pairBox .contR,
	main.column02 .reverse.mdl_pairBox .contR{ padding: 0;}
}

.mdl_pairBox.imgLine01 .contL img{
	padding: 6px;
	background: #fff;
	border: 1px solid #ccc;
}
.mdl_pairBox.imgLine02 .contL img{
	padding: 6px;
	background: #fff;
	box-shadow: 0 0 3px #999;
}
@media (max-width: 768px) {
	main.column02 .mdl_pairBox.imgLine01 .contL img{ padding: 5px;}
}
@media (max-width: 767px) {
	.mdl_pairBox.imgLine01 .contL img{ padding: 5px;}
}


/* ---- module mdl_pouch ---- */
.mdl_pouch{
	border: 1px solid #ccc;
	width: 100%;
}
.mdl_pouch dl{
	display: flex;
	align-items: center;
	background: #f0f0f0;
}
.mdl_pouch dt{
	padding: 10px;
	width: 140px;
}
.mdl_pouch dd{
	padding: 10px;
	width: calc( 100% - 140px );
	background: #fff;
}
@media (max-width: 519px) {
	.mdl_pouch dt{ width: 120px;}
	.mdl_pouch dd{ width: calc( 100% - 120px );}
}
@media (max-width: 375px) {
	.mdl_pouch dt{ width: 100px;}
	.mdl_pouch dd{ width: calc( 100% - 100px );}
}

/* ---- module mdl_imgBox ---- */
.mdl_imgBox{
	display: flex;
	justify-content: space-between;
}
.mdl_imgBox figure{
	width: 100%;
	text-align: center;
}
.mdl_imgBox.two figure{ width: 49%;}
.mdl_imgBox.three figure{ width: 32.33%;}
.mdl_imgBox.four figure{ width: 24%;}
@media (max-width: 519px) {
	.mdl_imgBox{ display: block;}
	.mdl_imgBox figure{ margin: 0 0 10px;}
	.mdl_imgBox.two figure,
	.mdl_imgBox.three figure,
	.mdl_imgBox.four figure{
		width: 100%;
	}
}


/* about
---------------------------------- */
.mapBox{}
.mapBox iframe{
    width: 100%;
	height: 400px;
    vertical-align: bottom;
}
@media (max-width: 519px) {
    .mapBox iframe{ height: 360px;}
}
@media (max-width: 375px) {
    .mapBox iframe{ height: 300px;}
}


/* service
---------------------------------- */
.service .pageContBox{ margin: 0 0 100px;}
.service .mdl_pouch{
	margin: 20px 0;
}
.service .contR .moreLink a{
	width: 100%;
	padding: 10px 0;
}


/* sales
---------------------------------- */
.telBox{
	padding: 20px;
	border-radius: 4px;
	border: 1px solid #ccc;
	background: #f6f6ed;
	text-align: center;
	font-size: 12px;
}
.telBox p{
	margin: 0 0 10px;
	font-size: 16px;
}
.telBox a{
	display: block;
	width: 400px;
	margin: 0 auto 10px;
	padding: 10px 40px;
	border-radius: 100px;
	transition: all 0.4s ease;
	background: url("../images/icon/icon-tel02_blue.png") no-repeat 20px center #fff;
	background-size: 18px auto;
	font-size: 30px;
}
@media (max-width: 519px) {
	.telBox{ padding: 20px 10px;}
	.telBox p{ font-size: 14px;}
	.telBox a{
		width: 100%;
		background-size: 14px auto;
		font-size: 20px;
	}
}


/* flyer
---------------------------------- */
.listLineBox{
	margin: 0 0 30px 0;
	display: flex;
	justify-content: space-between;
}
.listLineBox.three .listLine{ width: 32.33%;}
.listLine{
	position: relative;
	width: 24%;
	margin: 0 0 20px;
}
.listLine .listLineImg{ margin-bottom: 15px;}
.listLine h3,
.listLine h4{
	position: absolute;
	top: 0px;
	width: 100%;
	padding: 5px 0;
	background: #601986;
	background: rgba(96,25,134,0.7);
	color: #fff;
	text-align: center;
	font-size: 14px;
}
.listLine p{
	padding: 0px !important;
	font-size: 14px;
	line-height: 1.4;
}
@media (max-width: 767px) {
	.listLineBox{ display: block;}
	.listLineBox.three .listLine{ width: 100%;}
	.listLine{
		display: flex;
		justify-content: space-between;
		width: 100%;
		padding: 0 0 10px;
		margin: 0 0 10px;
		border-bottom: 1px solid #ccc;
	}
	.listLine .listLineImg{
		width: 20%;
		margin: 0;
	}
	.listLine .text{
		width: 79%;
		padding: 0 0 0 1%;
	}
	.listLine h3,
	.listLine h4{
		position: static;
		margin: 0 0 10px;
		padding: 10px;
		width: auto;
		text-align: left;
		font-size: 16px;
	}
}
@media (max-width: 519px) {
	.listLine{ margin: 0 0 10px 0;}
	.listLine h3,
	.listLine h4{
		padding: 5px 8px;
		font-size: 14px;
	}
}
@media (max-width: 375px) {
	.listLine h3,
	.listLine h4{
		font-size: 13px;
	}
	.listLine p{ font-size: 12px;}
}

.flyer .pageContBox .waku01{ margin: 20px 0 0;}

.hensoku01 caption{
	border: 1px solid #ccc;
	border-bottom: none;
	text-align: left;
	background: #eee;
	color: #555;
	font-weight: bold;
	padding: 10px;
}
.hensoku01{
	width: 100%;
	background: #fff;
	margin: 0 0 20px;
}
.hensoku01,
.hensoku01 td,
.hensoku01 th{
	word-break: break-all;
	border: 1px solid #ccc;
	padding: 10px;
	text-align: center;
	vertical-align: middle;
}
.hensoku01 th{
	width: 200px;
	font-size: 14px;
	font-weight: bold;
}
@media (max-width: 768px) {
	.hensoku01 th{
		width: 180px;
		font-size: 13px;
	}
}
@media (max-width: 519px) {
	.hensoku01 th{
		width: 130px;
		font-size: 12px;
	}
	.hensoku01 td{ font-size: 12px;}
}


/* contact
---------------------------------- */
.goformBox{
	padding: 40px 20px;
	border-radius: 4px;
	border: 1px solid #ccc;
	background: #f6f6ed;
	text-align: center;
	font-size: 12px;
}
.goformBox h2{
	margin: 0 0 10px;
	font-size: 26px;
	font-weight: bold;
}
.goformBox p{
	margin: 0 0 30px;
	font-size: 16px;
}
@media (max-width: 519px) {
	.goformBox{ padding: 30px 20px;}
	.goformBox h2{ font-size: 18px;}
	.goformBox p{
		text-align: left;
		font-size: 14px;
	}
}


/* recruit
---------------------------------- */
.titleR{
	margin: 0 0 20px;
	padding: 25px 10px;
	border-radius: 6px 6px;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	color: #ffe20a;
}
.goActionWrap{
	display: flex;
	justify-content: space-between;
}
.goActionBox{
	width: 49%;
	border-radius: 6px;
	padding: 20px;
	background: #f6f6ed;
}
.goActionBox h3{
	margin: -20px;
	padding: 20px 0;
	text-align: center;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
}
.goActionBox .telActionBox{
	margin: 0;
	text-align: center;
	background: url("../images/icon/icon-tel01_blue.png") no-repeat center 40px;
	background-size: 70px auto;
	padding-top: 130px;
}
.goActionBox .telActionBox a{
	display: block;
	border: 1px solid #bfbfb0;
	margin: 0 0 20px;
	padding: 14px 40px;
	border-radius: 100px;
	background: #fff;
	transition: all 0.4s ease;
	font-size: 30px;
	font-weight: bold;
}
.goActionBox p{
	padding: 5px 20px;
	background: #fff;
	font-size: 14px;
}
.goActionBox .telActionBox a:hover{ background: #c9f8ff;}
.goActionBox .moreLink{
	background: url("../images/icon/icon-mail01_blue.png") no-repeat center 40px;
	background-size: 70px auto;
	padding-top: 130px;
	text-align: center;
}
.goActionBox .moreLink a{
	width: 100%;
	margin: 0 0 20px;
	padding: 20px 0;
	font-size: 20px;
	font-weight: bold;
	background-size: 14px auto;
	background-position: right 20px center;
}
main.column02 .titleR{ font-size: 24px;}
main.column02 .goActionBox .telActionBox a{ font-size: 20px;}
main.column02 .goActionBox .moreLink a{ font-size: 16px;}
main.column02 .goActionBox h3{
	padding: 10px 0;
	font-size: 16px;
}
@media (max-width: 1024px) {
	.titleR{ font-size: 24px;}
	.goActionBox .telActionBox a{ font-size: 28px;}
	.goActionBox .moreLink a{ font-size: 18px;}
	main.column02 .titleR{
		padding: 20px 10px;
		font-size: 20px;
		text-align: left;
	}
	main.column02 .goActionWrap{ display: block;}
	main.column02 .goActionBox:first-child{ margin: 0 0 20px;}
	main.column02 .goActionBox{
		width: 100%;
		padding: 20px 10px;
	}
	main.column02 .goActionBox h3{
		margin: -20px -10px;
		padding: 10px 0;
	}
	main.column02 .goActionBox .telActionBox{
		background-size: 40px auto;
		padding-top: 90px;
	}
	main.column02 .goActionBox .telActionBox a{
		margin: 0 0 10px;
		padding: 10px;
		font-size: 20px;
	}
	main.column02 .goActionBox .moreLink{
		background-size: 40px auto;
		padding-top: 90px;
	}
	main.column02 .goActionBox .moreLink a{
		margin: 0 0 10px;
		padding: 12px;
		background-size: 10px auto;
		font-size: 16px;
	}
}
@media (max-width: 767px) {
	.titleR{ position: relative;}
	.titleR::before{
		content: '';
		position: absolute;
		top: 100%;
		left: 50%;
		margin-left: -10px;
		border: 10px solid transparent;
	}
	.goActionWrap{ display: block;}
	.goActionBox:first-child{ margin: 0 0 20px;}
	.goActionBox{
		width: 100%;
		padding: 20px 10px;
	}
	.goActionBox h3{
		margin: -20px -10px;
		padding: 10px 0;
	}
}
@media (max-width: 640px) {
	.titleR{
		padding: 20px 10px;
		font-size: 20px;
		text-align: left;
	}
}
@media (max-width: 519px) {
	.titleR{ font-size: 16px;}
	.goActionBox h3{ font-size: 16px;}
	.goActionBox .telActionBox{
		background-size: 40px auto;
		padding-top: 90px;
	}
	.goActionBox .telActionBox a{
		margin: 0 0 10px;
		padding: 10px;
		font-size: 20px;
	}
	.goActionBox .moreLink{
		background-size: 40px auto;
		padding-top: 90px;
	}
	.goActionBox .moreLink a{
		margin: 0 0 10px;
		padding: 12px;
		background-size: 10px auto;
		font-size: 16px;
	}
	main.column02 .titleR{ font-size: 16px;}
}
@media (max-width: 375px) {
	.goActionBox .moreLink a{ font-size: 14px;}
	main.column02 .goActionBox .moreLink a{ font-size: 14px;}
}


/* form/
---------------------------------- */
.formBox{
    background: #fff;
    padding: 60px 0;
	border: 1px solid #ccc;
}
.formBoxIn{
    max-width: 760px;
    margin: 0 auto;
}
.formBox h1{
    margin: 0 0 30px 0;
    text-align: center;
    font-size: 30px;
    line-height: 1.2;
}
@media (max-width: 780px) {
    .formBoxIn{ margin: 0 10px;}
}
@media (max-width: 768px) {
    .formBox h1{
        font-size: 24px;
        margin: 0 0 30px 0;
    }
}
@media (max-width: 519px) {
    .formBox h1{ font-size: 20px;}
}

/* ---- php form ---- */
table.tableForm {
	width: 100%;
	border: 1px solid #ccc;
	margin: 0 0 20px;
}
.tableForm th{
	padding: 20px 10px;
	width: 200px;
	border-bottom: 1px solid #ccc;
	background: #fafafa;
    vertical-align: top;
	color: #555;
	font-size: 14px;
}
.tableForm th span{
	display: block;
	width: 40px;
	border: 1px solid #ff0000;
    background: #fff;
	padding: 3px 1px;
	margin: 2px 0 0;
	color: #ff0000;
	font-size: 11px;
	line-height: 1.0;
	text-align: center;
}
.tableForm td{
	padding: 20px 15px;
	border-bottom: 1px solid #ccc;
	background: #fff;
	vertical-align: middle;
	color: #555;
	font-size: 14px;
}
.tableForm td p{ margin: 0;}
.tableForm td p.caution{
    margin-top: 5px;
	font-size: 12px;
    line-height: 1.1;
}
.tableForm tr:last-child th{ border-bottom: none;}
.tableForm tr:last-child td{ border-bottom: none;}

input[type="text"],
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea, select{
	-webkit-appearance: none;
}
input[type="text"],
input[type="email"],
input[type="password"],
select,
textarea{
    padding: 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
    box-sizing: border-box;
}
select{
    background: url("../images/icon/arrowD.png") no-repeat right 8px center;
    background-size: 10px auto;
    padding: 5px 30px 5px 5px;
}
textarea{ width: 100%;}

.sendbtnBox{ text-align: center;}
input[type="button"].sendBtn,
input[type="reset"].sendBtn,
input[type="submit"].sendBtn{
    cursor: pointer;
	color: #333!important;
	font-size: 13px;
	text-decoration: none;
	padding: 10px 20px;
	margin: 0 5px;
	border: 1px solid #ccc;
	background: #fff;
	border-radius: 3px;
	display: inline-block;
    box-sizing: border-box;
}
.sendBtn.go{ border: solid 1px #ff0000;}
.sendBtn:hover { background: #efefef;}

.tableForm td input.inpText01{ width: 300px;}
.tableForm td input.inpText02{ width: 100%;}
.tableForm td input.inpText03{ width: 100px;}
.tableForm td input.inpText04{ width: 80px;}
.tableForm td .inpTextbox{
	width: 100%;
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
}
.tableForm td label{
	margin: 0 10px 0 0;
	display: inline-block;
}
.tableForm td dl{ margin: 0 0 10px 0;}
.tableForm td dt{
	width: 90px;
	float: left;
	padding: 4px 0 0 0;
}
.tableForm td dd{ margin-left: 90px;}

.policyBox{
	color: #555;
	padding: 10px;
    font-size: 12px;
	text-align: center;
	background: #fafafa;
	margin: 0 auto 30px;
	border: 1px solid #e9e9e9;
}
.policyBox a{ text-decoration: underline;}
@media (max-width: 768px) {
    .tableForm td dt{
		float: none;
		width: 100%;
		padding: 0;
	}
	.tableForm td dd{ margin: 0;}
}
@media (max-width: 640px) {
	.tableForm th{
        display: block;
		width: 100%;
		position: relative;
        padding: 10px 50px 10px 10px;
	}
	.tableForm th br{ display: none;}
	.tableForm th span{
		position: absolute;
		top: 10px;
		right: 10px;
		margin: 0;
		padding: 3px 1px 2px;
		width: 36px;
		font-size: 10px;
	}
	.tableForm td{
        display: block;
		width: 100%;
		padding: 10px;
	}
	.tableForm td input.inpText01{ width: 100%;}
	.tableForm td label{
		margin: 0 0 5px 0;
		display: block;
	}
    .tableForm tr:last-child th{ border-bottom: 1px solid #e9e9e9;}
}
@media (max-width: 375px) {
    .tableForm td .YY{
        display: block;
        margin: 0 0 5px 0;
    }
	.tableForm td input.inpText03{ width: 80%;}
    .tableForm td .MM{ margin-right: 10px;}
    .tableForm td .MM select,
    .tableForm td .DD select{ width: 35%;}
	.tableForm td input.inpText04{ width: 70px;}
}

/* ---- error ---- */
.errorTxt,
.checkTxt{
    margin: 0 0 40px 0;
    font-size: 16px;
	background: #efefef;
    padding: 20px;
}
.checkTxt{ background: #f6f6ed;}
p.error_messe{
	margin: 0 auto 10px;
	padding: 10px;
	border: 1px solid #ff0000;
	border-radius: 4px;
	text-align: center;
    background: url("../images/icon/error.png") no-repeat 10px center;
    background-size: 20px auto;
	color: #ff0000;
}
@media (max-width: 425px) {
    .errorTxt,
    .checkTxt{
        font-size: 14px;
        padding: 10px;
    }
    p.error_messe{
		padding: 8px 10px 8px 35px;
		text-align: left;
	}
}

/* ---- thanks ---- */
.formDonebox{
	margin: 0 auto 30px;
    padding: 100px 40px 40px;
    max-width: 760px;
	background: #f6f6ed;
	border-radius: 6px;
}
.formDonebox h3{
    text-align: center;
    font-size: 30px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    color: #00479d;
    margin: 0 0 40px 0;
}
.done{
	background: #fff;
	padding: 20px;
}
.done p{
	margin: 0;
	font-size: 16px;
}
@media (max-width: 640px) {
    .formDonebox{ padding: 40px 20px;}
    .formDonebox h3{
        font-size: 24px;
        margin: 0 0 20px 0;
    }
    .done p{ font-size: 16px;}
}
@media (max-width: 425px) {
    .formDonebox{ padding: 20px 10px;}
    .formDonebox h3{ font-size: 18px;}
    .done p{ font-size: 14px;}
}


/* 404 not found
---------------------------------- */
.notfound404{ min-height: 600px;}
.box404{
	border: 1px solid #ccc;
	padding: 80px 40px;
}
@media (max-width: 768px) {
	.box404{ padding: 30px;}
}
@media (max-width: 640px) {
	.notfound404{ min-height: 100px;}
}
@media (max-width: 519px) {
	.box404{ padding: 30px 10px;}
}



