@charset "utf-8";



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


	サイト共通パーツ用CSS


	■基本設定
	■ローディング表示            .siteLoading
	■Splash画面                .siteSplash
	■サイト共通ヘッダー	        .siteHeader
	■メインコンテンツ部分         .siteMain
	■サイト共通コンテンツブロック  .siteBlock

	■コンテンツブロック(削除予定)  .siteContent

	■サイト共通フッター          .siteFooter
	■ハンバーガーメニューアイコン　.siteHumberger
	■サイト共通メニュー枠         .siteMenu
	■ナビゲーションツリー         .siteNav
	■フリーワード検索フォーム      .siteFreeword
	■ページTOPボタン             .sitePageTop	
	■パンくずリスト              .siteBread
	■SVG格納スペース(非表示)      .siteSVG         
	■GDPR確認window             .siteGDPR
	■モーダルwindow             .siteModal
	■疑似スクロールバー           .scrollBar


	[想定タグ] ----------------------------------------------

	<html>
	<head>
	</head>
	<body>

	<!-- start loading -->
	<div class="siteLoading">
	<div class="siteLoadingInner">
	<div class="siteLoadingLogo">
	<svg x="0px" y="0px" width="40px" height="40px" viewBox="0 0 40 40">
	<path d="M5.5,33.6C5.4,33.6,5.4,33.6,5.5,33.6C9.1,37.5,14.2,40,20,40s10.9-2.5,14.6-6.4H5.5L5.5,33.6z"/>
	<path d="M22.1,30.4c0.5,0,0.9-0.4,0.9-0.9s-0.4-0.9-0.9-0.9H2c0.5,1.1,1.2,2.2,1.9,3.2C4,31,4.7,30.4,5.5,30.4H22.1z"/>
	<path d="M39.4,25.5c0.5-1.7,0.8-3.6,0.8-5.4C40,9,31,0,20,0S0,9,0,20c0,1.8,0.2,3.5,0.7,5.1L9,13.8l-3.8-0.2l4-0.8 L6.5,9.7l3.4,2.4l0.3-4.2l0.7,4.1L14,9.3l-2.3,3.4l4.1,0.2l-4.1,0.8l2.8,3.1l-1.9-1.3l8,10.8h-4l-5.4-11.8l-0.1-0.1l-0.3,4l0.8,7.9 H1c0.2,0.5,0.4,1.1,0.6,1.6H22c0.9,0,1.6,0.7,1.6,1.6s-0.7,1.6-1.6,1.6H5.5c-0.5,0-0.9,0.4-0.9,0.9c0,0.6,0.4,1,0.9,1h29.8 c1.6-1.9,2.9-4.2,3.7-6.6l-4.7-0.1L25.2,9.5l0.1-0.1L39.4,25.5z M28.5,26.3H24L16,20l9.2-10.5L28.5,26.3z"/>
	</svg>
	</div>
	<div class="siteLoadingStatus"><div class="siteLoadingBar"></div></div>
	<div class="siteLoadingCircle">
	<svg x="0px" y="0px" width="40px" height="40px" viewBox="0 0 40 40"><path d="M20,7.5c-0.8,0-1.5-0.7-1.5-1.5V1.5C18.5,0.7,19.2,0,20,0s1.5,0.7,1.5,1.5V6C21.5,6.8,20.8,7.5,20,7.5z"/><path d="M27,9.4c-0.3,0-0.5-0.1-0.7-0.2c-0.7-0.4-1-1.3-0.5-2L28,3.2c0.4-0.7,1.3-1,2-0.5s1,1.3,0.5,2l-2.3,3.9 C28,9.1,27.5,9.4,27,9.4z"/><path d="M32.1,14.5c-0.5,0-1-0.3-1.3-0.8c-0.4-0.7-0.2-1.6,0.5-2l3.9-2.3c0.7-0.4,1.6-0.2,2,0.5c0.4,0.7,0.2,1.6-0.5,2l-3.9,2.3 C32.6,14.4,32.4,14.5,32.1,14.5z"/><path d="M38.5,21.5H34c-0.8,0-1.5-0.7-1.5-1.5s0.7-1.5,1.5-1.5h4.5c0.8,0,1.5,0.7,1.5,1.5S39.3,21.5,38.5,21.5z"/><path d="M36,30.8c-0.3,0-0.5-0.1-0.7-0.2l-3.9-2.3c-0.7-0.4-1-1.3-0.5-2c0.4-0.7,1.3-1,2-0.5l3.9,2.3c0.7,0.4,1,1.3,0.5,2 C37,30.5,36.5,30.8,36,30.8z"/><path d="M29.3,37.5c-0.5,0-1-0.3-1.3-0.8l-2.3-3.9c-0.4-0.7-0.2-1.6,0.5-2c0.7-0.4,1.6-0.2,2,0.5l2.3,3.9c0.4,0.7,0.2,1.6-0.5,2 C29.8,37.5,29.5,37.5,29.3,37.5z"/><path d="M20,40c-0.8,0-1.5-0.7-1.5-1.5V34c0-0.8,0.7-1.5,1.5-1.5s1.5,0.7,1.5,1.5v4.5C21.5,39.3,20.8,40,20,40z"/><path d="M10.7,37.5c-0.3,0-0.5-0.1-0.7-0.2c-0.7-0.4-1-1.3-0.5-2l2.2-3.9c0.4-0.7,1.3-1,2-0.5c0.7,0.4,1,1.3,0.5,2L12,36.8 C11.8,37.3,11.3,37.5,10.7,37.5z"/><path d="M4,30.8c-0.5,0-1-0.3-1.3-0.8c-0.4-0.7-0.2-1.6,0.5-2l3.9-2.3c0.7-0.4,1.6-0.2,2,0.5c0.4,0.7,0.2,1.6-0.5,2l-3.9,2.3 C4.5,30.7,4.2,30.8,4,30.8z"/><path d="M6,21.5H1.5C0.7,21.5,0,20.8,0,20s0.7-1.5,1.5-1.5H6c0.8,0,1.5,0.7,1.5,1.5S6.8,21.5,6,21.5z"/><path d="M7.9,14.5c-0.3,0-0.5-0.1-0.7-0.2L3.2,12c-0.7-0.4-1-1.3-0.5-2c0.4-0.7,1.3-1,2-0.5l3.9,2.3 c0.7,0.4,1,1.3,0.5,2C8.9,14.2,8.4,14.5,7.9,14.5z"/><path d="M13,9.4c-0.5,0-1-0.3-1.3-0.8L9.5,4.7C9,4,9.3,3.1,10,2.7c0.7-0.4,1.6-0.2,2,0.5l2.3,3.9c0.4,0.7,0.2,1.6-0.5,2 C13.5,9.3,13.3,9.4,13,9.4z"/></svg>
	</div>
	</div>
	<!-- end loading -->


	<!-- start site splash -->
	<div class="siteSplash">
	<div class="siteSplashInner">
	<div class="siteSplashScenes">
	<div id="siteSplash01" class="siteSplash01 siteSplashScene">
	<div class="siteSplashSceneInner">
	<div class="siteSplashSceneContent">
	[シーン1]
	</div>
	</div>
	</div>
	</div>
	<div class="siteSplashSkip"><a>SKIP</a></div>
	</div>
	</div>
	<!-- end site splash -->

	<!-- start site common header -->
	<header id="header" class="siteHeader">
	<div class="siteHeaderInner">
	<h1 class="siteHeaderTitle"><a href="#" rel="home" title=""><img src="" alt=""></a></h1>
	</div>
	</header>
	<!-- end site common header -->

	<!-- start site main -->
	<main class="siteMain">
	<div class="siteMainInner">

	<!-- start site block -->
	<section class="siteBlock XXXX">
	<div class="siteBlockInner">
	<header class="siteBlockHeader">
	<h3 class="siteBlockTitle">[ブロックのタイトル]</h3>
	</header>
	<div class="siteBlockMain">
	[ブロックのコンテンツ]
	</div>
	<footer class="siteBlockFooter">
	<div class="siteBlockMore"><a href="#">MORE</a></div>
	</div>
	<div>
	</section>
	<!-- end site block -->

	</div>
	</main>
	<!-- end site main -->

	<!-- start site humberger -->
	<div class="siteHumberger"><a><span class="siteHumbergerIcon"><span class="siteHumbergerBar bar01"></span><span class="siteHumbergerBar bar02"></span><span class="siteHumbergerBar bar03"></span></span>
	</a></div>
	<!-- end site humberger -->

	<!-- start humberger menu -->
	<div class="siteMenu humberger">
	<div class="siteMenuInner">

	<!-- start site freeword -->
	<div class="siteFreeword humberger">
	<form class="siteFreewordInner" method="get" action="#">
	<input class="siteFreewordInput" type="search" value="" name="s" placeholder="フリーワード">
	<input class="siteFreewordSubmit" type="submit" value="検索">
	</form>
	</div>
	<!-- end site freeword -->

	<!-- start siteNav -->
	<nav class="siteNav humberger-main">
	<h3 class="siteNavTitle">[メニューのタイトル]</h3>
	<div class="siteNavRow"><ul class="siteNavCols">
	<li class="siteNavCol"><a href="#">第1階層</a>
		<div class="siteNavRow"><ul class="siteNavCols">
		<li class="siteNavCol><a href="#">第2階層</a></li>
		</ul></div>
	</li>
	</ul></div>
	</nav>
	<!-- end siteNav -->

	</div>
	</div>
	<!-- end humberger menu -->

	<!-- start site common footer -->
	<footer id="footer" class="siteFooter">
	<div class="siteFooterInner">
	<h2 class="siteFooterTitle"><a href="/" title=""><img src="" alt=""><span>[サイト名]</span></a></h2>
	<p class="siteFooterCopyright"><span>Copyright </span>&copy; [著作名]<span> All Rights Reserved.</span></p>
	</div>
	</footer>
	<!-- end site common footer -->

	<!-- start PAGE TOP -->
	<div class="sitePageTop"><a></a></div>
	<!-- end PAGE TOP -->

	<!-- start svg group -->
	<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="siteSVG">
	<defs>

	<symbol id="" viewBox="0 0 40 40">
	<path d=""/>
	</symbol>

	</defs>
	</svg>
	<!-- end svg group -->

	<!-- start GDPR -->
	<div class="siteGDPR">
	<div class="desc">
	<p>当ウェブサイトでは、お客様の利便性の改善やサービス向上などを目的とした、Google Analyticsによるアクセスログ解析のためにクッキーを使用しています。詳細は<a href="#">プライバシー・ポリシー</a>をご参照ください。</p>
	</div>
	<div class="buttons"><ul>
	<li class="accept"><a>承認する</a></li>
	<li class="denied"><a>承認しない</a></li>
	</ul></div>
	<div class="close"><a><svg viewBox="0 0 40 40"><use xlink:href="#svg-close"></use></svg></a></div>
	</div>
	<!-- end GDPR -->

	<!-- start site modal -->
	<div class="siteModal">
	<div class="siteModalBg"></div>
	<div class="siteModalInner">
	<div class="siteModalClose"><a>CLOSE</a></div>
	</div>
	</div>
	<!-- end site modal -->

	</body>
	</html>




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




