@charset "utf-8";

html
{
	overflow: scroll;
	overflow-x: hidden;
}

/* ▼body, html色など基本指定 */
html, body
{
	display: block;
	width: 100%;
	height: 100%;
	padding: 0px;
	margin: 0px;
	background: #FFF;
	color: #000;
	line-height: 100%;
}
/* ▲body, html色など基本指定 */

a
{
	color: #009;
}
a:visited
{
	color: #909;
}
a:hover
{
	color: #F50;
}

/* ▼min-width: 768px以下ならスマホ扱いで文字サイズ指定なし/以上なら12pt */
@media screen and (min-width: 768px)
{
	html, body
	{
		font-size: 12pt;
	}
}
/* ▲min-width: 768px以下ならスマホ扱いで文字サイズ指定なし/以上なら12pt */

/* ▼#container基本設定 */
div#container
{
	display: block;
	width: 100%;
	max-width: 1000px;
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
	margin: 0px auto;
	border: 1px none #999;
	padding: 0 0 6em 0;
}
/* 　▼min-width: 1002px以上なら#container横に線出す */
@media screen and (min-width: 1002px)
{
	div#container
	{
		max-width: 1002px;
		border-style: none solid;
	}
}
/* 　▲min-width: 1002px以上なら#container横に線出す */
/* ▲#container基本設定 */

/* ▼#container_w100基本設定 */
div#container_w100
{
	display: block;
	width: 100%;
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
	margin: 0px auto;
	padding: 0 0 0 0;
}
/* ▲#container_w100基本設定 */


/* ▼#footer */
div#footer
{
	position: absolute;
	bottom: 0%;
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 0.7em 0;
	line-height: 100%;
	background: #000;
	color: #FFF;
	text-align: center;
}
/* ▲#footer */

/* ▼#copyright */
div#copyright
{
	font-size: 80%;
}
#container_w100 > div#copyright
{
	position: absolute;
	bottom: 0%;
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 0.2em 0;
	line-height: 100%;
	text-align: center;
	font-size: 70%;
}
/* ▲#copyright */

/* ▼画像表示gpu処理化 */
h3, h3::before, h3 > img,
div.topLogo > img,
h2 img,
div.shotTable img,
div.thumbTable img
{
	-ms-backface-visibility: hidden;
	-ms-interpolation-mode: bicubic;
}
/* ▲画像表示gpu処理化 */

/* ▼.topLogo */
div.topLogo
{
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	line-height: 0%;
	background: url('top/logoBg.jpg') no-repeat center center;
	background-size: cover;
	margin-bottom: 10px;
}
div.topLogo::after
{
	position: absolute;
	bottom: -10px;
	content: ' ';
	display: block;
	font-size: 0%;
	width: 100%;
	height: 10px;
	background: url('top/headBorder.png') no-repeat center center;
	background-size: 100% 100%;
}
div.topLogo > *
{
	width: 100%;
	margin: 0;
}
div.topLogo > *:nth-child(2)
{
	display: none;
}

@media screen and (max-width: 767px)
{
	div.topLogo
	{
		height: 12em;
		text-align: center;
		background: url('top/logoBg_sp.jpg') no-repeat center center;
		background-size: cover;
		margin-bottom: 8px;
	}
	div.topLogo > *
	{
		width: auto;
		height: 11em;
		margin-top: 0.4em;
	}
	div.topLogo > *:first-child
	{
		display: none;
	}
	div.topLogo > *:nth-child(2)
	{
		display: inline-block;
	}
	div.topLogo::after
	{
		height: 8px;
		bottom: -8px;
	}
}
/* ▲.topLogo */

/* ▼.rightLinkS */
div.rightLinkS
{
	text-align: right;
	font-size: 90%;
}
div.rightLinkS > *
{
	display: inline-block;
	padding: 0.5em 1em;
}
div.rightLinkS > *::before
{
	content: ' ';
	display: inline-block;
	border-width: 0.5em 0 0.5em 0.7em;
	border-top-color: transparent;
	border-right-color: transparent;
	border-bottom-color: transparent;
	border-style: solid;
	margin: auto 0.3em -0.15em 0;
}
/* 　▼.rightLinkS max-width: 767px以下はスマホとして、文字サイズは小さく余白は元のまま */
@media screen and (max-width: 767px)
{
	div.rightLinkS
	{
		font-size: 80%;
	}
	div.rightLinkS > *
	{
		padding: 0.6 1.2em;
	}
}
/* 　▲.rightLinkS max-width: 767px以下はスマホとして、文字サイズは小さく余白は元のまま */
/* ▲.rightLinkS */


