@charset "utf-8";

/*
Theme Name: saka-d.com Template
Theme URI: 
Author: saka-d.com テンプレート
Author URI: 
Description: saka-d.com テンプレート
Version: 0.2
*/


/*------------------------------------------------------------------------
◆設定リスト
--------------------------------------------------------------------------
共通
ヘッダー
コンテナ
ラッパー
グローバルナビ
	ドロップダウン
	トグル（モバイル）
パンくず
	yoast プラグイン
キービジュアル
カラム
	2カラム
	3カラム
	2/3カラム
	4カラム
	5カラム
	2/5カラム
	3/5カラム
コンテンツ
	ホーム
	固定ページ　共通レイアウト
	固定ページ（親ページ）共通レイアウト
	LPテンプレート
	LPテンプレート（リンク有り）
	サイドバー無しテンプレート（１カラムテンプレート）
	サイド&コンテンツ下部非表示　テンプレート
	投稿ページ　共通レイアウト
	共通モジュール
コンテンツ下部
コンテンツ下部メニュー
サブメニュー
サブコンテンツ
テーブル
カテゴリー
アーカイブ
タグ
ページ上部
フッター
ボトム固定
続きを読む
サイトマップ
検索フォーム
検索
メールフォーム
	contact form 7 プラグイン
◆WPプラグイン 関連記事（Yet Another Related Posts Pluginプラグイン）
◆WPプラグイン WordPress Popular Posts
◆WPプラグイン Recent Post Extended
◆ウィジェット 最近の投稿
検索フォーム
検索結果
404
WordPressデフォルト
メディア画像
記事更新用
ユーティリティ
表示エフェクト
------------------------------------------------------------------------*/



/*------------------------------------------------------------------------
◆共通
------------------------------------------------------------------------*/
*{
	margin: 0;
	padding: 0;
	font-size: 100%;
	color: #333333;
	box-sizing: border-box;
}

html{
	-webkit-text-size-adjust:100%;
	height: 100%;
	scroll-behavior: smooth;
}

body{
	width: auto;
	font: 100%/1.618 'Noto Sans JP', "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Verdana, Geneva, Arial, Helvetica, sans-serif;
	margin: 0 auto;
	word-break: break-word;
}

a{
	color: #0C3DBE;
	outline: none;
	text-decoration: underline;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}

a *{
	color: inherit;
}

a:hover{
	text-decoration: none;
}

img{
	border: none;
	max-width: 100%;
	vertical-align: bottom;
}

a:hover img{
	opacity: 0.8;
}

h1,h2,h3,h4,h5,h6,p,ol,hr{
}

article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{
	display: block;
}

ol li{
	margin-left: 2em;
	margin-bottom: 0;
}

ul li{
	list-style-type: none;
}

table{
	border-collapse: collapse;
	text-align: center;
}

small{
	display: block;
	text-align: center;
}

details{
	margin-bottom: 16px;
    transition: .5s;
    padding: 24px;
}

details:hover{
	opacity: 0.8;
}

summary{
	cursor: pointer;
	outline: 0;
}

details[open] summary{
	font-weight: bold;
	margin-bottom: 8px;
}

input,
select,
textarea{
	font: 90%/1.618 'Noto Sans JP', Verdana, sans-serif;
	border: 1px solid #ddd;
	color: #333333;
	outline: 0;
	font-size: 100%;
}

input{
	padding: 2px;
	box-sizing: border-box;
}

select,
textarea{
	padding: 4px;
	box-sizing: border-box;
}

input:focus,
textarea:focus,
select:focus{
	/*border: 1px solid #0073B6;*/
	margin: 0;
}

input[type="submit"],
input[type="radio"],
input[type="range"]{
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	-o-box-shadow: none;
	-ms-box-shadow: none;
	margin: 1px;
}

input[type="submit"]:focus,
input[type="radio"]:focus,
input[type="range"]:focus{
	border: 1px solid #efefef;
}

input[type="file"]{
	border:none !important;
}

strong {
    font-weight: bold;
}

abbr{
	color: inherit;
	font-weight: bold;
}

hr{
	border:none;
	border-bottom-style: dotted;
	border-bottom-width: 1px;
	border-color: #999999;
}

i{
	color: #FFFFFF;
}

em{
    font-style: normal;
}

.lead{
	margin-top: 2em !important;
}

.endelement{
	margin-bottom:0 !important;
}

::-webkit-input-placeholder { /* WebKit browsers */
    color:    #999;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    #999;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    #999;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
    color:    #999;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) { /* chromeのみ 画像ぼやけ修正 */
	img {
		image-rendering: -webkit-optimize-contrast;
	}
}

/*------------------------------------------------------------------------
◆ヘッダー
------------------------------------------------------------------------*/
#header_wrap{
	margin: 0 auto;
	width: 100%;
	padding: 0 4%;
	box-sizing: border-box;
	position: relative;
}

#header_wrap:after{
	content: "";
	display: block;
	clear: both;
}

#header_wrap .desc{
	font-size: 72%;
	padding-top: 8px;
}

#header_wrap h1{
	float:left;
	margin: 24px 0;
	font-size: 176%;
    line-height: 1;
	overflow: hidden;
}

#header_wrap h1 a{
	text-decoration: none;
	color: #333;
}

#header_wrap h1 img{
	width: auto;
}

#header_right{
	float: right;
    right: 0;
    width: 47%;
    text-align: right;
	position: relative;
}

#header_right.nav{/* ロゴ横型 */
	position: absolute;
	float: none;
}

#hnav_sub_container{
	display: inline-block;
    position: absolute;
    top: 0;
    right: 4%;
}

#hnav_sub_container li{
	display: inline;
}

#hnav_sub_container li:first-child{
	margin-left: 0;
}

#hnav_sub_container li a{
	font-size: 80%;
	color: #fff;
    background: #333;
    padding: 4px 24px;
	position: relative;
	text-decoration: none;
}

#hnav_sub_container li a:hover{
	text-decoration: none;
	opacity: 0.8;
}

/*
#header_right #hnav_sub_container li a:before{
	position: absolute;
    content: "";
    width: 0;
    height: 0;
    border: 4px solid transparent;
    border-left: 4px solid #5bc0de;
    left: 0;
    top: 0.5em;
}
*/

#header_right .tel{
	display: inline-block;
	vertical-align: middle;
	margin-left: 0;
	text-align: center;
}

#header_right .tel a{
    color: #0C3DBE;
	position: relative;
	text-decoration: none;
}

#header_right .tel a:hover{
	text-decoration: none;
}

#header_right .tel a:hover > *{
	opacity:0.7;
}

#header_right .tel .tel_desc_top{
	display: block;
	font-size: 88%;
    line-height: 1;
    color: #333;
}

#header_right .tel_num{
    display: block;
    margin: 4px;
    font-family: 'Noto Sans', sans-serif;
    font-size: 136%;
    font-weight: bold;
	line-height: 1;
}

#header_right .tel_num.icon-phone:before {
	display: none;
    content: '\e805';
    font-size: 88%;
    width: 10%;
    position: absolute;
    left: -32px;
    bottom: 6px;
}

#header_right .tel_desc_bottom{
	display: block;
	font-size: 72%;
    line-height: 1;
    color: #333;
}

#header_right .tel + .contact{
    border-left: 1px solid #ccc;
}

#header_right .contact{
	text-align: center;
	display: inline-block;
	vertical-align: middle;
    margin-left: 32px;
    padding-left: 32px;
}

#header_right .contact a{
	text-decoration: none;
}

#header_right .contact a:hover{
	text-decoration: none;
}

#header_right .contact a:hover > *{
	opacity:0.7;
}

#header_right .contact .contact_desc_top{
	display: block;
	font-size: 88%;
    line-height: 1;
    color: #333;
}

#header_right .contact .contact_text{
	/*float: right;*/
	display: inline-block;
	text-align: center;
    /*min-width: 192px;*/
	/*height: 40px;*/
    padding: 0;
    font-size: 112%;
	font-weight: bold;
	box-sizing: border-box;
/*
	background: #ff9a05;
	background: -moz-linear-gradient(top,  #ff9a05 0%, #e4931d 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff9a05), color-stop(100%,#e4931d));
	background: -webkit-linear-gradient(top,  #ff9a05 0%,#e4931d 100%);
	background: -o-linear-gradient(top,  #ff9a05 0%,#e4931d 100%);
	background: -ms-linear-gradient(top,  #ff9a05 0%,#e4931d 100%);
	background: linear-gradient(to bottom,  #ff9a05 0%,#e4931d 100%);
*/
}

#header_right .contact .contact_desc_bottom{
	display: block;
	font-size: 72%;
    line-height: 1;
    color: #333;
}



/*------------------------------------------------------------------------
◆コンテナ
------------------------------------------------------------------------*/
#header_container{
	width: 100%;
	max-width: 100%;
	position: relative;
	z-index: 999999;
	box-sizing: border-box;
}

#header_container:after{
	content:"";
	display:block;
	clear:both;
}

#header_container.header_right_nav{
	border-bottom: 1px solid #d3d3d3;
}

/* ヘッダー固定（ヘッダー右ナビのみ）*/
#header_container.header_right_nav.header_fix,
body.nav_active #header_container.header_right_nav.header_fix{
	/*position: fixed;*/
	position: -webkit-sticky;
    position: sticky;
    top: 0;
	z-index: 999999;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}

#nav_container{
	background: #000;
	border-bottom: 1px solid #d3d3d3;
}

#nav_container:after{
	content: "";
	display: block;
	clear: both;
}

#header_right #nav_container{
	border-bottom: none;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

#keyvisual_container{
	background-position: center top;
    background-size: cover;
}

#footer_container{
	clear: both;
	overflow: hidden;
}


/*------------------------------------------------------------------------
◆ラッパー
------------------------------------------------------------------------*/
#contents_wrap{
	clear: both;
	width: 100%;
	min-height: 400px;
	margin: 0 auto;
	padding: 24px 0;
	overflow: hidden;
}



/*
#contents_wrap h1 {
	font-size: 140%;
	line-height:　120%;
	font-weight: bold;
	margin-bottom: 24px;
}

#contents_wrap h2 {
	font-size: 140%;
	line-height:　120%;
	font-weight: bold;
	margin-bottom: 24px;
}

#contents_wrap h3 {
	font-size: 108%;
	line-height: 130%;
	font-weight: bold;
	color: #333;
}

#contents_wrap h4{
	font-size: 110%;
	line-height: 130%;
	margin-top: 0.81em;
	margin-bottom: 0.81em;
	font-weight: bold;
	color: #333 !important;
	background: none !important;
	padding: 5px 0 0 0 !important;
}

#contents_wrap h5,
#contents_wrap h6 {
	font-size: 105%;
	margin-bottom: 0.5em;
	font-weight: bold !important;
}
*/

#contents_wrap p,
#contents_wrap ul,
#contents_wrap ol,
#contents_wrap dl,
#contents_wrap table,
#contents_wrap hr{
	margin-bottom: 1.618em;
}

#contents_wrap dd{
	margin-bottom: 1em;
}

#contents_wrap a.box:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

#contents_wrap h1 + .column_wrap{
	margin-bottom:1.618em;
}

#contents_wrap h2 + .column_wrap{
	margin-top:1em;
}

#contents_wrap h3 + .column_wrap{
	margin-top: 1em;
}

#contents_wrap h1 + h2{
	margin-top: 0.4em;
}

#contents_wrap h2 + h3{
	margin-top: 1.618em;
}

#contents_wrap h1 + table{
	margin-top: 2.3em;
}

#contents_wrap table + h2{
	margin-top: 2.3em;
}

#main_wrap{
	float: left;
	width: 68%;
	margin: 0 auto 32px;
	padding: 0 0 24px;
	overflow: hidden;
	background: #fff;
	line-height: 1.8;
	z-index: 99999;
	box-sizing: border-box;
}

#main_wrap > p,
#main_wrap > ul,
#main_wrap > ol,
#main_wrap > dl,
#main_wrap > table{
	padding-left: 0;
	padding-right: 0;
}

#main_wrap img{
	width: auto;
}

#main_wrap ifreme{
	z-index: 3;
	width: 100%;
}

#main_wrap .section{
	overflow: hidden;
}


#main_wrap h1,
#main_wrap h2,
#main_wrap h3,
#main_wrap h4,
#main_wrap h5,
#main_wrap h6{
}

#main_wrap h1 {
	font-size: 172%;
    line-height: 140%;
    padding: 8px 0;
    color: #333;
    font-weight: bold;
	margin-bottom: 0.8em;
}

#main_wrap h2 {
	font-size: 132%;
	font-weight: bold;
	line-height: 140%;
	margin-bottom: 0.81em;
	padding: 16px 0 8px;
    position: relative;
    z-index: 1;
    border-bottom: 1px solid #CCC;
}

#main_wrap h2:after{
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    z-index: 2;
	width: 40px;
    border-bottom: 1px solid #333;
}

#main_wrap h3 {
	font-size: 120%;
	line-height: 140%;
	margin-bottom: 0.81em;
	font-weight: bold;
}

#main_wrap h4{
	font-size: 112%;
	line-height: 140%;
	margin-top: 0.81em;
	margin-bottom: 0.81em;
	font-weight: bold;
	color: #333 !important;
	background: none !important;
	padding: 5px 0 0 0 !important;
}

#main_wrap h5,
#main_wrap h6 {
	font-size: 108%;
	margin-bottom: 0.5em;
	font-weight: bold !important;
}



#sub_wrap{
	float: right;
	width: 27%;
	margin: 0px auto 32px;
	font-size: 90%;
	line-height: 160%;
	overflow: hidden;
	box-sizing: border-box;
}



/*------------------------------------------------------------------------
◆グローバルナビ
------------------------------------------------------------------------*/
#nav_wrap{
	clear: both;
	margin: 0px auto;
}

#nav_wrap .children{
	display:none;
}

#nav_wrap ul#gnav{
    display: table;
    table-layout: fixed;
    width: 100%;
	border-left: 1px solid #d3d3d3;
}

#nav_wrap ul#gnav > li{
    display: table-cell;
    width: 100%;
}

#nav_wrap ul li a {
	display: block;
	padding-top: 16px;
	padding-bottom: 16px;
	border-right: 1px solid #d3d3d3;
	color: #fff;
	font-size: 90%;
	line-height: 1;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	box-sizing: border-box;
}

#header_right #nav_wrap ul li a {
	padding-top: 8px;
	padding-bottom: 8px;
	font-size: 88%;
	position: relative;
	white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

/* 英語併記*/
#nav_wrap ul li a span{
	display: block;
	font-size: 80%;
	margin-top: 8px;
	white-space: nowrap;
	font-weight: normal;
	color: #fff;
	font-family: 'Source Sans Pro', sans-serif;
}

#header_right.nav #nav_wrap ul li a span{
	font-size: 72%;
}

#nav_wrap #gnav > li > ul.sub-menu li a span{
	display: none;
}

#nav_wrap ul li a:hover{
	background: #999;
	color: #fff;
	text-shadow: none;
}

#nav_wrap ul li a:hover span{
	color: #fff;
}

/* 現在の場所 */
#nav_wrap ul li.current-menu-item > a,
#nav_wrap ul li.current-menu-ancestor > a,
#nav_wrap ul li.current-post-ancestor > a,
#nav_wrap ul li.current-page-ancestor > a{
	background: #000;
	color: #FFF;
	text-shadow: none;
}


#nav_wrap ul#gnav > li.current-menu-item > a span,
#nav_wrap ul#gnav > li.current-menu-ancestor > a span,
#nav_wrap ul#gnav > li.current-post-ancestor > a span,
#nav_wrap ul#gnav > li.current-page-ancestor > a span,
#nav_wrap ul#gnav > li.current-page-ancestor > a span{
	color: #fff;
}