html {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
	box-sizing: border-box;
}

body {
	
	/* フォント */
	--gothic-font-family : "Jost" , "Noto Sans JP" , "YuGothic" , "Yu Gothic medium" , "Hiragino Sans" , Meiryo , sans-serif;
	--mincho-font-family : "Cormorant Garamond" , "Noto Serif JP" , "YuMincho" , "Yu Mincho" , "Hiragino Mincho ProN" , serif;
	--text-color         : #231815;

	/* 背景色 */	
	--background-color   : #ffffff;
	
	/* リンク色 */	
	--text-link-color    : #0000cc;
	--text-hover-color   : #cc0000;
	
	/* ボタン */
	--button-text-color             : #ffffff;
	--button-background-color       : #444444;
	--button-hover-text-color       : #ffffff;
	--button-hover-background-color : #cc0000;
	
	
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
	box-sizing: border-box;
	
    background-color: var( --background-color );

	color: var( --text-color );
    font-family: var( --gothic-font-family );
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
	
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}


/* ハンバーガーメニュー展開中 */
body.openHumbergerMenu { overflow: hidden; }

/* スプラッシュ画面再生中 */
body.splash { overflow: hidden; }



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

	サイト共通ヘッダー

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

.siteHeader {
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;

	background-color: inherit;
	transition: all 0.5s;
	
	z-index: 1000;
}
.siteHeader::after { content:"."; display:block; height:0; clear:both; visibility:hidden; }