/* ▼.box */
div.box
{
	display: block;
	width: 90%;
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}
/* ▼.box */

/* ▼.spaceシリーズ */
.spaceM
{
	display: block;
	width: 1em;
	height: 0.8em;
}
.spaceL
{
	display: block;
	width: 1em;
	height: 2em;
}
/* ▲.spaceシリーズ */

/* ▼h2(見出し) */
h2
{
/*
	font-size: 120%;
	font-weight: bold;
*/
	font-size: 0;
	line-height: 0;
	padding: 0;
	margin: 0;
	border: 2px none #BCA762;
	border-bottom-style: solid;
	position: relative;
}
h2 > img
{
	margin: 0;
	border-style: none;
}
h2 > img:first-child
{
	width: 100%;
	max-width: 440px;
}
body.en h2 img:first-child
{
	max-width: 580px;
}
h2 > a > img
{
	position: absolute;
	width: auto;
	height: 98%;
	top: 0%;
	right: 2%;
}
/* ▲h2(見出し) */

/* ▼h3(新着) */
h3
{
	display: table;
	position: relative;
	background: #EBEEE6;
	padding: 0.2em 1.3em 0.2em 2.5em;
	margin: 0;
	font-size: 20px;
/*
	font-weight: bold;
	font-variant: small-caps;
	line-height: 100%;
*/
	line-height: 0%;
	border: 1px none #D1D4CD;
	border-style: solid solid none solid;
	border-radius: 1em 0.3em 0 0;
}
/*
h3::before
{
	content: ' ';
	display: inline-block;
	position: absolute;
	width: 2em;
	height: 2em;
	margin: 0;
	padding: 0;
	top: -0.7em;
	left: 0.0em;
	background: url('stones.png') no-repeat center center;
	background-size: contain;
}
*/
h3 > img
{
	margin: 0;
}
h3 > img:first-child
{
	position: absolute;
	width: 2em;
	height: 2em;
	margin: 0;
	padding: 0;
	top: -0.7em;
	left: 0.0em;
}
h3 > img:not(:first-child)
{
	position: relative;
	height: 1em;
}
h3 + div
{
	border: 1px solid #D1D4CD;
	border-radius: 0 0.2em 0.2em 0.2em;
}
h3 + div > p
{
	padding: 0.3em 0.5em;
}
h3 + div > p:not(:first-child)
{
	border-top: 1px dotted #CCC;
}
h3 + div > p a.moreInfo
{
	display: table;
	padding: 0.3em;
}
@media (max-width: 400px), (max-height: 400px)
{
	h3
	{
		font-size: 110%;
	}
}
/* ▲h3(新着) */

/* ▼装飾画像(.shotTable, .thumbTable)のドロップシャドウ */
div.shotTable > * > img,
div.thumbTable > * > img
{
	box-shadow: 3px 5px 5px 0 rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 768px)
{
	div.shotTable > * > img,
	div.thumbTable > * > img
	{
		box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.3);
	}
}
/* ▲装飾画像(.shotTable, .thumbTable)のドロップシャドウ */

/* ▼p(文章), sup((R)の上付き文字化) */
p
{
	padding: 0;
	margin: 0;
	line-height: 170%;
}
sup {
	display: inline-block;
	font-size: 60%;
	vertical-align: top;
	position: relative;
	top: -0.3em;
}
/* ▲p(文章), sup((R)の上付き文字化) */

/* ▼ol.listTable (数字つきリスト) */
ol.listTable, ul.listTable
{
	background: #EBEEE6;
	margin: 1em 0;
	padding: 0.5em 1em 0.5em 2em;
	padding-inline-start: 2em;
}
ol.listTable li
{
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	line-height: 140%;
}
/* ▲ol.listTable (数字つきリスト) */