#rnav li,
#mnav li{
	display: none;
}

#nav_wrap #searchform{
	display: none;
}

.fixed{
	position: fixed;
	top: 0px;
	margin: 0 0 0 0;
	z-index: 9999;
}



/* ドロップダウン
------------------------------------------------------------------------*/
#gnav li{
	line-height: 0;	
}

/* 子ページ */
#gnav > li > ul.sub-menu{
	display: none;
	-moz-box-shadow: 0px 0px 2px 0 #aaabac;
	-webkit-box-shadow: 0px 0px 2px 0 #aaabac;
	box-shadow: 0px 0px 2px 0 #aaabac;
}

#gnav > li:hover > ul.sub-menu{
	display: block;
}

#gnav ul.sub-menu li{
	width: 100%;
	display: block;
}

#gnav ul.sub-menu li a{
	display: block;
	background: #000;
	color: #fff;
	height: auto;
	width: 272px;
	padding: 12px 16px;
	border-top: 1px dotted #999;
	border-right:none;
	border-bottom: none;
	border-left:none;
	text-align:left;
	font-size: 88%;
	line-height: 140%;
	font-weight: normal;
	text-shadow: none;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	box-sizing: border-box;
	opacity: 1;

}

#gnav ul.sub-menu li a:hover{
	display: block;
	background: #000;
	white-space: nowrap;
	color: #fff;
	text-overflow: ellipsis;
	overflow: hidden;
}

#gnav ul.sub-menu li:first-child a{
	border-top: none;
}

/* 孫ページ */
#gnav ul.sub-menu ul.sub-menu {
	width: 100% !important;
	position: relative !important;
}

#gnav ul.sub-menu ul.sub-menu a{
	padding-left: 2em;
	border-top: 1px dotted #999;
}

#gnav ul.sub-menu ul.sub-menu a:before{
	content: "-";
	float: left;
	display: block;
	font-weight: normal;
	margin-right: 0.5em;
}

/* ひ孫ページ */
#gnav ul.sub-menu ul.sub-menu ul.sub-menu a{
	padding-left:4em;
}

#gnav ul.sub-menu a:hover{
	filter:alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}

#gnav:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

#menu_bt{
	display: none;
}



/* トグル（モバイル）
-----------------------------------------------------------*/
#gnav-switch{
	display: none;
	position: absolute;
	top: 0px;
	right: 0;
	z-index: 99999;
}

/* モバイル専用メニュー */
#nav_wrap ul#rnav,
#nav_wrap ul#mnav{
	display: none;
}



/*------------------------------------------------------------------------
◆パンくず
------------------------------------------------------------------------*/
.breadcrumbs{
	width: 100%;
	margin: 0px auto !important;
	text-align: left;
	font-size: 80%;
	overflow: hidden;
	padding: 0 0 16px;
	box-sizing: border-box;
}

.breadcrumbs ul{
	margin-bottom: 0 !important;
}

.breadcrumbs li{
	float: left;
    background: none !important;
    padding: 0 !important;
}

.breadcrumbs li:after{
	content: ">";
	margin: 0 1em;
}

.breadcrumbs li:last-child:after,
.breadcrumbs li.tail:after{
	content: none;
}
.breadcrumbs li a{
}

.breadcrumbs li a:hover{
	text-decoration: underline !important;
}

.breadcrumbs li a:after{
	display: none !important;
}


/*------------------------------------------------------------------------
◆キービジュアル
------------------------------------------------------------------------*/
#keyvisual_container .slider_back_filter{
    display: block;
    width: 100%;
    /*height: 680px;*/
	height: auto;
    position: absolute;
    z-index: 999;
}

#keyvisual_container .slider_back_wrap{
	position: absolute;
    width: 100%;
}

.keyvisual_wrap{
	text-align: center;
	line-height:0;
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.keyvisual_wrap a:hover{
	opacity: 0.9;
}

.keyvisual_wrap img{
	width: 100%;
}

#slider_back_mainimage{
    z-index: 99999;
    position: relative;
    width: 1200px;
}

.keyvisual_wrap.slider_back{
	height: auto;
}

.keyvisual_wrap.slider_back .slides div{
    position: absolute;
    margin: 0;
    padding: 0;
    background-position: center top;
    background-repeat: no-repeat;
	height: 600px;
}

.keyvisual_wrap.slider_back a{
	display: block;
    width: 100%;
    height: 100%;
}

.keyvisual_wrap.back a{
	display: block;
    width: 100%;
    height: 100%;
}

.keyvisual_wrap.back a:hover img{
	opacity: 0.8;
}

.keyvisual_wrap.text{
    display: flex;
    align-items: center;
    justify-content: center;
	line-height: 140%;
	font-size: 160%;
	color: #333;
	font-weight: bold;
	width: 1008px;
	padding: 40px 4%;
	box-sizing: border-box;
}

.keyvisual_wrap.text .va{
	display: table-cell;
    vertical-align: middle;
}

.keyvisual_wrap.text .maincopy,
.keyvisual_wrap.text .subcopy{
	font-feature-settings: "palt";
    font-family: 'Noto Sans JP', "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "ＭＳ Ｐゴシック", Verdana, Geneva, Arial, Helvetica, sans-serif;
}

.keyvisual_wrap.text .maincopy{
	font-size: 64px;
    color: #fff;
    line-height: 1.4;
	text-shadow: 1px 1px 1px #333;
}

.keyvisual_wrap.text .subcopy{
	font-size: 30px;
    color: #fff;
    line-height: 1.4;
	text-shadow: 1px 1px 1px #333;
}

.keyvisual_wrap.text .button{
	min-width: 0;
	padding: 0;
	background: none;
    box-shadow: none;
}

.keyvisual_wrap.text .button.sp{
	display: none;
}

.keyvisual_wrap.text .button a{
    display: inline-block;
    background-color: #3caf28;
    color: #fff;
    text-decoration: none;
    padding: 12px 32px;
    border-radius: 8px;
    font-size: 18px;
    margin-top: 16px;
	text-align: center;
    opacity: 1;
    box-shadow: 1px 1px 1px #333;
}

.keyvisual_wrap.text .button a:hover{
	opacity: 0.9;
    box-shadow: none;
}

#keyvisual_container .pc{
	display: block;
}

#keyvisual_container .tb{
	display: none;
}

#keyvisual_container .sp{
	display: none;
}

#mainimage_text {
	line-height: 140%;
	font-size: 160%;
	color: #333;
	font-weight: bold;
	width: 1008px;
	padding-top: 40px;
	padding-bottom: 40px;
	background: url(images/common/key_white.png) repeat;
}



/*--------------------------------------------------------------------------
◆カラム
--------------------------------------------------------------------------*/
.column_wrap{
	clear:both;
	margin-top: 2em;
	margin: 2em 0;
}

.column_wrap + .column_wrap{
	margin-top: 0em;
}

.column_wrap:first-of-type{
	margin-top:0em;
}

.column_wrap:after{
	content: "";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	/*visibility: hidden;*/
}

p + .column_wrap{
	margin-top: 2em !important;
}

.column_wrap > div{
}

.column_wrap img{
	width:100%;
}

.column_wrap h1{
	clear:both;
}

.column_wrap h3{
	clear:both;
	margin-top:0 !important;
}

.column_wrap + hr{
	height: 0;
}

.column_wrap .box{
	background:#FFFFFF;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	overflow:hidden;
	padding: 1.5%;
	border:none !important;

}

.column_wrap .box p{
	margin-bottom:0 !important;
}

.column_wrap .column_left{
	float:left;
}

.column_wrap .column_center{
	float:left;
}

.column_wrap .column_right{
	float:right;
}


/* 2カラム
----------------------------------------------------------------*/
.column2{
	width:47.5%;
}

.column2.box{
	width:49%;
}

.column2_left h1,
.column2_right h1{
	font-size: 140%;
}

.column2_left h2,
.column2_right h2{
	font-size: 100%;
}

.column2_left h3,
.column2_right h3{
	font-size: 100%;
}


/* 3カラム
----------------------------------------------------------------*/
.column3{
	width:31.333%;
}

.column3.column_center{
	margin:0 3%;
}

.column3.box{
	width:32.666%;
}

.column3.column_center.box{
	margin:0 1%;
}

.column3 h1{
	font-size: 140%;
}

.column3 h2 {
	font-size: 100%;
}

.column3 h3 {
	font-size: 100%;
	margin-bottom: 0.81em !important;
}


/* 2/3カラム
----------------------------------------------------------------*/
.column3_2{
	width: 65.6%;
}

.column3_2.box{
	width:65.5%;
}

.column3_2:last-of-type{
	margin-bottom:0 !important;
}


/* 4カラム
----------------------------------------------------------------*/
.column4{
	width: 22.75%;
}

.column4.column_center_left{
	float:left;
	margin:0 0 0 3%;
}

.column4.column_center_right{
	float:left;
	margin:0 3%;
}

/* 3/4カラム
----------------------------------------------------------------*/
.column4_3{
	width: 73%
}

.column4_3 .column_wrap{
	width: 100%;
}


/* 5カラム
----------------------------------------------------------------*/
.column5{
	width: 18%;
	margin-left:2.5%;
}

.column5 *{
	font-size:95%;
}

.column5.column_left{
	margin-left:0;
}

.column5.column_center_left{
	float:left;
}

.column5.column_center{
	float:left;
}

.column5.column_center_right{
	float:left;
}


/* 2/5カラム
----------------------------------------------------------------*/
.column5_2{
	width: 37%
}


/* 3/5カラム
----------------------------------------------------------------*/
.column5_3{
	width: 56.5%
}

.column5_3 .column3{
	width: 32%;
}

.column5_3 .column3.column_center{
	margin:0 2%;
}



/*--------------------------------------------------------------------------
◆コンテンツ
--------------------------------------------------------------------------*/
#main_wrap img{
	width:auto;
	height:auto;
}

#main_wrap ul li ul{
	margin-left: 1em;
	margin-bottom: 0 !important;
}

#main_wrap ol li ol{
	margin-bottom: 0 !important;
}

#main_wrap ul.catch > li{
	padding-left: 16px;
	position: relative;
}

#main_wrap ul.catch > li:before {
	font-family: "fontello";
    content: '\e828';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

#main_wrap .note{
	clear: both;
	display: block;
	font-size: 80%;
}

#main_wrap ul.note li{
	margin-left: 1.5em;
	text-indent: -1.3em;
}

#main_wrap ul.note li:before{
	content: "※";
	margin-right: 0.35em;
}

#main_wrap strong{
	font-size: 100%;
	color: #c00b0b;
}



/* ホーム
------------------------------------------------------------------------*/
.home .keyvisual_wrap{
	width: 100%;
}

.home #contents_wrap{
	width: 100%;
	max-width: 100%;
}

.home #main_wrap{
	width: 100%;
	float: none;
	font-size: 100%;
	padding: 0;
	margin: 0 auto;
}

.home #main_wrap section{
	padding: 80px 0;
	overflow: hidden;
}

.home #main_wrap section.reverse *{
	color: #fff !important;
}

.home #main_wrap section:nth-child(even){
	background: none;
}

.home #main_wrap section > *:last-child{
	margin-bottom: 0;
}

.home #contents_container.sidebar_off #main_wrap > :not(section) {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}

.home #contents_container.sidebar_on #main_wrap section{
	/*padding: 0 0 48px;*/
	padding: 0;
	overflow: hidden;
}

.home #contents_container.sidebar_on #main_wrap > *:first-child{
	padding-top: 0;
}

.home #contents_container.sidebar_on #main_wrap section:nth-child(even){
	background: none;
}

.home #contents_container.sidebar_on #main_wrap section > *:last-child{
	margin-bottom: 0;
}

.home #main_wrap [class^="icon-"]:before,
.home #main_wrap [class*=" icon-"]:before {
	margin-right: 0.4em;
}

.home #main_wrap h2{
    text-align: center;
	font-size: 192%;
	padding-top: 0;
	padding-bottom: 48px;
    margin: 0 auto;
	border-bottom: none;
}

.home #main_wrap h2 span{
    display: block;
    margin-top: 4px;
    font-size: 48%;
    line-height: 1.4;
    font-weight: normal;
	font-family: 'Source Sans Pro', sans-serif;
}

.home #main_wrap h2:after{
	display: none;
}




/* サイドバー有 */
.home #contents_container.sidebar_on #contents_wrap > *:first-child{
	padding-top: 48px;
}

.home #contents_container.sidebar_on #main_wrap{
	float: left;
    width: 68%;
	padding: 0 0 24px;
	margin: 48px auto 32px;
}

.home #contents_container.sidebar_on #sub_wrap{
	margin: 48px auto 32px;
}

.home #contents_container.sidebar_on #main_wrap h2{
    text-align: left;
    font-size: 140%;
    padding: 16px 0 8px;
    margin: 48px auto 0.81em;
    border-bottom: 1px solid #CCC;
}

.home #contents_container.sidebar_on #main_wrap h2:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    z-index: 2;
    width: 40px;
}

.home #contents_container.sidebar_on #main_wrap h2:first-child{
    margin-top: 0;
}

.home #contents_container.sidebar_on #main_wrap h2 span {
    display: none;
}

.home #contents_container.sidebar_on #main_wrap h2#news_h{
	margin: 0 auto !important;
}

.home #contents_container.sidebar_on #main_wrap .news{
	border-top: none;
}




/* news */
.home #main_wrap .news{
	margin-bottom: 0;
}

.home #main_wrap .news li a{
    display: block;
	font-size: 92%;
	padding: 16px 0;
	border-bottom: 1px dotted #ccc;
	overflow: hidden;
	text-decoration: none;
}

.home #main_wrap .news li:first-child a{
	border-top: 1px dotted #ccc;
}

.home #contents_container.sidebar_on #main_wrap .news li:first-child a{
	border-top: none;
}

.home #main_wrap .news li a *{
	color: #333;
}

.home #main_wrap .news li a:hover{
	opacity: 0.8;
}

.home #main_wrap .news li a .title{
	font-weight: normal;
    display: block;
	overflow: hidden;
}

.home #main_wrap .news li a .categories{
    display: none;
	margin-bottom: 0;
}

.home #main_wrap .news li a .category{
    display: none;
    padding: 4px 8px;
    background: #333;
    color: #fff;
    font-size: 64%;
    line-height: 1;
	margin-right: 8px;
}

.home #main_wrap .news li a .category:last-child{
	margin-right: 0;
}

.home #main_wrap .news li a .tag{
    display: inline-block;
    padding: 4px 8px;
    background: #666;
    color: #fff;
    font-size: 64%;
    line-height: 1;
	margin-right: 8px;
}

.home #main_wrap .news li a .tag:last-child{
	margin-right: 0;
}

.home #main_wrap .news li a .newmark{
    margin-left: 0.8em;
    position: relative;
}

.home #main_wrap .news li a .excerpt{
	display: block;
}

.home #main_wrap .news li a .time{
	display: block;
	float: left;
	width: 8em;
}

.home #main_wrap .news li a .thumb{
	float: right;
	max-width: 160px;
	width: 100%;
	margin-left: 16px;
}

.home #main_wrap .news li a .thumb img{
    vertical-align: bottom;
	width: 100%;
	height: 100%;
}

/* pr_wrap */
.home #contents_wrap .pr_wrap{
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 24px 0;
	margin-top: 0;
	margin-bottom: 0;
}

.home #contents_wrap h2 + .column_wrap{
	margin-top: 0;
}

.home #contents_wrap .pr_wrap .column_pr_h{

}

