@charset "utf-8";
/*
Theme Name:
Theme URI:
Author:
*/

/* WP */
/* -------------------------------------------------- */
/* 投稿の画像配置 */
.alignright { display: block; margin: 0 0 10px auto; }/* 配置位置 左 */
.alignleft { display: block; margin: 0 auto 10px 0; }/* 配置位置 右 */
.aligncenter { display: block; margin: 0 auto 10px; }/* 配置位置 中央 */
/* .alignright { float: right; padding: 0px 0 10px 10px; } *//* 後続のテキスト左回り込み */
/*.alignleft { float: left; padding: 0px 10px 10px 0; }*//* 後続テキスト右回り込み */

/* LINK */
/* -------------------------------------------------- */
a:link,
a:visited { text-decoration: none; color: #333333; }
a:hover	 { text-decoration: none; color: #0185bc; }
a:active { text-decoration: none; color: #0185bc; }

/* CLEARFIX */
/* -------------------------------------------------- */
.cf:before,
.cf:after {
	content: " ";
	display: table;
}

.cf:after {
	clear: both;
}

.cf {
	*zoom: 1;
}

/* OUTLINE */
/* -------------------------------------------------- */
html {
	font-size: 62.5%;/* 10px */
}

@media screen and (max-width: 1280px) and (min-width:897px) {
	html {
		font-size:.78125vw
	}
}


body {
	background: #fcfcfc;
	-webkit-print-color-adjust: exact;
}

#container {
	position: relative;
	font-family: 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	line-height: 1.6;
	color: #333333;
}

/* COMMON */
/* -------------------------------------------------- */
/*objectfitをIE,EDGEにも対応*/
.imgCover {
object-fit: cover;
font-family: 'object-fit: cover;'
}

/*box-sizingを全ブラウザに対応*/
*, *: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;
}

/* ヘッダ */
/* -------------------------------------------------- */
#header {
	height: 120px;
	padding: 15px 30px 0px 30px;
}

#headerInner {
	width: 100%;
	display: table;
}

#headerLeft {
	display: table-cell;
	vertical-align: middle;
}

#headerLogo img {
	width: 277px;
	height: auto;
}

#headerRight {
	display: table-cell;
	vertical-align: middle;
	text-align: right;
	white-space: nowrap;
}

#headerRight ul {
	letter-spacing: -.4em;
	margin-left: -30px;
	margin-right: -30px;
}

#headerRight ul li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	margin: 0 30px;
}

#headerRight ul li a {
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.100em;
	color: #333333;
	background-image: url(../img/common/arrow_circle_right.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 27px auto;
	padding-right: 33px;
}

@media all and (max-width: 1400px) {
	#headerLogo img {
		width: 80%;
		max-width: 277px;
	}
	#headerRight ul li {
		margin: 0 15px;
	}
	#headerRight ul li a {
		background-size: 2vw auto;
		padding-right: 2.2vw;
	}
}

/* パンくず */
/* -------------------------------------------------- */
#bc {
	text-align: right;
	padding-right: 160px;
	margin-bottom: 120px;
}

#bc ul {
	letter-spacing: -.4em;
	margin-left: -5px;
	margin-right: -5px;
}

#bc ul li {
	letter-spacing: normal;
	display: inline-block;
	margin: 0 5px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
}

#bc ul li:after{
	display: inline-block;
	width: 6px;
	height: 10px;
	margin-left: 10px;
	content: "";
	background-image: url(../img/common/ic_right.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 6px auto;
}

#bc ul li:last-child:after {
	background-image: none;
}

#bc ul li a img {
	width: 14px;
	height: auto;
	vertical-align: baseline;
}


@media all and (max-width: 1699px) {
	#bc {
		padding-right: 133px;
		margin-bottom: 100px;
	}
}

@media all and (max-width: 1199px) {
	#bc {
		padding-right: 110px;
		margin-bottom: 83px;
	}
}


/* 本文 */
/* -------------------------------------------------- */
/* 汎用見出し */
.articleTit {
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.150em;
	color: #0185bc;
	text-align: center;
	margin-bottom: 20px;
}

.articleTitEn {
	font-family: 'Abel', sans-serif;
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1;
	letter-spacing: 0.100em;
	color: #000000;
	text-align: center;
	margin-bottom: 60px;
}

/* ページトップボタン */
/* -------------------------------------------------- */
#pagetopWrap {
	text-align: right;
	padding-right: 35px;
	padding-bottom: 35px;
	height: 110px;
}