/* ▼.shotTable 装飾画像/画面ショット */
div.shotTable
{
	display: table;
	width: 100%;
	margin: 1.5em auto;
}
div.shotTable > *
{
	display: table-cell;
	padding: 0;
	position: relative;
}
div.shotTable > *:first-child
{
	width: 70%;
}
div.shotTable > *:first-child > img
{
	position: absolute;
}
div.shotTable > *:first-child > img:first-child
{
	width: 65%;
	top: 10%;
	left: 0%;
}
div.shotTable > *:first-child > img:nth-child(2)
{
	width: 70%;
	bottom: 0%;
	right: 3%;
}
div.shotTable > *:nth-child(2)
{
	width: 30%;
}
div.shotTable > *:nth-child(2) > img
{
	width: 100%;
	vertical-align: bottom;
}
/* 　▼max-width: 767px以下ならスマホ扱いでshotTableの画像数・サイズをいじる */
@media screen and (max-width: 767px)
{
	div.shotTable > *:first-child > img:first-child
	{
		display: none;
	}
	div.shotTable > *:first-child > img:nth-child(2)
	{
		width: 90%;
	}
}
/* 　▲max-width: 767px以下ならスマホ扱いでshotTableの画像数・サイズをいじる */
/* ▲.shotTable 装飾画像/画面ショット */