.home #contents_wrap .pr_wrap a:hover{
	text-decoration: none;
}

.home #contents_wrap .pr_wrap a:hover > *{
	opacity: 0.8;
}

.home #contents_wrap .pr_wrap img{
	width: 100%;
}

.home #contents_wrap .pr_wrap h3{
	font-size: 112%;
    padding: 16px 0;
	border-bottom: none;
    margin-bottom: 0 !important;
	box-sizing: border-box;
}

.home #contents_wrap .pr_wrap > * > * > h3:first-child{
	font-size: 136%;
	line-height: 1.4;
	position: relative;
    z-index: 1;
	border-bottom: 1px solid #CCC;
    padding: 0 0 8px;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}

.home #contents_wrap .pr_wrap > * > * > h3:first-child:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    z-index: 2;
    width: 40px;
    border-bottom: 1px solid #ff0000;
}

.home #contents_wrap .pr_wrap .desc{
    font-size: 88%;
	margin-bottom: 8px;
}

.home #contents_wrap .pr_wrap h4 + .desc{
	margin-top: 8px;
    margin-bottom: 16px;
}

.home #contents_wrap .pr_wrap img + .desc{
	margin-top: 16px;
    margin-bottom: 16px;
}

.home #contents_wrap .pr_wrap .button{
	display: block;
    width: 100%;
    padding: 10px;
    margin-top: 4px;
	margin-bottom: 0;
	min-width: 0;
    border-radius: 4px;
    background: #999;
    text-align: center;
	font-weight: bold;
    color: #fff;
    font-size: 80%;
    position: absolute;
    bottom: 0;
}

.home #contents_wrap .pr_wrap img + .button{
    margin-top: 16px;
}

.home #contents_wrap .pr_wrap > li{
    border-right: 1px solid #ccc;
    box-sizing: border-box;
}

.home #contents_wrap .pr_wrap > li > a,
.home #contents_wrap .pr_wrap > li > span{
	display: block;
    height: 100%;
    padding-bottom: 44px;
	text-decoration: none;
    position: relative;
}

.home #contents_wrap .pr_wrap > li > a *,
.home #contents_wrap .pr_wrap > li > span *{
	color: #333;
}

.home #contents_wrap .pr_wrap > li:first-child{
    border-left: 1px solid #ccc;
}

.home #contents_wrap .pr_wrap .column3{
    padding: 0 2%;
	width: 33.333%;
}



/* widget版PR */
.home #contents_wrap .pr_wrap.widget h2{
	display: none;
}

.home #contents_wrap .pr_wrap.widget .column3 {
    float: left;
    margin-top: 32px;
}

.home #contents_wrap .pr_wrap.widget .column3:nth-child(3n+1){
    border-left: 1px solid #ccc;
}

.home #contents_wrap .pr_wrap.widget .column3:nth-child(1),
.home #contents_wrap .pr_wrap.widget .column3:nth-child(2),
.home #contents_wrap .pr_wrap.widget .column3:nth-child(3){
    margin-top: 0;
}

.home #contents_wrap .pr_wrap.widget .column3 h4{
    margin-top: 16px;
    margin-bottom: 8px;
    padding: 0 !important;
}







.home #contents_wrap .pr_wrap .column4{
    padding: 0 16px;
	width: 25%;
}

.home #main_wrap .column_wrap.pr_wrap img + div{
	margin-top: 16px;
}

.home #contents_wrap .pr_wrap .column_center{
	margin: 0;
}

.home #contents_wrap .pr_wrap .column4.column_center_left{
	margin: 0;
}

.home #contents_wrap .pr_wrap .column4.column_center_right{
	margin: 0;
}



/* widget版PR */
.home #contents_wrap .pr_wrap.widget .column4 {
    float: left;
    margin-top: 32px;
}

.home #contents_wrap .column_pr_wra.widgetp .column4:nth-child(4n+1){
    border-left: 1px solid #ccc;
}

.home #contents_wrap .pr_wrap.widget .column4:nth-child(1),
.home #contents_wrap .pr_wrap.widget .column4:nth-child(2),
.home #contents_wrap .pr_wrap.widget .column4:nth-child(3),
.home #contents_wrap .pr_wrap.widget .column4:nth-child(4){
    margin-top: 0;
}




.home #main_wrap .column_wrap.contact{
	width: 64%;
	margin: 0 auto;
}

.home #main_wrap .column_wrap.contact .column_left > p{
	text-align: right;
}

.home #main_wrap .column_wrap.contact .column_right > p{
	text-align: left;
}




/* blog */
.home #main_wrap #blog_h{
}

.home #main_wrap .blog{
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    gap: 16px;
}

.home #main_wrap .blog > li {
    width: calc(25% - 12px);
}

.home #main_wrap .blog li a{
    display: block;
    width: 100%;
	padding: 0 0 16px;
	border: 1px solid #ccc;
	background: #fff;
	text-decoration: none;
}

.home #main_wrap .blog li a *{
	color: #333;
}

.home #main_wrap .blog li a > *{
	padding: 0 16px;
	margin-left: 0;
}

.home #main_wrap .blog li a:hover{
	text-decoration: none;
	opacity: 0.8;
}



.home #main_wrap .blog li a .thumb{
	width: 100%;
	padding: 0;
}

.home #main_wrap .blog li a .thumb img{
    vertical-align: bottom;
	width: 100%;
	background: #f4f4f4;
}

.home #main_wrap .blog li a .thumb.icon img{
    padding: 64px;
    box-sizing: border-box;
}

.home #main_wrap .blog li a .title{
	display: block;
	font-weight: bold;
	margin: 0;
    line-height: 1.4;
}

.home #main_wrap .blog li a ul{
	margin-bottom: 0;
}

.home #main_wrap .blog li a .categories{
    margin-left: 0;
    line-height: 1.6;
}

.home #main_wrap .blog li a .category{
    display: inline-block;
    padding: 4px 8px;
    background: #333;
    color: #fff;
    font-size: 68%;
    line-height: 1;
	margin-right: 8px;
}

.home #main_wrap .blog li a .category:last-child{
	margin-right: 0;
}

.home #main_wrap .blog li a .tag{
    display: inline-block;
    padding: 4px 8px;
    background: #666;
    color: #fff;
    font-size: 64%;
    line-height: 1;
	margin-right: 8px;
}

.home #main_wrap .blog li a .tag:last-child{
	margin-right: 0;
}

.home #main_wrap .blog li a .newmark{
    margin-left: 0.8em;
    position: relative;
}

.home #main_wrap .blog li a .excerpt{
	display: none;
	font-size: 80%;
}

.home #main_wrap .blog li a .time{
	display: block;
	margin-top: 16px;
	margin-right: 0;
	font-size: 80%;
}

/*
.home a.button{
	display: inline-block;
	border-radius: 4px;
	box-shadow:0px 1px 1px 1px rgba(145, 145, 145, 0.2);
	min-width: 256px;
    padding: 16px 32px;
    box-sizing: border-box;
	margin-bottom: 8px;
	font-size: 20px;
	line-height: 140%;
	color: #fff;
	font-weight: bold;
	text-align: center;
	background: #ff9a05;
}

.home a.button:before{
	color: #fff !important;
}

.home a.button:hover{
	text-decoration: none;
	opacity: 0.8;
}
*/

/* 固定ページ　共通レイアウト
------------------------------------------------------------------------*/





/* 固定ページ（親ページ）共通レイアウト
------------------------------------------------------------------------*/
.page-parent article ul.children{
	margin-bottom: 0 !important;
}

.page-parent article ul{
	margin-bottom: 0;
	margin-left: 0px !important;
}

.page-parent article ul:after{
	content: "";
	clear: both;
	display: block;
}

.page-parent article ul.box li{
	display: inline;
}

.page-parent article ul.box a{
	display: block;
	float: left;
	width: 49%;
	height: auto;
	margin-top: 16px;
	overflow:hidden;
	color:#333;
	text-decoration:none;
	background:#FFFFFF;
	border: 1px solid #DCDCDC;
    box-sizing: border-box;
}

.page-parent #main_wrap ul.box a:hover{
	opacity: 0.8;
}

.page-parent article ul.box li:nth-child(1) a{
	margin-top: 0px;
}

.page-parent article ul.box li:nth-child(2) a{
	margin-top: 0px;
}

.page-parent article ul.box li:nth-child(even) a{
	margin-left: 2%;
}


.page-parent #main_wrap ul.box a .imgleft{
	float: left;
	margin-right: 16px;
	line-height: 0;
	max-width: 133px;
}

.page-parent #main_wrap ul.box a .imgleft img{
    width: 100%;
    display: block;
    background: #f4f4f4;
    box-sizing: border-box;
}

.page-parent #main_wrap ul.box a .info_wrap{
	margin-left: 16px;
	margin-right: 16px;
	display: table;
	height: 96px;
}

.page-parent #main_wrap ul.box a .imgleft .info_wrap{
	margin-left: 8px;
}

.page-parent #main_wrap ul.box a .info_wrap h1{
	clear: none;
	font-size: 112%;
	line-height: 136%;
	border: none;
	display: table-cell;
	vertical-align: middle;
}

.page-parent #main_wrap ul.box a .info_wrap h1:after{
	display: none !important;
}

.page-parent #main_wrap ul.box a .info_wrap h1 + p{
	margin-top: 1em;
	text-align: justify;
	max-height: 6em;
	font-size: 90% !important;
	overflow: hidden;
	display: none;
}

.page-parent #main_wrap ul.box a p{
	overflow: auto;
	margin-bottom:0 !important;
}



/* LPテンプレート
------------------------------------------------------------------------*/
.page-template-page-lp #contents_wrap{
	padding: 0;
	max-width: 100%;
}

.page-template-page-lp #main_wrap{
	width: 100%;
	float: none;
	font-size: 100%;
	margin-bottom: 0;
}

.page-template-page-lp #contents_wrap > #main_wrap:first-child{
	padding: 0;
}

.page-template-page-lp #contents_wrap > #main_wrap > :not(section){
	margin-right: auto;
	margin-left: auto;
	max-width: 980px;
}

.page-template-page-lp #main_wrap section:nth-child(even){
	background: #f4f4f4;
}

.page-template-page-lp #main_wrap section{
    padding-top: 80px;
    padding-bottom: 80px;
    overflow: hidden;
}

.page-template-page-lp #main_wrap section > *{
	width: 1008px;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}

.page-template-page-lp #main_wrap section > *:first-child{
	margin-top: 0;
}

.page-template-page-lp #main_wrap section > *:last-child{
	margin-bottom: 0;
}

.page-template-page-lp #main_wrap section.reverse{
	background: #000;
	color: #fff;
}

.page-template-page-lp #main_wrap section.reverse *{
	color: #fff;
}

.page-template-page-lp #main_wrap section.reverse h2{
	padding: 12px 0 0;
	background: none;
}

.page-template-page-lp #main_wrap section.wide{
    padding-top: 0;
    padding-bottom: 0;
}

.page-template-page-lp #main_wrap section.wide > *{
	width: 100%;
    max-width: 100%;
}

.page-template-page-lp #main_wrap section.wide > .column_wrap > div{
}

.page-template-page-lp #main_wrap section.wide > .column_wrap .column2{
	width: 50%;
}

.page-template-page-lp #main_wrap section.wide > .column_wrap .column3{
	width: calc(100%/3);
}

.page-template-page-lp #main_wrap section.wide > .column_wrap .column3.column_center{
	margin: 0;
}

.page-template-page-lp #main_wrap section ul.mod_flow{
	padding: 8px 0;
	font-size: 100%;
}

.page-template-page-lp #main_wrap section ul.mod_flow li{
	padding: 12px 16px;
}

.page-template-page-lp #main_wrap .reverse{
	background: #000;
	color: #fff;
}

.page-template-page-lp #main_wrap .reverse *{
	color: #fff;
}

.page-template-page-lp #footer_container {
    margin-top: 0px;
}

.page-template-page-lp #footer_container_bottom.menu_in #fnav_btm_container{
	display: none;
}

.page-template-page-lp #footer_container_bottom.menu_in #footer_wrap_copyright {
    float: none;
    text-align: center;
}

.page-template-page-lp .check{
	font-size: 120%;
    padding-top: 24px;
}

.page-template-page-lp ul.check li:before{
	content: url(images/home/check.png);
	vertical-align: -4px;
	margin-right: 8px;
}

.page-template-page-lp dt.check{
	font-weight:bold;
}

.page-template-page-lp dt.check:before{
	content: url(images/home/check.png);
	vertical-align: -4px;
	margin-right: 8px;
}

.page-template-page-lp .embox{
	background:url(images/common/em_back.jpg) repeat;
	font-size: 152%;
	line-height: 1.44;
	font-weight: bold;
	text-align: center;
	padding: 40px;
}

.page-template-page-lp a.button{
	display: inline-block;
	border-radius: 8px;
	box-shadow: 0px 1px 1px 1px rgba(145, 145, 145, 0.2);
	min-width: 388px;
    padding: 24px 4%;
	text-decoration: none;
    box-sizing: border-box;
	font-size: 20px;
	line-height: 140%;
	color: #333;
	font-weight: bold;
	text-align: center;
	background: #fff;
}

.page-template-page-lp .button:before{
	margin-right: 12px;
	vertical-align: 3px;
}

.page-template-page-lp a.button:hover{
	text-decoration:none;
	opacity:0.7;
}

.page-template-page-lp .box a.button{
	display: block;
	width: 100%;
	padding: 3px 0;
	margin-top: 16px;
	font-size: 80%;
	border-radius: 0;
	box-shadow: none;
}

.page-template-page-lp .box .button:before{
	content: url(images/common/catch_white.png);
	margin-right: 12px;
	vertical-align: 3px;
}

.page-template-page-lp #main_wrap h2{
	display: block;
	padding: 0;
	margin: 0 0 40px;
	font-weight: bold;
}

.page-template-page-lp #main_wrap h2:before,
.page-template-page-lp #main_wrap h2:after{
	display: none;
}

.page-template-page-lp h3{
	margin: 0 0 8px;
	border-bottom: 1px solid #aaa;
	padding-bottom: 4px;
}

.page-template-page-lp #contents_wrap h2 + h3{
	margin-top: 2em;
}

.page-template-page-lp #contents_wrap h2 + .column_wrap{
	margin-top: 2em;
}

.page-template-page-lp .font_large_most{
	font-size: 224%;
	font-weight: bold;
}

.page-template-page-lp div.box{
	background:url(images/common/box_back.jpg) repeat;
	padding: 32px;
	overflow: hidden;
}

.page-template-page-lp .wlist{
	clear:both;
}

.page-template-page-lp .wlist li:before{
	content:url(images/common/catch02.png);
	margin-right: 16px;
}

.page-template-page-lp dl.tablelayout{
	background:url(images/common/box_back.jpg) repeat;
	font-size: 86%;
	padding: 16px 24px;
	margin-left: 24px;
	margin-right: 24px;
}

.page-template-page-lp dl.tablelayout dt{
	float: left;
	font-weight:bold;
	padding: 1em 0;
	white-space: nowrap;
}

.page-template-page-lp dl.tablelayout dd{
	border-bottom: 1px solid #aaa;
	padding: 1em 0 1em 26%;
	margin-bottom: 0 !important;
}

.page-template-page-lp dl.tablelayout dd *{
	margin-bottom:0 !important;
}

.page-template-page-lp dt.question:before{
	content: "Q.";
	margin-right:16px;
	font-weight: bold;
	color: #4b8823;
}

.page-template-page-lp dd.answer:before{
	content: "A.";
	margin-right:16px;
	font-weight: bold;
	color: #B22626;
}

