@charset "utf-8";

/***************************************************
	common2.css
	共通レイアウトスタイル定義
***************************************************/

/* Base
------------------------------------------------------------ */

body {
	line-height: 1.6;
	color: #333333;
	font-size: 14px;
	margin: 0;
	padding: 0;
	min-width: 1080px;
	background: #ffffff;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
@media only screen and (max-width: 767px) {
	body {
		min-width: inherit;
	}
}

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

.innerBox {
	clear: both;
	max-width: 1060px;
	margin: 0 auto;
}
@media only screen and (max-width: 767px) {
	.innerBox {
		padding: 0 2%;
	}
}

/* Link
------------------------------------------------------------ */
a { outline: none; }
a:link {
	color: #3F5AA7;
	text-decoration: underline;
}
a:visited {
	color: #3F5AA7;
	text-decoration: underline;
}
a:hover {
	color: #3F5AA7;
	text-decoration: none;
}

a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

/* wrapper
-------------------------------------------------------------------*/
#wrapper {
	clear: both;
}

/* header
-------------------------------------------------------------------*/
#header {
	/*position: absolute;*/
	width: 100%;
	min-width: 1080px;
	margin: 0 auto;
	padding: 15px 0;
	background: #ffffff;
}
body:not(.home):not(.page-template-top-test) #header {
	position: sticky;
	top: 0;
	left: 0;
	z-index: 5000;
	box-shadow: 0px 2px 10px rgba(0,0,0,0.1);
}
#header .headerInner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#header .logo {
	width: 74px;
	margin: 0;
	padding: 0;
	line-height: 1;
}
#header #menuBox {
	
}
#header #menuBox .menuBody {
}
#header #menuBox .gnaviList {
	margin: 0;
	padding: 0;
	display: flex;
	width: 960px;
}
header #menuBox .gnaviList > li {
	margin: 0;
	padding: 0;
	width: 25%;
	list-style-type: none;
	text-align: center;
	line-height: 1;
}
header #menuBox .gnaviList > li {
	border-right: 1px dotted #AAAAAA;
}
header #menuBox .gnaviList > li:first-child {
	border-left: 1px dotted #AAAAAA;
}
header #menuBox .gnaviList > li a {
	display: inline-block;
	vertical-align: top;
	width: 118px;
	height: 70px;
	text-indent: -9999px;
	overflow: hidden;
	outline: none;
}
header #menuBox .gnaviList > li.shopnews a {
	background: url(../img/common/navi01.png) 0 0 no-repeat;
	background-size: contain;
}
/*header #menuBox .gnaviList > li.news a {
	background: url(../img/common/navi02.png) 0 0 no-repeat;
	background-size: contain;
}*/
header #menuBox .gnaviList > li.floor a {
	background: url(../img/common/navi03.png) 0 0 no-repeat;
	background-size: contain;
}
header #menuBox .gnaviList > li.access a {
	background: url(../img/common/navi04.png) 0 0 no-repeat;
	background-size: contain;
}
header #menuBox .gnaviList > li.mailmagazine a {
	background: url(../img/common/navi05.png) 0 0 no-repeat;
	background-size: contain;
}
header #menuBox .gnaviList > li.recruit a {
	background: url(../img/common/navi06.png) 0 0 no-repeat;
	background-size: contain;
}
@media only screen and (max-width: 767px) {
	#header {
		min-width: inherit;
	}
	#header .logo {
		width: 10%;
		max-width: 74px;
		flex-shrink: 0;
	}
	#header #menuBox {
		width: calc(100% - 10% - 10px);
	}
	#header #menuBox .gnaviList {
		width: 100%;
	}
	header #menuBox .gnaviList > li a {
		width: 100%;
		max-width: 118px;
		height: auto;
		aspect-ratio: 118 / 70;
	}
}


/* main
-------------------------------------------------------------------*/
#main {
	display: block;
	clear: both;
	padding: 0 0 100px 0;
}
#main .breadcrumbs {
	clear: both;
	font-size: 11px;
	margin: 20px 0 0 0;
}
#main .breadcrumbs p {
	margin: 0;
}
#btnPagetop {
	/*clear: both;
	text-align: right;*/
	position: fixed;
	right: 10px;
	bottom: 10px;
}
#secondContentBox {
	clear: both;
	min-height: 400px;
}
.underConstruction {
	text-align: center;
	padding: 3em;
	font-size: 24px;
	font-weight: bold;
	background: #dddddd;
}