/* ▼.thumbTable 装飾画像/スマホサムネ */
div.thumbTable
{
	display: table;
	width: 100%;
	margin: 1.5em auto;
}
div.thumbTable > *
{
	display: table-cell;
	width: 33.33%;
	text-align: center;
	line-height: 100%;
}
div.thumbTable > * > img
{
	width: 95%;
	max-width: 200px;
	margin: 0 auto;
}
div.thumbTable > * > a
{
	display: block;
	font-size: 70%;
	text-align: center;
	width: 80%;
	max-width: 180px;
	padding: 0.3em 0;
	margin: 0.5em auto 0.3em auto;
	line-height: 100%;
	text-decoration: none;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(0, #b3ffb2), color-stop(1, #66cc66));
	background: linear-gradient(to bottom, #b3ffb2 0%, #66cc66 100%);
	border-width: 1px;
	border-color: rgba(255, 255, 255, 0.7) rgba(0, 0, 0, 0.3) rgba(0, 0, 0, 0.5) rgba(255, 255, 255, 0.3);
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
	border-style: solid;
	color: #000;
	font-weight: bold;
	border-radius: 0.3em;
}
div.thumbTable > * > a:last-child
{
	margin: 0 auto;
}
/* ▲.thumbTable 装飾画像/スマホサムネ */

/* ▼.authorInfo 事業者案内テーブル */
div.authorInfo > *
{
	display: table;
	width: 100%;
}
div.authorInfo > * > *
{
	display: table-cell;
	padding: 0.3em 0;
	text-align: left;
}
div.authorInfo > * > *:first-child
{
	width: 5em;
}
div.authorInfo > * > *:nth-child(2)
{
	white-space: nowrap;
}
body.en div.authorInfo > * > *:first-child
{
	width: 9.5em;
}
@media screen and (max-width: 767px)
{
	body.en div.authorInfo > *
	{
		font-size: 90%;
	}
}
/* ▲.authorInfo 事業者案内テーブル */


/*==============================================*/

/* ▼フォント設定 */
/*　　※英語などの非日本語ページでは、いったんcommon.cssを読んだ後english.cssにてfont-familyをArial, sans-serifで上書きする */
*
{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

body
{
	font-family: Mangal, Arial, 'Meiryo UI', Meiryo, 'Hiragino Sans', 'Yu Gothic UI', 'Yu Gothic', sans-serif;
	font-weight: 400;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	font-feature-settings: 'pwid', 'pkna', 'pnum', 'lnum', 'kern';
	/* 游ゴシックUIは font-feature-settings: 'palt' だと約物が刺さる */
}

/* 　▼ U+0021～007E …半角英数スペース抜き の範囲だけ欧文書体を適用させる */
/* 　　　Mangalは半角英数のうちアルファベットと記号に適用 / Arialは数字に適用 */
@font-face {
	font-family: 'Mangal';
	src: local('Mangal');
	unicode-range: U+0021-002F, U+0041-005A, U+0061-007A;
}
@font-face {
	font-family: 'Arial';
	src: local('Arial');
	unicode-range: U+0021-007E, U+2009, U+200A, U+200B, U+00A0, U+2003;
}
/*　　　 ゼロ幅空白(U+200B) &#8202;(U+200A) &thinsp;(U+2009) &nbsp;(U+00A0) &emsp;(U+2003)はArialで表示を目指す */
/* 　▲ U+0021～007E …半角英数スペース抜き の範囲だけ欧文書体を適用させる */

/* 　▼メイリオUI・メイリオをまとめる */
/*
@font-face {
	font-family: 'Meiryo UI';
	font-weight: 400;
	src: local('Meiryo UI Regular'), local('Meiryo UI');
}
@font-face {
	font-family: 'Meiryo UI';
	font-weight: 500;
	src: local('Meiryo UI Regular'), local('Meiryo UI');
}
@font-face {
	font-family: 'Meiryo UI';
	font-weight: 600;
	src: local('Meiryo UI Regular'), local('Meiryo UI');
}
@font-face {
	font-family: 'Meiryo UI';
	font-weight: 700;
	src: local('Meiryo UI Regular'), local('Meiryo UI');
}

@font-face {
	font-family: 'Meiryo';
	font-weight: 400;
	src: local('Meiryo Medium'), local('Meiryo');
}
@font-face {
	font-family: 'Meiryo';
	font-weight: 500;
	src: local('Meiryo Medium'), local('Meiryo');
}
@font-face {
	font-family: 'Meiryo';
	font-weight: 600;
	src: local('Meiryo Medium'), local('Meiryo');
}
@font-face {
	font-family: 'Meiryo';
	font-weight: 700;
	src: local('Meiryo Medium'), local('Meiryo');
}
*/
/* 　▲メイリオUI・メイリオをまとめる */

/* 　▼游ゴシックUI・游ゴシックをまとめる */
@font-face {
	font-family: 'Yu Gothic UI';
	src: local('Yu Gothic UI Regular'), local('YuGothic UI Regular'),
		local('Yu Gothic UI'), local('YuGothic UI');
	font-weight: 500;
}
@font-face {
	font-family: 'Yu Gothic UI';
	src: local('Yu Gothic UI Regular'), local('YuGothic UI Regular'),
		local('Yu Gothic UI'), local('YuGothic UI');
	font-weight: 700;
}
@font-face {
	font-family: 'Yu Gothic';
	src: local('Yu Gothic Medium'), local('YuGothic Medium'),
		local('Yu Gothic'), local('YuGothic');
	font-weight: 500;
}
@font-face {
	font-family: 'Yu Gothic';
	src: local('Yu Gothic Medium'), local('YuGothic Medium'),
		local('Yu Gothic'), local('YuGothic');
	font-weight: 700;
}
/* 　▲游ゴシックUI・游ゴシックをまとめる */

/* 　▼ヒラギノをまとめる */
@font-face {
	font-family: 'Hiragino Sans';
	font-weight: 300;
	src:
		local('Hiragino Kaku Gothic Pro'), local('Hiragino Kaku Gothic ProN'),
		local('HiraKakuProN-W3'), local('HiraKakuProN'), local('Hiragino Sans');
}
@font-face {
	font-family: 'Hiragino Sans';
	font-weight: 700;
	src:
		local('Hiragino Kaku Gothic Pro'), local('Hiragino Kaku Gothic ProN'),
		local('HiraKakuProN-W6'), local('HiraKakuProN'), local('Hiragino Sans');
}
/* 　▲ヒラギノをまとめる */

/* 　▼PC系の解像度が並のものは<b>で太字にせずドロップシャドウ */
b
{
	font-weight: 400;
	text-shadow: 1px 0 0, 0.5px 0 0;
	letter-spacing: 1px;
}
/* 　▲PC系の解像度が並のものは<b>で太字にせずドロップシャドウ */

/* 　▼スマホ・iPad系は<b>でドロップシャドウを解除して太字に戻す */
@media screen and (min-resolution: 2dppx), screen and (-webkit-min-resolution: 2dppx), screen and (min-device-pixel-ratio: 2), screen and (-webkit-min-device-pixel-ratio: 2)
{
	b
	{
		font-weight: 700;
		text-shadow: none;
		letter-spacing: 0px;
	}
}
/* 　▲スマホ・iPad系は<b>でドロップシャドウを解除して太字に戻す */
/* ▲フォント設定 */