.page-template-page-lp .voice:before{
	content:url(images/home/catch01.png);
	margin-right: 16px;
}

.page-template-page-lp hr{
	margin-left: 24px;
	margin-right: 24px;
	height: 0;
	margin-bottom: 2em;
}

.page-template-page-lp .area dt:before{
	content: "◆";
	color: #4b8823;
}

.page-template-page-lp .area li{
	display: inline;
	margin-left: 8px;
}

.page-template-page-lp .area li:first-child{
	margin-left: 0;
}


/* LPテンプレート（リンク有り）
------------------------------------------------------------------------*/
.page-template-page-lp-link #contents_wrap{
	padding: 0;
	max-width: 100%;
}

.page-template-page-lp-link #main_wrap{
	width: 100%;
	float: none;
	font-size: 100%;
	margin-bottom: 0;
}

.page-template-page-lp-link #contents_wrap > #main_wrap:first-child{
	padding: 0;
}

.page-template-page-lp-link #contents_wrap > #main_wrap > :not(section){
	margin-right: auto;
	margin-left: auto;
	max-width: 980px;
}

.page-template-page-lp-link #main_wrap section:nth-child(even){
	background: #f4f4f4;
}

.page-template-page-lp-link #main_wrap section{
    padding-top: 56px;
    padding-bottom: 56px;
    overflow: hidden;
}

.page-template-page-lp-link #main_wrap section > *{
	width: 1008px;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}

.page-template-page-lp-link #main_wrap section > *:first-child{
	margin-top: 0;
}

.page-template-page-lp-link #main_wrap section > *:last-child{
	margin-bottom: 0;
}

.page-template-page-lp-link #main_wrap section.reverse{
	background: #000;
	color: #fff;
}

.page-template-page-lp-link #main_wrap section.reverse *{
	color: #fff;
}

.page-template-page-lp-link #main_wrap section.reverse h2{
	padding: 12px 0 0;
	background: none;
}

.page-template-page-lp-link #main_wrap section.wide{
    padding-top: 0;
    padding-bottom: 0;
}

.page-template-page-lp-link #main_wrap section.wide > *{
	width: 100%;
    max-width: 100%;
}

.page-template-page-lp-link #main_wrap section.wide > .column_wrap > div{
}

.page-template-page-lp-link #main_wrap section.wide > .column_wrap .column2{
	width: 50%;
}

.page-template-page-lp-link #main_wrap section.wide > .column_wrap .column3{
	width: calc(100%/3);
}

.page-template-page-lp-link #main_wrap section.wide > .column_wrap .column3.column_center{
	margin: 0;
}

.page-template-page-lp-link #main_wrap section ul.mod_flow{
	padding: 8px 0;
	font-size: 100%;
}

.page-template-page-lp-link #main_wrap section ul.mod_flow li{
	padding: 12px 16px;
}

.page-template-page-lp-link #main_wrap .reverse{
	background: #000;
	color: #fff;
}

.page-template-page-lp-link #main_wrap .reverse *{
	color: #fff;
}

.page-template-page-lp-link #footer_container {
    margin-top: 0px;
}

.page-template-page-lp-link .check{
	font-size: 120%;
    padding-top: 24px;
}

.page-template-page-lp-link ul.check li:before{
	content: url(images/home/check.png);
	vertical-align: -4px;
	margin-right: 8px;
}

.page-template-page-lp-link dt.check{
	font-weight:bold;
}

.page-template-page-lp-link dt.check:before{
	content: url(images/home/check.png);
	vertical-align: -4px;
	margin-right: 8px;
}

.page-template-page-lp-link .embox{
	background:url(images/common/em_back.jpg) repeat;
	font-size: 152%;
	line-height: 1.44;
	font-weight: bold;
	text-align: center;
	padding: 40px;
}

.page-template-page-lp-link a.button{
	display: inline-block;
	border-radius: 8px;
	box-shadow: 0px 1px 1px 1px rgba(145, 145, 145, 0.2);
	min-width: 388px;
    padding: 24px 4%;
	text-decoration: none;
    box-sizing: border-box;
	font-size: 20px;
	line-height: 140%;
	color: #333;
	font-weight: bold;
	text-align: center;
	background: #fff;
}

.page-template-page-lp-link .button:before{
	margin-right: 12px;
	vertical-align: 3px;
}

.page-template-page-lp-link a.button:hover{
	text-decoration:none;
	opacity:0.7;
}

.page-template-page-lp-link .box a.button{
	display: block;
	width: 100%;
	padding: 3px 0;
	margin-top: 16px;
	font-size: 80%;
	border-radius: 0;
	box-shadow: none;
}

.page-template-page-lp-link .box .button:before{
	content: url(images/common/catch_white.png);
	margin-right: 12px;
	vertical-align: 3px;
}

.page-template-page-lp-link #main_wrap h2{
	display: block;
	padding: 12px 24px;
	margin-top: 40px;
	color: #fff;
	font-size: 140% !important;
	font-weight: bold;
	box-shadow:0px 1px 1px 1px rgba(145, 145, 145, 0.2);
	background: #333;
}

.page-template-page-lp-link #main_wrap h2:before,
.page-template-page-lp-link #main_wrap h2:after{
	display: none;
}

.page-template-page-lp-link h3{
	margin: 0 0 8px;
	border-bottom: 1px solid #aaa;
	padding-bottom: 4px;
}

.page-template-page-lp-link #contents_wrap h2 + h3{
	margin-top: 2em;
}

.page-template-page-lp-link #contents_wrap h2 + .column_wrap{
	margin-top: 2em;
}

.page-template-page-lp-link .font_large_most{
	font-size: 224%;
	font-weight: bold;
}

.page-template-page-lp-link div.box{
	background:url(images/common/box_back.jpg) repeat;
	padding: 32px;
	overflow: hidden;
}

.page-template-page-lp-link .wlist{
	clear:both;
}

.page-template-page-lp-link .wlist li:before{
	content:url(images/common/catch02.png);
	margin-right: 16px;
}

.page-template-page-lp-link dl.tablelayout{
	background:url(images/common/box_back.jpg) repeat;
	font-size: 86%;
	padding: 16px 24px;
	margin-left: 24px;
	margin-right: 24px;
}

.page-template-page-lp-link dl.tablelayout dt{
	float: left;
	font-weight:bold;
	padding: 1em 0;
	white-space: nowrap;
}

.page-template-page-lp-link dl.tablelayout dd{
	border-bottom: 1px solid #aaa;
	padding: 1em 0 1em 26%;
	margin-bottom: 0 !important;
}

.page-template-page-lp-link dl.tablelayout dd *{
	margin-bottom:0 !important;
}

.page-template-page-lp-link dt.question:before{
	content: "Q.";
	margin-right:16px;
	font-weight: bold;
	color: #4b8823;
}

.page-template-page-lp-link dd.answer:before{
	content: "A.";
	margin-right:16px;
	font-weight: bold;
	color: #B22626;
}

.page-template-page-lp-link .voice:before{
	content:url(images/home/catch01.png);
	margin-right: 16px;
}

.page-template-page-lp-link hr{
	margin-left: 24px;
	margin-right: 24px;
	height: 0;
	margin-bottom: 2em;
}

.page-template-page-lp-link .area dt:before{
	content: "◆";
	color: #4b8823;
}

.page-template-page-lp-link .area li{
	display: inline;
	margin-left: 8px;
}

.page-template-page-lp-link .area li:first-child{
	margin-left: 0;
}



/* サイドバー無しテンプレート（１カラムテンプレート）
------------------------------------------------------------------------*/
.page-template-page-no-sidebar #main_wrap{
	max-width: 816px;
	float: none;
	font-size: 100%;
}

/* サイド&コンテンツ下部非表示　テンプレート
------------------------------------------------------------------------*/
.page-template-page-no-sidebar-bottom #main_wrap{
	max-width: 816px;
	float: none;
	font-size: 100%;
}

/* 投稿ページ　共通レイアウト
------------------------------------------------------------------------*/
.single #main_wrap .section.mainimage{
	background-size: cover !important;
}

.single #main_wrap .section.mainimage .section_wrap{
	display: table;
}

.single #main_wrap .section.mainimage .section_wrap h1{
	display: table-cell;
	vertical-align: middle;
	color: #333;
}

.single #main_wrap + .section_wrap > h1{
	font-size: 240% !important;
	margin-top: 24px !important;
	margin-bottom: 24px !important;
}

.single #main_wrap .section.mainimage h1{
	font-size: 168%;
	font-weight: bold;
	line-height: 1;
	padding: 8px 24px;
	line-height: 124%;
}

.single #main_wrap > h1{
	margin-top: 0.3em;
	margin-bottom: 1.1em;
}

.single #main_wrap .status{
	text-align: right;
    margin-bottom: 24px;
}

.single #main_wrap .status + *{
	clear: both;
}

.single #main_wrap .status .newmark{
	margin-right: 8px;
}

.single #main_wrap .status time{
	font-size: 92%;
}

.single #main_wrap .status time.last_modified_date{
	display: block;
}

.single #main_wrap ul.term{
	width: 72%;
    float: left;
	overflow: hidden;
}

.single #main_wrap ul.term.bottom{
	margin-top: 32px;
	width: 100%;
    float: none;
	overflow: hidden;
	display: none;
}

.single #main_wrap ul.tags{
	margin-bottom: 0;
}

.single #main_wrap ul.tags li.tag{
	display: inline;
}

.single #main_wrap ul.tags li.tag a{
	margin-bottom: 8px;
}

.single dl.status_event{
	margin-top:1.618em;
}

.single dl.status_event dt{
	font-weight:bold;
}

.single #main_wrap dd{
	margin-bottom:1.618em;
}

.single #main_wrap .lead{
	margin-top:1.618em !important;
}

/* アイキャッチ画像 */
.single #main_wrap .eyecatch img{
	width: 100% !important;
}

.single #main_wrap .eyecatch,
.single #main_wrap .eyecatch.small{
	float:right;
	width: 38.2% !important;
	margin-top: 0em !important;
	margin-left: 4% !important;
	margin-bottom: 20px;
	margin-right: 0 !important;
	min-width: 0px;
}

.single #main_wrap .eyecatch.middle{
	width: 48% !important;
	margin-left: 4% !important;
}

.single #main_wrap .eyecatch.full{
	float:none;
	width: 100% !important;
	margin-top: 0em !important;
	margin-left: 0 !important;
}

/* 見出し */
.single #main_wrap h1 {
	margin: 16px 0 !important;
}

.single #main_wrap #breadcrumbs + h1 {
	margin-bottom: 0 !important;
	border-bottom: none;
}

/* タグ */
.single #main_wrap ul.tags {
    width: 80%;
    float: left;
}

.single #main_wrap ul.tags .tag a{
	text-decoration: none;
}

.single #main_wrap ul.tags .tag a:hover{
	background: #ccc;
	color: #fff;
}

/* 各要素 */
.single #main_wrap ol li {
	margin-left:2em;
}

.single #main_wrap hr {
	height: auto;
	margin-bottom: 1.618em;
}



/* 共通モジュール
------------------------------------------------------------------------*/

/* フロー図 */
#main_wrap ul.mod_flow{
	background: #f4f4f4;
    padding: 8px 2%;
	font-size: 90%;
}

#main_wrap ul.mod_flow li {
    position: relative;
    padding: 0;
    margin-top: 32px;
    background: #fff;
    margin-bottom: 4px;
    text-align: left;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	align-items: stretch;
	width: 100%;
}

#main_wrap ul.mod_flow li:before {
	content: "";
    position: absolute;
    display: block;
	text-align: left;
	top: -24px;
	left : -webkit-calc(50% - 40px);
	left : calc(50% - 40px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 40px 0 40px;
	border-color: #7bd1ce;
    border-left-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;

}

#main_wrap ul.mod_flow li:first-child {
    margin-top: 8px;
}

#main_wrap ul.mod_flow li:first-child:before {
	display: none;
}

#main_wrap ul.mod_flow li:last-child {
    margin-bottom: 8px;
}

#main_wrap section:nth-child(odd) ul.mod_flow{
	background: #fff;
}

#main_wrap section:nth-child(odd) ul.mod_flow li {
    padding: 12px 16px;
    border: 1px solid #ccc;
}

#main_wrap ul.mod_flow li .num{
    color: #fff;
    background-color: #000;
    display: block;
    padding: 12px;
	font-weight: bold;
    text-align: center;
	white-space: nowrap;
    display: grid;
	align-items: stretch;
    min-width: 52px;
}

#main_wrap ul.mod_flow li > dl{
	margin-bottom: 0;
}

#main_wrap ul.mod_flow li dd{
	margin-bottom: 0;
}

#main_wrap ul.mod_flow li .head{
	font-weight: bold;
	display: block;
}

#main_wrap ul.mod_flow li .cont{
	display: block;
    padding: 12px;
}

#main_wrap ul.mod_flow li > dl{
	display: block;
    padding: 12px;
}

#main_wrap ul.mod_flow li > dl .head,
#main_wrap ul.mod_flow li > dl .cont{
    padding: 0;
}

/* 悩み、トラブル */
#main_wrap ul.mod_trouble{
    padding: 16px;
    border: 8px solid #ebebeb;
	background-color: rgba(255, 255, 255, 0.8);
}

#main_wrap ul.mod_trouble li:before {
    font-family: "fontello";
    content: '\e827';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

#main_wrap ul.mod_trouble li {
    padding-left: 24px;
    position: relative;
}

/* 解決 */
#main_wrap .mod_solution{
    text-align: center;
}

#main_wrap .mod_solution:before{
	content: "";
    display: block;
    margin: 0 auto 16px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 80px 0 80px;
    border-color: #7bd1ce transparent transparent transparent;
}

/* メリット */
#main_wrap ul.mod_merit li:before {
    font-family: "fontello";
    content: '\e82c';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

#main_wrap ul.mod_feature li {
    padding-left: 24px;
    position: relative;
}

/* 特長 */
#main_wrap ul.mod_feature{
	overflow: hidden;
}

#main_wrap ul.mod_feature li:before {
    font-family: "fontello";
    content: '\e809';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
	padding: 8px 0 8px 16px;
}

#main_wrap ul.mod_feature li {
    display: block;
    float: left;
    width: 49%;
    padding: 8px 8px 8px 40px;
    margin-bottom: 8px;
    position: relative;
    border: 1px solid #bdbdbd;
}

#main_wrap ul.mod_feature li:nth-child(even) {
    float: right;
}

#main_wrap dl.mod_feature{
	overflow: hidden;
}

#main_wrap dl.mod_feature dt{
	position: relative;
    padding-left: 16px;
	font-weight: bold;
}

#main_wrap dl.mod_feature dt:before{
    font-family: "fontello";
    content: '\e809';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}
/*
#main_wrap *.mod_feature{
	display: block;
    border: 1px solid #bdbdbd;
    padding: 8px 8px 8px 40px;
    margin-bottom: 8px;
	position: relative;
}

#main_wrap *.mod_feature:before {
    font-family: "fontello";
    content: '\e809';
    font-size: 72%;
    width: auto;
    position: relative;
	top: -0.2em;
    left: 0;
	margin-right: 8px;
}
*/

/* お客様の声 */
#main_wrap ul.mod_review li:before {
    font-family: "fontello";
    content: '\e82d';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

#main_wrap ul.mod_review li {
    padding-left: 24px;
    position: relative;
}

#main_wrap p.mod_review{
    padding-left: 24px;
    position: relative;
}

#main_wrap p.mod_review:before {
    font-family: "fontello";
    content: '\e82d';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

#main_wrap p.mod_review strong {
	color: #333;
}