.siteHeaderInner {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}

/* サイトタイトル */
.siteHeaderTitle {
	display: block;
	position: relative;
	width: 200px;
	height: 80px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	
	font-size: larger;
	font-weight: inherit;
	text-align: center;
	
	z-index: 1010;
}

.siteHeaderTitle a {
	color: inherit;
	text-decoration: none;
}
.siteHeaderTitle a:link,
.siteHeaderTitle a:visited,
.siteHeaderTitle a:hover,
.siteHeadertitle a:active { color: inherit; }

.siteHeaderTitle img,
.siteHeaderTitle svg {
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	width: auto;
	height: auto;
	
	/* ここで大きさ調整 */
	max-width: 80%;
	max-height: 80%;
	
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	vertical-align: bottom;
	transform: translate(-50%, -50%);
}

/** for Tablet ---------------------------------- **/

@media all and (max-width:1024px) and (min-width:768px) {
}


/** for Smart Phone ----------------------------- **/

@media all and (max-width:767px) {
}



/** for Print ----------------------------------- **/

@media print {
	.siteHeader {
		position: relative;
		left: auto;
		top: auto;
		width: auto;
		height: auto;
	}
}




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

	サイト共通フッター

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


.siteFooter {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.siteFooterInner {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}


/* title */
.siteFooterTitle {
	font-size: inherit;
	text-align: center;
	line-height: 1;
	white-space: nowrap;
}

.siteFooterTitle img,
.siteFooterTitle svg {
	display: block;
	margin: 0 auto 5px;
	vertical-align: bottom;	
}


/* Copyright */
.siteFooterCopyright {
	display: block;
	margin: 0;
	padding: 0;
	box-sizing: border-box;

	text-align: center;
}


/* 間隔を一定にする */
.siteFooterInner > * { /* margin: 50px 0; */  }
.siteFooterInner > *:first-child { /* margin-top: 0;    */ }
.siteFooterInner > *:last-child  { /* margin-bottom: 0; */ }




/** for Tablet ----------------------------------- **/

@media all and (max-width:1024px) and (min-width:768px) {
}


/** for Smart Phone ------------------------------ **/

@media all and (max-width:767px) {

	/* Copyright */
	.siteFooterCopyright span {
		display: none;
	}
}


/** for Print ----------------------------------- **/

@media print {
}



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

	ページトップ

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


.sitePageTop {
    --sitePageTop-text-color: #f0f0f0;
    --sitePageTop-background-color: rgba(0,0,0,0.6);
    --sitePageTop-hover-background-color: rgba(0,0,0,0.9);
	
	display: block;
    position: fixed;
    right: 0;
    bottom: -100px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    opacity: 0;
    transition: all 0.5s;
    z-index: 800;
}

.sitePageTop a {
    display: block;
    position: relative;
    width: 60px;
    height: 60px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    cursor: pointer;
    background-color: var( --sitePageTop-background-color );
    transition: all 0.3s;
}

.sitePageTop a::before {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    width: 25%;
    margin: 0;
    padding: 0 0 25%;
    box-sizing: border-box;
    border-top: 3px solid var( --sitePageTop-text-color );
    border-right: 3px solid var( --sitePageTop-text-color );
    background-color: transparent;
    transform: translate(-50% , -50%) rotate(-45deg);
    transition: all 0.3s;
}

.sitePageTop a::after {
    content: "PAGE TOP";
    display: block;
    position: absolute;
    left: 0;
    top: 70%;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    transition: all 0.3s;
    color: var( --sitePageTop-text-color );
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}


/* hover */
.sitePageTop a:hover {
	background-color: var( --sitePageTop-hover-background-color );
}


/* スクロール時 */
body.scrolled .sitePageTop {
	bottom: 0;
	opacity: 1;
}



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

	ハンバーガーメニューアイコン

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

.siteHumberger {

	--humberger-fill : var( --text-color );
	--humberger-hover: var( --text-hover-color );
	
	display: block;
	position: fixed;
	right: 20px;
	top: 20px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	z-index: 1100;
}

.siteHumberger a {
	cursor: pointer;
	color: var( --humberger-fill );
}

.siteHumbergerIcon {
	display: block;
	position: relative;
	width: 30px;
	height: 30px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}

.siteHumbergerBar {
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	background-color: var( --humberger-fill );
	
	opacity: 1;
    transition: all 0.3s;
}
.siteHumbergerBar.bar01 { top: 20%; transform: none; }
.siteHumbergerBar.bar02 { top: 50%; transform: none; }
.siteHumbergerBar.bar03 { top: 80%; transform: none; }

.siteHumberger a::after {
	content: "MENU";
	display: block;
	position: relative;
	margin: 3px 0 0 0;
	padding: 0;
	box-sizing: border-box;
	
	font-size: 10px;
	font-weight: 400;
	color: var( --humberger-fill );
	text-align: center;
	line-height: 1;
	text-decoration: none;
	
	transition: all 0.3s;
}


/* hover */
.siteHumberger a:hover .siteHumbergerBar {
	background-color: var( --humberger-hover );
}
.siteHumberger a:hover::after {
	color: var( --humberger-hover );
}


/* メニューのが開いている時 */
body.openHumbergerMenu .siteHumbergerBar.bar01 { top: 50%; opacity: 1; transform: rotate( 45deg); }
body.openHumbergerMenu .siteHumbergerBar.bar02 { top: 50%; opacity: 0; transform: rotate(  0deg); }
body.openHumbergerMenu .siteHumbergerBar.bar03 { top: 50%; opacity: 1; transform: rotate(-45deg); }

body.openHumbergerMenu .siteHumberger a::after {
	content: "CLOSE";
}


/** for Tablet ---------------------------------- **/

@media all and (max-width:1024px) and (min-width:768px) {
}


/** for Smart Phone ----------------------------- **/

@media all and (max-width:767px) {
}


/** for Print ----------------------------------- **/

@media print {

	.siteHumberger {
		display: none;
	}
}




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

	開閉メニュー枠

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

.siteMenu {
	display: block;
	position: fixed;
	left: 0;
	right: auto;
	top: auto;
	bottom: 100%;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;	

	overflow: auto;
	overflow-x: hidden;
	overflow-y: auto;
	
	z-index: 1010;
	transition: all 1s;
	
	background-color: inherit;
	color: inherit;
}

.siteMenuInner {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}

.siteMenuClose {
	display: block;
	position: relative;
	padding: 0;
	box-sizing: border-box;
}

.siteMenuClose a {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 30px 0 0 0;
	box-sizing: border-box;

	color: var(--text-color);
	text-align: center;
	font-size: smaller;
	cursor: pointer;
}
.siteMenuClose a::before,
.siteMenuClose a::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 15px;
	width: 30px;
	height: 1px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	background-color: var(--text-color);
}
.siteMenuClose a::before { transform: translateX(-50%) rotate( -45deg ); }
.siteMenuClose a::after  { transform: translateX(-50%) rotate(  45deg ); }