#pagetop.fixed {
	display: none;
	position: fixed;
	bottom: 35px;
	right: 35px;
	z-index: 99;
}

#pagetop img {
	width: 75px;
	height: auto;
}

#pagetop a {
	transition: 0.3s ease-in-out;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		-o-transition: 0.3s ease-in-out;
}

#pagetop a:hover {
	opacity: 0.8;
}

/* フッタ */
/* -------------------------------------------------- */
#footer {
	width: 100%;
	background-color: #0185bc;
	text-align: center;
	padding: 50px 0 60px 0;
}

#footerlogo {
	margin-bottom: 50px;
}

#footerlogo img {
	width: 301px;
	height: auto
}

#footerLocation ul {
	letter-spacing: -.4em;
	margin-bottom: 60px;
}

#footerLocation ul li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	margin: 0 18px;
	background-color: #fff;
	padding: 50px 85px;
	text-align: left;
	width: 480px;
	position: relative;
}

.footerLocationHead {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.050em;
	color: #000000;
	margin-bottom: 15px;
}

.footerLocationBody {
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.050em;
	color: #000000;
}

.footerLocationMap a {
	position: absolute;
	top: 30px;
	right: 30px;
	display: block;
	width: 46px;
	height: 46px;
	border: solid 3px #0185bc;
	border-radius: 46px;
	color: #0185bc;
	font-family: 'Avenir Next', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: calc(46px - 3px);
	letter-spacing: 0.050em;
	text-align: center;
}

#footerCopyright {
	font-size: 1.3rem;
	line-height: 1;
	letter-spacing: 0.100em;
	color: #fff;
}

.addressSpace {
	padding-bottom: 1.55em;
}

@media all and (max-width: 1699px) {
	#footer {
		padding: 50px 0 60px 0;
	}
	
	#footerlogo {
		margin-bottom: 50px;
	}
	
	#footerlogo img {
		width: 301px;
	}
	
	#footerLocation ul {
		margin-bottom: 60px;
	}
	
	#footerLocation ul li {
		padding: 40px 70px;
		width: 400px;
	}
	
	.footerLocationHead {
		font-size: 2.2rem;
		margin-bottom: 15px;
	}
	
	.footerLocationBody {
		font-size: 1.6rem;
	}
	
	.footerLocationMap a {
		top: 30px;
		right: 30px;
		width: 46px;
		height: 46px;
		border: solid 3px #0185bc;
		border-radius: 46px;
		font-size: 1.4rem;
		line-height: calc(46px - 3px);
	}
	
	#footerCopyright {
		font-size: 1.3rem;
	}
}

@media all and (max-width: 1199px) {
	#footerLocation ul li {
		padding: 33px 58px;
		width: 332px;
	}
	
}

/* RESPONSIVE */
/* -------------------------------------------------- */
/* 897px以上用（PC用）の記述 */
/* -------------------------------------------------- */
@media screen and (min-width: 897px) {
	.sp {
		display: none !important;
	}
	
	.tablet {
		display: none !important;
	}
	
	main {
		display: block; /* IE対策 */
	}
	
	#headNav {
		display: block !important; /* スマホで閉じたナビを強制的に表示 */
	}
}