strong.mod_voice:before {
    font-family: "fontello";
    content: '\e82d';
    font-size: 72%;
    width: auto;
    position: relative;
    top: -0.2em;
    left: 0;
	margin-right: 8px;
}

/* ボックスリスト */
#main_wrap ul.mod_boxlist{
	overflow: hidden;
}

#main_wrap ul.mod_boxlist li:before {
    font-family: "fontello";
    content: '\e828';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
	padding: 8px 0 8px 16px;
}

#main_wrap ul.mod_boxlist li {
    display: block;
    float: left;
    width: 49%;
    padding: 8px 8px 8px 32px;
    margin-bottom: 8px;
    position: relative;
    border: 1px solid #bdbdbd;
}

#main_wrap ul.mod_boxlist li:nth-child(even) {
    float: right;
}

/* ボックスリスト　リンク */
#main_wrap ul.mod_boxlist.link li a:before{
    font-family: "fontello";
    content: '\e828';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
	padding: 8px 0 8px 16px;
}

#main_wrap ul.mod_boxlist.link li:before {
    display: none;
}

#main_wrap ul.mod_boxlist.link li{
    display: inline;
    float: none;
    width: auto;
    padding: 0;
    margin-bottom: 0;
    position: relative;
    border: none;
}

#main_wrap ul.mod_boxlist.link li a{
    display: block;
    float: left;
    width: 49%;
    padding: 8px 8px 8px 32px;
    margin-bottom: 8px;
    position: relative;
    border: 1px solid #bdbdbd;
    color: #333;
    text-decoration: none;
}

#main_wrap ul.mod_boxlist.link li:nth-child(even) {
    float: none;
}

#main_wrap ul.mod_boxlist.link li:nth-child(even) a{
    float: right;
}

#main_wrap ul.mod_boxlist.link li a:hover{
	background-color: #f4f4f4;
}

/* ボックス */
.mod_box{
	border: 1px solid #ccc;
	padding: 16px;
}

div.mod_box{
	padding: 24px;
	margin-bottom: 1.618em;
}

table + div.mod_box{
	margin-top: 40px;
}

div.mod_box > *:first-child{
	padding-top: 0 !important;
	margin-top: 0 !important;
}

div.mod_box > *:last-child{
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

/* 電話番号表示 */
.mod_tel{
	font-size: 176%;
	margin-bottom: 0 !important;
	color: #7bd1ce;
	font-weight: bold;
	text-decoration: none;
}

.mod_tel a{
	text-decoration: none;
}

/* ボタン */
.button{
	display: inline-block;
	border-radius: 4px;
	box-shadow:0px 1px 1px 1px rgba(145, 145, 145, 0.2);
	min-width: 256px;
	max-width: 100%;
    padding: 16px 32px;
    box-sizing: border-box;
	font-size: 100%;
	line-height: 140%;
	color: #fff;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	background: #ff9a05;
}

.button:before{
	margin-right: 12px;
	vertical-align: 3px;
}

.button:hover{
	text-decoration: none;
	opacity: 0.7;
}

/* 拡張 */
#main_wrap .ex{
    padding: 8px 0;
	margin-left: 0px;
}

#main_wrap .ex li{
	margin-top: 0.4em;
}

#main_wrap .ex li:first-child{
	margin-top: 0em;
}

#main_wrap .ex span.cat{
	display: inline-block;
	background: #999;
    color: #fff;
    font-size: 88%;
    padding: 0 8px;
    margin-right: 8px;
}



/* ボックスリンク */
#main_wrap .box_link a{
	display:block;
	background: #f4f4f4;
	overflow: hidden;
	padding: 24px;
	margin-bottom: 24px;
	text-decoration: none;
}

#main_wrap .box_link a:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	background: #F4F4F4;
}

#main_wrap .box_link h2{
	padding-top: 0;
}

#main_wrap .box_link img{
	float: left;
	margin-right: 16px;
}

#main_wrap .box_link p{
	margin-top: 0.81em;
	margin-bottom: 0;
}



/* ページ別レイアウト（メインイメージ）
------------------------------------------------------------------------*/

/* 共通 */
#mainimage{
	background: #999;
	background-position: center 50%;
	background-size: cover;
}

#mainimage .section_wrap{
    display: flex;
    align-items: center;
	width: 100%;
	min-height: 144px;
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
}

#mainimage .section_wrap.image{
	line-height: 0;
    font-size: 0;
	padding: 0;
}

#mainimage h1{
	display: table-cell;
    vertical-align: middle;
    position: relative;
    font-size: 160%;
}

#mainimage h1 span {
    font-size: 48%;
    font-weight: normal;
    line-height: 1;
    padding: 0;
    text-shadow: none;
    vertical-align: 0;
    margin-left: 8px;
}



/* ページ別レイアウト
------------------------------------------------------------------------*/

/* 事例 */
.jirei{
	overflow: hidden;
}

.jirei li a{
    display: block;
    border: 1px solid #2448A8;
    width:31.333%;
    text-align: center;
    padding: 24px;
    box-sizing: border-box;
    float: left;
    margin-left: 3%;
}

.jirei li:nth-child(3n+1) a{
    margin-left: 0;
}

.jirei li a:hover{
	background: #2448A8;
	color: #FFF;
	text-decoration: none;
}


/* プロフィール */
.profile_box{
	padding: 24px;
	margin-bottom: 1.618em;
	border: 1px solid #0C3DBE;
	background: #f8f8f8;
	box-sizing: border-box;
}

.profile_box dt{
	border: none;
	font-weight: bold;
}

.profile_box dd{
	border: none;
	padding: 0;
	line-height: 150%;
}

.profile_box dd.pic{
	padding: 0 !important;
	vertical-align: top;
}

.profile_box dd.pic img{
	margin-top: 4px;
}

.profile_box .profile_name{
	letter-spacing: 0.1em;
}

.profile_box .profile_name span{
	font-size: 40%;
	margin-left: 1em;
	letter-spacing: 0em;
	display: inline-block;
}

/* ご相談 */
.page-contact #main_wrap a.tel{
	font-family: 'Noto Sans', sans-serif;
    font-size: 160%;
    font-weight: bold;
    line-height: 1;
}


/*------------------------------------------------------------------------
◆コンテンツ下部
------------------------------------------------------------------------*/
aside.contents_bottom{
	clear: both;
	margin-top: 32px;
	line-height: 1.618;
}


/*--------------------------------------------------------------------------
◆コンテンツ下部メニュー
--------------------------------------------------------------------------*/
ul#contents_bottom_menu{
	clear: both;
	background: #f4f4f4;
    padding: 24px;
    margin-top: 24px;
}

ul#contents_bottom_menu li a {
	color: #333 !important;
	text-decoration: none;
}

ul#contents_bottom_menu li a:hover {
	text-decoration: underline;
}

ul#contents_bottom_menu li.current_page_item > a {
	color: #333 !important;
	text-decoration: none;
}

ul#contents_bottom_menu li.current_page_item > a:after {
	content: "※現在閲覧中";
    color: #fff;
    font-size: 64%;
    margin-left: 0.8em;
    padding: 4px;
    line-height: 1;
    display: inline-block;
    white-space: nowrap;
    background: #333;
    position: relative;
    top: -3px;
}

ul#contents_bottom_menu ul.children{
	margin-bottom: 0;
}

/*------------------------------------------------------------------------
◆サブメニュー
------------------------------------------------------------------------*/
#sidenav_wrap{
	margin-bottom: 32px;
}

#sidenav_wrap h2#sidenav_parent{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
    font-size: 100%;
}

#sidenav_wrap h2#sidenav_parent a{
    padding: 14px 16px;
    font-weight: normal;
    font-size: 100%;
	line-height: 140%;
    color: #fff;
    background: #000;
    box-sizing: border-box;
}

#sidenav_wrap h2#sidenav_parent.current a {
    background: #000;
    color: #fff;
}
#sidenav_wrap h2#sidenav_parent a:hover {
    background: #000;
    color: #fff;
}

#sidenav_wrap h2 a{
	display: block;
	color: #333333;
	border-top: none;
    border-bottom: none;
	text-decoration: none;
	overflow: hidden;
	line-height: 140%;
	padding: 12px 12px 12px 32px;
	position: relative;
    font-size: 90%;
    border-bottom: 1px solid #ccc;
}

#sidenav ul{
	margin-bottom: 0px !important;
	font-size: 100%;
}

#sidenav li{
	/*display:none;*/
}

#sidenav li a{
	display: block;
	color: #333333;
	border-top: none;
    border-bottom: none;
	text-decoration: none;
	overflow: hidden;
	padding: 12px 12px 12px 32px;
	position: relative;
    font-size: 100%;
	line-height: 140%;
    border-bottom: 1px solid #ccc;
}

#sidenav li a:before{
	font-family: "fontello";
    content: '\e828';
    font-size: 88%;
    width: 10%;
    position: absolute;
    top: 0.85em;
    left: 16px;
}

#sidenav li a:hover{
	background: #000;
	color: #fff;
}

#sidenav li a:hover:before{
}

#sidenav ul.children li a{
	padding: 12px 12px 12px 44px;
}

#sidenav ul.children li a:before{
	content: "-";
	position: absolute;
    top: 0.95em;
    left: 32px;
}

#sidenav ul.children ul.children li a{
	padding: 12px 12px 12px 56px;
}

#sidenav ul.children ul.children li a:before{
	content: "-";
	position: absolute;
    top: 0.95em;
    left: 44px;
}

/* 今いる階層内のメニューのみ表示 */
#sidenav li.current-menu-ancestor,
#sidenav li.current-menu-ancestor ul.sub-menu li,
#sidenav li.current-menu-item ul.sub-menu li,
#sidenav li.menu-parent-item.current-menu-item,
#sidenav li.current-post-ancestor,
#sidenav li.current-post-ancestor ul.sub-menu li,
#sidenav li.current-menu-item,
#sidenav li.current-post-ancestor ul.sub-menu,
#sidenav li.current-category-parent ul.sub-menu,
#sidenav li.menu-item-object-category.current-menu-item ul.sub-menu{
	display: block;
}

/* 親ページ */
#sidenav > li.menu-parent-item.current-menu-item > a,
#sidenav > li.menu-parent-item > a{
    display: block;
    color: #333333;
    border-top: 1px solid #E2E2E2;
    border-bottom: 1px solid #E2E2E2;
    text-decoration: none;
    overflow: hidden;
    padding: 12px 1em;
    font-size: 104%;
    font-weight: bold;
    text-shadow: none;
}

#sidenav > li.menu-parent-item.current-menu-item > a{
	color: #FFF;
	background: #E2E9FC;
	display: block;
}

#sidenav > li.menu-parent-item.current-menu-item > a:hover,
#sidenav > li.menu-parent-item > a:hover{
	color: #FFF;
	background: #E2E9FC;
}


#sidenav > li.menu-parent-item.current-menu-item > a:before,
#sidenav > li.menu-parent-item > a:before{
	display: none;
}


/* 起点ページ(親ページ) */
#sidenav .current_page_parent > a{
}

#sidenav .current_page_parent > a:before{
	/*display: none;*/
}

/* 子ページ */
#sidenav > li > ul.sub-menu{
	display: none;
	margin-bottom: 0 !important;
}

#sidenav > li > ul.sub-menu > li > a{
	padding: 10px 1em 10px 2em;
}

#sidenav > li.current_page_ancestor > ul.sub-menu,
#sidenav > li.current_page_item > ul.sub-menu{
	display: block;
}

#sidenav > li > ul.sub-menu > li > a:hover:before{
	content: url(images/common/catch_white.png);
}

/* 孫ページ */
#sidenav > li > ul.sub-menu > li > ul.sub-menu{
	background: #f4f4f4;
}

#sidenav > li > ul.sub-menu > li > ul.sub-menu > li > a{
	position: relative;
	padding: 10px 1em 10px 2em;
}

#sidenav > li > ul.sub-menu > li > ul.sub-menu > li > a:before{
    content: "-";
    display: block;
    position: absolute;
    top: 10px;
    left: 1em;
}

#sidenav > li > ul.sub-menu > li > ul.sub-menu > li > a:before{
	content:"-";
	display:block;
	position: absolute;
    top: 10px;
    left: 1em;
}

/* ひ孫ページ */
#sidenav ul.sub-menu ul.sub-menu{
	display:none;
}

/* 今いる階層内のひ孫ページのみ表示 */
#sidenav li.current-menu-ancestor li.current-menu-ancestor ul.sub-menu,
#sidenav li.current-menu-ancestor li.current-menu-ancestor ul.sub-menu li ul.sub-menu,
#sidenav li.current-menu-parent li.menu-parent-item.current-menu-item ul.sub-menu,
#sidenav li.current-post-ancestor li.current-post-ancestor ul.sub-menu,
#sidenav li.current-post-ancestor li.current-post-ancestor ul.sub-menu li ul.sub-menu,
#sidenav li.current-menu-item{
	display:block;
}

/* 現在のページ */
#sidenav li.current-menu-item > a,
#sidenav li.current-post-parent > a{
	background: #E2E9FC;
	border-top: none !important;
	color:#FFFFFF !important;
}

#sidenav li.current-menu-item > a:hover,
#sidenav li.current-post-parent > a:hover{
	border-top: none !important;
}

#sidenav li.current_page_item > a:before,
#sidenav li.menu-item-object-category.current-menu-item > a:before,
#sidenav li.menu-item-object-category.current-post-parent > a:before{

}

#sidenav li.current_page_item > a{
	background: #999;
	border-top: none !important;
	color: #fff !important;
}



/*--------------------------------------------------------------------------
◆サブコンテンツ
--------------------------------------------------------------------------*/
#sub_wrap h2{
	clear: both;
	margin-top: 0 !important;
    padding: 0 0 8px;
	/*border-bottom: 1px solid #ccc;*/
    background: none;
    box-shadow: none;
    color: #333;
    font-size: 110%;
}

#sub_wrap h2:before{
	display: none;
}

#sub_wrap > * {
	margin-bottom: 16px;
}

#sub_wrap a:hover img{
	opacity: 0.8;
}

#sub_wrap > div img{
	max-width: 100%;
	width: auto;
	height: auto;
}

#sub_wrap > div > img{
	vertical-align: bottom;
	margin-bottom: 24px;
}

#sub_wrap > div > a img{
	vertical-align: bottom;
	margin-bottom: 24px;
}

#sub_wrap .sidebar_bottom_widget .simple-image img{
	width: auto;
    margin-right: auto;
    margin-left: auto;
    display: block;
}

#sub_wrap .sidebar_bottom_widget li {
    overflow: visible !important;
    line-height: 150%;
    padding: 8px 0;
    border-bottom: 1px solid #ccc;
}

#sub_wrap .sidebar_bottom_widget li:first-child {
    border-top: 1px solid #ccc;
}

#sub_wrap .sidebar_bottom_widget li span{
	display: block;
    font-size: 80%;
}

/* プロフィール */
#sub_wrap .profile{
    margin-bottom: 24px;
	padding: 16px;
	border: 1px solid #ccc;
}

#sub_wrap .profile img{
	float: right;
	width: auto;
}

#sub_wrap .profile dt{
	font-weight: bold;
	color: #333;
	margin-top: 0.8em;
}

#sub_wrap .profile dl,
#sub_wrap .profile dd{
    margin-bottom: 0px !important;
	font-size: 96%;
}

#sub_wrap .profile dl > dd:first-child + dt{
    margin-top: 0px !important;
}



/*--------------------------------------------------------------------------
◆テーブル
--------------------------------------------------------------------------*/
table{
	width: 100%;
	font-size: 90%;
	line-height: 160%;
	margin: 0 auto;
}

