@charset"utf-8";
/*
-----------------------------------------------
護王神社 Web Site  --  Primary CSS
Latest update : 20 Oct., 2026
----------------------------------------------- */

/**
 * Table of Contents
 *
 * 1.0 - Typography
 * 2.0 - Alignment
 * 3.0 - Clearfix
 * 4.0 - Links
 * 5.0 - Navigations
 * 6.0 - layout
 * 7.0 - Forms
 *
 */

:root	{

	--color-primary:#005FA0;

	--font-family-serif: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;

}


/* **************************************************************************** */
/*
/* 1.0 Typography
/*
/* **************************************************************************** */

/**
 * 1.1 Typo
 */

body,
button,
input,
select,
textarea {
	font-family: 'Roboto', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", sans-serif;
	font-size: 1.4rem;
	line-height: 1;
	color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear:both;
	font-weight:600;
	line-height:1.35;
}
h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5,
h5 + h6 { margin-top:0 !important;}

h1	{ font-size:2.4rem;}
h2	{ font-size:2.1rem;}
h3	{ font-size:2.0rem;}
h4	{ font-size:1.6rem;}
h5	{ font-size:1.4rem;}
h6	{ font-size:1.4rem;}

h1, h2, h3, h4, h5 { font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
article h1,
article h2 { margin:3em 0 1.2em;}
article h3,
article h4 { margin:2em 0 1em;}
article h5,
article h6 { margin:1em 0 0.5em;}

article h1:first-child,
article h2:first-child,
article h3:first-child,
article h4:first-child,
article h5:first-child,
article h6:first-child,
section h1:first-child,
section h2:first-child,
section h3:first-child,
section h4:first-child,
section h5:first-child,
section h6:first-child,
.page-content h1:first-child,
.page-content h2:first-child,
.page-content h3:first-child,
.page-content h4:first-child,
.page-content h5:first-child,
.page-content h6:first-child,
.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child,
.entry-content h4:first-child,
.entry-content h5:first-child,
.entry-content h6:first-child,
.content h1:first-child,
.content h2:first-child,
.content h3:first-child,
.content h4:first-child,
.content h5:first-child,
.content h6:first-child { margin-top:0 !important;}

h3.icho { padding:0 0 0 26px; background:url(../img/common/icon-headline.png) no-repeat 0 1px / 21px auto;}

h2.square { position:relative; padding-left:20px;}
h2.square:before { position:absolute; top:5px; left:0; content:''; width:16px; height:16px; background-color:#BEB6E5;}
h3.square { position:relative; padding-left:20px;}
h3.square:before { position:absolute; top:4px; left:0; content:''; width:16px; height:16px; background-color:#BEB6E5;}

.border-tb { padding:1em 0; border:solid #C5BD9C; border-width:1px 0;}


p {}
article p { margin-bottom:1.6em; line-height:1.8;}

b,
strong 	{ font-weight: 600;}

em		{ font-style: normal; color:#5A19A0;}

dfn,
cite,
i {
	font-style: italic;
}

blockquote {
	border-left: 4px solid #707070;
	border-left: 4px solid rgba(51, 51, 51, 0.7);
	color: #707070;
	color: rgba(51, 51, 51, 0.7);
	font-size: 1.8rem;
	font-style: italic;
	line-height: 1.6667;
	margin-bottom: 1.6667em;
	padding-left: 0.7778em;
}

blockquote p { margin-bottom: 1.6667em;}

blockquote > p:last-child { margin-bottom: 0;}

blockquote cite,
blockquote small {
	color: #333;
	font-size: 1.5rem;
	line-height: 1.6;
}

blockquote em,
blockquote i,
blockquote cite {
	font-style: normal;
}

blockquote strong,
blockquote b {
	font-weight: 400;
}

address {
	font-style: normal;
	margin: 0;
	line-height:1.8;
}

code,
kbd,
tt,
var,
samp,
pre {
	font-family: Inconsolata, monospace;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

pre {
	background-color: transparent;
	background-color: rgba(0, 0, 0, 0.01);
	border: 1px solid #eaeaea;
	border: 1px solid rgba(51, 51, 51, 0.1);
	line-height: 1.2;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 0.8em;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

abbr[title] {
	border-bottom: 1px dotted #eaeaea;
	border-bottom: 1px dotted rgba(51, 51, 51, 0.1);
	cursor: help;
}

mark,
ins 	{ background-color: #fff9c0; text-decoration: none;}

sup,
sub 	{ font-size: 75%; height: 0; line-height: 0; position: relative; vertical-align: baseline;}
sup		{ bottom: 1ex;}
sub		{ top: .5ex;}

small	{ font-size: 86%;}

big,
.big	{ font-size:125%;}




/**
 * - 1.2 Lists
 */

ul,
ol { margin: 1.6em 0 1.6em 0em; list-style-position:outside; line-height:1.5;}
ol { margin: 1.6em 0 1.6em 1.6em;}

ul { list-style:none;}

ol { list-style: decimal;}
ol ol { list-style: lower-roman;}

li > ul,
li > ol {
	margin: 1em 0 1em 0em;
}
nav ul,
nav ul.menu li { margin:0; padding:0;}
nav ul.menu li:before { background:none;}

h1 + ul, h2 + ul, h3 + ul, h4 + ul, h5 + ul, h6 + ul,
h1 + ol, h2 + ol, h3 + ol, h4 + ol, h5 + ol, h6 + ol { margin-top:0 !important;}

ul.lr	{ list-style:none; text-align:right;}
ul.lr .l	{ display:inline-block; position:relative; z-index:1; float:left; text-align:left; background-color:#fff;}
ul.lr .r	{ display:inline-block; position:relative; z-index:2; padding:0 0 0 0.5em; text-align:right; background-color:#fff;}
ul.lr li 	{ position:relative;}
ul.lr li:after { position:absolute; top:50%; left:0; content:''; width:100%; border-top:1px dashed #ccc;}

article ul li { position:relative; margin:0 0 0.8em; padding-left:10px;}
article ul li:before { position:absolute; content:''; top:7px; left:0; width:5px; height:5px; background-color:#4F187E; border-radius:10px;}
article ol li { position:relative; margin:0 0 0.8em;}
article ul ol			{ margin-left:1.2em;}
article ol ol			{ margin-left:1.2em;}
article ul ol li		{ padding-left:0;}
article ul ol li:before	{ background:none;}

ul.noliststyle li		{ padding-left:0;}
ul.noliststyle li:before{ background:none !important; border:none !important;}

ul.attention li	{ padding-left:20px; color:#000;}
ul.attention li:before	{ top:0; left:0; content:'※'; color:#f00; background:none;}


dl { margin-bottom:1.6em; font-size:1.4rem; line-height:1.5;}
dt { margin:1em 0 0.2em; font-weight:bold;}
dd { margin:0 0 1em; padding:0 0 1em; border-bottom:1px solid #ccc;}

dl.dtdd	{}
dl.dtdd dt	{}
dl.dtdd	dd	{}


/**
 * - 1.3 Table
 */

table,
th,
td {
	border: 1px solid #E1DDCA;
}

table {
	border-collapse:collapse;
	border-spacing: 0;
	border-width: 0 0 1px;
	margin: 0 0 1.6em;
	table-layout: fixed; /* Prevents HTML tables from becoming too wide */
	width: 100%;
}

caption,
th,
td 		{ font-weight:normal; text-align:left; vertical-align:middle; line-height:1.25;}
th, td 	{ padding:1em 1em; font-size:1.3rem;}
table tr.center th,
table tr.center td { text-align:center;}

caption { 
	margin:0.2em 0; color:#333; caption-side:bottom;
	font-size:1.3rem; line-height:1.5; text-align:left;
}

thead	 { border-bottom:3px double #666;}
thead th { text-align:center; font-weight:bold; background-color:#E1DDCA; border-color:#fff;}
thead td { text-align:center; background-color:#fff;}

tbody th { background-color:#E1DDCA; border-color:#fff;}
tbody tr:nth-child(odd) 	{ background-color:rgba(255,255,255,.5);}
tbody tr:nth-child(even) 	{}

tfoot	 { border-top:3px double #666;}
tfoot th { text-align:center; font-weight:bold; background-color:#D8BEEE;}
tfoot td { text-align:center; background-color:#fff;}

table th.middle, table td.middle { vertical-align:middle;}
td.double-top		{ border-width:3px 1px 1px 1px;}
td.double-right		{ border-width:1px 3px 1px 1px;}
td.double-bottom	{ border-width:1px 1px 3px 1px;}
td.double-left		{ border-width:1px 1px 1px 3px;}

table td {}
table th p { margin:0; line-height:1.5;}
table td p { margin:0 0 0.5em; line-height:1.5;}

table ul,
table ol { margin:.6em 0 .6em 0em; list-style-position:outside; line-height:1.25;}
table ul li:before { top:4px !important;}

table th.pale,
table td.pale{background:#EBE9DB; border-color:#fff;}
table td.price{background:#E1DDCA; border-color:#fff;}

.yscroll	{ position:relative; margin:0 0 24px; width:100%; overflow-x:scroll;}
.yscroll table	{ margin:0 0 2px;}
.yscroll::-webkit-scrollbar			{ height:5px;}
.yscroll::-webkit-scrollbar-track	{ background:#D8BEEE; border-radius:10px;}
.yscroll::-webkit-scrollbar-thumb	{ background:#5A19A0; border-radius:10px;}



/**
 * - 1.4 Elements
 */

::selection {background:#CDD3CD; color:#fff;}
::-moz-selection { background:#CDD3CD; color:#fff;}

hr {
	background-color: #eaeaea;
	background-color: rgba(51, 51, 51, 0.1);
	border: 0;
	height: 1px;
	margin-bottom: 1.6em;
}
hr.none { background-color:transparent;}

img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
.image img { width:100%; height:auto;}
img { width:100%; height:auto;}

figure 		{ margin:0 0 1em;}
figcaption 	{ padding:4px 2px; line-height:1.4;}

del { opacity: 0.8;}




/**
 * - 1.5 Decoration
 */

.screen-reader-text	{ font-size:0;}

.lead	{ font-size:1.6rem; font-family:var(--font-family-serif);}
.attention { color:#f00;}
.note	{ font-size:1.3rem; line-height:1.5; color:#666;}
.caption{ font-size:1.3rem; line-height:1.5; color:#666;}
.wp-caption-text{ font-size:1.3rem; line-height:1.5 !important; color:#666;}

.border 	{ border-bottom:1px solid #999;}
.bordered 	{ padding:0.8em; border:1px solid #6699FF; border-radius:5px;}
.filled		{ padding:0.5em 0.8em; background-color:#ededed;}
.filledwrap .filled { background-color:#fff;}


/* size */
.large	{ font-size:120%;}
.small	{ font-size:86%;}
.abs-small{ font-size:1.1rem;}

/* color */
.dark	{ color:#000;}
.pale	{ color:#999;}

/* family */
.serif	{ font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.sans	{ font-family: "Roboto", Helvetica, sans-serif;}

/* style */
.normal	{ font-style: normal;}
.italic	{ font-style: italic;}




/* **************************************************************************** */
/*
/* 2.0 Alignments
/*
/* **************************************************************************** */

.alignleft {
	display: inline-block;
	float:left;
}

.alignright {
	display: inline-block;
	float:right;
}

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

img.alignleft	{ margin:0 2.6em 1.6em 0;}
img.alignright	{ margin:0 0 1.6em 2.6em;}
img.alignnone	{ margin:0 auto 1.6em;}

div.alignleft	{ margin:0 2.6em 1.6em 0;}
div.alignright	{ margin:0 0 1.6em 2.6em;}
div.alignnone	{ margin:0 auto 1.6em;}

div.alignleft img,
div.alignright img,
div.alignnone img { margin:0 0 0.5em;}

.left	{ text-align:left;}
.right	{ text-align:right;}
.center	{ text-align:center;}



/* **************************************************************************** */
/*
/* 3.0 - clearfix
/*
/* **************************************************************************** */

.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}  
* html .clearfix, *:first-child+html .clearfix { zoom: 1; } /* IE6,IE7 */  

p:after {visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}  
* html p,*:first-child+html p { zoom: 1; } /* IE6,IE7 */




/* **************************************************************************** */
/*
/* 4.0 Links
/*
/* **************************************************************************** */

a {
	color: #520C9D;
	text-decoration:underline;
	outline:none;
	transition:all 0.2s ease;
}

a:visited {
	color:#520C9D;
}

a:hover,
a:focus {
	color:#8236d2;
}

a:active {
	color:#8236d2;
	outline:none;
}


a[href^="tel"] {
	pointer-events: none;
	color:#111;
}

a img { transition:all 0.2s ease;}
a:hover img { opacity:.7;}




/* **************************************************************************** */
/*
/* 5.0 Navigation
/*
/* **************************************************************************** */


/**
 * - Header navigation
 */

#headnav	{ display:none; height:46px; background:url(../img/common/bg_hnav.png) repeat center top;}
#headnav ul	{ margin:0 auto; padding:0 0 0 6px; height:40px; text-align:center; font-size:0;}
#headnav li	{ 
	display:inline-block; vertical-align:top;
	margin:0; padding:0; height:40px; 
	background-repeat:no-repeat; background-position:0 0; background-size:auto 120px;
}
#headnav li.hn_home		{ width:165px; background-image:url(../img/nav/hn_home.png);}
#headnav li.hn_history	{ width:162px; background-image:url(../img/nav/hn_history.png);}
#headnav li.hn_guide	{ width:162px; background-image:url(../img/nav/hn_guide.png);}
#headnav li.hn_prayer	{ width:162px; background-image:url(../img/nav/hn_prayer.png);}
#headnav li.hn_seminor	{ width:162px; background-image:url(../img/nav/hn_seminor.png);}
#headnav li.hn_access	{ width:165px; background-image:url(../img/nav/hn_access.png);}

#headnav li a	{
	display:block;
	height:40px;
	text-indent:-9000px;
	text-decoration:none;
	overflow:hidden;
	background-repeat:no-repeat; background-position:0 -40px; background-size:auto 120px;
	opacity:0; filter:alpha(opacity=0); 
	transition:opacity 0.2s ease-out; -moz-transition:opacity 0.2s ease-out; -webkit-transition:opacity 0.2s ease-out;
}
#headnav li.hn_home a	{ background-image:url(../img/nav/hn_home.png);}
#headnav li.hn_history a{ background-image:url(../img/nav/hn_history.png);}
#headnav li.hn_guide a	{ background-image:url(../img/nav/hn_guide.png);}
#headnav li.hn_prayer a	{ background-image:url(../img/nav/hn_prayer.png);}
#headnav li.hn_seminor a{ background-image:url(../img/nav/hn_seminor.png);}
#headnav li.hn_access a	{ background-image:url(../img/nav/hn_access.png);}
#headnav li a:hover		{ opacity:1; filter:alpha(opacity=100);}

#headnav li.current-menu-ancestor,
#headnav li.current-menu-item a{background-position:0 -80px; opacity:1; filter:alpha(opacity=100);}

#headnav ul.sub-menu { 
	visibility:hidden; z-index:-1; opacity:0; translate:0 -10px;
	position:relative; padding:6px 0 12px 0; width:170px; height:auto; font-size:1.3rem;
	transition:all 0.4s ease;
 }
#headnav ul.menu > li:hover ul.sub-menu { 
	visibility:visible; z-index:9999; opacity:1; translate:0 0;
}
#headnav ul.sub-menu li { float:none; position:relative; padding:0; height:auto; width:170px; text-align:left; background:transparent; background-image:none;}
#headnav ul.sub-menu li a { 
	margin:0; height:auto; padding:10px 10px 8px 14px; width:170px; 
	text-indent:0; color:#fff; background:rgba(90,25,160,.9) !important;
	text-shadow: 1px 1px 2px #520C9D; -moz-text-shadow: 1px 1px 2px #520C9D; -webkit-text-shadow: 1px 1px 2px #520C9D;
	opacity:1 !important; filter:alpha(opacity=100) !important;
}
#headnav ul.sub-menu li a:after	{ position:absolute; top:50%; right:10px; content:''; margin:-4px 0 0; width:7px; height:7px; border:solid rgba(255,255,255,.5); border-width:2px 2px 0 0; transform:rotate(45deg); transition:all 0.2s ease;}
#headnav ul.sub-menu li a:hover:after{ border-color:#fff;}
#headnav li ul li a:hover{ color:#fff; background:#5A19A0 !important;}



/**
 * - #subnav
 */
.subnav-title { text-align:center; padding:16px 0 16px; border-bottom:1px solid #e0e0e0;}
.subnav-title img { width:168px; height:auto;}
#subnav { position:relative; margin:0 0 40px; padding:0 6% 36px; background-color:#fff; border-radius:10px;}
#subnav:before { position:absolute; top:4px; left:4px; content:''; width:calc( 100% - 8px); height:calc( 100% - 8px ); border:1px solid #C5D6AA; border-radius:10px;}
#subnav ul		{ text-align:left;}
#subnav ul li		{ margin:0; border-bottom:1px solid #ededed;}
#subnav ul li a			{ position:relative; display:block; padding:16px 0 14px 9px;}
#subnav ul li a:after	{ display:block; position:absolute; top:50%; right:5px; content:''; margin:-5px 0 0; width:10px; height:10px; border:solid #BEB6E5; border-width:2px 2px 0 0; transform:rotate(45deg); transition:all 0.2s ease;}
#subnav ul li a:hover	{}
#subnav ul li a:hover:after	{ right:3px; border-color:#753DAF;}
#subnav ul li.current-menu-item a:after { border-color:#753DAF;}

#subnav a{color:#333; text-decoration:none;}
#subnav a:hover{color:#550DA4;}


/**
 * - #breadcrumb
 */
#breadcrumb	{ position:relative; margin:0 auto; padding:16px 4% 16px; max-width:980px; background:url(../img/common/bg_container.jpg);}
.breadcrumb-list	{ margin:0; padding:0; text-align:left; font-size:1.2rem; line-height:1;}
.breadcrumb-list li	{ display:inline-block; padding:3px 0;}
.breadcrumb-list li a	{ display:block; position:relative; padding:0 20px 0 0;}
.breadcrumb-list li a:before	{ position:absolute; top:3px; right:6px; content:''; width:7px; height:7px; border-top:1px solid #000; border-right:1px solid #000; transform:rotate(45deg);}
.breadcrumb-list li a:hover	{ text-decoration:underline;}
.breadcrumb-list li span	{}



/**
 * - #banners
 */
#banners	{ margin:20px 0 0;}
#banners img{}
#banners hr	{ margin:4px 0; padding:0; border:0; background:#fff;}
#banners a	{ display:block; margin:0; padding:4px 0;}



/**
 * - .nextprevnav
 */

article footer { margin:0 0%; border-top:1px solid #ccc;}
article footer p { text-align:left; font-size:1.3rem;}
.nextprevnav	{ padding:1rem 5% 4rem; text-align:center;}
.nav-archive	{ display:inline-block; vertical-align:top; float:none; margin:16px 0; padding:0; font-size:0;}
.nav-archive a	{ position:relative; display:block; padding:8px 12px 6px 22px; font-weight:bold; color:#ddd;}
.nav-archive a:after	{ position:absolute; bottom:0; left:0; content:''; width:100%; border-bottom:1px solid #ddd; transition:all 0.2s ease;}
.nav-archive a:before{ position:absolute; bottom:7px; left:-3px; content:''; width:20px; border-bottom:1px solid #ddd; transform:rotate(315deg); transition:all 0.2s ease;}
.nav-archive a:hover	{ color:#fff; text-decoration:none; background-color:transparent;}
.nav-archive a:hover:after	{ left:-10px; width:110%;}
.nav-archive a:hover:before	{ left:-13px;}
.nav-prev,
.nav-next { display:block; vertical-align:top; margin:0 0 8px;line-height:1;}
.nav-prev {}
.nav-next {}
.nav-prev a,
.nav-next a { position:relative; display:block; padding:1rem 4rem; width:auto; font-size:1.4rem; text-align:center; line-height:1.3; color:#6D6A4C; background-color:#D4D3BC; border-radius: 3px;}
.nav-prev a:before { position:absolute; top:50%; left:19px; content:''; margin:-5px 0 0; width:9px; height:9px; border:solid #4F187E; border-width:0 0 2px 2px; transform:rotate(45deg);}
.nav-next a:before { position:absolute; top:50%;right:19px; content:''; margin:-5px 0 0; width:9px; height:9px; border:solid #4F187E; border-width:2px 2px 0 0; transform:rotate(45deg);}
.nextprevnav a:hover { color:#111; background-color:#BDBA95;}



/**
 * - .wp-pagenavi
 */

.wp-pagenavi { clear:both; margin:40px 0 0; padding:0; text-align:center; font-size:1.3rem; line-height:1.1;}

.wp-pagenavi a, .wp-pagenavi span { 
	display:inline-block; vertical-align:top;
	margin:2px; padding:12px 2px 0; width:38px; height:38px;
	text-align:center; text-decoration: none;
	color:#111;
	font-weight:normal;
	background:#D6D1DC; border:none; border-radius:0; box-sizing:border-box;
}
.wp-pagenavi a	{ 
	border:0px solid #999;
}
.wp-pagenavi a:hover,
.wp-pagenavi a:active,
.wp-pagenavi a:visited	{ color:#fff;}
.wp-pagenavi a:hover	{ background:#CAB0EB;}

.wp-pagenavi a.previouspostslink	{}
.wp-pagenavi a.nextpostslink	{}
.wp-pagenavi a.first,
.wp-pagenavi a.last		{ width:4em; font-size:12px;}

.wp-pagenavi span.pages	{ min-width:4em; width:auto; font-size:12px;}
.wp-pagenavi span.current {
	color:#fff;
	background:#4F187E;
}
.wp-pagenavi span.extend {}


/**
 * - drawer navigation
 */
.drawer	{}
.drawer-nav		{ 
 position:relative; top:0; left:0; padding:20px 0 50px; width:100%; height:100vh; 
 background-color:#E8E7D8; overflow-y:auto; border-radius:0;
 -webkit-overflow-scrolling:touch; 
 box-shadow:5px 5px 8px rgba(163, 177, 198, 0.2), -4px -4px 8px rgba(255, 255, 255, 0.8);
 transform:scale(1) translateY(0); transition:all 0.25s;
 visibility:hidden; position:fixed; z-index:-1; opacity:0;
}

.drawer-overlay	{ position:fixed; z-index:-101; top:0; left:0; width:100%; height:100%; background-color:rgba(242,242,242,0); transition:all 0.25s;}
.drawer-open .drawer-overlay	{ z-index:998; background-color:rgba(242,242,242,0.9);}

.drawer-hamburger		{ 
 position:fixed; top:20px; right:10px; z-index:1999;
 display:block; margin:0 !important; padding:0 !important; width:38px; min-width:38px; max-width:38x; height:38px;
 font-size:0; 
 -webkit-transition:all .6s cubic-bezier(.19,1,.22,1); transition:all .6s cubic-bezier(.19,1,.22,1); 
 -webkit-transform:translateZ(0); transform:translateZ(0); 
 border:0; outline:0; background-color:transparent; box-sizing:content-box; cursor:pointer;
}
.drawer-hamburger-icon	{ position:relative; display:block; margin-top:0;}
.drawer-hamburger-icon,
.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before	{ width:100%; height:2px; -webkit-transition:all .6s cubic-bezier(.19,1,.22,1); transition:all .6s cubic-bezier(.19,1,.22,1); background-color:#8D10AF;}
.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before 	{ position:absolute; top:-8px; left:0; content:" "}
.drawer-hamburger-icon:after	{ top:8px;}
.drawer-hamburger:hover	{ background-color:transparent;}
.drawer-hamburger:focus	{ background-color:transparent;}
.drawer-hamburger:hover .drawer-hamburger-icon:after { top: 12px;}
.drawer-hamburger:hover .drawer-hamburger-icon:before{ top:-12px;}

.drawer-open .drawer-hamburger {}
.drawer-open .drawer-hamburger-icon	{ background:transparent;}
.drawer-open .drawer-hamburger-icon:after,
.drawer-open .drawer-hamburger-icon:before	{ top:0;}
.drawer-open .drawer-hamburger-icon:after	{ width:40px; -webkit-transform:rotate(-35deg);transform:rotate(-35deg);}
.drawer-open .drawer-hamburger-icon:before	{ width:40px; -webkit-transform:rotate(35deg); transform:rotate(35deg);}
.drawer-open .drawer-hamburger:hover .drawer-hamburger-icon:after ,
.drawer-open .drawer-hamburger:hover .drawer-hamburger-icon:before{ top:0;}
.drawer-open .drawer-nav {
 display:block; top:0; z-index:999; visibility:visible;
 transform:scale(1); opacity:1;
}


.drawer-container	{ padding:0 0 90px;}
.drawer-nav .site-title { margin:0; padding:0; text-align:center;}
.drawer-nav .site-title span	{ 
	display:block; margin:0 auto; width:200px; height:152px; 
	text-indent:200%; white-space:nowrap; overflow:hidden;
	background:url(../img/common/logo-header.png) no-repeat center top / 200px auto;
}

.drawer-nav ul.menu { padding:0 5% 20px; text-align:left;}
.drawer-nav ul.menu li { font-size:1.6rem;}
.drawer-nav ul.menu li a	{ position:relative; display:block; padding:2rem 8%; color:#111; text-decoration:none; border-bottom:1px dashed #fff;}
.drawer-nav ul.menu li a:before	{ position:absolute; top:50%; left:2%; content:''; margin:-4px; width:7px; height:7px; border:solid #000; border-width:2px 2px 0 0; transform:rotate(45deg); transition:all 0.2s ease;}
.drawer-nav ul.menu li a:hover { color:#8D10AF; font-weight:normal;}
.drawer-nav ul.menu li a:hover:before { left:6%;}
.drawer-nav ul.sub-menu { padding-left:1em;}
.drawer-nav ul.sub-menu li a { padding:0.6rem 8%;}

@media screen and (min-width: 980px) {
	.drawer	{ display:none;}
}



/**
 * - SNS Buttons
 */

.sns ul,
ul.sns 	{ margin:2rem 0; text-align:center; font-size:0 !important;}
.sns li	{ display:inline-block; vertical-align:middle; margin:0 1rem 4px 0;}
.sns li:before	{ background:none;}
.sns li a	{ display:block; width:50px; height:50px; background-color:#333; background-repeat:no-repeat; background-position:center center; background-size:40px;}
.sns .fb a	{ background-color:#1877F2; background-image:url(../img/common/icon-fb.png);}
.sns .fb a:hover { background-color:#4d9bff;}
.sns .tw a	{ background-color:#1DA1F2; background-image:url(../img/common/icon-tw.png);}
.sns .tw a:hover { background-color:#68C6FF;}
.sns .xs a	{ background-color:#222; background-image:url(../img/common/icon-xs.svg); background-size:20px;}
.sns .xs a:hover { background-color:#333;}
.sns .ln a	{ background-color:#01B901; background-image:url(../img/common/icon-ln.png);}
.sns .ln a:hover { background-color:#4CE34C;}
.sns .ig a	{
	background:url(../img/common/icon-ig.png) no-repeat center center / 30px,linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
	background:url(../img/common/icon-ig.png) no-repeat center center / 30px, radial-gradient(circle farthest-corner at 32% 106%, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), linear-gradient(135deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%);
}



/**
 * - Buttons
 */

a.btn img{transition:opacity 0.2s ease-out; -moz-transition:opacity 0.2s ease-out; -webkit-transition:opacity 0.2s ease-out;}
a.btn:hover img{opacity:0.7; filter:alpha(opacity=70);}
a.btn-contact img	{ max-width:340px;}

div.btn 	{ margin:1em 0 2em; text-align:center;}
div.btn a	{ 
	display:inline-block; margin:0 0.6rem; padding:1em 1em; min-width:260px; 
	text-decoration:none; color:#111; line-height:1;
	background-color:#fff; background-color:rgba(255,255,255,0.9); border:1px solid #aaa; border-radius:50px;
}
div.btn a:hover { background-color:#fff; border-color:#D8BEEE;}
div.btn a.outbound span	{ position:relative; padding-right:20px;}
div.btn a.outbound span:before	{ position:absolute; top:5px; right:7px; content:''; width:10px; height:8px; border:1px solid #ccc;}
div.btn a.outbound span:after	{ position:absolute; top:2px; right:4px; content:''; width:10px; height:8px; background-color:#fff; border:solid #ccc; border-width:2px 1px 1px 1px;}

div.btn-archive a		{ padding:1em 4em;}
div.btn-archive a span	{ display:inline-block; padding-left:20px; background-image:url(../img/common/icon-archive.png); background-repeat:no-repeat; background-position:center left; background-size:17px; }

span.btn a	{ display:inline-block; margin:0.4rem 0.4rem; padding:0.2em 0.8em; text-decoration:none; line-height:1.1; color:#111; border:1px solid #9C6AC7; border-radius:3px;}
span.btn a:hover { border-color:#D8BEEE;}
span.btn a.outbound	{ position:relative; padding:0.2em 1.4em 0.2em 0.8em;}
span.btn a.outbound:before	{ position:absolute; top:5px; right:7px; content:''; width:10px; height:8px; border:1px solid #ccc;}
span.btn a.outbound:after	{ position:absolute; top:3px; right:4px; content:''; width:10px; height:8px; background-color:#fff; border:solid #ccc; border-width:2px 1px 1px 1px;}




/**
 * - Page top button
 */

#b_pagetop{}
#b_pagetop{}
#b_pagetop a{
	display:block; position:absolute; right:36px; bottom:0; z-index:1;
	padding:0; width:101px; height:27px;
	text-indent:-9000px; text-decoration:none;
	background:url(../img/common/b_pagetop.gif) no-repeat 0 0;
	transition:opacity 0.2s ease-out; -moz-transition:opacity 0.2s ease-out; -webkit-transition:opacity 0.2s ease-out;
}
#b_pagetop a:hover{opacity:0.7; filter:alpha(opacity=70);}


#pagetop.fixed a { 
	position:fixed; bottom:1rem; left:1rem; z-index:1000; 
	width:34px; height:34px; 
	background-color:#000; background-color:rgba(0,0,0,.4); 
	transition:background-color 0.2s ease;
}
#pagetop.fixed a:before	{ position:absolute; top:12px; left:50%; content:''; width:1px; height:10px; border:solid #fff; border-width:0 0 0 1px; transition:all 0.2s ease;}
#pagetop.fixed a:after	{ position:absolute; top:12px; left:50%; content:''; margin:0 0 0 -3px; width:7px; height:7px; border:solid #fff; border-width:1px 1px 0 0; transform:rotate(-45deg); transition:all 0.2s ease;}
#pagetop.fixed a:hover 	{ background-color:#000; background-color:rgba(0,0,0,.8);}
#pagetop.fixed a:hover:before	{ top:8px;}
#pagetop.fixed a:hover:after 	{ top:8px;}
#pagetop.fixed a:before,
#pagetop.fixed a:after { border-color:#fff;}




/* **************************************************************************** */
/*
/* 6.0 layout
/*
/* **************************************************************************** */

body{
	text-align:center;
	background:#fafafa url(../img/common/bg_body.jpg) repeat center top;
}

.not	{ margin-top:0 !important; vertical-align:top;}
.nor	{ margin-right:0 !important;}
.nob	{ margin-bottom:0 !important;}
.nol	{ margin-left:0 !important;}

.nobt	{ border-top:none !important;}
.nobr	{ border-right:none !important;}
.nobb	{ border-bottom:none !important;}
.nobl	{ border-left:none !important;}

.bt		{ border-top:1px solid #ccc !important;}
.br		{ border-right:1px solid #ccc !important;}
.bb		{ border-bottom:1px solid #ccc !important;}
.bl		{ border-left:1px solid #ccc !important;}

.hide	{ display:none;}
.spn	{ display:block;}
.pc		{ display:none;}




/**
 * - 5.1 loading
 */

#loading{ position:fixed; top:50%; left:50%; width:100%;}
#loading span{
	display:block; position:absolute; top:-25px; left:-25px; width:50px; height:50px;background:transparent;
}



/**
 * - 5.2 wrapper Include
 */
#wrapper	{}



/**
 * - 5.3 Header Include
 */
#headerwrap 	{ position:relative; background:url(../img/common/bg_header-spn.jpg) no-repeat center 40px;}
#headerwrap #sitetxt{ background:url(../img/common/bg_sitetxt.gif) repeat center bottom;}
#headerwrap #sitetxt p { margin:0 auto; padding:5px 8px; vertical-align:bottom; text-align:left; font-size:1rem; line-height:1; color:#fff;}

.site-header	{ position:relative;}
.site-header #branding	{ padding:1rem 0;}
.site-header .site-title	{ margin:0; padding:0; text-align:center;}
.site-header .site-title a	{ 
	display:block; margin:0 auto; width:200px; height:152px; 
	text-indent:200%; white-space:nowrap; overflow:hidden;
	background:url(../img/common/logo-header.png) no-repeat center top / 200px auto;
}




/**
 * - 5.4 container Include
 */

#billboard	{}

#containerwrap 	{ position:relative; margin:0 auto; padding:0 0 36px; max-width:980px; background:url(../img/common/bg_container.jpg);}
#containerwrap:after	{ 
	display:none; position:absolute; left:-7px; bottom:-17px; 
	content:''; width:994px; height:94px; background:url(../img/common/bg_bottom.png) no-repeat center bottom;
}
#container	{ position:relative; padding:0 0 40px;}
#container:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}  
* html #container, *:first-child+html #container { zoom: 1; } /* IE6,IE7 */  
#container main	{ padding:0; width:100%;}
#primary	{ padding:0; width:auto;}
#secondary	{ padding:4rem 8%; width:auto; text-align:center; background-color:rgba(255,255,255,.5);}

.googlemap { position:relative; margin:0 0 1em; padding:400px 0 0; height:0; overflow:hidden; background-color:#f0f0f0; border:4px solid #EFE8F6; border-radius: 4px;}
.googlemap iframe,
.googlemap object,
.googlemap embed { position:absolute; top:0; left:0; width:100%; height:100%;}



/* #container > article
 */
article { margin:0 4%; text-align:left;}
#container article	{}
#primary article	{}

article img	{}
article img.size-thumbnail	{ margin:0 0 1.6em;}
article img.size-medium		{ margin:0 0 1.6em;}
article img.size-large		{ margin:0 0 1.6em;}




/**
 * - 5.5 footer Include
 */
#footerwrap 	{ padding:12px 0 0 0; background:linear-gradient(180deg, #4D3465 0%, #8056A8 10%);}

.site-footer 	{ padding:44px 5% 24px; text-align:left; background:#5B2887 url(../img/common/bg_footer.gif) repeat center top;}
.site-footer hr	{ margin:0;}
.site-footer a	{ text-decoration:none;}

.site-footer .site-title{
	margin:0 0 2rem; width:164px; height:77px;
	text-align:center; font-size:2rem; color:#fff;
	text-indent:200%; white-space:nowrap; overflow:hidden;
	background:url(../img/common/logo-footer.png) no-repeat center top / 164px auto;
}
.site-footer .sns { margin:0 0 2rem; padding:0; text-align:left;}
.site-footer .sns li.likebtn		{ width:120px;}

.site-footer address	{ margin:0 0 1em; line-height:1.5;}
.site-footer p			{ margin:0 0 1em; line-height:1.5;}
.site-footer .tel		{ display:block;}
.site-footer .tel b		{ font-weight:normal;}
.site-footer .fax		{ display:block;}
.site-footer .fax b		{ font-weight:normal;}

.site-footer nav ul	{ font-size:0;}
.site-footer .colb nav ul	{ border-top:1px solid #bbb;}
.site-footer nav li	{ display:inline-block; vertical-align:bottom; width:50%; font-size:1.3rem; border-bottom:1px solid #ddd;}
.site-footer nav li a	{ display:block; padding:1.5rem 0 1.5rem 14px;}
.site-footer nav a { padding:0 0 0 14px; background:rgba(255,255,255,.4) url(../img/common/icon-footnav.png) no-repeat left center / 10px auto;} 
.site-footer nav a:hover { background-color:rgba(255,255,255,.9);} 

#copyright	{ 
	margin:0; padding:3rem 0; 
	text-align:center; font-size:1.2rem; color:#fff;
	font-family: 'Times New Roman', Times, serif;
}






/**
 * - 5.6 Column Layout
 */

.fulcrumwrap	{ position:relative; overflow-x:hidden; border:1px solid #f00;}
.fulcrum		{ position:relative; top:0; left:50%; width:1px;}
.column {}
.marker	{ position:relative; margin-top:28px; padding-top:12px;}
.marker:before { position:absolute; top:0; left:0; content:''; width:36px; height:2px; background-color:#5A19A0;}


/* 2column
----------------------------------------------- */
.col2 { text-align:center; font-size:0;}
.col2 > div 	{ display:inline-block; vertical-align:top; width:100%; text-align:left; font-size:1.4rem;}
.col2 .content	{ padding:0 4%;}



/* 3column
----------------------------------------------- */
.col3 { text-align:center; font-size:0;}
.col3 > div 	{ display:inline-block; vertical-align:top; width:100%; text-align:left; font-size:1.4rem;}
.col3 .content	{ padding:0 4%;}



/* 4column
----------------------------------------------- */
.col4 { text-align:center; font-size:0;}
.col4 > div 	{ display:inline-block; vertical-align:top; width:50%; text-align:left; font-size:1.4rem;}
.col4 .content	{ padding:0 4%;}



/* 
----------------------------------------------- */
.borderwrap { padding:24px; border:1px solid #999; border-radius:10px;}
.borderwrap h1:first-child,
.borderwrap h2:first-child,
.borderwrap h3:first-child,
.borderwrap h4:first-child,
.borderwrap h5:first-child,
.borderwrap h6:first-child { margin-top:0 !important;}

.filledwrap { background-color:#E6F0F6;}




/* **************************************************************************** */
/*
/* .page
/*
/* **************************************************************************** */

.page-header	{ padding:1rem 0;}
.page-header .page-title	{ margin:0; padding:0; text-align:left; font-size:2rem; height:56px;}
.page-header .page-title img	{ width:auto; height:56px;}
.page-header .page-image	{ margin:0 -7px 16px;}
.page-content	{ margin:0 auto; padding:2rem 7px 4rem; text-align:left;}
.page-content .image	{ margin:0 0 1.6em;}
.obi-title { margin-right:-7px; margin-left:-7px;}



/* **************************************************************************** */
/*
/* .single
/*
/* **************************************************************************** */

.single-header	{ margin:0; padding:0;}
.single-header .single-title		{ margin:0; font-size:2rem;}

.entry-header	{ text-align:left;}
.entry-header .entry-title	{ margin:2rem 0;}
.entry-header.area-umi,
.entry-header.area-mori,
.entry-header.area-cha,
.entry-header.area-take,
.entry-header.area-city { background-image:none;}
.entry-header .label	{ margin:0 8px 0 0; font-size:1.3rem;}
.entry-header p			{ margin: 0;}
.entry-header p span		{ font-size:1.3rem;}
.entry-header .date		{}
.entry-header .local	{}
.entry-header .term		{ display:inline-block;}
.entry-header .category	{}
.entry-header span a	{ position:relative; border-bottom:1px solid #4F187E;}
.entry-header span a:hover	{ color:#4F187E; border-color:#9C6AC7;}
.entry-header .btn		{ margin:0; text-align:left;}
.entry-header .btn a	{ margin:0; padding:0; min-width:auto; background:transparent; border:0; border-radius:0;}
.entry-header .btn a:hover	{}

.entry-content	{ margin:0 auto; padding:2rem 7px 4rem; text-align:left;}
.entry-content a { border-bottom:1px dashed #9C6AC7;}
.entry-content h1	{}
.entry-content h2	{}
.entry-content h3	{}
.entry-content h4	{}
.entry-content h5	{}
.entry-content h6	{}

.entry-footer	{}


/* news
--------------------------------------------------
----------------------------------------------- */
/* news side bar #primary
----------------------------------------------- */
.widget-primary { position:relative; margin:0 0 4rem; padding:0 6% 36px; background-color:#fff; border-radius:10px;}
.widget-primary:before { position:absolute; top:4px; left:4px; content:''; width:calc( 100% - 8px); height:calc( 100% - 8px ); border:1px solid #C5D6AA; border-radius:10px;}

.widget-primary ul.widget-container{ position:relative; text-align:left;}
.widget-primary h3{margin:0 0; font:bold 11pt/1.2 "ヒラギノ明朝 Pro W3","ＭＳ Ｐ明朝", "細明朝体", serif; color:#1F004C;}
.widget-primary ul li.widget-container{padding:1em 0; border-bottom:1px solid #C9D5AC;}
.widget-primary ul ul li	{ position:relative; margin:0.5em 0; padding:2px 0 2px 10px; font-size:9pt; line-height:1.5; border-bottom: 1px dotted #eee;}
.widget-primary ul ul li:before	{ position:absolute; content:''; top:8px; left:0; width:5px; height:5px; background-color:#4F187E; border-radius:10px;}
.widget-primary ul ul li a{ text-decoration:none; color:#444;}
.widget-primary ul ul li a:hover{ text-decoration:underline; color:#520C9D;}


/* news
----------------------------------------------- */
#comments .nocomments,
.comments-link {display: none;}

.hentry{}
h1.entry-title,
h2.entry-title {margin: 0 0 26px 0; padding-top:48px; text-align:left; color:#222; font-size: 16pt; font-weight:normal;}
h2.entry-title a{color:#222; text-decoration:none;}
h2.entry-title a:hover{color:#520C9D; text-decoration:none;}
.category-title,
.archives-title {margin: 0 0 26px 0; padding:22px 0 0; color:#88A344; font-size:1.6rem; font-weight:400; line-height:1.2; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;}
.page-title {margin: 0 0 26px 16px; padding-top:42px; color:#222; font-size: 16pt; font-weight:normal;}
.entry-meta{margin: 0 0 12px 0; font-size:9pt;}
.entry-footer{margin: 12px 0 8px 0; padding:4px 0; font-size:9pt; text-align:left; border-top:1px solid #BDBA95;}

#nav-above, #nav-below{padding:8px 16px;}
#nav-above:after, #nav-below:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}  
* html #nav-above, * html #nav-below             { zoom: 1; } /* IE6 */  
*:first-child+html #nav-above, *:first-child+html #nav-below { zoom: 1; } /* IE7 */




/* =Images
-------------------------------------------------------------- */

/*
Resize images to fit the main content area.
- Applies only to images uploaded via WordPress by targeting size-* classes.
- Other images will be left alone. Use "size-auto" class to apply to other images.
*/
.entry-content p:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}  
* html .entry-content p             { zoom: 1; } /* IE6 */  
*:first-child+html .entry-content p { zoom: 1; } /* IE7 */


.entry-content img.size-auto,
.entry-content img.size-full,
.entry-content img.size-large{
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	width:auto;
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
.attachment img {
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
.alignleft,
img.alignleft {
	display: inline;
	float: left;
	margin-right: 24px;
	margin-top: 4px;
}
.alignright,
img.alignright {
	display: inline;
	float: right;
	margin-left: 24px;
	margin-top: 4px;
}
.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.alignleft,
img.alignright,
img.aligncenter {
	margin-bottom: 12px;
}




/* **************************************************************************** */
/*
/* .archive-content
/*
/* **************************************************************************** */

.archive-header	{ margin:0; padding:12px 3% 0;}
.archive-title		{ margin:0; font-size:2rem; text-align:left;}
.archive-title img	{ width:auto; height:36px;}

.archive-content { margin:0 auto; padding:4rem 3%;}
.archive-content article {}

.category-title	{ margin:0;}



/* **************************************************************************** */
/*
/* 7.0 - Widgets and additional parts
/*
/* **************************************************************************** */


.widget	{ padding:4rem 5%; text-align:left;}

.searchform	{ font-size:0; border-bottom:solid #4F187E; border-width:0 0 2px 0;}
.searchform input[type="text"]	{ vertical-align:bottom; padding:1rem 5px 1rem; width:calc(100% - 50px); font-size:1.8rem; line-height:1.1; color:#111; background:transparent; border:0;}
.searchform input[type="submit"]	{ 
	vertical-align:bottom; padding:1rem 0; width:50px; height:50px; min-width:auto; 
	font-size:0;
	background:url(../img/common/searchbtn.png) no-repeat center center / 34px;
	border:0; border-radius:0;
}
.searchform input[type="submit"]:hover { background-color:transparent;}

.widget-title	{ 
	position:relative; margin:0 0 1.5rem; padding:1rem 0 1rem 1rem; 
	font-size:1.6rem;
}
.widget-title:before { position:absolute; top:6px; left:6px; z-index:-1; content:''; width:100%; height:100%; background-color:#333;}

.widget_recent_entries	{}
.widget_recent_entries ul	{}
.widget_recent_entries li	{ padding:1.6rem 0; font-size:1.3rem; border-bottom:1px solid #666;}
.widget_recent_entries li a	{ color:#ddd;}
.widget_recent_entries li a:hover	{ color:#f00;}

.widget_archive	{}
.widget_archive select	{ width:100%;}

.widget_relational	{}
.widget_relational	{}
.widget_relational ul		{ margin:0;}
.widget_relational ul li	{ padding:1.6rem 0; border-bottom:1px solid #333;}
.widget_relational .label	{ font-size:1.2rem;}
.widget_relational .event-title	{ font-size:1.5rem;}
.widget_relational p		{ margin:0 0 0.6rem; font-size:1.3rem;}
.widget_relational a		{ display:block;}
.widget_relational a:hover	{}







/* **************************************************************************** */
/*
/* 7.0 Forms
/*
/* **************************************************************************** */

button,
input,
select,
textarea {
	margin:0; padding:0.4rem;
	max-width:100%;
	font-size:16px; font-size:1.6rem; line-height:1.5;
	vertical-align:baseline;
	background-color:#f7f7f7;
	border:1px solid #999; border-radius:3px;
}

button,
input {
	line-height: normal;
}

input,
textarea {
	background-color:#F5F4EC;
	border: 1px solid rgba(51, 51, 51, 0.1);
}


input:focus,
textarea:focus {
	background-color: #fff;
	border: 1px solid rgba(51, 51, 51, 0.3);
}
select	{ font-size:1.4rem;}
select:focus {
	outline:none;
}

button[disabled],
input[disabled],
select[disabled],
textarea[disabled] {
	cursor: default;
	opacity: .5;
}

input[type="button"],
input[type="reset"],
input[type="submit"] {
	padding:1em 2.5em; min-width:20rem;
	font-size:16px; font-size:1.6rem; font-weight:600;
	color: #111;
	background-color: #fff;
	border:0; border-radius:0;
	cursor: pointer;
	-webkit-appearance: button;
	transition:all 0.2s ease;
}
input[type="button"],
input[type="submit"] {
	background-color:#D5CFB4;
	border:1px solid #C9C19F; border-radius: 4px;
}
input[type="reset"]{
	color:#fff; background-color:#e72910; border:1px solid #e72910; border-radius: 4px;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
button:focus,
input[type="button"]:focus,
input[type="submit"]:focus {
	outline: 0;
	border-color:#E1DDCA;
	background-color:#E1DDCA;
}

input[type="reset"]  { border-color:#D0021B;}
input[type="reset"]:hover,
input[type="reset"]:focus {
	border-color:#F74B37;
	background-color:#F74B37;
}

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding:0; border:0;
	
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="date"],
input[type="password"],
input[type="search"],
textarea {
	margin:0 0 5px; padding:0.375em; width:100%;
}

textarea {
	overflow:auto;
	vertical-align:top;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	outline: 0;
}

input[type="checkbox"],
input[type="radio"] {
	padding: 0;
}


/**
 * select decoration 
 */
.select-wrap select{
	vertical-align: middle;
	text-indent: 0.01px;
	text-overflow: '';
	font-size: inherit;
	color: inherit;
	background: none transparent;
	outline:none;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
}
.select-wrap select option{
	background-color: #fff;
	color: #333;
}
.select-wrap select::-ms-expand { /* IEの矢印を非表示 */
	display: none;
}
.select-wrap select:-moz-focusring { /* FireFoxでフォーカス時に点線が出てしまうのを回避 */
	color: transparent; 
	text-shadow: 0 0 0 #fff;
}

.select-wrap {
	position:relative; width:100%;
}
.select-wrap:before {
	position:absolute; top:11px; right:15px; z-index:9;
	content:'';
	width:9px; height:9px; 
	border:solid #4F187E; border-width:0 2px 2px 0;
	pointer-events: none;
	transform:rotate(45deg);
}
.select-wrap select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 8px 32px 8px 12px;
	border:1px solid #ddd;
	color:#111;
	width:100%;
	background:#fff;
	border-color:#aaa;
	border-radius:20px;
}
.select-wrap select option{
	background-color: #fff;
	color: #333;
}
.select-wrap select:focus {
	color:#111;
}



.form-control-wrap.vertical .list-item	{ display:block; margin-bottom:14px;}
.form-control-wrap .list-item label	{}
.form-control-wrap .list-item input	{}
.form-control-wrap .list-item .list-item-label	{}

/**
 * .radioitem : 
 */
.list-item label input[type="radio"] { 
display:none !important; 
}
.list-item label {
display:inline-block !important;
position:relative;
font-weight:400; 
color:#000; 
letter-spacing:0; 
padding:0 0 0 32px;
cursor:pointer;
}
.list-item label .list-item-label:before {
content:'';
position:absolute; 
top:-2px; 
left:0;
display:inline-block; 
vertical-align:middle;
margin:0; 
width:24px; 
height:24px;
background-color:#fff; 
border:2px solid #999; 
border-radius:20px;
transition:all 200ms ease;
}
/* :checked のスタイル指定（~ セレクタに変更して堅牢化） */
.list-item label input[type="radio"]:checked ~ .list-item-label:before {
top:-3px; 
left:-1px; 
width:26px; 
height:26px; 
background:#611AA6; 
border-color:#611AA6; 
opacity:1;
transform:scale(1);
}
.list-item label .list-item-label:after {
content:'';
position:absolute; 
top:6px; 
left:8px;
width:8px; 
height:8px;
background-color:#eee; 
border:solid #eee; 
border-width:2px; 
border-radius:10px;
transform:rotate(45deg); 
opacity:1;
transition:all 200ms ease;
}
.list-item label input[type="radio"]:checked ~ .list-item-label:after {
top:3px; 
left:8px; 
width:8px; 
height:11px;
background-color:transparent; 
border-width:0 3px 3px 0; 
border-color:#fff; 
border-radius:0;
transform:rotate(45deg); 
opacity:1;
}




/* mailform additional style */

.mailform { padding:0.1rem 4% 2rem; background:#E9E8D9;}
.mailform dl { margin:2em 0; padding:0;}
.mailform dt { padding:0.5rem 0 0;}
.mailform dd { margin:0 0 1em; padding:0 0 1em 0;}
.mailform .required { margin:0 4px 0 0; padding:2px 6px; font-size:1.2rem; color:#fff; background-color:#611AA6; border-radius:3px;}
.mailform .required:after { margin:0; content:''; color:#f00;}

.mailform ul { margin:0; list-style:none;}
.mailform li { display:block; margin-right:0; width:auto; padding:0;}
.mailform li:before { border:0 !important;}

.mailform p	{ margin:0.4em 0;}
.mailform span { }

.mailform .sentcheck	{ line-height:1.4;}

input.zip,
input.postcode	{ width:8em;}
input.num	{ width:4em;}
input.half	{ width:50%;}
.mailform input[type=text],
.mailform input[type=email],
.mailform input[type=tel] {}
.mailform select { margin:0 0 4px 0;}
.mailform select.state	{ width:10em; font-size:1.3rem; border-radius:5px;}

input[type="button"],
input[type="reset"],
input[type="submit"] { margin:1rem 1rem;  text-align:center;}
.submit { margin:0 auto; text-align:center;}

form textarea { width:100% !important; height:12em !important;}


/* 
 * contactform7
 */
.wpcf7-form-control label { display:inline-block; margin-right:2em;}

.sent-complete { display:none;}
.sent .sent-complete	{ display:block;}
.sent .mailform-input	{ display:none;}

.wpcf7-response-output,
.wpcf7-validation-errors,
.wpcf7-display-none,
.wpcf7-mail-sent-ok	{ display:none !important;}





/* **************************************************************************** */
/*
/* 9.0 - Media Queries
/*
/* **************************************************************************** */



/* 720px <=                             */
@media screen and (min-width: 720px) {

	#container	{ padding:1px 0 0 0;}
	#secondary > div	{ display:inline-block; vertical-align:top; margin:0 2%; width:40%; text-align:left;}
	
	.obi-title .spn	{ display:none;}
	.obi-title .pc	{ display:block;}

	.nextprevnav	{ padding:1rem 0 4rem;}
	.nav-prev,
	.nav-next { display:inline-block; vertical-align:top; margin:0 1% 8px; width:44%; line-height:1;}


}


/* 980px <=                             */
@media screen and (min-width: 980px) {

	.pc		{ display:block;}
	.spn	{ display:none;}
	#wrapper { margin:0 auto; min-width:980px;}

	/**
	 * 1.2 Typo
	 */
	body,
	button,
	input,
	select,
	textarea {
		font-size:1.4rem;
	}


	dl.dtdd	{}
	dl.dtdd dt	{ float:left; display:inline-block; margin:0 0 0.2em;}
	dl.dtdd	dd	{ padding-left:20%;}


	/**
	 * - 
	 */
	.page-content a.btn img { width:auto; height:48px;}

	#headnav	{ display:block;}

	.subnav-title { text-align:center; padding:8px 0 18px; border-bottom:1px solid #e0e0e0;}
	.subnav-title img { width:168px; height:auto;}
	#subnav		{ margin:0 0 40px !important; width:214px; box-shadow:0 2px 6px rgba(0,0,0,.1);}
	#subnav ul	{}
	#subnav ul li {}

	#b_pagetop a { bottom:-70px;}


	/**
	 * - #banners
	 */
	#banners	{ margin:20px 0 0;}
	#banners hr	{ margin:4px 0;}


	/**
	 * - header
	 */

	#headerwrap 	{ background:url(../img/common/bg_header.jpg) no-repeat center 40px;}
	.site-header .site-title	{}
	.site-header .site-title a	{}


	/**
	 * - footer
	 */
	
	.site-footer 	{ margin:0 auto; padding:44px 0 24px; text-align:center;}
	.site-footer a:hover { text-decoration:underline;}
	.site-footer > div { display:inline-block; vertical-align:top; text-align:left;}
	.site-footer .cola { margin:0 24px 0 0; width:404px; border-right:1px dotted #ccc;}
	.site-footer .colb,
	.site-footer .colc,
	.site-footer .cold { width:170px;}
	.site-footer .colb nav ul	{ border-top:0;}
	.site-footer nav li	{ display:block; width:100%; border:0;}
	.site-footer nav li a	{ display:block; padding:0.8rem 0 0.8rem 14px;}
	.site-footer nav a { padding:0 0 0 14px; background-color:transparent;} 
	.site-footer nav a:hover { text-decoration:underline; background-color:transparent;} 


	/**
	 * - container
	 */

	#containerwrap 	{ padding:0 0 100px;}
	#containerwrap:after	{ display:block;}

	#container	{ 
		display:flex; flex-flow:row-reverse wrap; justify-content:space-between; align-items:flex-start; 
		padding:0 12px; gap:20px;}
	#container #primary	{ margin:0; padding:0; width:714px;}
	#container #secondary	{ margin:0; padding:16px 0; width:214px; background-color:transparent;}
	#container #secondary .widget:first-child { padding-top:0;}

	#secondary > div	{ display:block; margin:0 0; width:100%;}

	article		{ margin:0 6%;}
	#primary article{ margin:0;}
	.page-content	{}

	.archive-header	{ padding:12px 0 0;}
	.archive-content {}

	.mailform dt { float:left; display:inline-block; margin:0 0 0.2em; min-width:21%;}
	.mailform dd { padding-left:25%;}



	/**
	 * - 5.6 Column Layout
	 */

	.col2 { margin:0 0 4rem; text-align:center; font-size:0;}
	.col2 > div 	{ display:inline-block; vertical-align:top; width:48%; text-align:left; font-size:1.5rem;}
	.col2 > div:first-child	{ margin:0 4% 0 0;}
	.col2 .content	{ padding:0;}


	.col3 { text-align:center; font-size:0;}
	.col3 > div 	{ display:inline-block; vertical-align:top; width:31%; text-align:left; font-size:1.4rem;}
	.col3 > div:nth-child(2)	{ margin:0 3.5% 0;}
	.col3 .content	{ padding:0;}


	.col4 { text-align:center; font-size:0;}
	.col4 > div 	{ display:inline-block; vertical-align:top; margin:0 4% 0 0; width:22%; text-align:left; font-size:1.4rem;}
	.col4 > div:nth-child(4)	{ margin-right:0;}
	.col4 .content	{ padding:0;}



	.widget-primary	{ margin:0 auto; width:214px; background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.1);}
	.archive-title		{ text-align:left;}


	.entry-footer{ text-align:right;}


}





/* >= 1280px                             */
@media screen and (min-width: 1280px) {
}

















