/* -------------------------------------------------- */
/* 896px以下用（スマートフォン&タブレット用）の記述 */
/* -------------------------------------------------- */
@media screen and (max-width: 896px) {
	.pc {
		display: none !important;
	}
	.tablet {
		display: none !important;
	}
	
	body {
		-webkit-text-size-adjust: 100%;
	}
	
	p, li, dt, dd {
		/*Androidブラウザフォントバグ対策*/
		 max-height: 999999px;
	}
	
	#container {
		width: 100%;
	}
	
	/* ヘッダ */
	/* -------------------------------------------------- */
	#header {
		width: 100%;
		position: fixed;
		z-index: 96;
		top: 0;
		background-color: #fff;
		height: 45px;
		padding: 7.5px 15px;
	}
	
	#headerLogo {
		width: 104.5px;
	}
	
	#headerLogo img {
		width: 100%;
		height: auto;
	}
	
	/* ハンバーガー */
	#headButtonOpen {
		position: absolute;
		top: 13px;
		right: 15px;
		z-index: 97;
		cursor: pointer;
	}
	
	#headButtonOpen img {
		width: 25px;
		height: auto;
	}
	
	#headButtonClose {
		position: absolute;
		top: 14px;
		right: 18px;
		cursor: pointer;
	}
	#headButtonClose img {
		width: 19px;
		height: auto;
	}
	
	/* スライドメニュー */
	#headNav {
		display: none;
		width: 100%;
		background-color: #fff;
		position: fixed;
		z-index: 91;
		top: 0;
		left: 0;
		bottom: 0; /* これがないとスクロールできない */
		overflow: auto; /* これがないとスクロールできない */
		-webkit-overflow-scrolling: touch; /* これがないとスクロールできない */
		z-index: 98;
	}
	
	#headNav > ul {
		letter-spacing: 0;
		margin-left: 0;
		margin-right: 0;
		text-align: left;
		margin-top: 54px;
	}
	
	#headNav > ul > li {
		display: block;
		vertical-align: middle;
		margin: 0;
		position: relative;
		padding-bottom: 0;
		border-top: solid 1px #bfbfbf;
	}
	
	#headNav > ul > li:last-child {
		border-bottom: solid 1px #bfbfbf;
	}
	
	#headNav > ul > li > a {
		display: block;
		padding: 17px 15px;
		font-size: 1.3rem;
		font-weight: 500;
		background-image: url(../img/common/sp_arrow_blue_right.png);
		background-position: right 20px center;
		background-repeat: no-repeat;
		background-size: 10px auto;
		color: #333333;
	}
	
	/* パンくず */
	/* -------------------------------------------------- */
	#bc {
		text-align: left;
		padding: 0 15px;
		margin-bottom: 20px;
	}
	
	#bc ul {
		margin-left: -2px;
		margin-right: -2px;
	}

	#bc ul li {
		margin: 0 2px;
		font-size: 1.0rem;
		line-height: 1;
	}

	#bc ul li:after{
		width: 5px;
		height: 8px;
		margin-left: 7px;
		background-size: 5px auto;
	}
	
	#bc ul li a img {
		width: 11px;
	}

	/* 本文 */
	/* -------------------------------------------------- */
	#main {
		margin-top: 45px;
	}
	
	/* 汎用見出し */
	.articleTit {
		font-size: 1.7rem;
		letter-spacing: 0.050em;
		margin-bottom: 10px;
	}
	
	.articleTitEn {
		font-size: 0.8rem;
		margin-bottom: 25px;
	}
	
	/* ページトップボタン */
	#pagetopWrap {
		padding-right: 15px;
		padding-bottom: 15px;
		height: 52.5px;
	}
	
	#pagetop.fixed {
		display: none;
		position: fixed;
		bottom: 15px;
		right: 15px;
		z-index: 99;
	}
	
	#pagetop img {
		width: 37.5px;
		height: auto;
	}
	
	/* フッタ */
	/* -------------------------------------------------- */
	#footer {
		padding: 0 0 25px 0;
	}
	
	/* スマホ専用フッタナビ */
	#footerNavi {
		margin-bottom: 25px;
	}
	
	#footerNavi ul li {
		border-bottom: solid 1px #fff;
		width: 100%;
	}
	
	#footerNavi ul li a {
		display: block;
		font-size: 1.2rem;
		font-weight: 500;
		line-height: 1;
		color: #fff;
		background-image: url(../img/common/sp_arrow_white_right.png);
		background-position: right 8px center;
		background-repeat: no-repeat;
		background-size: 10px auto;
		padding: 20px;
	}
	
	#footerlogo {
		margin-bottom: 20px;
	}
	
	#footerlogo img {
		width: 139.5px;
		height: auto
	}
	
	#footerLocation {
		margin-bottom: 20px;
	}
	
	#footerLocation ul {
		letter-spacing: 0;
		margin: 0;
	}
	
	#footerLocation ul li {
		display: inline-block;
		margin: 0 10px 15px;
		width: calc(100% - 15px*2);
		max-width: 290px;
		position: relative;
	}
	
	.footerLocationHead {
		font-size: 1.2rem;
		font-weight: 500;
		margin-bottom: 10px;
	}
	
	.footerLocationBody {
		font-size: 1.1rem;
		line-height: 1.364;
	}

	.footerLocationMap a {
		position: absolute;
		top: 16px;
		right: 16px;
		width: 35.5px;
		height: 35.5px;
		border: solid 1.5px #0185bc;
		border-radius: 35.5px;
		font-family: 'Abel', sans-serif;
		font-size: 1.2rem;
		line-height: calc(35.5px - 1.5px);
		letter-spacing: 0.010em;
	}
	
	#footerCopyright {
		font-size:0.7rem;
	}
}


/* -------------------------------------------------- */
/* 印刷時非表示 */
/* -------------------------------------------------- */
@media print{
	.sp {
		display: none !important;
	}
}