table th,
table td{
	border: 1px solid #E6E6E6;
	/*padding: 8px 12px;*/
	padding: 16px;
}

table thead th{
	background: #999;
	color: #fff;
	font-weight: bold;
}

table td{
	text-align: left;
	background: #FFFFFF;
}

table tbody th{
	text-align: left;
	background: #f4f4f4;
	color: #333333;
	font-weight: bold;
	width: 24%;
}

table td *{
	margin-bottom: 0em !important;
}

table td ul.catch{
	margin-bottom: 0em !important;
}

table td ul.catch li{
	margin-bottom: 0.4em !important;
}

table td ul.catch li:last-of-type{
	margin-bottom: 0em !important;
}

table td ul.catch br{
	display: none !important;
}

table td *:last-of-type{
	margin-bottom: 0 !important;
}



/*--------------------------------------------------------------------------
◆カテゴリー
--------------------------------------------------------------------------*/
.category.archive #main_wrap .section{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: visible;
}

.category.archive #main_wrap .section.mainimage{
	background-size: cover !important;
}

.category.archive #main_wrap .section.mainimage .section_wrap{
	display: table;
}

.category.archive #main_wrap .section.mainimage .section_wrap h1{
	display: table-cell;
	vertical-align: middle;
	color: #333;
}

.category.archive #main_wrap a{
	text-decoration:none;
}

.category.archive #main_wrap .section.mainimage h1{
	font-size: 168%;
	font-weight: bold;
	line-height: 1;
	padding: 8px 24px;
	line-height: 124%;
}

.category.archive #main_wrap .category_description{
	padding: 32px 0 0;
}

.category.archive #main_wrap .category_description *:last-child{
	margin-bottom: 0;
}

.category.archive #main_wrap a{
	text-decoration:none;
}

.category.archive #main_wrap .section_wrap > ul{
	margin-top: 16px;
	margin-left: 0 !important;
	margin-bottom: 0 !important;
}

.category.archive #main_wrap a.box{
	display: block;
	clear: both;
	overflow: hidden;
	color: #333;
	background: #FFFFFF;
	border-bottom: 1px solid #d3d3d3;
	border-top: none;
}

.category.archive #main_wrap li:first-child a.box{
	border-top: 1px solid #d3d3d3;
}

.category.archive #main_wrap a.box h1 {
	clear: none !important;
	padding: 0 !important;
	margin-bottom: 0.4em !important;
	font-size: 128% !important;
	font-weight: bold !important;
}

.category.archive #main_wrap a:hover.box{
	opacity: 0.8;
}

.category.archive #main_wrap a.box .imgleft {
	float: right;
	margin-right: 0;
	line-height: 0;
	padding: 24px 0;
	width: 18%;
}

.category.archive #main_wrap a.box .imgleft img{
	width: 100% !important;
	margin: 0 !important;
}

.category.archive #main_wrap a.box .imgleft.icon img{
	padding: 40px;
	background: #f4f4f4;
	box-sizing: border-box;
}

.category.archive #main_wrap a.box .info_wrap {
	padding: 24px 24px 24px 0;
}

.category.archive #main_wrap a.box *{
	overflow: hidden;
}

.category.archive #main_wrap a.box p{
	margin-bottom: 0 !important;
}

.category.archive #main_wrap a.box .status{
	margin-bottom: 0.8em !important;
	font-size: 88%;
}

.category.archive #main_wrap .status .tag {
	display: none;
}

.category.archive #main_wrap .status .newmark {
	margin-left: 8px;
}

.category.archive #main_wrap a.box .excerpt{
	font-size: 88%;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.category.archive #main_wrap a.box li.place{
	margin-top: 0.4em;
}

.category.archive #main_wrap h2{
	background:none !important;
	padding-left:0 !important;
}

.category.archive #main_wrap .noevent{
	padding: 1em !important;
	background: #FFFFFF;
	-moz-box-shadow: 0px 0px 2px 0 #aaabac;
	-webkit-box-shadow: 0px 0px 2px 0 #aaabac;
	box-shadow: 0px 0px 2px 0 #aaabac;
}

.category.archive #main_wrap .noevent p{
	margin-bottom:0 !important;
}


/*--------------------------------------------------------------------------
◆アーカイブ
--------------------------------------------------------------------------*/
.archive #main_wrap .section{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: visible;
}

.archive.date #main_wrap .section{
	overflow: visible;
}

.archive.date #main_wrap .section h1{
	font-size: 168%;
	font-weight: bold;
	line-height: 1;
	padding: 8px 24px;
	line-height: 124%;
}

.archive.date .widget.widget_recent_entries li{
	background:url(images/common/catch.png) no-repeat 0.2em 0.5em;
	padding-left: 16px;
}

.archive.date #main_wrap dl{
	margin-top: 24px;
}

.archive.date #main_wrap dt.title{
    font-size: 110%;
}

.archive.date #main_wrap dd.excerpt{
	margin-bottom: 0 !important;
}


/*--------------------------------------------------------------------------
◆アーカイブ
--------------------------------------------------------------------------*/
.blog #main_wrap .section{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: visible;
}

.blog #main_wrap .section.mainimage{
	background-size: cover !important;
}

.blog #main_wrap .section.mainimage .section_wrap{
	display: table;
}

.blog #main_wrap .section.mainimage .section_wrap h1{
	display: table-cell;
	vertical-align: middle;
	color: #333;
}

.blog #main_wrap a{
	text-decoration:none;
}

.blog #main_wrap .section.mainimage h1{
	font-size: 168%;
	font-weight: bold;
	line-height: 1;
	padding: 8px 24px;
	line-height: 124%;
}

.blog #main_wrap .category_description{
	padding: 32px 0 0;
}

.blog #main_wrap .category_description *:last-child{
	margin-bottom: 0;
}

.blog #main_wrap a{
	text-decoration:none;
}

.blog #main_wrap .section_wrap > ul{
	margin-top: 16px;
	margin-left: 0 !important;
	margin-bottom: 0 !important;
}

.blog #main_wrap a.box{
	display: block;
	clear: both;
	overflow: hidden;
	color: #333;
	background: #FFFFFF;
	border-bottom: 1px solid #d3d3d3;
	border-top: none;
}

.blog #main_wrap li:first-child a.box{
	border-top: 1px solid #d3d3d3;
}

.blog #main_wrap a.box h1 {
	clear: none !important;
	padding: 0 !important;
	margin-bottom: 0.4em !important;
	font-size: 152% !important;
	font-weight: bold !important;
}

.blog #main_wrap a:hover.box{
	background: #F4F4F4;
}

.blog #main_wrap a.box .imgleft {
	float: right;
	margin-right: 0;
	line-height: 0;
	padding: 24px 0;
	padding-left: 24px;
	width: 18%;
}

.blog #main_wrap a.box .imgleft img{
	width: 100% !important;
	margin: 0 !important;
}

.blog #main_wrap a.box .imgleft.icon img{
	padding: 40px;
	background: #f4f4f4;
	box-sizing: border-box;
}

.blog #main_wrap a.box .info_wrap {
	padding: 24px 0;
}

.blog #main_wrap a.box *{
	overflow: hidden;
}

.blog #main_wrap a.box p{
	margin-bottom: 0 !important;
}

.blog #main_wrap a.box .status{
	margin-bottom: 0.8em !important;
	font-size: 88%;
}

.blog #main_wrap .status .tag {
	display: none;
}

.blog #main_wrap .status .newmark {
	margin-left: 8px;
}

.blog #main_wrap a.box .excerpt{
	font-size: 88%;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.blog #main_wrap a.box li.place{
	margin-top: 0.4em;
}

.blog #main_wrap h2{
	background: none !important;
	padding-left: 0 !important;
}

.blog #main_wrap .noevent{
	padding: 1em !important;
	background: #FFFFFF;
	-moz-box-shadow: 0px 0px 2px 0 #aaabac;
	-webkit-box-shadow: 0px 0px 2px 0 #aaabac;
	box-shadow: 0px 0px 2px 0 #aaabac;
}

.blog #main_wrap .noevent p{
	margin-bottom: 0 !important;
}

/*--------------------------------------------------------------------------
◆タグ
--------------------------------------------------------------------------*/
body.tag #main_wrap ul.tags{
	margin-top: 8px;
}

body.tag #main_wrap ul.tags li.tag{
	display: inline-block;
	color: #333333;
	font-size: 72%;
	text-decoration: none;
	border: 1px solid #ccc;
	padding: 2px 8px;
	margin-right: 8px;
	margin-bottom: 8px;
	background: none;
}

body.tag #main_wrap .section_wrap dl{
    margin-top: 16px;
}

body.tag #main_wrap .section_wrap dl dt{
    font-weight: bold;
	font-size: 120%;
}

/*------------------------------------------------------------------------
◆ページナビ
------------------------------------------------------------------------*/
.pagination {
	clear: both;
	padding: 16px 0;
	position: relative;
	line-height: 1;
}
  
.pagination span,
.pagination a {
	display: block;
	float: left;
	margin: 2px 6px 2px 0;
	padding: 14px 16px 14px 16px;
	text-decoration: none;
	width: auto;
	color: #333333;
	background: #FFFFFF;
	border: 1px solid #ccc;
}
  
.pagination a:hover{
	color: #fff;
	background: #999;
}

.pagination .current{
	padding: 14px 16px 14px 16px;
	background: #999;
	color: #fff;
}



/*--------------------------------------------------------------------------
◆ページ上部
--------------------------------------------------------------------------*/
#pagenav {
	display: none;
	position: fixed;
	bottom: 4%;
	right: 4%;
	padding: 0;
	margin-bottom: 0 !important;
	z-index: 9999;
}

#pagenav li{
	background: none;
	padding-left: 0 !important;
}

#pagenav a{
	display: block;
	width: 52px;
	height: 52px;
	background:url(images/common/pagetop.png) no-repeat center center;
    border-radius: 48px;
}

#pagenav a:hover{
	opacity: 0.8;
}



/*--------------------------------------------------------------------------
◆フッター
--------------------------------------------------------------------------*/
#footer_container_top{
    background: #fff;
	border-top: 1px solid #CCC;
}

#footer_wrap_top{
    margin: 0px auto;
    padding: 8px 0;
    overflow: hidden;
    font-size: 72%;
    text-align: center;
}

#footer_wrap_top *{
	text-align: center;
	color: #333;
}

#footer_wrap_top ul#fnav_top{
	padding: 0 4%;
}

#footer_wrap_top ul#fnav_top li{
	display: inline;
	line-height: 2;
}

#footer_wrap_top ul#fnav_top li a{
	white-space: nowrap;
	text-decoration: none;
}

#footer_wrap_top ul#fnav_top li:first-child:before{
	content: "|";
	padding-left: 12px;
	padding-right: 12px;
}

#footer_wrap_top ul#fnav_top li:after{
	content: "|";
    padding-left: 12px;
    margin-right: 8px;
}



#footer_wrap_middle{
	margin: 0px auto;
	overflow: hidden;
	font-size: 72%;
	text-align: center;
    padding-left: 4%;
    padding-right: 4%;
    box-sizing: border-box;
}

#footer_wrap_middle *{
	color: #fff;
}

#footer_middle_info {
	float: left;
	text-align: left;
	color: #fff;
	margin: 24px 0;
}

#footer_middle_info .name {
	font-weight: bold;
    margin-bottom: 0.4em;
    font-size: 116%;
}

#footer_middle_info a{
	text-decoration: underline;
}

#footer_middle_info a:hover{
	text-decoration: none;
}

#footer_middle_menu {
	float: right;
	text-align: left;
	color: #fff;
	display: table;
    table-layout: fixed;
    width: 70%;
	margin: 24px 0;
}

#footer_middle_menu .fnav_container{
	/*width: 25%;*/
	display: table-cell;
    width: 100%;
	padding-right: 2%;
}

ul.fnav li{
	margin-top: 0.4em;
}

ul.fnav > li:first-child{
	margin-top: 0;
}

ul.fnav li a{
	color: #fff;
	text-decoration: none;
}

ul.fnav li a:hover{
	text-decoration: underline;
}

ul.fnav ul.sub-menu li{
	padding-left: 14px;
	position: relative;
}

ul.fnav li ul.sub-menu li:before{
	content: "-";
	margin-right: 8px;
	left: 0;
	position: absolute;
}

#fnav{
	text-align: right;
}

#fnav li{
	display: inline;
}

#fnav li:before{
	content: "|";
    margin-right: 16px;
    margin-left: 16px;
}

#fnav li:first-child:before{
	display: none;
}

#fnav_left > li > a,
#fnav_center_left > li > a,
#fnav_center_right > li > a,
#fnav_right > li > a{
	font-weight: bold;
}

#footer_container_bottom {
    overflow: hidden;
	font-size: 72%;
}

#footer_wrap_bottom {
	border-top: 1px dotted #fff;
	margin: 0 4%;
    overflow: hidden;
}

#footer_wrap_bottom > div{
	padding: 8px 0;
}

#footer_container_bottom #footer_wrap_copyright{
	text-align: center;
	color: #fff;
    box-sizing: border-box;
}

#footer_container_bottom.menu_in #fnav_btm{
	float: left;
	white-space: nowrap;
}

#footer_container_bottom.menu_in #fnav_btm li{
	display: inline;
	color: #fff;
}

#footer_container_bottom.menu_in #fnav_btm li:before{
	content: "|";
    margin-right: 16px;
    margin-left: 16px;
	color: #fff;
}

#footer_container_bottom.menu_in #fnav_btm li:first-child:before{
	display: none;
}

#footer_container_bottom.menu_in #fnav_btm_container{
	float: left;
}

#footer_container_bottom.menu_in #footer_wrap_copyright{
	float: right;
	text-align: right;
}




/*--------------------------------------------------------------------------
◆ボトム固定
--------------------------------------------------------------------------*/
#bottom_fix_container{
	display: none;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/*--------------------------------------------------------------------------
◆続きを読む
--------------------------------------------------------------------------*/
.read_more_contents{
	display: none;
}

.read_more_btn{
	cursor: pointer;
}

/*--------------------------------------------------------------------------
◆サイトマップ
--------------------------------------------------------------------------*/
ul.children ul.children{
	margin-bottom: 0 !important;
}

.page-sitemap #main_wrap ul.page-list,
.sitemap ul.page-list{
	margin-left: 0;
	margin-bottom: 0;
}

.page-sitemap #main_wrap ul.page-list li,
.sitemap ul.page-list li{
	padding-left: 16px;
	position: relative;
}

.page-sitemap #main_wrap ul.page-list li:before,
.sitemap ul.page-list li:before{
	font-family: "fontello";
    content: '\e828';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

.page-sitemap #main_wrap ul.page-list li br,
.sitemap ul.page-list li br{
	display: none;
}

.page-sitemap #main_wrap .current_page_item,
.sitemap #main_wrap .current_page_item{
	display: none;
}

.page-sitemap .category_list span,
.sitemap .category_list span{
	display: none;
}

.page-sitemap ul.page-list > li,
.page-sitemap ul.category_list > li,
.sitemap ul.page-list > li,
.sitemap ul.category_list > li{
	margin-bottom: 0.4em;
}

.page-sitemap ul.page-list .children,
.sitemap ul.page-list .children{
	margin-top: 0.4em;
    margin-bottom: 0.4em !important;
}

.page-sitemap #main_wrap ul.category_list,
.sitemap ul.category_list{
	margin-left: 0;
	margin-bottom: 0;
}

.page-sitemap #main_wrap ul.category_list li,
.sitemap ul.category_list li{
	padding-left: 16px;
	position: relative;
}

