@charset "utf-8";
/*
Theme Name: ja
Theme URI: https://www.e-compass.ne.jp/
Description: ja
Version: 1.0
Author: compass
Author URI: https://www.e-compass.ne.jp/
*/

/* =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: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
img { image-rendering: -webkit-optimize-contrast;}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body{
font: 95%/1.8 "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
color:#333;
-webkit-text-size-adjust: none;
	background: white url(images/bg.jpg) no-repeat 100% 0 fixed;
	background-size: cover;
}
h1, section > h2.title{ font-family: Hiragino Mincho ProN,"游明朝",serif; font-weight: bold;}
section{ padding-bottom: 2em;}
p.c{ text-align: center !important;}
p.r{ text-align: right !important;}
ul{
	margin: 0 0 1em;
	padding: 0;
}
ul > li{
	padding: 0 0 0 1em;
	position: relative;
}
ol{margin: 0 0 1.5em 1em; padding: 0 0 0 .5em;}
ol > li{list-style:decimal;}


/* リンク設定 ------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#1058aa;
}
a:hover, a:active{
outline: none;
color:#033d80;
}
/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after, ul.post li:after,nav#mainNav .inner:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post, ul.post li,nav#mainNav .inner{zoom: 1;}


/* レイアウト ------------------------------------------------------------*/
#wrapper, .inner{
margin:0 auto;
width:1000px;
}
#header{
overflow:hidden;
}
#content{
/*
float:right;
width:627px;
*/
padding: 1.5em 0 0;
}
#sidebar{
/*
float:left;
width:233px;
*/
padding: 0 0 3em;
}
#footer{
clear:both;
	background: rgba(64,33,15,.2);
	color:white;
} 


/* ヘッダー *****************************************************/

/* サイト説明文 ----------------------------------*/
#header h1{
padding:5px 0;
font-size:80%;
font-weight:normal;
	display: none;
}

/* ロゴ (サイトタイトル) ----------------------------------*/
#header h2{
clear:both;
float:left;
padding:20px 5px 15px;
color: #515151;
font-size:160%;
font-weight:bold;
}

/* コンタクト ----------------------------------*/
.contact{
float:right;
padding:10px 0 0;
text-align:right;
color:black;
font-size:90%;
}
.contact .tel{
	margin-bottom:-3px;
	font-size:180%;
	font-family:Arial, Helvetica, sans-serif;
}
.tel:hover{ cursor:inherit;}

/* トップページ　メイン画像 ----------------------------------*/
#mainImg{
clear:both;
line-height:0;
text-align:center;
z-index:0;
}
.post{
	/*margin:0 0 2em;*/
	padding: 1em 1em 2em;
	min-height: calc(100vh - 32.5em);
border:1px solid #d5d5d5;
background: #fff;
}
header.post{
	padding: 1em;
	min-height: auto;
}
.toppage h4{
margin:0 0 10px;
font-size:16px;
font-weight:normal;
color:#333;
}
.toppage{padding: 1em;}

/* 記事ループ *****************************************************/

.list{
padding:10px 0;
border-bottom:1px dashed #dcdcdc;
}
.list:last-child{border:0;}
.post .list p{padding:0;}
.list span{padding-left:10px;}

/* タイポグラフィ *****************************************************/