/* ttl */
.pageHead {
	clear: both;
	font-size: 28px;
	font-weight: normal;
	line-height: 1.3;
	margin: 40px 0;
	padding: 0 0 10px 0;
	border-bottom: 2px solid #E6E7E7;
}
@media only screen and (max-width: 767px) {
	.pageHead {
		font-size: 20px;
		margin: 20px 0;
	}
}
.pageHead.floorguide::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 34px;
	height: 30px;
	margin: 0 15px 0 0;
	background: url(../img/common/common_icon_floor.png) 0 0 no-repeat;
	background-size: contain;
}
.pageHead.access::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 34px;
	height: 40px;
	margin: 0 15px 0 0;
	background: url(../img/common/common_icon_access.png) 0 0 no-repeat;
	background-size: contain;
}
.pageHead.news::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 48px;
	height: 38px;
	margin: 0 15px 0 0;
	background: url(../img/common/common_icon_news.png) 0 0 no-repeat;
	background-size: contain;
}
.pageHead.shopnews::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 48px;
	height: 34px;
	margin: 0 15px 0 0;
	background: url(../img/common/common_icon_shopnews.png) 0 0 no-repeat;
	background-size: contain;
}
.pageHead.recruit::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 48px;
	height: 34px;
	margin: 0 10px 0 0;
	background: url(../img/common/common_icon_recruit.png) 0 0 no-repeat;
	background-size: contain;
}
.pageHead.mailmagazine::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 38px;
	height: 38px;
	margin: 0 15px 0 0;
	background: url(../img/common/common_icon_mailmagazine.png) 0 0 no-repeat;
	background-size: contain;
}
.pageHead.exhibition::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 38px;
	height: 38px;
	margin: 0 15px 0 0;
	background: url(../img/common/common_icon_camera.png) 0 0 no-repeat;
	background-size: contain;
}
.ttlType01 {
	clear: both;
	color: #3F5BA8;
	font-size: 23px;
	font-weight: normal;
	line-height: 1.3;
	margin: 40px 0 25px;
	padding: 0 0 10px 0;
	border-bottom: 2px solid #3F5BA8;
}
@media only screen and (max-width: 767px) {
	.ttlType01 {
		font-size: 18px;
		margin: 20px 0 10px;
	}
}
.ttlType02 {
	clear: both;
	color: #3F5BA8;
	font-size: 15px;
	font-weight: bold;
	line-height: 1.3;
	margin: 20px 0 10px;
	padding: 0;
}
@media only screen and (max-width: 767px) {
	.ttlType02 {
		margin: 10px 0 5px;
	}
}
.ttlType03 {
	clear: both;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.3;
	margin: 40px 0 25px;
	padding: 0 0 10px 0;
	border-bottom: 2px solid #cccccc;
}
@media only screen and (max-width: 767px) {
	.ttlType03 {
		font-size: 18px;
		margin: 20px 0 10px;
	}
}

/* btmBannerBox */
#btmBannerBox {
	clear: both;
}
#btmBannerBox .list01 {
	margin: 0;
	padding: 0;
}
#btmBannerBox .list01 > li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	float: left;
	width: 250px;
	margin: 0 0 0 20px;
}
#btmBannerBox .list01 > li:first-child {
	margin-left: 0;
}
@media only screen and (max-width: 767px) {
	#btmBannerBox .list01 > li {
		float: none;
		width: auto;
		margin: 10px 0 0 0;
	}
	#btmBannerBox .list01 > li img {
		width: 100%;
	}
}

/* commonPagerBox */
.commonPagerBox {
	clear: both;
	margin: 30px 0;
	text-align: center;
}
.commonPagerBox .page-numbers {
	display: inline-block;
	text-decoration: none;
	margin: 10px;
	padding: 10px 16px;
	background: #eeeeee;
}
.commonPagerBox .page-numbers:hover,
.commonPagerBox .page-numbers.current {
	color: #ffffff;
	background: #3F5BA8 ;
}

/* notFoundTxt */
.notFoundTxt {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin: 3em 0;
}