.page-sitemap #main_wrap ul.category_list li:before,
.sitemap ul.category_list li:before{
	font-family: "fontello";
    content: '\e828';
    font-size: 72%;
    width: auto;
    position: absolute;
    top: 0.25em;
    left: 0;
}

.page-sitemap #main_wrap ul.category_list li br,
.sitemap ul.category_list li br{
	display: none;
}

/*------------------------------------------------------------------------
◆検索フォーム
------------------------------------------------------------------------*/
#searchform input[type="image"],
#searchform input[type="submit"]{
	background: #0C3DBE;
	color: #FFFFFF;
	cursor: pointer;
	-webkit-appearance: none;
}

#searchform input[type="submit"]:hover{
	background: #E2E9FC;
	border: 1px solid #EEEEEE;
	color: #333333;
}

#sub_wrap #searchform{
	margin: 8px 0 24px;
}

#sub_wrap #searchform input[type="text"]{
	width: 70%;
	vertical-align: middle;
}

#sub_wrap #searchform input[type="image"]{
	padding: 6px 16px;
    vertical-align: middle;
}


/*------------------------------------------------------------------------
◆検索
------------------------------------------------------------------------*/
.search #main_wrap .section{
	overflow: visible;
}

.search #main_wrap .section h1{
	font-size: 168%;
	font-weight: bold;
	line-height: 1;
	padding: 8px 24px;
	line-height: 124%;
}

#searchform{
	margin-bottom: 24px;
}

#main_wrap form#searchform input[type="image"]{
    padding: 6px 24px;
	vertical-align: bottom;
}

#main_wrap form#searchform input[type="image"]:hover{
	opacity: 0.8;
}

#main_wrap form#searchform input[type="text"]{
    padding: 0px;
	width: 256px;
	box-sizing: border-box;
}

/*
検索結果
------------------------------------------------------------------------*/
.search-results #main_wrap h1 + div{
	margin-bottom: 2em;
}

.search-results #main_wrap dt.title{
	font-size: 116%;
}

.search-results #main_wrap dd.excerpt{
	margin-bottom: 2em;
}

.search-no-results #keyvisual_container,
.search-results #keyvisual_container{
	display: none;
}

.search-no-results #main_wrap form,
.search-results #main_wrap form{
	margin-bottom: 2em;
}

.search-results .widget_recent_entries li{
	background: url(images/common/catch.png) no-repeat 0.2em 0.5em;
	padding-left: 16px;
}

.search-results dt.title br{
	display:none;
}
.search-results .pagination{
	margin-bottom: 2em;
}

.search-results .product_menu_container{
	display:none;
}


/*--------------------------------------------------------------------------
◆メールフォーム
--------------------------------------------------------------------------*/
#main_wrap form .short{
	width:30%;
}

#main_wrap form .middle{
	width:50%;
	min-width: 290px;
}

#main_wrap form .long{
	width:100%;
}

#main_wrap form .ex{
	margin-left:10px;
	font-size:85%;
}

#main_wrap input[type="submit"] {
	display: block;
    margin: 0 auto;
	background: #0C3DBE;
	color: #FFFFFF;
	cursor: pointer;
	-webkit-appearance: none;
	padding: 8px 56px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	font: 90%/1.8 'Noto Sans JP', "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Verdana, Arial, Helvetica, sans-serif;
	font-weight: bold;
}

#main_wrap input[type="submit"]:hover {
	opacity: 0.8;
}

#sub_wrap input[type="submit"] {
	background: #EEEEEE;
	color: #333333;
	cursor: pointer;
	-webkit-appearance: none;
	padding: 4px 40px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	font: 100%/1.8 'Noto Sans JP', "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Verdana, Geneva, Arial, Helvetica, sans-serif;
}

#sub_wrap input[type="submit"]:hover {
	filter:alpha(opacity=90);
	-moz-opacity: 0.9;
	opacity: 0.9;
}

#main_wrap input[type="text"],
#main_wrap input[type="email"],
#main_wrap input[type="tel"],
#main_wrap textarea,
#main_wrap select {
	width: auto;
	box-sizing: border-box;
}

#main_wrap form .contact_confirm{
	clear: both;
}

#main_wrap form p{
	font-size: 100%;
}

#main_wrap form table{
	margin-top: 2em;
	border: none;
}

#main_wrap form fieldset{
	border: none;
}

#main_wrap form.wpcf7-form table tbody{
	border-top: 1px solid #ddd;
}

#main_wrap form.wpcf7-form table th,
#main_wrap form.wpcf7-form table td{
	border: none;
	border-bottom: 1px solid #ddd;
	padding: 8px 0px;
}

#main_wrap form.wpcf7-form table th *,
#main_wrap form.wpcf7-form table td *{
	margin-bottom: 0em !important;
}

#main_wrap form.wpcf7-form table th{
	background: none;
	padding-right: 0;
	padding-left: 0;
	position: relative;
    width: 29%;
}

#main_wrap  form.wpcf7-form .require{
	font-weight: normal;
	font-size: 80%;
	line-height: 160%;
	color: #fff;
	background: #C82128;
	padding: 0px 4px;
	margin: 2px 8px 2px 0;
	position: relative;
    top: -1px;
}

#main_wrap form.wpcf7-form .option{
	font-weight: normal;
	font-size: 80%;
	line-height: 160%;
	color: #fff;
	background: #777;
	padding: 0px 4px;
	margin: 2px 8px 2px 0;
	position: relative;
    top: -1px;
}

#main_wrap form table td{
	background: none;
}

#main_wrap form table td input{
	width: 100%;
    box-sizing: border-box;
}

#main_wrap form table td input[type="radio"],
#main_wrap form table td input[type="checkbox"]{
	width: auto;
}

#main_wrap form table td textarea{
	width: 100%;
    box-sizing: border-box;
}

#main_wrap form table td ul{
	margin-bottom:0;
}

#main_wrap form table td ul li{
	background:none;
	padding-left: 2em;
	padding-top: 0.3em;
	font-size:90%;
}

#main_wrap form table td ul li:first-child{
	padding-top: 0em;
}

#main_wrap form table td textarea{
	line-height:1.6;
}

#main_wrap form table td .fax{
	margin-left:0;
}

#main_wrap form table td label input[type="checkbox"] {
	margin-right: 0.2em;
}

#main_wrap form .bt_form{
	margin: 8px auto 0;
	text-align: center;
}

#main_wrap form dl#mailform{
	font-size: 90%;
}

#main_wrap form dl#mailform dt{
    font-weight: bold;
    padding: 8px;
    margin-bottom: 8px;
    background: #f4f4f4;
}



/* contact form 7 プラグイン
-----------------------------------------------------------*/
.confirm .wpcf7-list-item{
	padding: 0 8%;
	white-space: normal;
}

.wpcf7-list-item input{
	border: none;
	background: none;
}

.wpcf7 textarea.long{
	box-sizing: border-box;
}

.wpcf7-list-item{
	margin-left: 0em !important;
	margin-right: 8px !important;
}

.wpcf7-list-item:last-child{
	margin-right: 0 !important;
}

.wpcf7-list-item label{
	display: inline-block;
	border: 1px solid #ccc;
    padding: 8px;
    border-radius: 8px;
    margin-bottom: 8px;
}

.wpcf7-list-item label:hover{
	opacity: 0.8;
}

.wpcf7-response-output{
	text-align: center;
}

.wpcf7-mail-sent-ok{
	background: #2F57EC;
	padding: 8px !important;
	border: none !important;
	/*display: none !important;*/
}

.wpcf7-validation-errors{
	background: #C82128;
	padding: 8px !important;
}

.wpcf7-not-valid-tip {
	border: 2px solid #C82128 !important;
	color: #333 !important;
	padding: 2px 4px;
	background: #fff;
	margin-top: 0.2em;
}

#sub_wrap .wpcf7-not-valid-tip {
	width: 80% !important;
}

.wpcf7-validation-errors{
	border: none !important;
}

.wpcf7-response-output{
	margin: 0 0 1em !important;
}

.errMsg{
	display: block;
	width: 100%;
}

.formErrorMsg{
	margin-top: 2px;
	padding: 4px;
	background: #f3be22;
	border: 1px solid #FFF;
	width: 100%;
}

#name_error, 
#email_error, 
#tel_error, 
.wpcf7-not-valid-tip-no-ajax{
	display: block;
	margin-top: 2px;
	padding: 4px;
	background: #f3be22;
	border: 2px solid #FFF;
	width: 80%;
}

.wpcf7 img.ajax-loader{
	/*position: absolute !important;*/
	width: 16px !important;
}

.wpcf7-form-control-wrap {
	display: block;
	z-index: 3;
}

.wpcf7 input.short[type="text"] {
	width: 30%;
	min-width: 200px;
}

.wpcf7 p.acceptance{
	text-align: center;
}

.wpcf7 p.acceptance .wpcf7-form-control-wrap.acceptance{
	display: inline-block;
	margin-right: 8px;
}



/*--------------------------------------------------------------------------
◆WPプラグイン 関連記事（Yet Another Related Posts Pluginプラグイン）
--------------------------------------------------------------------------*/
.yarpp-related{
	clear: both;
	margin: 32px 0 0 !important;
}

/* 関連記事 非表示 */
.home .yarpp-related,
.page-parent .yarpp-related,
.page-contact .yarpp-related,
.page-contact_confirm .yarpp-related,
.page-contact_error .yarpp-related,
.page-contact_thanks .yarpp-related{
	display: none;
}

.yarpp-related.yarpp-related-none {
	display: none;
}


/* サムネイル */
div.yarpp-thumbnails-horizontal .yarpp-thumbnail{
	border: none;
	border-bottom: 1px solid #ccc;
    width: 100%;
    height: auto;
    margin: 0;
    margin-left: 0px;
    vertical-align: top;
}

div.yarpp-thumbnails-horizontal .yarpp-thumbnail:hover{
	opacity: 0.8;
	background: #f4f4f4;
}

div.yarpp-thumbnails-horizontal .yarpp-thumbnail:first-child{
	border-top: 1px solid #ccc;
}

div.yarpp-thumbnails-horizontal .yarpp-thumbnail > img{
	width: 64px !important;
	height: 64px !important;
	margin: 0;
	float: left;
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
    margin: 0 !important;
    padding: 24px 0 8px 16px !important;
	width: auto !important;
    font-weight: normal !important;
    max-width: calc(100% - 66px);
    white-space: nowrap;
    text-overflow: ellipsis;
}

/*
.yarpp-thumbnail-default > img{
	min-width: 40px !important;
	min-height: 40px !important;
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail:nth-child(6),
.yarpp-thumbnails-horizontal .yarpp-thumbnail:nth-child(12){
	margin-right: 0px !important;
}

.yarpp-thumbnail > img, .yarpp-thumbnail-default{
	width: 100% !important;
	height: auto !important;
	margin:0 !important;
}

.yarpp-related .yarpp-thumbnail-title{
	font-weight: normal !important;
	padding: 0em 5%;
	font-size: 80% !important;
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail-title{
	width: 92% !important;
	height: auto !important;
	margin: 0.1em 0 0 0 !important;
}

.yarpp-related h3{
	margin-bottom: 8px !important;
}

.yarpp-related li{
	background: url(images/common/catch.png) no-repeat 0.2em 0.5em;
	padding-left: 16px;
}

.yarpp-related a{
	font-weight: normal !important;
}

.yarpp-related a:hover{
	text-decoration: underline;
}
*/





.yarpp-related-widget ol li{
	margin-left: 0px !important;
	background: url(images/common/catch.png) no-repeat 0.2em 0.5em;
	padding-left: 16px;
}

#sub_wrap .yarpp-related-widget ol li{
	display: inline;
}

#sub_wrap .yarpp-related-widget ol li a{
	display: block;
	margin-left: 0px !important;
	background: url(images/common/catch.png) no-repeat 0.2em 1em;
	padding-left: 16px !important;
	overflow: visible !important;
    line-height: 150%;
    padding: 8px 0;
    border-bottom: 1px solid #ccc;
}


#sub_wrap .yarpp-related-widget ol li:first-child a {
    border-top: 1px solid #ccc;
}

/*--------------------------------------------------------------------------
◆WPプラグイン WordPress Popular Posts
--------------------------------------------------------------------------*/
.right_recent_post h2{
	font-size: 112% !important;
    margin-bottom: 8px !important;
}

.wpp-list{
	padding: 0;
}

.wpp-list li{
	min-height: 60px;
	overflow: visible !important;
	line-height: 150%;
	padding: 8px 0;
    border-bottom: 1px solid #ccc;
}

.wpp-list li:first-child{
    border-top: 1px solid #ccc;
}

.wpp-list li.hover{
	cursor: pointer;
	opacity: 0.8;
}

.wpp-list li a{
	margin-right: 8px !important;
	text-decoration: none;
	color: #333;
}

.wpp-list li a:first-child{
	float:left;
}

.wpp-list li a:nth-child(2){
	overflow: hidden;
	vertical-align: middle;
    display: table-cell;
}

#sub_wrap .wpp-list li a img.wpp-thumbnail{
	width: 92px !important;
	height: 92px !important;
    border: 1px solid #E6E6E6 !important;
}

.wpp-list li.current > a + a:after{
	content: "※現在閲覧中";
	color: red;
	font-size: 80%;
	margin-left: 0.8em;
	display: inline-block;
	white-space: nowrap;
}

.popular_post{
	margin-top: 32px;
}

.popular_post h2{
	font-size: 112%;
    margin-bottom: 8px;
}

.popular_post .wpp-list{
	padding: 0;
}

.popular_post .wpp-list li{
	min-height: 80px;
	overflow: visible !important;
	line-height: 140%;
	padding: 8px 0;
    border-bottom: 1px solid #ccc;
}

.popular_post .wpp-list li:first-child{
    border-top: 1px solid #ccc;
}

.popular_post .wpp-list li.hover{
	cursor: pointer;
	opacity: 0.8;
}

.popular_post .wpp-list li a{
	margin-right: 8px !important;
	text-decoration: none;
}

.popular_post .wpp-list li a:first-child{
	float:left;
}

.popular_post .wpp-list li a:nth-child(2){
	overflow: hidden;
	vertical-align: middle;
    display: table-cell;
}

.popular_post .wpp-list li a img.wpp-thumbnail{
	width: 60px;
	height: 60px;
    border: 1px solid #E6E6E6 !important;
}

.single-works .popular_post{
	display: none;
}



/*--------------------------------------------------------------------------
◆WPプラグイン Recent Post Extended
--------------------------------------------------------------------------*/
.rpwe-block ul{
	list-style: none !important;
	margin-left: 0 !important;
	padding-left: 0 !important;
}

.rpwe-block li{
	border-bottom: 1px solid #eee;
	margin-bottom: 0px;
	padding-bottom: 0px;
	list-style-type: none;
}

.rpwe-block a{
	display: inline !important;
	text-decoration: none;
	color: #333;
}

.rpwe-block a:hover{
	color: #0C3DBE;
}

.rpwe-block h3{
	background: none !important;
	clear: none;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
	font-weight: 400;
	line-height: 1.5em;

    display: table-cell;
    vertical-align: middle;
}

.rpwe-thumb{
	width: auto;
	border: 1px solid #eee !important;
	box-shadow: none !important;
	margin: 0 10px 0 0 !important;
	padding: 0px !important;
}

.rpwe-summary{
	font-size: 12px;
}

.rpwe-time{
	color: #333;
	font-size: 12px;
}

.rpwe-comment{
	color: #bbb;
	font-size: 11px;
	padding-left: 5px;
}

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

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

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