header.post .category_navi,
article.post .category_navi{
    margin: 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	line-height: 1.4;
	text-align: center;
	font-size: .8em;
	font-weight: bold;
}
header.post .category_navi{ justify-content: center;}
header.post .category_navi li,
article.post .category_navi li{
	padding: 1px;
	box-sizing: border-box;
}
header.post .category_navi li{}
.category_navi li span{ padding-top: .25em; display: block;}
.category_navi li a{ color: #333; transition: .5s;}
.category_navi li a img{ transition: .3s}
.category_navi li a:hover img{ opacity: 1; transform: scale(1.025);}

article.post .category_navi{ margin-bottom: 1em;}
article.post .category_navi li{ width: auto;}
article.post .category_navi li a{ margin: 0 2px; padding: .2em .75em; color: white; background: #97918c; border-radius: .25em; display: inline-block;}
article.post .category_navi li a.gentei{ background-color: #e83428;}
article.post .category_navi li a.houji{ background-color: #601986;}
article.post .category_navi li a.ashigaracha{ background-color: #b4d100;}
article.post .category_navi li a.sayanoka{ background-color: #44b45d;}
article.post .category_navi li a.ochai{ background-color: #0ba29a;}
article.post .category_navi li a.nori{ background-color: #366fb6;}
article.post .category_navi li a.variety{ background-color: #eb6da5;}
article.post .category_navi li a.kanbutu{ background-color: #6e5e47;}
article.post .category_navi li a.youkko-hi{ background-color: #956134;}
article.post .category_navi li a.seni{ background-color: #34bdef;}
article.post .category_navi li a.kaisouhin{ background-color: #be86b9;}
article.post .category_navi li a.tsuya{ background-color: #171c61;}

article.post .category_navi li a.y5000,
article.post .category_navi li a.y5100{ background-color: #87c796;}
article.post .category_navi li a.y4000,
article.post .category_navi li a.y4100{ background-color: #cddd59;}
article.post .category_navi li a.y3600{ background-color: #fac94c;}
article.post .category_navi li a.y3100{ background-color: #f19975;}
article.post .category_navi li a.y2600{ background-color: #f09dc1;}
article.post .category_navi li a.y2100{ background-color: #be86b9;}
article.post .category_navi li a.meka{ background-color: #87aad9;}
article.post .category_navi li a.sonaemono{ background-color: #7dccf3;}

@media (max-width: 1019px){
	header.post .category_navi{ font-size: calc(.5vw + .5em);}
}
@media (max-width: 767px){
    header.post{ padding: .5em;}
	header.post .category_navi{ -webkit-flex-wrap: wrap; flex-wrap: wrap;}
	header.post .category_navi li{ flex-basis: calc(100% / 7);}
	header.post .category_navi.category_navi_houji li{ flex-basis: calc(100% / 6);}
}
@media (max-width: 500px){
	header.post .category_navi li{ flex-basis: 20%;}
	header.post .category_navi.category_navi_houji li{ flex-basis: calc(100% / 3);}
}
section > h2.title{
	margin:0;
	clear:both;
	padding:.5em 1em;
	font-size:2em;
	color:black;
	border-bottom:0;
	background: white;
}
@media (max-width: 767px){ section > h2.title{ padding:.5em; font-size: 1.7em;}}
.category section > h2.title,
.search section > h2.title{
	background-color: #97918c;
	background-repeat: no-repeat;
	background-position: .5em 50%;
	color: white;
	text-shadow: .1em .1em .35em rgba(0,0,0,.75);
}
.category section > h2.title{ padding-left: 2.5em;}

.category.category-gentei h2.title{ background-color: #e83428; background-image:url(/gift/img/gentei_ttl.png);}
.category.category-houji h2.title{ background-color: #601986; background-image:url(/gift/img/houji_ttl.png);}
.category.category-ashigaracha h2.title{ background-color: #b4d100; background-image:url(/gift/img/ashigaracha_ttl.png);}
.category.category-sayanoka h2.title{ background-color: #44b45d; background-image:url(/gift/img/sayanoka_ttl.png);}
.category.category-ochai h2.title{ background-color: #0ba29a; background-image:url(/gift/img/ochai_ttl.png);}
.category.category-nori h2.title{ background-color: #366fb6; background-image:url(/gift/img/nori_ttl.png);}
.category.category-variety h2.title{ background-color: #eb6da5; background-image:url(/gift/img/variety_ttl.png);}
.category.category-kanbutu h2.title{ background-color: #6e5e47; background-image:url(/gift/img/kanbutu_ttl.png);}
.category.category-youkko-hi h2.title{ background-color: #956134; background-image:url(/gift/img/youkko-hi_ttl.png);}
.category.category-seni h2.title{ background-color: #34bdef; background-image:url(/gift/img/seni_ttl.png);}
.category.category-kaisouhin h2.title{ background-color: #be86b9; background-image:url(/gift/img/kaisouhin_ttl.png);}
.category.category-tsuya h2.title{ background-color: #171c61; background-image:url(/gift/img/tsuya_ttl.png);}

.category.category-y5000 h2.title,
.category.category-y5100 h2.title{ background-color: #87c796;}
.category.category-y4000 h2.title,
.category.category-y4100 h2.title{ background-color: #cddd59;}
.category.category-y3600 h2.title{ background-color: #fac94c;}
.category.category-y3100 h2.title{ background-color: #f19975;}
.category.category-y2600 h2.title{ background-color: #f09dc1;}
.category.category-y2100 h2.title{ background-color: #be86b9;}
.category.category-meka h2.title{ background-color: #87aad9; background-image:url(/gift/img/meka_ttl.png);}
.category.category-sonaemono h2.title{ background-color: #7dccf3; background-image:url(/gift/img/sonaemono_ttl.png);}

.category .post h2.title,
.search .post h2.title{
	margin: 0 .5em .5em 0;
	padding: 0 .5em;
	background-image: none;
	color: white;
	display: inline-block;
	font-size: 1em;
}
.search .post h2.title{ background-color: #97918c;}

#content p{
	margin: 0 0 1em;
	text-align: justify;
}
#content .post .dateLabel{
	margin-bottom: .5em;
	text-align:right;
}
.post ul{margin: 0 0 10px 10px;}
.post h1{
margin: 0 0 .75em;
padding:.5em 0;
font-size: 1em;
color: black;
border-bottom: 2px solid black;
}
.post h2{
	font-size:130%;
	font-weight:normal;
}
.post h3{
	margin: 0 0 .5em;
	line-height: 1.4;
	font-size: 1.35em;
	font-weight:bold;
}
.post .itemlist h3{ margin-bottom: .25em;}
.post h4{
	margin: 0 0 .5em;
	padding: 0 0 0 .5em;
	border-left: solid 2px black;
	line-height: 1.55;
	font-size:105%;
	font-weight:bold;
}
.post h5{
	margin: 0 0 .25em;
	font-size:100%;
	font-weight:bold;
}
.post h6{
margin:15px 0 10px;
padding:15px 0;
font-size:105%;
font-weight:bold;
}
.post blockquote {
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote p{padding:5px 0;}
.post dt{font-weight:bold;}
.post dd{padding-bottom:10px;}
.post img{max-width:100%;height:auto;}
img.aligncenter {
display: block;
margin:5px auto;
}
img.alignright, img.alignleft{
margin: 10px 10px 15px 15px;
display:inline;
}
img.alignleft{margin:10px 15px 15px 10px;}
.alignright{float:right;}
.alignleft{float:left;}
#gallery-1 img{
border:1px solid #eaeaea !important;
padding:5px;
background:#fff;
}
#gallery-1 img:hover{background:#fffaef;}

#content .post_excerpt p{ margin: 0;}
#content .post_excerpt span{ float: left;}


/* サイドバー　ウィジェット *****************************************************/

section.widget ul, .widget_search, #calendar_wrap, .textwidget{
margin:0 0 20px 0;
padding:10px;
border:1px solid #d5d5d5;
background: #fff;
}
section.widget ul ul{
border:0;
margin:0;
padding:0 0 0 10px;
}
p.banner{padding-bottom:15px;}
p.banner img{
max-width:233px;
height:auto;
}
p.banner img:hover{
cursor:pointer;
opacity:.8;
}
section.widget h3{
clear:both;
margin:0;
padding:7px 10px 7px 10px;
font-size:110%;
border:1px solid #d5d5d5;
border-bottom:0;
color:black;
background:#fff url(images/headingBg.png) repeat-x 0 100%;
}
section.widget li a{
display:block;
padding:7px 0 7px 12px;
background:url(images/arrow.gif) no-repeat 0 12px;
border-bottom:1px dashed #dcdcdc;
}
section.widget li:last-child a{border:0;}
/* カレンダー */
#calendar_wrap table{margin:0 auto;width:90%;}
#calendar_wrap table caption{padding:10px 0;text-align:center;font-weight:bold;}
#calendar_wrap table th, #calendar_wrap table td{padding:3px;text-align:center;}
#calendar_wrap table th:nth-child(6),#calendar_wrap table td:nth-child(6){color:#0034af;}
#calendar_wrap table th:nth-child(7),#calendar_wrap table td:nth-child(7){color:#950000;}
#calendar_wrap table td#prev{text-align:left;}
#calendar_wrap table td#next{text-align:right;}
#calendar_wrap a{font-weight:bold;}

/* お知らせ　
-------------*/
.newsTitle{
clear:both;
margin:0;
padding:7px 10px 7px 10px;
font-size:110%;
border:1px solid #d5d5d5;
border-bottom:0;
color:black;
background:#fff url(images/headingBg.png) repeat-x 0 100%;
}
.newsTitle h3{
float:left;
font-weight:normal;
}
.newsTitle p{
float:right;
padding:0 0 0 10px;
font-size:80%;
background:url(images/arrow.gif) no-repeat 0 5px;
}
.news p{
	margin: 0;
	padding: .5em 0;
border-bottom:1px dashed #dcdcdc;
font-size: .925em;
}
.news p:last-child{border:0;}
.news p a{
display:block;
color:#333;
}
#sidebar .post{ padding: 10px;}


/* フッター *****************************************************/

#footer ul{
padding:15px 0 0;
text-align:center;
}
#footer li{
display:inline-block;
padding: 5px 16px;
border-left:1px dotted #d5d5d5;
}
*:first-child+html #footer li{display:inline;}
#footer li:first-child{border:0;}
#footer li a{
	text-decoration:none;
	color:white;
}
#footer li a:hover{ opacity: .9}
#footer ul ul{display:none;}
#copyright{
	padding: .75em 0;
	background: rgba(64,33,15,.25);
	color: white;
	clear:both;
	text-align:center;
	font-size:.75em;
}
.page_top_btn{
	background: white;
	box-shadow: 0 0 0 1px gray,0 0 0 2px white;
}
.page_top_btn:before {
	margin-top: -.25em;
	display: block;
	border: solid black 1px;
	border-width: 1px 1px 0 0;
	transform: rotate(-45deg);
	content: "";
	position: absolute;
	top: 19px;
	height: 12px;
	width: 12px;
	left: 12px;
}

/* page navigation ------------------------------------------------------------*/
.pagenav{
clear:both;
width: 100%;
height: 30px;
margin: 5px 0 20px;
}
.prev{float:left}
.next{float:right;}
#pageLinks{
clear:both;
color:#4f4d4d;
text-align:center;
}
.pagination {
	margin: 0 auto;
	display:flex;
	padding-left:0;
	list-style:none;
	border-radius:.25rem
}
.pagination .nav-links { margin:0 auto}
ul.page-numbers { margin:0; padding:0;list-style: none;}
ul.page-numbers > li { padding-left: 0; float:left}
ul.page-numbers li a,
ul.page-numbers li span.page-numbers {
	display:block;
	border:1px solid #ddd;
	background: white;
	color:#333;
	height:2.5em;
	width:2.5em;
	text-align:center;
	line-height:2.35em;
	font-size:1em;
	margin:0 .1em;
	border-radius: 50%;
}
ul.page-numbers li a.dots,
ul.page-numbers li span.page-numbers.dots {
 display:block;
 border:none;
 background:0 0;
 min-width:20px
}
ul.page-numbers li a:hover {  text-decoration:none}
ul.page-numbers li:first-child a { margin-left:0}
ul.page-numbers li a:hover { background-color:#eae7f6}
ul.page-numbers li span.page-numbers.current { background-color:#eae7f6;border-color:#eae7f6}
.navigation_wrap h2.screen-reader-text { display: none;}
ul.page-numbers li a i:before{
	margin-top: -.25em;
	display: block;
	border: solid black 1px;
	border-width: 1px 1px 0 0;
	transform: rotate(45deg);
	content: "";
	position: absolute;
	height: .6em;
	width: .6em;
	top: 1.2em;
	left: 1em;
}
ul.page-numbers li a i.prev:before{ transform: rotate(-135deg); left: 1.2em;}

/* トップページ 最新記事4件 ------------------------------------------------------------*/
ul.post{
padding:0;
}
ul.post li{
margin:0 10px;
padding:20px 0 15px;
border-bottom:1px dashed #dcdcdc;
}
ul.post li:last-child{border:0;}
ul.post img{
float:left;
margin:0 15px 5px 10px;
}
ul.post h3{
margin:0 0 10px 10px;
font-size:14px;
font-weight:normal;
color:#333;
border:0;
}
ul.post p{
	margin: 0;
}
/* メインメニュー　PC用 ------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
	nav#mainNav{
	clear:both;
	position:relative;
	z-index:200;
	width:100%;
	/*background:black;*/
	}
	nav#mainNav .inner{
	padding-left:1px;
	border-left:1px solid #747474;
	}
	nav#mainNav ul li{
	float: left;
	position: relative;
	border-right:1px solid #747474;
	}
	nav#mainNav ul li a{
		padding:10px 45px 5px;
	display: block;
	text-align: center;
	_float:left;
	color:#fff;
	height:35px;
	line-height:45px;
	font-size:110%;
	margin-right:1px;
	}
	nav#mainNav ul li a span,nav#mainNav ul li a strong{
	display:block;
	font-size:90%;
	line-height:1.4;
		font-weight: normal;
	}
	nav#mainNav ul li a span{
	font-size:70%;
	color:#888;
	font-weight:normal;
	}
	nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover span, nav#mainNav ul li a:hover, nav#mainNav ul li.current-menu-parent a{
	color:#d0d0d0;
	}
	nav#mainNav ul ul{
	width:160px;
	border-top:0;
	}
	nav#mainNav ul li ul{display: none;}
	nav#mainNav ul li:hover ul{
	display: block;
	position: absolute;
	top:45px;
	left:-1px;
	z-index:500;
	}
	nav#mainNav ul li li{
	margin:0;
	float: none;
	height:40px;
	line-height:40px;
	width:160px;
	background:black;
	border-bottom:1px dotted #747474;
	}
	nav#mainNav ul li li:last-child{border:0;}
	nav#mainNav ul li li a{
	width:100%;
	height:40px;
	padding:0 0 0 10px;
	line-height:40px;
	font-size:95%;
	text-align:left;
	}
	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover{color:#d0d0d0;}
	nav div.panel{
	display:block !important;
	float:left;
	}
	a#menu{display:none;}
}

/* メインメニュー iPadサイズ以下から ------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	nav#mainNav{
	clear:both;
	width:1000px;
	margin:20px auto 10px;
	background:#fbfaf9 url(images/mainnavBg.png) repeat-x 0 -5px;
	border:1px solid #e8e5e0;
	border-radius:6px;
	}
	nav#mainNav a.menu{
	width:100%;
	display:block;
	height:37px;
	line-height:37px;
	font-weight: bold;
	text-align:left;
		background: black url(images/menuOpen.png) no-repeat 5px 8px;
		color: white;
	}
	nav#mainNav a#menu span{padding-left:35px;}
	
	nav#mainNav a.menuOpen{
	border-radius:6px 6px 0 0;
		background: black url(images/menuOpen.png) no-repeat 5px -34px;
	}
	nav#mainNav a#menu:hover{cursor:pointer;}
	nav .panel{
	display: none;
	width:100%;
	position: relative;
	right: 0;
	top:0;
	z-index: 1;
	}
	nav#mainNav ul{margin:0;padding:0;}
	nav#mainNav ul li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}
	nav#mainNav ul li a,nav#mainNav ul li.current-menu-item li a{
	display: block;
	padding:15px 10px;
	text-align:left;
	border-bottom:1px dashed #e5e5e5;
	background:#fbfaf9;
	}
	nav#mainNav ul li:last-child a{border:0;border-radius:0 0 6px 6px;}
	nav#mainNav ul li li:last-child a{border:0;border-radius:0;}
	nav#mainNav ul li li:last-child a{border-bottom:1px dashed #e5e5e5;}
 	nav#mainNav ul li a span{display:none;}
	nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:hover,nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:active{
	background:#fff;
	}
	nav#mainNav ul li.current-menu-item li a{color:#777}
	nav#mainNav ul li li{
	float:left;
	border:0;
	}
	nav#mainNav ul li li a, nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li li.current-menu-item a{
	padding-left:40px;
	background:#fbfaf9 url(images/sub1.png) no-repeat 20px 18px;}
	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover, nav#mainNav ul li.current-menu-item li a:hover{ background:#fff url(images/sub1.png) no-repeat 20px -62px;}
	nav#mainNav ul li li:last-child a{background:#fbfaf9 url(images/subLast.png) no-repeat 20px 20px;}
	nav#mainNav ul li li:last-child.current-menu-item a,nav#mainNav ul li li:last-child a:hover,nav#mainNav ul li.current-menu-item li:last-child a:hover{background:#fff url(images/subLast.png) no-repeat 20px -65px;}
	nav div.panel{float:none;}
	#mainImg{margin-bottom:20px;}
}

/* 1019px以下から 1カラム表示 ------------------------------------------------------------*/
@media only screen and (max-width: 1019px){
	#wrapper, .inner{width:100%;}
	#header{width:96%;padding:0 2%;}
	.contact{padding:10px 0 10px;}
	nav#mainNav{width:95%;}
	nav#mainNav ul{margin:0 auto;}
	nav#mainNav ul ul{padding:0;}
	nav div.panel{float:none;}
	#mainImg img{width:98%;height:auto;}
	#content, #sidebar{
	clear:both;
	width:95%;
	float:none;
	margin:0 auto;
	padding:10px 0;
	}
	.banner{width:100%;margin:0 auto;text-align:center;}
	p.banner img{width:100%;height:auto;}
	section.widget_search{text-align:center;}
	#footer li{margin-bottom:10px;}
}

/* 幅644px以下から ヘッダー等微調節 ------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#header h1{ display: none;}
	#header h2{ margin: 0 auto; padding: .5em 10px 0; max-width: 300px;}
	nav#mainNav{width:98%;}
	#header{text-align:center;}
	#header h2,.contact{float:none;}
	.contact{padding:0;}
	.contact p{text-align:center;}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none;}
}

/* custom -----------------------------------------------------------------*/

.dsp_pc{ display: inherit;}
.dsp_sph{ display: none;}
.dsp_bck{ display: block !important;}
.dsp_inbck{ display: inline-block !important;}
.mainimg_pc{ display: inline-block;}
.mainimg_sph{ display: none;}
img{ max-width: 100%; height: auto; border: none; vertical-align: bottom;}
.img_l, .post .img_l{ margin: 0 4% 20px 0; float: left; max-width: 25%;}
.img_r, .post .img_r{ margin: 0 0 20px 4%; float: right; max-width: 25%;}
ul.img_l, .post ul.img_l, ul.img_r, .post ul.img_r{ max-width: none;}

.cachcopy{ text-align: center;}
.nml{ font-weight: normal !important;}
.str1, .str01{ font-size: 110%;}
.str2, .str02{ font-size: 125%;}
.str3, .str03{ font-size: 150%;}
.str4, .str04{ font-size: 175%;}
b, strong, .str1,.str2,.str3,.str4{ font-weight: 600;}
.sml1{ font-size: 85%; line-height: 1.65;}
.sml2{ font-size: 80%; line-height: 1.6;}
.sml3{ font-size: 70%; line-height: 1.55;}
h2 .sml2{ margin-left: .5em; font-size: 60%;}
.red, .red a{ color: #d81010;}
.orange, .orange a{ color: #f0832c;}
.blue, .blue a{ color: #008bcb;}
.green, .green a{ color: green;}
.gold, .gold a{ color: #555;}
.c{ text-align: center;}
.l{ text-align: left;}
.r{ text-align: right;}
.clr{ clear: both;}
.clr_l{ clear: left;}
.clr_r{ clear: right;}
.clr_n{ clear: none !important;}

.f_l{ float: left;}
.f_r{ float: right;}

.mg0{ margin: 0 !important;}
.mgAuto, .mgAuto > div{ margin: auto;}
.mg0t{ margin-top: 0 !important;}
.mg0b{ margin-bottom: 0 !important;}
.mg05t{ margin-top: 5px !important;}.mg05l{ margin-left: 5px;}.mg05r{ margin-right: 5px;}.mg05b{ margin-bottom: 5px;}.mg05tb{ margin: 5px 0;}.mg05lr{ margin: 0 5px;}.mg10t{ margin-top: 10px;}.mg10l{ margin-left: 10px;}.mg10r{ margin-right: 10px;}
.mg10b{ margin-bottom: 10px !important;}
.mg10tb{ margin: 10px 0;}.mg10lr{ margin: 0 10px;}.mg15t{ margin-top: 15px;}.mg15tb{ margin: 15px 0;}.mg20t{ margin-top: 20px;}.mg20l{ margin-left: 20px;}.mg20r{ margin-right: 20px;}.mg20b{ margin-bottom: 20px;}.mg20tb{ margin: 20px 0;}.mg25r{ margin-right: 25px;}.mg30t{ margin-top: 30px;}.mg30l{ margin-left: 30px;}.mg30r{ margin-right: 30px;}.mg30b{ margin-bottom: 30px;}.mg30tb{ margin: 30px 0;}
.mg_table_c{ margin: 0 auto; display: table;}
.mghEMt{ margin-top: .5em !important;}.mghEMb{ margin-bottom: .5em !important;}.mghEMtb{ margin: .5em 0;}
.mg1EMt{ margin-top: 1em;}.mg1EMb{ margin-bottom: 1em;}.mg1EMtb{ margin: 1em 0;}.mg1hEMtb{ margin: 1.5em 0;}
.mg-3emt, .mg-5emt, .mg-7emt{ position: relative; z-index: 2;}
.pd0{ padding: 0 !important;}
.pd0b{ padding-bottom: 0 !important;}
.pd0hEM{ padding: .5em !important;}.pd0hEMt{ padding-top: .5em;}.pd0hEMb{ padding-bottom: .5em;}.pd0hEMtb{ padding: .5em 0;}.pd0hEMlr{ padding: 0 .5em;}
.pd1EM{ padding: 1em;}.pd1EMt{ padding-top: 1em;}.pd1EMb{ padding-bottom: 1em;}.pd1EMtb{ padding: 1em 0;}pd1EMlr{ padding: 0 1em;}
.pd1hEM{ padding: 1.5em;}.pd2EM{ padding: 2em;}.pd2EMt{ padding-top: 2em;}
.pd3EMt{ padding-top: 3em;}

.idt0{ margin-left: 1em; text-indent: -1em;}
.idt1{ margin-left: 1em !important; text-indent: -1em;}
.idt1h{ margin-left: 1.5em; text-indent: -1.5em;}
.idt2{ margin-left: 2em; text-indent: -2em;}
.idt2h{ margin-left: 2.5em; text-indent: -2.5em;}
.idt3{ margin-left: 3em; text-indent: -3em;}
ul.idt2h, ol.idt2h{ margin: 0 0 1em 1.5em; list-style: none;}
ul.idt2, ol.idt2{ margin: 0 0 1em 1em; list-style: none;}
ul.idt1h, ol.idt1h{ margin: 0 0 1em .5em; list-style: none;}
ul.idt1, ol.idt1{ margin: 0 0 1em; padding-left: 1em; list-style: none;}
li ol.idt1h{ margin: 0;}

.w15p{ width: 15%;}.w20p{ width: 20%;}.w25p{ width: 25%;}.w30p{ width: 30%;}
.w33p{ width: 33%;}.w35p{ width: 35%;}.w40p{ width: 40%;}.w50p{ width: 50%;}
.w60p{ width: 60%;}.w65p{ width: 65%;}.w70p{ width: 70%;}.w80p{ width: 80%;}
.w90p{ width: 90%;}
.w_auto{ width: auto !important;}

.flexbox{
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
/*
	-webkit-justify-content: space-between;
	justify-content: space-between;
*/
	box-sizing: border-box;
}
.flexbox.flex_reverse{
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
@media (min-width: 768px) {
	.col_2, .col_3, .col_3x2, .col_4x3, .col_5, .col_5x2, .col_5x3, .col_5x4{ float: left;}
	.col_2{ width: 50%;}
	.col_3{ width: 33.33333%;}
	.col_3x2{ width: 66.66666%;}
	.col_4x3{ width: 75%;}
	.col_4{ width: 25%;}
	.col_5{ width: 20%;}
	.col_5x2{ width: 40%;}
	.col_5x3{ width: 60%;}
	.col_5x4{ width: 80%;}
	/* .col_2 padding ******/
	.pad .col_2:nth-of-type(odd){ padding-right: 2.5%;}
	.pad .col_2:nth-of-type(even){ padding-left: 2.5%;}
	.col_3x2:nth-child(odd), .col_3:nth-child(odd),
	.col_4x3.f_l, .col_4.f_l,
	.col_5.f_l, .col_5x2:nth-child(odd), .col_5x3:nth-child(odd), .col_5x4.f_l{ padding-right: 2.5%;}
	.col_3.f_c{ padding: 0 .75%;}
	.col_3x2:nth-child(even), .col_3:nth-child(even),
	.col_4x3.f_r, .col_4.f_r,
	.col_5.f_r, .col_5x2:nth-child(even), .col_5x3:nth-child(even), .col_5x4.f_r{ padding-left: 2.5%;}
	
	.flex_reverse .col_3:nth-child(even){ padding: 0 2% 0 0;}
	.flex_reverse .col_3x2:nth-child(odd){ padding: 0 0 0 2%;}
	
	.flex_col_2.mg48p .col_2{ width: 48%;}
	.flex_col_2.mg49p .col_2{ width: 49%;}
	.flex_col_2 .col_2:nth-child(odd){ margin: 0 auto 0 0;}
	.flex_col_2 .col_2:nth-child(even){ margin: 0 0 0 auto;}
	.flex_col_3 .col_3{ padding: 0 1%;}
	.flex_col_3.mg32p .col_3,
	.flex_col_3.mg33p .col_3{ margin: 0 auto;}
	.flex_col_3.mg32p .col_3{ width: 32%;}
	.flex_col_3.mg33p .col_3{ width: 33%; padding-bottom: 2em}
	.flex_col_3.mg32p .col_3:nth-child(3n+1),
	.flex_col_3.mg33p .col_3:nth-child(3n+1){ margin-left: 0; padding: 0 2% 0 0;}
	.flex_col_3.mg32p .col_3:nth-child(3n),
	.flex_col_3.mg33p .col_3:nth-child(3n){ margin-right: 0; padding: 0 0 0 2% ;}
}
@media (max-width: 500px){
	.col_4{ width: 50%;}
}
@media (min-width: 501px) and (max-width: 767px){
	.col_4{ width: 33.3333333%;}
}
.flex_col_4 .col_4{ padding: 0 .5% 1em;}
.col_2, .col_3, .col_3x2, .col_4, .col_4x3,
.col_5, .col_5x2, .col_5x3, .col_5x4,
.f_l, .f_r{ box-sizing: border-box;}
/*
.col_3x2:nth-child(odd), .col_3:nth-child(odd),
.col_4x3:nth-child(odd){ margin-bottom: 1em;}
*/

.fa, .fab, .fad, .fal, .far, .fas {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
}
a:hover img{ opacity: .8;}
a.nwicn:after{
	margin-left: .5em;
	content: "\f2d2";
	font-family: "Font Awesome 5 Free";
}
a.zoom:before{
	content: "\f002 ";
	letter-spacing: .3em;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
}
a.file{
	padding: 0 0 0 1.2em;
	position: relative;
	display: inline-block;
}
a.file:before{
	position: absolute;
	left: 0;
    content: "\f15c";
	font-family: "Font Awesome 5 Free";
}
a.pdf:after{
	margin-left: .5em;
	color: #d81010;
	content: "\f1c1";
	font-family: "Font Awesome 5 Free";
}
.attention:before{
	margin-right: .5em;
	color: #d81010;
	content: "\f05a";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
}

ul.li_mg0hb > li{ margin-bottom: .5em;}
ul.dot li,
ul.star > li{
	padding: 0 0 0 1.3em;
	position: relative;
}
ul.dot li:before,
ul.star > li:before{
	position: absolute;
	top: 0;
	left: 0;
	color: #1058aa;
	font-size: 1em;
	font-family: "Font Awesome 5 Free";
	transform: none;
}
ul.dot > li:before{ content: "\f111";}
ul.star > li:before{ content: "\f005"; color: #481c87;}

.post ol{margin: 0 0 1.5em 1em; padding: 0 0 0 .5em;}
.post ol > li{list-style:decimal;}

ul.bullet li{
	padding: 0 0 0 1em;
	position: relative;
}
ul.bullet li::before {
	margin: 0 0 0 -1.5em;
	position: absolute;
	color: #555;
	content: "\f111";
	font-size: 50%;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	top: calc(50% - .5em);
    line-height: 1;
}
/* list Check Icon */
ul.ic_check li{
	padding: 0 0 0 1.5em;
	position: relative;
}
ul.ic_check li:before{
	margin: 0 0 0 -1.25em;
	position: absolute;
	color: #555;
	content: "\f14a";
	font-family: "Font Awesome 5 Free";
}
/* list File Icon */
ul.file li{
	padding: 0 0 0 1.2em;
	position: relative;
}
ul.file li:before{
	color: #999;
	position: absolute;
	left: 0;
    content: "\f15c";
	font-family: "Font Awesome 5 Free";
}
/* Flow List */
ul.number li{ padding: 0; list-style: none;}
ul.number li:after {
	clear: both;
	display: block;
	color: #555;
	text-align: center;
	line-height: 1.2;
    content: "\f103";
	font-family: "Font Awesome 5 Free";
	font-size: 2.5em;
	font-weight: bold;
}
ul.number li:last-child:after { display: none;}

/* Flow Mumber List */
ol.number{
	margin: 0 0 1.5em;
	padding: 0;
	counter-reset: li;
	/*line-height: 1.6;*/
}
ol.number > li{
	padding: 0;
	position: relative;
	clear: both;
	list-style: none;
	font-size: .95em;
}
ol.number > li h4{ padding: 0; font-size: 1.4em;}
ol.number > li h4:before, ol.number li h4:after{display: none;}
ol.number > li p{ margin-bottom: .75em;}
ol.number > li:before {
	margin: 0 .5em 0 0;
	display: block;
	float: left;
	color: white;
	counter-increment: li;
	content: counter(li) "";
	background: #555;
	width: 1.5em;
	height: 1.5em;
	border-radius: 100%;
	text-align: center;
	line-height: 1.5em;
	font-size: 1.5em;
	font-weight: 600;
}
ol.number.absNo > li:before { position: absolute;}
ol.number.absNo > li figure img{ border-radius: 1em 0 0 0;}
ol.number.arrow_down > li:after {
	clear: both;
	display: block;
	color: #666;
	text-align: center;
	line-height: 1;
    content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-size: 5em;
	font-weight: bold;
}
ol.number.arrow_down > li:last-child:after { display: none;}

/* process_hol */

ul.process_hol li{
	margin-bottom:  1em;
	padding-right: 3em;
	position: relative;
	box-sizing: border-box;
	float: left;
}
ul.process_hol li:after{
	position: absolute;
	top: 2em;
	right: .5em;
	color: #555;
    content: "\f054";
	line-height: 1;
	font-family: "Font Awesome 5 Free";
	font-size: 2em;
	font-weight: bold;
}
ul.process_hol li:last-child:after{ display: none;}
ul.process_hol.process_h_3 li{ width: 33.33333333%}
ul.process_hol.process_h_4 li{ width: 25%;}
@media (max-width: 767px){
	ul.process_hol.process_h_3 li{ width: 50%;}
	ul.process_hol.process_h_3 li:nth-child(odd){ clear: both;}
	ul.process_hol.process_h_4 li{ width: 33.33333333%;}
	ul.process_hol.process_h_4 li:nth-child(3n+1){ clear: both;}
}
@media (max-width: 520px){
	ul.process_hol.process_h_4 li{ width: 50%;}
}

ul.anchor{
	margin: 0 0 1.5em;
	padding: 0;
	list-style: none;
	border: solid 2px #666;
}
ul.anchor li{
	margin: 0;
	padding: 0;
}
ul.anchor li a{
	padding: .25em 2.5em;
	position: relative;
	display: block;
	color: #333;
	border-bottom: solid 1px #f5f2ee;
	line-height: 1.75;
}
ul.anchor li:last-child a{ border-bottom: none;}
ul.anchor li a:before{
	color: #555;
	content: "\f078";
	position: absolute;
	top: auto;
	left: 1em;
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
}
ul.anchor li a:hover{ color: #555; text-decoration: none;}
ul.anchor li a.next{ float: none;}
ul.anchor li a.next:before{ content: "\f054";}
ul.anchor.dsp_bck li{ display: block;}
@media (min-width: 768px){
	ul.anchor{
		padding: .5em 1em;
		text-align: center;
	}
	ul.anchor.l{ text-align: left;}
	ul.anchor li{ display: inline-block;}
	ul.anchor li a{
		padding: .3em 1em .15em;
		border-bottom: none;
	}
	ul.anchor li a:before{ left: 0;}
}

.list50{ margin: 0 0 2em;}
.list50 li{
	margin: 0 0 3em;
	padding: 0;
	float: left;
	width: 50%;
	box-sizing: border-box;
	text-align: center;
}
.list50 li:nth-child(odd){ padding-right: 1.75%;}
.list50 li:nth-child(even){ padding-left: 1.75%;}

.inline{ margin: 0 0 1em; padding: 0 !important; list-style: none;}
.inline li{ margin: 0 1em 0 0; display: inline;}
.inline li img{ margin-right: .5em;}
.inline_gy{ margin: 0 0 2em; padding: 0 !important; list-style: none; clear: both;}
.inline_gy li{ margin: 0 0 .4em; padding: .25em .8em; display: inline-block; background: #555; font-size: 90%;}
.inline_btns{ margin: 0 0 1.5em; padding: 0 !important; list-style: none;}
.inline_btns > li{ padding: 0 .5em .5em 0 !important; display: inline-block; box-sizing: border-box;}
.inline_btns.col_sm_3 > li{ width: 33.33333%;}
.inline_btns.col_sm_4 > li{ width: 25%;}
.inline_btns.c a.btn{ display: block;}

table{
	margin:.2em 0 1.5em;
	width: 100%;
	max-width: 100% !important;
	border: 1px #ccc solid;
	border-collapse: collapse;
	border-spacing: 0;
}

table th,
table td{
	padding: .4em .7em;
	border: 1px #ccc solid;
	border-width: 0 0 1px 1px;
	vertical-align: middle;
	line-height: 1.5;
	font-size: .9em;
}
table th{
	background: #eee;
	white-space: nowrap;
	text-align: center;
	font-weight: normal;
}
table th.th2nd,
table th[scope="row"]{ background: #f6f6f6;}
.th_nowrap th, .td_nowrap td{ white-space: nowrap;}
.th_center th, .td_center td,
th.th_center, td.td_center{ text-align: center;}
.th_right th, .td_right td,
th.th_right, td.td_right{ text-align: right;}
.th_top th, .td_top td,
th.th_top, td.td_top{ vertical-align: top !important;}
.th_btm th, .td_btm td,
th.th_btm, td.td_btm{ vertical-align: bottom !important;}
.table ul, .table li, .table p{ margin: 0;}

hr{
	margin: 0 auto;
	padding: 2em 0;
	clear: both;
	border: none;
    height: 0;
	width: 25%;
}
.thin{ padding: .6em 0;}
.hr_bd{
	margin: 0 0 1.5em;
	padding: 0 0 1.5em;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #ddd;
}
.hr_bd.thin{
	margin: 0 0 .5em;
	padding: 0 0 .5em;
}
.delimiter{
	margin: 0 auto 3em;
	padding: 3em 0 0;
	position: relative;
	width: 12%;
	height: 0;
	border-bottom: solid 1px black;
	overflow: visible;
	text-align: center;
}
.delimiter:before,
.delimiter:after{
	content: "";
	position: absolute;
	bottom: -6px;
	left: 50%;
	height: 10px;
	width: 10px;
	border-radius: 5px;
}
.delimiter:before{ background: #555; margin-left: -3.5px;}
.post .delimiter:last-child{ display: none;}

.alignright{
	margin: 0 0 1em 4%;
	display:inline;
	float:right;
}
.alignleft{
	margin:0 4% 1em 0;
	display:inline;
	float:left;
}
.alignnone,
.alignright,
.alignleft{ width: auto !important;}
.alignright,
.alignleft{ max-width: 45%;}
.img_shadow{ box-shadow: .25em .25em 1em rgba(0,0,0,0.15);}
.img_shade{ box-shadow: .15em .15em .5em rgba(0,0,0,0.15);}
.img_frame3{ border: solid 3px white; box-sizing: border-box;}
.img_frame2{ border: solid 2px white; box-sizing: border-box;}
.img_frame1{ border: solid 1px white; box-sizing: border-box;}

/* gallery */
.wp-caption{ background: none; border: none;}
.wp-caption img{ margin: 0 0 .3em; max-width: 100% !important;}
.wp-caption-text,
.wp-caption p.wp-caption-text{
	margin: .4em 0 1em;
	padding: 0;
	border: none;
	background: none;
	width: auto !important;
	line-height: 1.5 !important;
	text-align: left;
	/*font-size: 90%;*/
}
.gallery-item{
	margin: 0 !important;
	padding: 0 .5%;
	float: left;
	width: 50% !important;
	box-sizing: border-box;
	text-align: left !important;
}
.gallery-item:nth-of-type(odd){ clear: both;}
.gallery br{ display: none !important;}
.gallery dd br{ display: inherit !important;}
.gallery-item dt{ margin: 0; padding: 0 !important; border: none;}
.gallery-item a{ color: #222; display: block !important;}
.gallery-item a:hover img{ opacity: 0.85;}
.gallery-item img{ border: solid 1px #eae2d4 !important; max-width: 100% !important;}
.gallery .gallery-caption{ margin-top: .5em; color: black;}

/* gallery & flow (+arrow) */
.gallery_flow .gallery-item dt,
.gallery_flow .gallery-item dd{ padding: 0 2.5em 0 0 !important;}
.gallery_flow .gallery-item dt{ position: relative;}
.gallery_flow .gallery-item dt:before,
.gallery_flow .gallery-item dt:after{
	content: "";
	position: absolute;
	border-top: 2px solid #555;
	top: 50%;
}
.gallery_flow .gallery-item dt:before{
	right: .5em;
	width: 2em;
	height: 0;
}
.gallery_flow .gallery-item dt:after{
	margin: -1em .5em 0 0;
	border-right: 2px solid #555;
	right: calc( .5em - 2px );
	width: 2em;
	height: 2em;
	transform: rotate(45deg);
}
.gallery_flow .gallery-item:last-of-type dt:after,
.gallery_flow .gallery-item:last-of-type dd:after{ display: none;}

.nivo-lightbox-theme-default .nivo-lightbox-title {
	font: inherit !important;
    background: white !important;
    color: #42210b !important;
    border-radius: 5px !important;
}
.tos-caption{ display: none;}

/* Dlist ----------------------------*/
dl{ margin: 0 0 1.5em; padding: 0;}
dl dl{ margin-bottom: 0 !important;}
dt, dd{ margin-bottom: .35em;}

dt{ position: relative; font-weight: bold;}
dd{ margin: 0 0 1em; padding-bottom: .5em; border-bottom: 1px solid #ddd;}
dd ul{ margin: 0; padding: 0 0 0 1em;}
dd ol{ margin: 0 0 0 1em; padding: 0 0 0 .5em;}
.Dlist dt{ margin: 0; padding: 0; float: left; width: 8em; font-weight: normal;}
.Dlist dd{ margin: 0 0 .4em; padding: 0 0 .4em 8.5em;}
.Dlist.dt_S dt{ width: 6em;}
.Dlist.dt_S dd{ padding-left: 6em;}
.Dlist.dt_L > dt{ width: 11em;}
.Dlist.dt_L > dd{ padding-left: 11em;}
.Dlist.dt_LL > dt{ width: 13em;}
.Dlist.dt_LL > dd{ padding-left: 13em;}
.Dlist dd dl{ margin: 0;}
.Dlist dd dt{ padding-bottom: 0; font-weight: normal;}
.Dlist dd dd{ margin: 0; padding-bottom: 0; border-bottom: none;}
.Dlist.nobd dd{ margin: 0; padding: 0; border: none;}
.Dlist dd p:last-child,
.dt_dot dd p:last-child{ margin-bottom: 0;}
.dt_dot dt{ padding-left: 1.5em !important; border: none;}
.dt_dot dt:before{
	position: absolute;
	left: 0;
	color: #333;
	content: "\f111";
	font-family: 'Font Awesome 5 Free';
}
.dt_dot dd{ margin: 0 0 .6em;}
.dt_dot.dt_ic_white dt:before{ color: white;}
.dt_dot.dt_ic_gray1 dt:before{ color: #ddd;}
.dt_dot.dt_ic_gray2 dt:before{ color: #666;}

.dl_table{
	display: table;
	width: 100%;
}
.dl_table dt, .dl_table dd{
	margin: 0;
	display: table-cell;
	border-bottom: solid 1px white;
	font-weight: normal;
}
.dl_table dd{ padding-left: 1em;}

.dl0{
	margin: 0 0 20px;
	line-height: 1.6;
}
.dl0 dt{
	margin: 0;
	padding: .3em 0 0;
	clear: both;
}
.dl0 dd{
	margin: 0;
	padding: 0 0 .3em;
	border-bottom: solid 1px white;
}
.dl1{ margin: 0 0 1.5em;}
.dl1 dt:before{
	margin: 0 .3em 0 0;
	color: white;
	content: "\f069";
	font-family: 'Font Awesome 5 Free';
}
.dl1 dd{
	margin: 0 0 .45em;
	padding: 0 2px .45em 1.3em;
	border-bottom: solid 1px white;
}

/* column */

.column1, .column2{ margin: 0 0 2em; padding: 1em 1.5em;}
.column1{ border: solid 2px #555; background: white;}
*[class^=column] p:last-child{ margin: 0 0 .25em;}
.column2{ border: solid 1px #e56163;}
.column2 p{ padding: 0;}
.alignleft .column1,
.alignleft .column2,
.alignright .column1,
.alignright .column2{ padding: .7em 1em .2em;}

iframe,
#map_canvas{
	width: 100%;
	border: none;
	box-sizing: border-box;
	vertical-align: bottom;
	height: 500px;
}
iframe.map_footer{ height: 40vh;}
.Dlist iframe{ margin-top: .5em; height: 350px;}

/* BTN ****************/

a.btn,
.prev a,
.next a{
	padding: .5em 2em .5em 1em;
	display: block;
	color: white;
	background: #481c87;
	position: relative;
	border: solid 2px white;
	line-height: 1.5em;
	/*font-size: .85em;*/
	font-weight: bold;
}
h3 .cat-data a{ padding: .2em 1em;}
a.btn:after,
.next a:after{
	content: "\f054";
	font-family: 'Font Awesome 5 Free';
	position: absolute;
	right: 1em;
	top: calc(50% - .75em);
	font-size: 1em;
}
.prev a{ padding: .5em 1em .5em 2em;}
.prev a:before{
	margin: 0 .5em 0 0;
	content: "\f053";
	font-family: 'Font Awesome 5 Free';
	position: absolute;
	left: 1em;
	top: calc(50% - .75em);
	font-size: 1em;
}
a.btn:hover,
.prev a:hover,
.next a:hover{
	text-decoration: none;
	transition: .5s;
	background: #730778;
}
a.l{ float: left;}
a.r{ float: right;}
.c a.btn{
	margin: 0 auto;
	display: inline-block;
}
/* PAGES ****************/

/* Flow 番号付きリスト＋下矢印　ol使用 */
ol.flow{
	margin: 0;
	counter-reset: li;
}
ol.flow > li{
	margin: 0 0 1.5em 2em;
	padding: 0 0 0 1.5em;
	position: relative;
	background: none;
	border-left: 2px dotted #ccc;
	clear: both;
	list-style: none;
}
ol.flow > li:before{
	padding: .25em;
	color: white;
	background: #555;
	border-radius: 1em;
	position: absolute;
	top: .25em;
	left: -1.75em;
    counter-increment: li;
	content: counter(li) "";
    /*content: counter(li) ". ";*/
	width: 1em;
	line-height: 1;
	text-align: center;
	font-size: 1.8em;
	font-weight: 700;
}
ol.flow li .w50p:last-of-type{ margin: 0 0 .75em;}
ol.flow > li strong{ font-size: 110%;}
ol.flow > li h4{ padding-left: 0;}
ol.flow > li h4:before{ display: none;}
ol.flow > li p{ margin: 0 0 .7em;}
ol.flow > li p:last-child,
ol.flow > li ul:last-child{ margin: 0;}
ol.flow.flow_arrow > li:after{
	padding: .2em 0 0;
	clear: both;
	display: block;
	color: #555;
	border-top: dashed 1px rwhite;
	text-align: center;
	line-height: .8;
    content: "\f103\f103";
	letter-spacing: 3em;
	font-family: "Font Awesome 5 Free";
	font-size: 300%;
}
ol.flow.flow_arrow > li:last-child:after{ display: none;}

.widget_search, #searchform
{ text-align: center;}
.widget_search .screen-reader-text,
#searchform .screen-reader-text{ display: none;}
.wp-block-search__inside-wrapper{ display: block;}

.widget_search .wp-block-search__input,
input[type="text"], input[type="email"], input[type="tel"], textarea, select, input[type="checkbox"]{
	margin: .2em;
	padding: .25em;
	vertical-align:middle;
	max-width:90%;
	border:1px solid #ccc;
	color: black;
	background: white;
	box-sizing: border-box;
	border-radius: .35em;
	line-height: 1.8;
	font-size: 1em;
}
textarea{
	padding: .1em  1%;
	height:auto;
	width: 100%;
	max-width: 100%;
}
input[type="checkbox"]{ margin: 0 .3em 0 0;}
label{ margin: 0 .5em 0 0; display: inline-block;}
.widget_search .wp-block-search__button,
input[type="submit"],input[type="reset"],input[type="button"]{
	margin: .2em;
	padding: .25em 3em;
    flex-grow: 0;
	color: white;
	vertical-align:middle;
	border:0;
	border: 1px solid #481c87;
	border-radius: .35em;
	background: #481c87;
	cursor: pointer;
	line-height: 1.8;
	font-size: 1em;
	font-weight: bold;
}
input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
	background: #730778;
	cursor:pointer;
	transition: .5s;
}
*:first-child+html input[type="submit"]{padding:3px;}

@media (max-width: 767px){
	body{ background-image: url(images/bg_sph.jpg);}
	table th,
	table td{
		padding: .2em;
		width: auto !important;
		font-size: 80%;
	}
	table td{ word-break: break-all;}
	.wp-caption-text{ font-size: 85%;}
	.pagenav{ margin: 0 10px 2em;}
	
	.column1, .column2,
	.alignleft .column1,
	.alignleft .column2
	.alignright .column1,
	.alignright .column2{ padding: .75em;}

	iframe{ height: 80vh;}

	/* PAGES ****************/

	.inline_btns.col_sm_3 > li{ width: 50%;}

	/* Flow */
	/* Flow 1 */
	.post ul.flow1{ border-radius: 0;}
	.post ul.flow1 > li,
	.post ul.flow1 > li:nth-child(3){
		padding: 1em;
		width: 100%;
		height: auto;
		display: block;
		border-bottom: solid 1.5em white;
	}
	.post ul.flow1 > li:last-child{ border: none;}
	.post ul.flow1 > li:before,
	.post ul.flow1 > li:nth-child(3):before{
		margin-left: -1.5em;
		top: auto;
		right: auto;
		left: 50%;
		bottom: -2em;
		width: 3em;
		height: 3em;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
		border-color: #111;
	}
	#footer{ padding-top: 15px;}
	#footer #footer_logo img{ max-width: 200px;}
	#footer ul{ display: none;}
}
@media (max-width: 500px){
	.post.toppage .c{ text-align: left !important;}
	.post.toppage .c br{ display: none;}
	.cachcopy{ text-align: left;}
	.cachcopy br{ display: none;}
	.nobr br{ display: none;}
	.f_l, .f_r{ margin-bottom: 2em; float: none;}
	.w15p, .w20p, .w25p,.w30p{ width: 50%;}
	.w33p, .w35p,.w40p, .w50p, .w60p,.w65p,.w70p,.w80p,.w90p{ width: 100%;}
	.w33p{ margin: 0 0 1em;}
	.col_2,
	.col_3{ margin: 0 0 1em; width: auto; float: none;}
	.col_2 .col_2{ margin: 0 4% 0 0; width: 48%;}
	.inline_btns.col_sm_3 > li{ padding-right: 0 !important; width: auto; display: block;}
	.Dlist{ margin: 0 0 1em;}
	.Dlist dt, #toppage .Dlist dt,
	.Dlist dd, #toppage .Dlist dd{ float: none; width: auto;}
	.Dlist div{ margin: 1em 0 0;}
	.Dlist dt, .Dlist.dt_S > dt, .Dlist.dt_L > dt, .Dlist.dt_LL > dt,
	.Dlist dd, .Dlist.dt_S dd, .Dlist.dt_L > dd, .Dlist.dt_LL > dd{ float: none; padding-left: 0;}
	.alignleft, .alignright,
	.img_l, .img_r{
		margin: 0 auto 1.5em;
		float: none;
		display: block;
		max-width: 60%;
	}
	.gallery-item,
	.gallery-item:nth-of-type(odd){
		/*margin: 0 0 1em !important;*/
		width: auto !important;
		border: none !important;
	}
	.list50 { margin: 0 10px 2em;}
	.list50 li{ float: none; width: auto;}
	.list50 li:nth-child(odd),.list50 li:nth-child(even){ padding: 0;}
	#footer li a span{ display: none;}
}
@media (max-width: 600px){
	.mainimg_pc{ display: none;}
	.mainimg_sph{ display: inline-block;}
}
@media (min-width: 768px) and (max-width: 1019px){
	#wrapper, .inner{ width: auto; max-width: 100%;}
	ul.post,
	ul#banners{ margin: 0 1.5%;}
	#sidebar ul#banners{ margin: 0;}
}
@media (min-width: 768px) and (max-width: 1019px){
	#wrapper, .inner { width: 100%;}
}

@media (min-width: 768px) and (max-width: 1019px){
	body{ font-size: .85em;}
	#header h1,
	#header h2{ margin-left: 10px;}
	#header p,
	#header ul,
	#header .contact{ margin-right: 10px;}
	/*nav#mainNav{ font-size: 95%;}
	nav#mainNav ul { margin: 0 1%;}
	nav#mainNav ul li a{ padding: 1em;}
	nav#mainNav ul li:hover ul{ top:41px;}
	#content{ margin: 0 1.5% 0 0; width: 71%;}*/
	.timetable th, .timetable td{
		padding: .2em;
		font-size: .8em;
	}
	#sidebar{ margin: 0 0 0 1.5%; width: 23%; line-height: 1.7; font-size: 85%;}
	.alignright, .alignleft { max-width: 35%;}
}

/* Wordpress Blocks ---------------------------------------------------------*/
.wp-block-columns{ margin: 0 0 1.5em;}
.wp-block-image,
.wp-block-table{ margin: .25em 0 1.5em;}
.wp-block-table.is-style-stripes tbody tr:nth-child(2n+1){ background: rgba(0,0,0,.05);}
.wp-block-table.is-style-stripes{ border: none;}
.wp-block-table.is-style-stripes table{ border-collapse: inherit; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc;}
/* Wordpress Contact Form 7 ---------------------------------------------------------*/
.wpcf7 form .wpcf7-response-output{ text-align: center;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output{ border-color: #d81010;}
.wpcf7 form.sent .wpcf7-response-output { display: none; border-color: transparent;}
span.wpcf7-list-item{ margin: 0;}
.wpcf7-not-valid-tip{ color: #d81010;}


/* --- GET HIGHT --- */
section:after, .inner:after, nav .panel:after, nav#mainNav ul:after, .newsTitle:after, .bg:after, .post:after, .pagenav:after, ul#banners:after, #footer:after, #footer li a:after, .flexbox:after, .col_2:after, .col_3:after, .col_3x2:after, .col_4:after, .col_4x3:after, .col_5:after, .col_5x2:after, .col_5x3:after, .col_5x4:after, .clrfx:after, .Dlist:after, .post-content:after, .post ol.flow > li:after, .post ul:after, .thumb:after, .list50:after, ul.post li:after, .gallery:after, .column1:after, .column2:after,.post_excerpt:after{ content:""; display: table;clear: both;}

section, .inner, nav .panel, nav#mainNav, nav#mainNav ul, .newsTitle, .bg, .post, .pagenav, ul#banners, #footer, #footer li a, .flexbox, .col_2, .col_3, .col_3x2, .col_4, .col_4x3, .col_5, .col_5x2, .col_5x3, .col_5x4, .clrfx, .Dlist, .post-content, .post ol.flow > li, .post ul, .thumb, .list50, ul.post li, .gallery, .column1, .column2,.post_excerpt{zoom: 1;}