/* マージンを一定間隔にする */
.siteMenuInner > * { margin: 50px 0; }
.siteMenuInner > *:first-child { margin-top: 0; }
.siteMenuInner > *:first-child { margin-bottom: 0; }



/* ハンバーガーで開閉するメニュー */
.siteMenu.humberger {
	z-index: 900;
}

body.openHumbergerMenu .siteMenu.humberger {
	bottom: 0%;
}



/** for Tablet ----------------------------------- **/
@media all and (max-width:1024px) and (min-width:768px) {
}


/** for Smart Phone ------------------------------ **/
@media all and (max-width:767px) {
}


/** for Print ------------------------------------ **/
@media print {

	/* 印刷では表示しない */
	.siteMenu {
		display: none;
	}
}



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

	共通パーツ : ナビゲーションツリー

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

.siteNav {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.siteNavInner {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

/* ナビのタイトル */
.siteNavTitle {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

/* 階層 */
.siteNavRow {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	transition: all 0.3s;
}

.siteNavCols {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	list-style-type: none;
}

.siteNavCol {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	line-height: 1.2em;
}

.siteNavCol a {
	display: block;
	position: relative;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	cursor: pointer;
	
	color: var(--text-color);
	text-decoration: none;
}
.siteNavCol a::before {
	content: "";
	display: block;
display: none;
	position: absolute;
	left: auto;
	right: 10px;
	top: 50%;
	width: 7px;
	height: 10px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;

	clip-path: polygon(0% 0%, 0% 100%, 100% 50%);
	background-color: var(--text-color);
	transform: translate( -50%, -50% ) rotate( 0deg );
	transition: all 0.3s;
}


/* 子要素あり */
.siteNavCol.hasChild {}

.siteNavCol.hasChild > a::before {
	transform: translate( -50% , -50% ) rotate( 90deg );
}

.siteNavCol.hasChild > .siteNavRow {
/*
	max-height: 0px;
	overflow: hidden;
*/
}

/* 子要素を展開している場合 */
.siteNavCol.hasChild.open {}

.siteNavCol.hasChild.open > a::before {
	transform: translate( -50% , -50% ) rotate( -90deg );
}

.siteNavCol.hasChild.open > .siteNavRow {
/*	max-height: 1000px; */
}


/* 第2階層以降 */
.siteNavRow .siteNavRow {}

.siteNavCols .siteNavCols {
	padding: 5px 0px 5px 1em;
}

.siteNavCol .siteNavCol {}

/* 中身の間隔調整 */
.siteNavInner > * { }
.siteNavInner > *:first-child { margin-top: 0; }
.siteNavInner > *:last-child  { margin-bottom: 0; }



/** SNSナビ ------------------- **/

.siteNav.sns {}

.siteNav.sns .siteNavRow {}

.siteNav.sns .siteNavCols {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
}

.siteNav.sns .siteNavCol {
	margin: 10px 5px;
}

/*
.siteNav.sns .siteNavCol::after   {
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	line-height: 1;
}
.siteNav.sns .siteNavCol.twitter::after   { content: "X";         }
.siteNav.sns .siteNavCol.facebook::after  { content: "facebook";  }
.siteNav.sns .siteNavCol.instagram::after { content: "instagram"; }
.siteNav.sns .siteNavCol.youtube::after   { content: "youtube";   }
.siteNav.sns .siteNavCol.line::after      { content: "line";      }
.siteNav.sns .siteNavCol.note::after      { content: "note";      }
.siteNav.sns .siteNavCol.voicy::after     { content: "voicy";     }
*/

.siteNav.sns .siteNavCol a {
	padding: 0;
}


/* アイコン */
.siteNavCol svg {
	display: block;
	width: 25px;
	height: auto;
	margin: 0 auto 2px;
	vertical-align: bottom;
}

.siteNavCol.twitter svg   { fill: #000000; }
.siteNavCol.facebook svg  { fill: #32508E; }
.siteNavCol.instagram svg { fill: #32508E; }
.siteNavCol.youtube svg   { fill: #FF0000; }
.siteNavCol.line svg      { fill: #00B300; }
.siteNavCol.wechat svg    { fill: #00CB1F; }
.siteNavCol.note svg      { fill: #41C9B4; }
.siteNavCol.voicy svg     { fill: #ff7d32; }



/** for Tablet ---------------------------------- **/

@media all and (max-width:1024px) and (min-width:768px) {
}


/** for Smart Phone ----------------------------- **/

@media all and (max-width:767px) {
}



/** for Print ----------------------------------- **/

@media print {
}



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

	SVGを格納しておくスペース(非表示)

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


.siteSVG {
	display:block;
	position:absolute;
	visibility:hidden;
	right:0;
	bottom:0;
	width: 0;
	height: 0
}







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

	wordpress post関連パーツ

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


/* 画像 ----- */

.siteTileImage,
.siteSingleImage {
	display: block;
	position: relative;
	width: 100%;
	margin: 0.8rem 0;
	padding: 0 0 100%;
	box-sizing: border-box;

	overflow: hidden;
/*	background-color: rgba(0,0,0,0.1); */
}

.siteTileImage img,
.siteSingleImage img {
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	vertical-align: bottom;
	
	object-fit: cover;
	transform: translate( -50%, -50% );
	transition: all 0.5s;	
}

.siteTileImage img,
.siteSingleImage img {
	object-fit: contain;
}

.siteSingleImage a {}

.siteSingleImage a:hover img {
	width: 110%;
	height: 110%;
}











/* カテゴリー一覧 ----- */

.siteTileCategories,
.siteSingleCategories {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;
}

.siteTileCategories a,
.siteSingleCategories a {
	display: block;
	position: relative;
	margin: 0 0.2em 0.2em 0;
	padding: 0.2em 1em;
	box-sizing: border-box;

	text-decoration: none;
	text-align: center;
	font-size: smaller;
	line-height: 1.2;
	white-space: nowrap;

	background-color: var(--button-background-color);
	color: var(--button-text-color);
	transition: all 0.3s;
}

.siteTileCategories a:hover,
.siteSingleCategories a:hover {
	color: var(--button-hover-text-color);
	background-color: var(--button-hover-background-color);
}


/* ハッシュタグ一覧 */

.siteTileTags,
.siteSingleTags {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;
}

.siteTileTags a,
.siteSingleTags a {
	display: block;
	position: relative;
	margin: 0 1em 0.2em 0;
	padding: 0;
	box-sizing: border-box;
	
	color: inherit;
	text-decoration: none;
	font-size: smaller;
	line-height: 1.2;
}
.siteSingleTags a::before {
	content: "#";
}

.siteTileTags a:link,
.siteTileTags a:visited { color: inherit; }
.siteSingleTags a:hover,
.siteSingleTags a:active { color: var(--text-hover-color); }






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

	アーカイブページ用タイル

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



.siteTile {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.siteTileInner {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.siteTileRow {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.siteTileRow.image {}





.siteTileRow.text {
	margin: 0.8rem 0 0;
}




/* タイトル ----- */

.siteTileTitle {
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;

	font-size: inherit;
	font-weight: 700;
	line-height: inherit;
}

.siteTileTitle a {
	color: inherit;
	text-decoration: none;
}
.siteTileTitle a:link,
.siteTileTitle a:visited { color: inherit; }
.siteTileTitle a:hover,
.siteTileTitle a:active { color: var(--text-hover-color); }



/* 概要 ----- */

.siteTileExcerpt {
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;
}
.siteTileExcerpt::after { content:"."; display:block; width:0; height:0; clear:both; visibility:hidden; overflow:hidden; }

.siteTileExcerpt > *:first-child { margin-top: 0; }
.siteTileExcerpt > *:last-child  { margin-bottom: 0; }


/* ハッシュタグ一覧 */

.siteTileTags {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;
}

.siteTileTags a {
	display: block;
	position: relative;
	margin: 0 1em 0.2em 0;
	padding: 0;
	box-sizing: border-box;
	
	color: inherit;
	text-decoration: none;
	font-size: smaller;
	line-height: 1.2;
}
.siteTileTags a::before {
	content: "#";
}

.siteTileTags a:link,
.siteTileTags a:visited { color: inherit; }
.siteTileTags a:hover,
.siteTileTags a:active { color: var(--text-hover-color); }



/* 日付 ----- */

.siteTileDate {
	display: block;
	position: relative;
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;
	font-size: smaller;
}


/* MOREボタン */

.siteTileMore {
	display: block;
	position: relative;
	margin: 0.8rem 0;
	padding: 0;
	box-sizing: border-box;
}

.siteTileMore a {
	display: block;
	position: relative;
	margin: 0.8rem 0;
	padding: 10px;
	box-sizing: border-box;
	transition: all 0.3s;
	
	font-size: inherit;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
	text-align: center;
	text-decoration: none;
	
	color: var(--button-text-color);
	background-color: var(--button-background-color);
}

.siteTileMore a:link,
.siteTileMore a:visited {
	color: var(--button-text-color);
	background-color: var(--button-background-color);
}

.siteTileMore a:hover,
.siteTileMore a:active {
	color: var(--button-hover-text-color);
	background-color: var(--button-hover-background-color);
}



/* 間隔の調整 */
.siteTileRow > *:first-child { margin-top: 0; }
.siteTileRow > *:last-child  { margin-bottom: 0; }





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

	アーカイブページ(wordpress archive.php)

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



/** 記事一覧 ----------------- **/

.siteArchiveList {
	display: block;
	position: relative;
	margin: 30px 0;
	padding: 0;
	box-sizing: border-box;
}

.siteArchiveListInner {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
}

.siteArchiveList .siteTile {
	width: calc( 100% / 3 - 20px );
	margin: 10px;
}



/** POST一覧 ページネーション ------ **/

.siteArchivePages {
	display: block;
	margin: 50px 0;
	padding: 0;
	box-sizing: border-box;
}

.siteArchivePages .screen-reader-text {
	display: none;
}

.siteArchivePages .nav-links {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.siteArchivePages span.page-numbers,
.siteArchivePages a.page-numbers {
	display: block;
	position: relative;
	margin: 0 1px 1px 0;
	padding: 12px 15px;
	box-sizing: border-box;

	line-height: 1;
	color: var(--button-text-color);
	text-decoration: none;
	background-color: var(--button-background-color);
	transition: all 0.3s;	
}

.siteArchivePages span.page-numbers.current {
	color: var( --text-color );
	background-color: transparent;
	font-weight: 700;
}

.siteArchivePages a.page-numbers:link,
.siteArchivePages a.page-numbers:visited {
	color: var(--button-text-color);
	background-color: var(--button-background-color);
}

.siteArchivePages a.page-numbers:hover,
.siteArchivePages a.page-numbers:active {
	color: var(--button-hover-text-color);
	background-color: var(--button-hover-background-color);
}



/** ページ枠 ------------------ **/

.siteArchive,
.siteArchiveHeader,
.siteArchiveMain,
.siteArchiveFooter {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;	
}

.siteArchiveInner,
.siteArchiveHeaderInner,
.siteArchiveMainInner,
.siteArchiveFooterInner {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}
.siteArchiveInner::after,
.siteArchiveHeaderInner::after,
.siteArchiveMainInner::after,
.siteArchiveFooterInner::after { content:"."; display:block; height:0; clear:both; visibility:hidden; }

.archiveHeaderInner > *:first-child,
.archiveMainInner > *:first-child,
.archiveFooterInner > *:first-child { margin-top: 0; }
.archiveHeaderInner > *:last-child,
.archiveMainInner > *:last-child,
.archiveFooterInner > *:last-child { margin-bottom: 0; }


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

	個別ページ(wordpress single.php)

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



/** ページネーション ----------- **/

.siteSinglePages {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	margin: 50px 0;
	padding: 0;
	box-sizing: border-box;
}

.siteSinglePages h3 {
	display: none;
}

.siteSinglePages a.post-page-numbers,
.siteSinglePages span.post-page-numbers {
	display: block;
	position: relative;
	margin: 0 1px 1px 0;
	padding: 12px 15px;
	box-sizing: border-box;

	line-height: 1;
	color: var(--button-text-color);
	text-decoration: none;
	background-color: var(--button-background-color);
	transition: all 0.3s;
}

.siteSinglePages span.post-page-numbers.current {
	color: var( --text-color );
	background-color: transparent;
	font-weight: 700;
}

.siteSinglePages a.post-page-numbers:link,
.siteSinglePages a.post-page-numbers:visited {
	color: var(--button-text-color);
	background-color: var(--button-background-color);
}
.siteSinglePages a.post-page-numbers:hover,
.siteSinglePages a.post-page-numbers:action {
	color: var(--button-hover-text-color);
	background-color: var(--button-hover-background-color);
}



/** ページ枠 ------------------ **/

.siteSingle,
.siteSingleHeader,
.siteSingleMain,
.siteSingleFooter {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;	
}

.siteSingleInner,
.siteSingleHeaderInner,
.siteSingleMainInner,
.siteSingleFooterInner {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}
.siteSingleInner::after,
.siteSingleHeaderInner::after,
.siteSingleMainInner::after,
.siteSingleFooterInner::after { content:"."; display:block; height:0; clear:both; visibility:hidden; }

.siteSingleHeaderInner > *:first-child,
.siteSingleMainInner > *:first-child,
.siteSingleFooterInner > *:first-child { margin-top: 0; }
.siteSingleHeaderInner > *:last-child,
.siteSingleMainInner > *:last-child,
.siteSingleFooterInner > *:last-child { margin-bottom: 0; }



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

	固定ページ(wordpress page.php)

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




/** ページネーション ----------- **/

.sitePagePages {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	margin: 50px 0;
	padding: 0;
	box-sizing: border-box;
}

.sitePagePages h3 {
	display: none;
}

.sitePagePages a.post-page-numbers,
.sitePagePages span.post-page-numbers {
	display: block;
	position: relative;
	margin: 0 1px 1px 0;
	padding: 12px 15px;
	box-sizing: border-box;

	line-height: 1;
	color: var(--button-text-color);
	text-decoration: none;
	background-color: var(--button-background-color);
	transition: all 0.3s;
}

.sitePagePages span.post-page-numbers.current {
	color: var( --text-color );
	background-color: transparent;
	font-weight: 700;
}

.sitePagePages a.post-page-numbers:link,
.sitePagePages a.post-page-numbers:visited {
	color: var(--button-text-color);
	background-color: var(--button-background-color);
}

.sitePagePages a.post-page-numbers:hover,
.sitePagePages a.post-page-numbers:action {
	color: var(--button-hover-text-color);
	background-color: var(--button-hover-background-color);
}



/** ページ枠 ------------------ **/

.sitePage,
.sitePageHeader,
.sitePageMain,
.sitePageFooter {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;	
}

.sitePageInner,
.sitePageHeaderInner,
.sitePageMainInner,
.sitePageFooterInner {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}
.sitePageInner::after,
.sitePageHeaderInner::after,
.sitePageMainInner::after,
.sitePageFooterInner::after { content:"."; display:block; height:0; clear:both; visibility:hidden; }

.sitePageHeaderInner > *:first-child,
.sitePageMainInner > *:first-child,
.sitePageFooterInner > *:first-child { margin-top: 0; }
.sitePageHeaderInner > *:last-child,
.sitePageMainInner > *:last-child,
.sitePageFooterInner > *:last-child { margin-bottom: 0; }