.rpwe-clearfix:before,
.rpwe-clearfix:after{
	content: "";
	display: table !important;
}

.rpwe-clearfix:after{
	clear: both;
}

.rpwe-clearfix{
	zoom: 1;
}

.home h2 + .rpwe-block{
	margin-top: -16px;
}

.home .rpwe-block li {
    padding: 16px 0;
}

.home .rpwe-block h3 {
    font-size: 16px !important;
    font-weight: normal !important;
	vertical-align: middle;
	display: table-cell;
}



/*--------------------------------------------------------------------------
◆ウィジェット　最近の投稿
--------------------------------------------------------------------------*/
#widget_recent_post li a{
	display: block;
	color: #333;
	border-bottom: 1px dotted #999;
	padding: 16px 0;
}

#widget_recent_post li a:hover{
	text-decoration: underline;
}

#widget_recent_post li a span.post-date{
	display: block;
}

#sub_wrap #widget_recent_post li{
	padding: 0;
}

#sub_wrap #widget_recent_post li a{
	display: block;
	color: #333;
	border-bottom: none;
	padding: 16px 0;
	text-decoration: none;
}

#sub_wrap #widget_recent_post li a:hover{
	opacity: 0.8;
}

/*--------------------------------------------------------------------------
◆ウィジェット　お問い合わせ
--------------------------------------------------------------------------*/
#main_wrap #widget_contact{
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
    padding: 16px;
	text-align: center;
}

#main_wrap #widget_contact a.tel_wrap{
	display: inline-block;
    text-align: center;
    width: 50%;
    padding: 0 24px;
	text-decoration: none;
    box-sizing: border-box;
}

#main_wrap #widget_contact a.tel_wrap:hover{
	opacity: 0.8;
	text-decoration: none;
}

#main_wrap #widget_contact a.tel_wrap .tel_desc_top{
    display: block;
    font-size: 88%;
	color: #333;
}

#main_wrap #widget_contact a.tel_wrap .tel{
	display: block;
	font-family: 'Noto Sans', sans-serif;
    font-size: 160%;
    font-weight: bold;
    line-height: 1;
	color: #333;
}

#main_wrap #widget_contact a.tel_wrap .tel_desc_bottom{
    display: block;
    font-size: 80%;
    margin-top: 4px;
	color: #333;
}

#main_wrap #widget_contact a.mail_wrap{
display: inline-block;
    text-align: center;
    width: 50%;
    padding: 0 24px;
    box-sizing: border-box;
	text-decoration: none;
    border-left: 1px dotted #999;
}

#main_wrap #widget_contact a.mail_wrap:hover{
	opacity: 0.8;
	text-decoration: none;
}

#main_wrap #widget_contact a.mail_wrap .contact_desc_top{
    display: block;
    font-size: 88%;
	color: #333;
}

#main_wrap #widget_contact a.mail_wrap .contact{
	display: block;
	padding: 3px 0 2px;
    min-height: 25px;
    font-weight: bold;
    font-size: 120%;
    line-height: 1;
    color: #333;
}

#main_wrap #widget_contact a.mail_wrap .contact_desc_bottom{
    display: block;
    font-size: 80%;
    margin-top: 4px;
	color: #333;
}

#main_wrap #widget_contact a + a{
    border-left: 1px dotted #999;
}



#sub_wrap #widget_contact{
	border-top: none;
	border-bottom: none;
    padding: 0px;
	margin: 0 auto;
	max-width: 324px;
}

#sub_wrap #widget_contact a.tel_wrap{
    display: block;
    border: 1px solid #f4f4f4;
    text-align: center;
    padding: 8px;
	margin-bottom: 16px;
}

#sub_wrap #widget_contact a.tel_wrap:hover{
    text-decoration: none;
	opacity: 0.8;
}

#sub_wrap #widget_contact a.tel_wrap .tel_desc_top{
	display: block;
	font-size: 88%;
	color: #fff;
}

#sub_wrap #widget_contact a.tel_wrap .tel{
	display: block;
    font-family: 'Noto Sans', sans-serif;
    font-size: 160%;
    font-weight: bold;
    line-height: 1;
	color: #fff;
}

#sub_wrap #widget_contact a.tel_wrap .tel_desc_bottom{
	display: block;
	font-size: 80%;
	color: #fff;
}

#sub_wrap #widget_contact a.mail_wrap{
    display: block;
    border: 1px solid #f4f4f4;
    text-align: center;
    padding: 8px;
	color: #fff;
	margin-bottom: 16px;
}

#sub_wrap #widget_contact a.mail_wrap:hover{
    text-decoration: none;
	opacity: 0.8;
}

#sub_wrap #widget_contact a.mail_wrap .contact_desc_top{
	display: block;
	font-size: 88%;
	color: #fff;
}

#sub_wrap #widget_contact a.mail_wrap .contact{
	display: block;
    padding: 5px 0 4px;
    font-weight: bold;
    font-size: 112%;
    line-height: 1;
	color: #fff;
}

#sub_wrap #widget_contact a.mail_wrap .contact_desc_bottom{
	display: block;
	font-size: 80%;
	color: #fff;
}



#sub_wrap #widget_contact a.contact_banner_wrap{
    display: block;
    border: 1px solid #f4f4f4;
    text-align: left;
    padding: 12px 16px;
	color: #fff;
	margin-bottom: 16px;
	background: #333;
	position: relative;
}

#sub_wrap #widget_contact a.contact_banner_wrap:hover{
    text-decoration: none;
	opacity: 0.8;
}

#sub_wrap #widget_contact a.contact_banner_wrap:after{
	content: '';
    width: 12px;
    height: 12px;
    border: 0px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -6px;
}

#sub_wrap #widget_contact a.contact_banner_wrap .contact_banner_desc_top{
	display: block;
	font-size: 80%;
	color: #fff;
}

#sub_wrap #widget_contact a.contact_banner_wrap .contact_banner_main{
	display: block;
    padding: 5px 0 4px;
    font-weight: bold;
    font-size: 112%;
    line-height: 1;
	color: #fff;
}

#sub_wrap #widget_contact a.contact_banner_wrap .contact_banner_desc_bottom{
	display: block;
	font-size: 80%;
	color: #fff;
}


/*--------------------------------------------------------------------------
◆検索フォーム
--------------------------------------------------------------------------*/
#searchform input[type="submit"]{
	color: #FFFFFF;
	cursor: pointer;
	-webkit-appearance: none;
	padding: 3px 30px !important;
	font-weight: bold;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	position:relative;
	top:27px;
	left:6px;
}

#searchform input[type="submit"]:hover{
	background:#0084ff;
}

#header_wrap #searchform input[type="text"]{
	width: 30%;
}

#sub_wrap #searchform input[type="text"]{
	width: 70%;
}


/*--------------------------------------------------------------------------
◆検索結果
--------------------------------------------------------------------------*/
.search strong.query{
	font-weight:bold;
}

.search .query span.category,
.search .query span.device,
.search .query span.keyword{
	display: inline-block;
	font-size: 86%;
	background: #A8A8A8;
	color: #fff;
	padding: 2px 8px;
	margin-right: 8px;
	margin-bottom: 2px;
}

.search strong.query .query_str{
	margin-right: 8px;
	white-space:nowrap;
}

.search .count{
	color:#d52626;
}

.search .search_result{
	margin: 24px 16px 0;
}

.search .search_result li{
	margin: 8px 0px;
	padding-left: 24px;
	background: url(images/common/catch.png) no-repeat 0 0.28em;
}

.search .pagination{
	margin-bottom: 2em;
}

.search .pagination_top{
	display:none;
}

.search aside {
	margin-top:24px;
}

.search aside h1{
	line-height:1.4;
}

.search aside p,
.search aside li{
	padding-left: 24px;
	background: url(images/common/catch.png) no-repeat 0 0.28em;
}

.search aside .menu li{
	display: inline;
	padding-left: 0px;
	background: none;
}

.search aside .menu{
	margin-top:24px;
	text-align: center;
	margin-bottom:0 !important;
}

.search aside .menu li{
	display: inline;
}

.search aside .menu a{
	display:inline-block;
	min-width: 184px;
	padding: 4px 32px;
	border:1px solid #0084ff;
	font-size: 90%;
}

.search aside .menu a:hover{
	background:#DBEEFF;
	text-decoration:none;
}

.search aside .menu a:before{
	content: url(images/common/catch_link.png);
	vertical-align: 1px;
	margin-right: 6px;
}



/*--------------------------------------------------------------------------
◆404
--------------------------------------------------------------------------*/
.error404 #main_wrap .section{
	overflow: visible;
}

.error404 #main_wrap .section h1{
	font-size: 168%;
	font-weight: bold;
	line-height: 1;
	padding: 8px 24px;
	line-height: 124%;
}

.error404 .widget_recent_entries li{
	padding-left: 16px;
	position: relative;
}

.error404 .widget_recent_entries li:before{
    font-family: "fontello";
    content: '\e828';
    font-size: 72%;
    width: 10%;
    position: absolute;
    top: 0.25em;
    left: 0;
}

.error404 .catch li{
    padding-left: 16px;
}

.error404 #keyvisual_container{
	display: none;
}

.error404 #main_wrap form{
	margin-bottom: 2em;
}


.error404 #main_wrap form#searchform input[type="image"]{
    padding: 6px 24px;
	vertical-align: bottom;
}

.error404 #main_wrap form#searchform input[type="text"]{
    padding: 0px;
	width: 256px;
	box-sizing: border-box;
}


/*--------------------------------------------------------------------------
◆WordPressデフォルト
--------------------------------------------------------------------------*/

/* 画像設定 */
.alignleft,
.alignright,
.aligncenter{
	width:auto !important;
}

.alignleft{
	margin-right: 4%;
}

.alignright{
	margin-left: 4%;
}

.aligncenter{
	display:block;
	margin:0 auto;
}

.wp-caption-text{
	font-size: 90%;
}

[id^="attachment"]{
	max-width: 100%;
}

/* ギャラリー設定 */
.gallery-item{
}

dl.gallery-item{
	margin-bottom: 0 !important;
}

.gallery{
	clear:both;
	margin-bottom:1.618em !important;
}

.gallery + *{
	clear:both;
}

.gallery img{
	border: 1px solid #F2F2F2 !important;
}

.gallery-caption{
	font-size:90%;
}

.gallery-columns-2 .gallery-item {
	float: left;
	margin-top: 10px;
	margin-left: 4.5%;
	text-align: center;
	width: 47.7% !important;
}

.gallery-columns-2 dl:first-child{
	margin-left: 0 !important;
}

.gallery-columns-3 .gallery-item {
	float: left;
	margin-top: 10px;
	margin-left: 3.05%;
	text-align: center;
	width: 31.3% !important;
}

.gallery-columns-3 dl:first-child{
	margin-left: 0 !important;
}

/* カレンダーー設定 */
#wp-calendar th,
#wp-calendar td{
	width:14.2857%;
	vertical-align: top;
}

#wp-calendar tfoot td#prev{
	border-right: none;
}

#wp-calendar tfoot td:nth-child(2){
	border-left: none;
	border-right: none;
}

#wp-calendar tfoot td#next{
	border-left: none;
}



/*--------------------------------------------------------------------------
◆モバイルリンク
--------------------------------------------------------------------------*/



/*--------------------------------------------------------------------------
◆メディア画像
--------------------------------------------------------------------------*/
#main_wrap .size-thumbnail{
	width: auto;
}

#main_wrap .size-medium{
	min-width: 0px;
}

#main_wrap .size-thumbnail.alignleft,
#main_wrap .size-medium.alignleft,
#main_wrap .size-full.alignleft{
	float: left;
	margin: 0 4% 1.618em 0 !important;
	max-width: 48%;
}

#main_wrap .size-thumbnail.alignright,
#main_wrap .size-medium.alignright,
#main_wrap .size-full.alignright{
	float: right;
	margin: 0 0 1.618em 4% !important;
	max-width: 48%;
}

#main_wrap .size-thumbnail.aligncenter,
#main_wrap .size-medium.aligncenter,
#main_wrap .size-full.aligncenter{
	display: block;
	float: none;
	margin: 0 auto 1.618em auto !important;
}

#main_wrap img.size-large{
	margin-bottom: 1.618em;
}

#main_wrap img.size-full{
	width: auto;
}

/* キャプションあり */
.wp-caption.alignleft {
	float: left;
	margin: 0 4% 0 0 !important;
}

.wp-caption.alignright {
	float: right;
	margin: 0 0 0 4% !important;
}
.wp-caption.aligncenter {
	display: block;
	float: none;
	margin: 0 auto 0 auto !important;
	text-align: center;
}

#main_wrap .wp-caption img {
    float: none !important;
    margin: 0 !important;
}

.wp-caption.alignleft .wp-caption-text{
	text-align: left;
}

.wp-caption.alignright .wp-caption-text{
	text-align: right;
}

.wp-caption.aligncenter .wp-caption-text{
	text-align: center;
}



/*--------------------------------------------------------------------------
◆記事更新用
--------------------------------------------------------------------------*/
#main_wrap p.category{
	padding-bottom: 1em;
}

#main_wrap ul.term li:first-child a{
	margin-left: 0px !important;
}

#main_wrap ul.term li.category a{
	float: left;
	background: #666;
	color: #fff;
	padding: 2px 8px;
	font-size: 72%;
	text-decoration: none;
	margin-right: 8px;
	margin-bottom: 0.5em;
}

#main_wrap ul.term li.category a:hover{
	opacity: 0.8;
}

#main_wrap ul.term li.tag a{
	float: left;
	background: #666;
	color: #fff;
	padding: 2px 8px;
	font-size: 72%;
	text-decoration: none;
	margin-right: 8px;
	margin-bottom: 0.5em;
}

#main_wrap ul.term li.tag a:hover{
	opacity: 0.8;
}

#main_wrap .update{
	font-size: 92%;
}



/*--------------------------------------------------------------------------
◆ユーティリティ
--------------------------------------------------------------------------*/
.require,
.required{
	color: #C82128;
}

.tel,
.fax{
	white-space: nowrap;
}

.newmark{
    padding: 2px 0;
    font-family: Verdana, Geneva, Arial, Helvetica, sans-serif !important;
    color: #BC0300 !important;
    font-size: 62%;
    font-weight: normal;
    line-height: 1;
    white-space: nowrap;
}

.limit{
	background: #BC0300;
	color: #FFF;
	font-size: 80%;
	padding: 0.2em 1em;
	margin-left: 1em;
	white-space: nowrap;
}



/*--------------------------------------------------------------------------
			表示エフェクト
--------------------------------------------------------------------------*/
.effect_firstview.up,
.effect_first.up,
.effect_second.up,
.effect_third.up,
.effect_action.up {
	-webkit-transition: all 0.6s ease-;
	-moz-transition: all 0.6s ease-out;
	-o-transition: all 0.6s ease-out;
	transition: all 0.6s ease-out;

	-webkit-transform: translate3d(0px, 60px, 0px);
	-moz-transform: translate3d(0px, 60px, 0px);
	-ms-transform: translate3d(0px, 60px, 0px);
	transform: translate3d(0px, 60px, 0px);
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
}

.effect_firstview.up.active,
.effect_first.up.active,
.effect_second.up.active,
.effect_third.up.active,
.effect_action.up.active{
	-webkit-transform: translate3d(0px, 0px, 0px);
	-moz-transform: translate3d(0px, 0px, 0px);
	-ms-transform: translate3d(0px, 0px, 0px);
	transform: translate3d(0px, 0px, 0px);
	filter: alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}


.effect_firstview.left,
.effect_first.left,
.effect_second.left,
.effect_third.left,
.effect_action.left {
	-webkit-transition: al