/* footer
-------------------------------------------------------------------*/
#footer {
	clear: both;
	color: #ffffff;
	padding: 40px 0 100px;
	background: #3F5BA8 url(../img/common/footer_bg01.png) 0 bottom repeat-x;
}
@media only screen and (max-width: 767px) {
	#footer {
		padding: 20px 0 50px;
		background: #3F5BA8 url(../img/common/footer_bg01.png) 0 bottom repeat-x;
		background-size: auto 40px;
	}
}
#footer .addressList {
	float: left;
	font-size: 13px;
	margin: 0;
	padding: 0;
}
@media only screen and (max-width: 767px) {
	#footer .addressList {
		float: none;
		margin: 20px 0 0 0;
		text-align: center;
	}
}
#footer .addressList dt {
	font-weight: bold;
	margin: 0;
	padding: 0;
}
#footer .addressList dd {
	margin: 5px 0 0 0;
	padding: 0;
}
#footer .addressList dd.link a {
	font-size: 10px;
	color: #ffffff;
}
#footer .footerMenuList {
	float: right;
	font-size: 0;
	margin: 0;
	padding: 0;
}
@media only screen and (max-width: 767px) {
	#footer .footerMenuList {
		float: none;
		text-align: center;
	}
}
#footer .footerMenuList > li {
	display: inline-block;
	font-size: 13px;
	margin: 0 0 0 15px;
	padding: 0 0 0 15px;
	list-style-type: none;
	border-left: 1px solid #657CB9;
}
#footer .footerMenuList > li:first-child {
	border: none;
}
@media only screen and (max-width: 767px) {
	#footer .footerMenuList > li {
		margin: 5px 0;
		padding: 0 10px;
	}
}
#footer .footerMenuList > li a {
	color: #ffffff;
	text-decoration: none;
}
#footer .cr {
	clear: both;
	font-size: 11px;
	text-align: right;
}
@media only screen and (max-width: 767px) {
	#footer .cr {
		margin: 20px 0 0 0;
		text-align: center;
	}
}

/* 調整用
---------------------------------------------------------------------------- */
.mt0 { margin-top: 0!important; }
.mt5 { margin-top: 5px!important; }
.mt10 { margin-top: 10px!important; }
.mt15 { margin-top: 15px!important; }
.mt20 { margin-top: 20px!important; }
.mt30 { margin-top: 30px!important; }
.mt35 { margin-top: 35px!important; }
.mt40 { margin-top: 40px!important; }
.mt50 { margin-top: 50px!important; }
.mt100 { margin-top: 100px!important; }
.mr0 { margin-right: 0!important; }
.mr5 { margin-right: 5px!important; }
.mr10 { margin-right: 10px!important; }
.mr15 { margin-right: 15px!important; }
.mr20 { margin-right: 20px!important; }
.mr25 { margin-right: 25px!important; }
.mb0 { margin-bottom: 0!important; }
.mb5 { margin-bottom: 5px!important; }
.mb10 { margin-bottom: 10px!important; }
.mb12 { margin-bottom: 12px!important; }
.mb15 { margin-bottom: 15px!important; }
.mb20 { margin-bottom: 20px!important; }
.mb25 { margin-bottom: 25px!important; }
.mb30 { margin-bottom: 30px!important; }
.mb35 { margin-bottom: 35px!important; }
.mb40 { margin-bottom: 40px!important; }
.mb50 { margin-bottom: 50px!important; }
.mb60 { margin-bottom: 60px!important; }
.mb80 { margin-bottom: 80px!important; }
.ml0 { margin-left: 0!important; }
.ml5 { margin-left: 5px!important; }
.ml10 { margin-left: 10px!important; }
.ml15 { margin-left: 15px!important; }
.ml20 { margin-left: 20px!important; }
.ml25 { margin-left: 25px!important; }
.ml30 { margin-left: 30px!important; }


.clearB	{ clear: both!important;}
.floatR { float: right!important; }
.floatL { float: left!important; }

.taCenter { text-align: center!important; }
.taRight { text-align: right!important; }
.taLeft { text-align: left!important; }
.vaMiddle { vertical-align: middle!important; }
.fwBold { font-weight: bold!important; }

.fs11 { font-size: 11px!important; }
.fs12 { font-size: 12px!important; }
.fs14 { font-size: 14px!important; }
.fs16 { font-size: 16px!important; }
.fs20 { font-size: 20px!important; }

.w100per { width: 100%;}

.minIndent {
	padding-left: 1em;
	text-indent: -1em;
}
.notFloat {
	overflow: hidden;
	_zoom: 1;
}

/* clearfix */
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
.clearfix {zoom:1;}
