@charset "utf-8";


:root {
	color:#383838;
}
input::-webkit-input-placeholder,
input::-moz-placeholder,
input::-ms-input-placeholder {
	color: #aaa;
}
input:-ms-input-placeholder {
	color: #aaa;
}
* {
	margin:0;
	padding: 0;
	outline:none;
	-webkit-tap-highlight-color: rgba(255,255,255,0.5);
}
img {
	-webkit-tap-highlight-color: transparent;
}
html,body{
	width: 100%;
}
body {
	font-family: '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo','ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	line-height: 200%;
	letter-spacing:0;
}
.min {
	font-family:"Times Roman", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","メイリオ", Meiryo, serif;
}
.got {
	font-family: '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo','ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}
.gf {
	letter-spacing:0.1em;
	font-family: 'Roboto Condensed', '游ゴシック体', 'Yu Gothic','メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}
.gf-l {
	font-family: 'Roboto Condensed', '游ゴシック体', 'Yu Gothic','メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	font-weight:300;
}
.gf-open {
	letter-spacing:0.1em;
	font-family: 'Open Sans', 'メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	font-weight:400;
}
.gf-open_l {
	letter-spacing:0.1em;
	font-family: 'Open Sans', 'メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
	font-weight:300;
}
.gf-condense {
	letter-spacing:0.1em;
	font-family: 'Open Sans Condensed', 'メイリオ', 'Meiryo', '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}
/*****************************************************************************
common
*****************************************************************************/
.none {
	display:none;
}
a {
	text-decoration: none;
	color:inherit;
	cursor:pointer;
}
li {
	list-style: none;
}
h1,h2,h3,h4,h5 {
	text-align:left;
	font-weight:normal;
	line-height:150%;
}
hr {
	border:none;
	border-top:1px solid #dedede;
}
address {
	font-size:13px;
	font-size:1.3rem;
	color:#9a9a9a;
	font-style:normal;
	line-height:160%;
}
address div {
	margin-top:1em;
	color:#383838;
	line-height:100%;
}
.stress {
	color:#f59094;
}
.shadow{
	box-shadow:0px 1px 1px 1px rgba(30,30,30,0.2);
}
.grd {
}
.col {
	width:100%;
	height:auto;
}
.bold {
	font-weight: bold;
}
.tc {
	text-align:center;
}
.tl {
	text-align:left;
}
.tr {
	text-align:right;
}
.ib {
	display:inline-block;
}
.f_cc {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content: center;
	text-align:center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.none {
	display:none;
}
.f_box {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
}
.f10 {
	font-size:10px;
	font-size:1.0rem;
	line-height:100%;
}
.f12 {
	font-size:12px;
	font-size:1.2rem;
	line-height:100%;
}
.f14 {
	font-size:14px;
	font-size:1.4rem;
	line-height:100%;
}
.f16 {
	font-size:16px;
	font-size:1.6rem;
	line-height:100%;
}
.f18 {
	font-size:18px;
	font-size:1.8rem;
	line-height:100%;
}
.f20 {
	font-size:20px;
	font-size:2.0rem;
	line-height:100%;
}
.f24 {
	font-size:24px;
	font-size:2.4rem;
	line-height:100%;
}
.f28 {
	font-size:28px;
	font-size:2.8rem;
	line-height:100%;
}
.f30 {
	font-size:30px;
	font-size:3.0rem;
	line-height:100%;
}
.lh100 {
	line-height:100%;
}
.mr1 {
	margin-right:1em;
}
.mr2 {
	margin-right:2em;
}
.mb1 {
	margin-bottom:1em;
}
.mt1 {
	margin-top:1em;
}
.ma {
	margin-left:auto;
	margin-right:auto;
}
span.tri {
	display:block;
	-webkit-transform:scale(0.6) rotate(90deg);
			transform:scale(0.6) rotate(90deg);
}
/************************************************************************************
	Social Icon
************************************************************************************/

/*****************************************************************************
button gimic
*****************************************************************************/
.btn.main {
	position:relative;
	display:block;
	padding:0.3em 0;
	max-width:150px;
	min-width:150px;
	font-size:10px;
	font-size:1.3rem;
	text-align:center;
	-webkit-transition:all 0.1s ease-in-out;
	-moz-transition:all 0.1s ease-in-out;
	-ms-transition:all 0.1s ease-in-out;
			transition:all 0.1s ease-in-out;
	border:1px solid #ebebeb;
}
.btn.main.w {
	border:1px solid #ffffff;
}
.btn.main.blog {
	border:1px solid #666666;
}
.btn.main:after {
	position:absolute;
	top:0;
	right:0.5em;
	width:1em;
	height:100%;
	line-height:300%;
	color:#ea688f;
}
.btn.main.w:after {
	color:#ffffff;
}
.btn.main:hover, a.btn.main.opp:hover {
	opacity:0.6;
}
.btn.main:hover:after, a.btn.main.opp:hover:after {
	color:#ffffff;
}

.btn.main.cta {
	min-width:250px;
	max-width:100%;
	font-size:20px;
	font-size:2.0rem;
	line-height:100%;
	font-weight:bold;
	padding:1.0em 0;
	letter-spacing:0.1em;
	margin-bottom:1em;
}
.btn.main.contact {
	min-width: auto;
	max-width:initial;
	font-size:14px;
	font-size:1.4rem;
	padding:1.0em 0;
	width:210px;
	background:#be1f1f;
	color:#ffffff;
}
.btn.main.contact:after {
	content:">";
	position:absolute;
	top:0;
	left:0.5em;
	width:1em;
	height:100%;
	line-height:300%;
	color:#ffffff;
}
.btn.main.contact:after {
	color:#ffffff;
}
.btn.main.contact:hover {
	opacity:0.7;
}
.toTop {
	position:fixed;
	width:60px;
	height:60px;
	z-index:99;
	display:none;
	border-radius:30px;
	color:#ffffff;
	text-align:center;
	font-size:30px;
	font-size:3.0rem;
	line-height:60px;
}
.toTop span {
	display:block;
	line-height:200%;
	-webkit-transform:rotate(-90deg) scaleX(0.5);
	transform:rotate(-90deg) scaleX(0.5);
	margin-right:3px;
}

.toTop {
	right:1em;
	bottom:1em;
}
/*****************************************************************************
	logo
*****************************************************************************/
	header .logo {
		width:auto;
		height:45px;
		margin:5px 0;
	}
	img.logo70 {
		width:70px;
	}
	img.logo80 {
		width:80px;
	}
	img.logo100 {
		width:100px;
	}
	article.access figure.logo {
		padding:2em 0 3em 0;
	}

/*****************************************************************************
	Header
*****************************************************************************/
header {
	position:sticky;
	width:100%;
	z-index:99;
	top: 0;
}
header .pc {
	margin:0 1em 0 auto;
}
.social a {
	display:block;
	margin:1.5em 0 0 1em;
}
#ContactBtn {
	position:absolute;
	display:block;
	top:110px;
	right:0;
	z-index:100;
}
header nav {
	font-size:14px;
	font-size:1.4rem;
}

.kv-logo img.logo {
	display:block;
	margin:0 auto;
}
/*****************************************************************************
	Key Visual
*****************************************************************************/
#kv {
	overflow:hidden;
	position:relative;
}
#kv.index {
}
.kv-logo,
h1 {
	text-align:center;
	position:relative;
	line-height:initial;
	height:auto;
	letter-spacing:0;
	margin: 0;
}
.kv-logo p,
h1 p {
	line-height:50%;
}
.kv-title {
	font-size: 1.5rem;
	padding-top: 20px;
}
.kv-title::before {
	content: "";
	display: block;
	counter-reset: none;
	width: 20px;
	height: 1px;
	background: #383838;
	margin: 0 auto 20px;
}
#toContents {
	left:0;
	width:100%;
	position:absolute;
}
/*****************************************************************************
	Map
*****************************************************************************/
.gmap {
	width: 100%;
	height:100%;
}
.gmap.s {
	height: 270px;
}
/*****************************************************************************
	figure
*****************************************************************************/

/** fill gray **/

figure {
	position:relative;
}

section#kv:after, figure:before {
	/* content:""; */
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#9a9a9a;
	z-index:3;
}

/*****************************************************************************
	circle in image
*****************************************************************************/

/*****************************************************************************
	background
*****************************************************************************/
/* 
body:before {
	content:"";
	display:block;
	position:fixed; 
	top:0;
	left:0;
	z-index:-1;
	width:100%;
	height:100%; 
	height:100vh; 
	background-image:url(./img/common/kvsp.jpg) ;
	background-color:#fcfafa;
	background-size: contain;
} */
.bg_white {
	background-color:rgba(255,255,255,0.9);
}
.bg_azure {
	background:#eaf2f2;
}
.bg_lilac {
	background:#efeaf2;
}
.bg_smork {
	background:#fcfafa;
}
.bg_ivory {
	background:#f8f7f2;
}
.bg_wood {
	background:#f5ebe2;
}
.bg_beige {
	background:#f4f4e8;
}

footer {
	background-image:url(../img/common/bg_bottom.png);
	background-size:100% auto;
	background-position:center bottom;
}
/*****************************************************************************
	Title Decoration
*****************************************************************************/
p.lead ,
h2.lead {
	text-align:center;
	line-height:160%;
}

p.title ,
h2.title {
	position:absolute;
	height:1.5em;
}
h3 {
	text-align:left;
}
h3.title {
	font-size:20px;
	font-size:2.0rem;
}

h4.name span {
	font-size:0.7em;
}
h4.title {
	text-align:left;
	margin:3em 0 1em 0;
	font-size:16px;
	font-size:1.6rem;
}
h4.title+div {
	font-size:12px;
	font-size:1.2rem;
}

div.box {
	padding-bottom:2em;
}

p.border {
	width:100%;
	height:30px;
	border-bottom:1px solid #ffffff
}
p.border.post {
	height:1px;
}
p.border.short {
	width:30px;
}
p.border.short.post {
	width:2em;
}
p.border.middle {
	width:40%;
}
p.border.white {
	border-color:#ffffff
}
p.border.green {
	border-color:#6fa7a6;
}
p.border.black {
	border-color:#333333;
}
p.border.gray {
	border-color:#ededed;
}
p.border.lilac {
	border-color:#a583b9;
}
p.border.wood {
	border-color:#ae8361;
}
p.border.gold {
	border-color:#b6b558;
}
/*****************************************************************************
	index
*****************************************************************************/
section {
	width:100%;
}

/*****************************************************************************
	Under
*****************************************************************************/
article.staff {
	padding-top:30px;
	z-index:1;
}
ul.menu dt {
	width:80%;
}
ul.menu dd {
	width:20%;
	text-align:right;
}
ul.menu dl+p {
	font-size:12px;
	font-size:1.2rem;
	line-height:100%;
	margin-bottom:0.5em;
}
ul.access dt {
	width:25%;
	font-weight:bold;
}
ul.access dd {
	max-width:75%;
}
article.gallery {
	padding-top:30px;
	z-index:1;
}

dl.access dt, dl.access dd {
}
dl.access dt {
	width:25%;
	font-weight:bold;
	min-width:90px;
	white-space:nowrap;
	
}
dl.access dd {
	width:75%;
}





/******************************************************************************
	Post
******************************************************************************/
.post-area .list a {
	display:block;
	margin-bottom:1em;
}
.post-area .list a:hover {
	background:rgba(255,255,255,0.5);
}
.post-area p.date {
	margin:1.5em 0 0 0;
	letter-spacing:0;
}
.post-area .single p.date {
	margin:0;
}
.post-area p.category {
	font-size:12px;
	font-size:1.2rem;
	color:#b6b558;
	margin:1.5em 0 0 0;
}
.post-area .single p.category {
	margin-top:0;
}
.post-area p.tl {
	line-height:200%;
}
.post-area h3 ,
.post-area h4 {
	font-size:12px;
	font-size:1.2rem;
	line-height:180%;
	height:4em;
	padding-right:1em;
}

/* Category Selecter */
p.category span{
	position:relative;
	font-size:10px;
	font-size:1.2rem;
	color:#ffffff;
	letter-spacing:0;
	line-height:100%;
	padding:0.2em 1em;
	background:#b85e6d;
}
p.category span:before {
	content:"";
	position:absolute;
	bottom:0;
	right:-0.5em;
	width: 0;
	height: 50%;
	border-style: solid;
	border-width: 0.8em 0 0 0.5em;
	border-color: transparent transparent transparent #b85e6d;
	z-index:1;
}
p.category span:after {
	content:"";
	position:absolute;
	top:0;
	right:-0.5em;
	width: 0;
	height: 50%;
	border-style: solid;
	border-width: 0.8em 0.5em 0 0;
	border-color: #b85e6d transparent transparent transparent;
	z-index:1;
}
/* .post-area .side */

.post-area .side h2 {
	font-size:40px;
	font-size:4.0rem;
	text-align:left;
	line-height:70%;
	padding-bottom:1.5em;
}
.post-area .side li a:hover {
	color:#b6b558;
	background:rgba(182, 181, 88,0.1);
}
.post-area .side li a {
	letter-spacing:0.1em;
	color:#b6b558;
	padding:1.4em 0;
}
.post-area .side li{
	position:relative;
	font-size:18px;
	font-size:1.8rem;
	line-height:100%;
	border-bottom:1px solid #ededed;
}

/* Category */
#category p.category {
	margin:0 1em 0 0;
}
#category p.category span{ 
	padding:0.2em 0.5em;
}

/* Recent */
#recent li a {
	font-size:12px;
	font-size:1.2rem;
	padding:1.5em 0;
}
#recent p {
	line-height:200%;
}

/* Archive */
.post-area .side #archive li a {
	font-size:14px;
	font-size:1.4rem;
	display:block;
	padding:1em 0 1em 1.2em;
}
.post-area .side #archive li:before {
	content:"●";
	color:#adac32;
	position:absolute;
	font-size:12px;
	font-size:1.2rem;
	top:0.8em;
	left:0;
	height:100%;
	width:1em;
	line-height:300%;
}

/******************************************************************************
	Post:Single
******************************************************************************/
.post-area .content {
	font-size:14px;
	font-size:1.4rem;
	padding-top: 2.5em;
}
.post-area .content img {
	max-width:100%;
	height:auto;
}

/************************************************************************************
	single paging
************************************************************************************/
.single_paging {
	width:100%;
	border:0px solid #b09d7c;
	margin:20px 0 20px 0;
	padding:0;
	font-size:14px;
	font-size:1.4rem;
}
.single_paging > div a{
	padding:0.5em 1em;
	width:130px;
	background:#ffffff;
	color:#666666;
}
.single_paging > div a .title {
	-webkit-line-clamp: 2;
}
.single_paging figure {
	text-align:center;
	min-width:100px;
	width:100px;
	height:100px !important;
	margin-right:1em;
	border-radius:100px;
	overflow:hidden;
}
.single_paging .page-numbers.current {
	background-color:#e7f3e9;
}
/******************************************************************************
	Pager
******************************************************************************/
#pager .pages {
	display:none;
}
#pager .wp-pagenavi {
	display:-webkit-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
#pager .wp-pagenavi * {
	padding:0;
	min-width:3em;
	height:3em;
	margin:0 1px;
	text-align:center;
	border:1px solid #b6b558;
	line-height:3em;
	color:#b6b558;
	font-size:14px;
	font-size:1.4rem;
}
#pager .current, .wp-pagenavi > *:hover, #pager .wp-pagenavi a:hover {
	border:1px solid #b6b558;
	color:#b6b558;
	background:rgba(182, 181, 88,0.1);
}
.wp-pagenavi .page {
}
.wp-pagenavi .current {
}
.wp-pagenavi .previouspostslink {
	border:none;
	margin-right:40px;
}
.wp-pagenavi .nextpostslink {
	border:none;
	margin-left:40px;
}
#pager .wp-pagenavi a {
	display: block;
	line-height:140%;
	padding: 0.8em;
	text-align: center;
	background:#ffffff;
	margin-bottom:0.2em;
}
/*****************************************************************************
	footer
*****************************************************************************/
/*****************************************************************************
	navigation:footer
*****************************************************************************/
footer {
}
footer .logo {
	margin:0;
	line-height:60%;
	text-align:center;
	font-size: 2em;
}

@media screen and (max-width: 768px) {
	footer .logo.gf {
		margin-bottom: .5em;
	}
}
footer .logo .over {
	font-size: 40px;
	font-size: 4.0rem;
	line-height:100%;
	letter-spacing:0em;
}
footer .logo .under {
	font-size: 14px;
	font-size: 1.4rem;
	line-height:100%;
	letter-spacing:0em;
}
footer nav {
	font-size:14px;
	font-size:1.4rem;
}
footer .social {
	width:138px;
}
footer article.sub_link {
	font-size:12px;
	font-size:1.2rem;
	border-top:1px solid #666666;
	text-align:center;
}

/******************************************************************************
	CTA
******************************************************************************/
	#cta {
		margin:1em auto 2em auto;
	}
	#cta .cta > a {
		min-height:70px;
		padding:0.7em 0;
	}
	.cta {
		position: relative;
		border:1px solid #9a9a9a;
		text-align:center;
		z-index: 1;
	}
	 .cta h2 {
		margin:1em 0 0.9em 0;
	 }
	 .cta h2+p {
		font-size:18px;
		font-size:1.8rem;
		margin-bottom:2em;
	  }
	.cta div > a.tel {
		border:1px solid #666666;
		background:#ffffff;
	}
	.cta div > a.cta_btn {
		border:1px solid rgba(255, 255, 255, 0.3);
		background:#be1f1f;
		color:#ffffff;
	}
	.cta div.col:has(a:only-child) {
		justify-content: center;

	}
	.cta .tel {
		font-size:22px;
		font-size:2.2rem;
	}
	#cta span {
		display:none;
	}
	#index .cta div{
		padding:0.2em 0;
	}
/************************************************************************************
	bread
************************************************************************************/
nav#bread {
	width:100%;
	overflow:hidden;
	font-size:12px;
	font-size:1.2rem;
	line-height:120%;
	z-index:2;
	bottom:0;
}
nav#bread ol{
	margin:0 auto;
	padding:2em 1em;
}
nav#bread ol li {
	padding-top:0px;
	white-space:nowrap;
	min-height: 0;
	margin:0;
}
nav#bread ol li a {
}
nav#bread ol li:after {
	content: ">";
	padding-left:1em;
	padding-right:1em;
}
nav#bread ol li:first-child:before {
	content:"";
}
nav#bread ol li:nth-of-type(1):before {
	content:"";
}
nav#bread ol li:last-child {
}
nav#bread ol li:last-child:after {
	content:"";
	padding:0;
}
/*************************************************************************************
	Swap Image
*************************************************************************************/
section div.picture {
	position:relative;
}
section article.swap div.picture figure {
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	transition: all .5s;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
}
section article.swap div.picture figure.active {
	opacity:1;
}
section article.swap div.thumb_list figure {
	cursor:pointer;
}
section article.swap div.thumb_list figure img {
	width:inherit;
}
/************************************************************************************
 contact
************************************************************************************/
#contact{
	font-size: 14px;
	font-size: 1.4rem;
}
#contact dl {
	margin:0 auto;
}
#contact dt {
	width:25%;
	padding: 1em 1em 0.5em 0;
}
#contact dt span {
	color:#be1f1f;
}
#contact dt span.gray {
	color:#e0e0e0;
}
#contact dd {
	width:75%;
	/* text-align: center; */
	margin-bottom:2em;
}
#contact .memo {
	width:100%;
	word-break: break-all;
}
#contact  input[type="text"],
#contact  input[type="tel"],
#contact  input[type="date"],
#contact  input[type="email"],
#contact  select,
#contact  textarea {
	font-size: 14px;
	font-size: 1.4rem;
	width: 100%;
	padding: 4px 1em;
	resize:none;
	border-radius: 0;
	border:1px solid #cccccc;
	background:rgba(255,255,255,0.8);
	font-family: '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo','ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}
#contact  input[type="text"]:focus,
#contact  input[type="tel"]:focus,
#contact  input[type="date"]:focus,
#contact  input[type="email"]:focus,
#contact  select:focus,
#contact  textarea:focus {
	content:"";
	border:1px solid #666666;
}
#contact  input[type="text"],
#contact  input[type="tel"],
#contact  input[type="date"],
#contact  input[type="email"],
#contact  select {
	height: 46px;
}
#contact  input[type="submit"] {
	cursor:pointer;
}
#contact p {
	text-align:center;
}
#contact .confirm, .sending, .backform {
	cursor: pointer;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
	width: 200px;
	height: 45px;
	margin-top: 5px;
	border-radius: 5px;
	background: #888;
	border: 1px solid #666;
}
.mw_wp_form_confirm .send {
	display:none;
}
#contact p.category {
	font-size: 12px;
	font-size: 1.2rem;
}

.mw_wp_form_confirm dd {
	padding: 1em 0;
}
#contact .privacy{
	display: block;
	height: 200px;
	overflow: auto;
	padding: 16px;
	border: 1px solid #ccc;
	font-size: 1.2rem;
  margin: 0 auto 1em;
  background-color: #fffff7;
  width: 100%;
}
.privacy_title{
	text-align: center;
	font-weight: bold;
	margin-bottom: 1rem;
}
.modPCenter{
	text-align: center;
	margin-bottom: 1rem;
}
#contact .privacy dl{
  width: auto;
  margin-bottom: 30px;
}
#contact .privacy dt{
	font-weight: bold;
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
	margin-bottom: 15px;
	width: 100%;
}
#contact .privacy dd{
	width: 100%;
}
.privacy .num{
	font-style: normal;
	font-weight: bold;
	display: table-cell;
	padding-right: 10px;
	white-space: nowrap;
}
.privacy .content{
	display: table-cell;
}
#contact .privacy ,#contact .mw_wp_form .consent, #contact .btn_submit{
  width: 100%;
}
#contact .btn_submit div input{
	margin: 0 auto;
}
.mw_wp_form .consent{
	text-align: center;
  margin: 0 auto 2em;
}
.mw_wp_form .consent *{
	cursor: pointer;
}
.mw_wp_form_confirm .privacy, .mw_wp_form_confirm .consent{
  display: none !important;
}
/*****************************************************************************
	Gimic with jQuery
*****************************************************************************/

.trans {
	-webkit-transition:all 0.3s ease-in-out;
			transition:all 0.3s ease-in-out;
}

.scrollup {
	opacity:0;
    -webkit-transform: translateY(100px);
  			  transform: translateY(100px);
	-webkit-transition:all 0.5s ease-in-out;
			transition:all 0.5s ease-in-out;
}
.scrollup.action {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
	opacity:1;
}

.scrollSlide {
	opacity:0;
	-webkit-transition:all 1s ease-in-out;
			transition:all 1s ease-in-out;
}
.scrollSlide.left {
	opacity:0;
    -webkit-transform: translateX(150px);
  			  transform: translateX(150px);
}
.scrollSlide.right {
	opacity:0;
    -webkit-transform: translateX(-150px);
  			  transform: translateX(-150px);
}
.scrollSlide.action {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
	opacity:1;
}

.scrollZoom {
	opacity:0;
    -webkit-transform: scale3d(0 ,0 , -1);
  			  transform: scale3d(0 ,0 , -1);
	-webkit-transition:all 1s ease-in-out;
			transition:all 1s ease-in-out;
}
.scrollZoom.action {
    -webkit-transform: scale3d(1 ,1 ,1);
    transform: scale3d(1 ,1 ,1);
	opacity:1;
}


.zoom {
	position: relative;
	z-index: 2;
	-webkit-transition:all 0.2s ease-in-out;
			transition:all 0.2s ease-in-out;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.zoom:hover {
	-webkit-transform:scale(1.1);
	transform:scale(1.1);
}
.float{
	-webkit-transition:all 0.2s ease-in-out;
			transition:all 0.2s ease-in-out;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), 0 3px 6px rgba(0, 0, 0, 0.11);
}
.float:hover {
	box-shadow: 0 19px 38px rgba(0, 0, 0, 0.15), 0 15px 12px rgba(0, 0, 0, 0.16);
}

.scroll {
	-webkit-animation: pop 2s infinite;
			animation: pop 2s infinite;
}
@-webkit-keyframes pop {
	0% {
		-webkit-transform: translate(0, 0);
				transform: translate(0, 0); }
	50% {
		-webkit-transform: translate(0, 10px);
				transform: translate(0, 10px); }
	100% {
		-webkit-transform: translate(0, 0);
				transform: translate(0, 0); } }

@keyframes pop {
	0% {
		-webkit-transform: translate(0, 0);
				transform: translate(0, 0); }
	50% {
		-webkit-transform: translate(0, 10px);
				transform: translate(0, 10px); }
	100% {
		-webkit-transform: translate(0, 0);
				transform: translate(0, 0); } 
}

/***********
horizon
************/
.f_h_start {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
.f_h_center {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content: center;
}
.f_h_end {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.f_h_sb {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.f_h_sa {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}
.f_wrap {
	-webkit-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
/***********
vertical
************/
.f_column {
	-webkit-box-direction:column;
	-webkit-flex-direction:column;
	flex-direction:column;
}
.f_start {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.f_end {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
}
.f_center {
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.f_baseline {
	-webkit-align-items: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}
.f_stretch {
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
figure.lead {
	height:auto;
}
/*****************************
	SNS ICON BASE
*****************************/
div.sns_icon {
	margin: 1em 0;
}
div.sns_icon > a {
	color:#ffffff;
	background:#e8e6e6;
	display:inline-block;
	text-align: center;
	margin:0 5px 5px;
	font-size:18px;
	width:36px;
	height:36px;
	line-height:33px;
	border-radius:50%;
}
div.sns_icon > a i.fa-line {
	font-size:24px;
}
div.sns_icon > a img {
	max-width: 2rem;
}

/*****************************************************************************
	seo blog
*****************************************************************************/
#contents_blog .blog_contents {
	padding-right:40px;
}

.single h1 {
	margin-bottom:0;
}

.post-area .seoTtl01 ,
.post-area .seoTtl02 {
	text-align:left;
	color:#303030;
	height: auto;
	line-height: 1.5;
}

h2+p.seoText {
	color:#333;
}

.tableContents {
	background:#fff !important;
	border:1px solid #ddd;

}

.post-area .wp-post-image {
	margin-bottom:1em;
}

.post-area h1 {
	line-height:1.4;
}
.post-area .content  {
	font-size:16px;
	line-height:2;
}

.blogtxt ,
.seoText ,
.tableContents li a ,
.blogDetail {
	font-size:16px !important;
	line-height:2 !important;
}

.seoTtl02 {
	margin-top:4em !important;
	font-size:2rem  !important;
	font-size:20px  !important;

}

.seoTtl01 {
	margin-top:2em !important;
	font-size:28px  !important;
}

.post-area .single_paging {
	display:none !important;
}

@media screen and (max-width:768px){

	#contents_blog .blog_contents {
	padding-right:0px;
}
	h1.blog_title{
	font-size:26px !important;
	}
	
	.seoTtl01 {
	font-size:24px  !important;
	}
	
	.seoTtl02 {
	font-size:18px  !important;
	margin-top:2em !important;
	}
	
	section.post-area.single > .article {
		padding:0 1.2em 3em;
		margin-top:-20px;
	}

}
/***** SNS Share Button *****/
.snsWrap {
	display: none;
	padding: 30px;
	background: #f2f2f2;
	margin-top: 40px;
	margin-bottom: 40px;
	text-align: center;
}
.snsWrap .snsWrapTtl {
	font-size: 14px;
	text-align: center;
	line-height: 1.4;
	margin-bottom: 2em;
}
.snsWrap .snsWrapTtl span {
	font-size: 30px;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.snsWrap {
		padding: 15px;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.snsWrap .snsWrapTtl {
		font-size: 13px;
		margin-bottom: 0.6em;
	}
	.snsWrap .snsWrapTtl span {
		font-size: 16px;
	}
}


/*form*/
@media screen and (max-width:768px) {
	.btn.main.contact {
		min-width:inherit;
		margin: 0 auto;
	}
	dl.access dt, dl.access dd {
		width:100%;
	}
}

/***** refusal *****/
.refusal {
  text-align: right;
  margin-top: 30px;
}
.refusal img {
  width: 100%;
  max-width: 300px;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
 .refusal {
    margin-top: 15px;
  }
 .refusal img {
    max-width: 270px;
  }
}
#contact select {
	/* padding: .9em; */
	/* padding-left: 15px; */
	/* width: 100%; */
	/* display: block; */
	/* line-height: 1.3; */
	box-sizing: border-box;
	/* margin: 0; */
	/* border-radius: 0; */
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border: 1px solid #cccccc;
	background-color:rgba(255,255,255,0.8);
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right .7em top 50%;
	background-size: .65em auto;
	resize:none;
}
#contact select::-ms-expand {
	display: none;
}
#contact select:focus {
	border:1px solid #666666;
	outline: none;
}
#contact select option {
	font-weight:normal;
}
/***** 20210927 refusal *****/
.refusal {
  line-height: 1;
}
.refusal img {
  width: 100%;
  max-width: 285px;
  max-height: 14px;
  vertical-align: top;
}
@media screen and (max-width: 768px) {
 .refusal img {
    max-width: 285px;
  }
}
/***** 20210111 *****/
#contact textarea {
	vertical-align: top;
}

.contact_block_left {
	padding-right: 40px;
}

@media screen and (max-width: 768px) {
	.contact_block_left {
		padding-right: 0;
	}
}
.contact_block_left .comment {
	max-width: 480px;
	width: 100%;
}
@media screen and (max-width: 768px) {
	.contact_block_left .comment {
		max-width: 100%;
	}
}


/** 20240528 cf7 **/
#contact .wpcf7 .wpcf7-form.submitting .wpcf7-submit {
  pointer-events: none;
  cursor: auto;
}

#contact .wpcf7 .wpcf7-spinner {
	display: block !important;
	margin: 10px auto;
}
@media screen and (max-width:768px) {
	#contact .wpcf7 dl dt,
	#contact .wpcf7 dl dd {
		width: 100%;
	}
}

#contact .wpcf7 dl dt p {
	text-align: left;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

#contact .wpcf7 .privacy dl p {
	text-align: left;
}

#contact .wpcf7 .consent .wpcf7-not-valid-tip {
	text-align: center;
}

@media screen and (max-width:768px) {
	#contact .wpcf7 .consent .wpcf7-not-valid-tip {
		max-width: 100%;
		text-align: left;
	}
}

#contact .wpcf7 .wpcf7-response-output {
	margin-right: auto !important;
	margin-left: auto !important;
	width: 100%;
}

#contact .wpcf7 input[type="radio"],
#contact .wpcf7 input[type="checkbox"] {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 24px;
	height: 24px;
	content: "";
	background-color: rgba(255,255,255,0.8);
	border: 1px solid #cccccc;
	vertical-align: middle;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: -2px 8px 0 0;
}

#contact .wpcf7 input[type="radio"] {
	border-radius: 24px;
}

#contact .wpcf7 input[type="checkbox"] {
	border-radius: 0;
}

#contact .wpcf7 input[type="radio"]:after,
#contact .wpcf7 input[type="checkbox"]:after {
	content: "";
	color: #999;
	display: block;
	position: absolute;
}

#contact .wpcf7 input[type="radio"]:checked:after {
	top: 5px;
	left: 5px;
	width: 12px;
	height: 12px;
	background: currentColor;
	border-radius: 12px;
}

#contact .wpcf7 input[type="checkbox"]:checked:after {
	top: 2px;
	left: 7px;
	width: 8px;
	height: 16px;
	border: 3px solid currentColor;
	border-top: 0;
	border-left: 0;
	transform: rotate(45deg);
}

#contact .wpcf7 .wpcf7-list-item {
	margin: 12px 1.4em 0 0;
}

#contact .wpcf7 .wpcf7-list-item:last-child {
	margin-right: 0;
}

#contact .wpcf7 .wpcf7-list-item label {
	cursor: pointer;
	font-weight: normal;
}

#contact .wpcf7 .wpcf7-form-control-wrap {
	display: block;
	text-align: left;
	width: 100%;
}

#contact .wpcf7 .consent .wpcf7-form-control-wrap {
	text-align: center;
	width: auto;
}

#contact .wpcf7 input[type="file"] {
	max-width: 100%;
	margin-top: 4px;
}

#contact .wpcf7 input[type="file"]::file-selector-button,
#contact .wpcf7 input[type="file"]::-webkit-file-upload-button,
#contact .wpcf7 input[type="date"],
#contact .wpcf7 input[type="submit"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	cursor: pointer;
	font-weight: normal;
}

#contact .wpcf7 input[type="date"]::-webkit-date-and-time-value {
	text-align: left;
	font-size: 14px;
	font-size: 1.4rem;
	color: #383838;
	font-family: '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo','ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}

#contact .wpcf7 input[type="file"]::file-selector-button,
#contact .wpcf7 input[type="file"]::-webkit-file-upload-button {
  border: 1px solid #ccc;
	padding: 10px;
  margin-right: 1rem;
	background-color: rgba(255,255,255,0.8);
	color: #383838;
	font-family: '游ゴシック体', 'Yu Gothic', 'メイリオ', 'Meiryo','ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro',  'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
}

#contact .wpcf7 input[type="submit"] {
	border: 0;
	font-size: 1.4rem;
	padding: 15px 25px;
	position: relative;
	text-align: center;
	color: #fff;
	text-decoration: none;
	width: 210px;
	margin-top: 30px;
	background-color: #be1f1f;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

#contact .wpcf7 input[type="submit"]:hover {
	opacity: 0.7;
}

#contact .wpcf7 .-block .wpcf7-list-item {
	display: block;
}


@media screen and (max-width:768px){
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
		background-color: #383838;
	}
	body:before {
		background-image:url(../img/common/kvsp.jpg) ;
		background-size:contain;
		background-position:center 55px;
	}
	header {
		height:55px;
	}
	#kv {
		height:200px;
	}
	#kv.index {
		height:400px;
	}
	header .hd-logo {
		margin:0 0 0 0.5em;
		line-height:60%;
		text-align:left;
		min-width:100%;
		font-size: 2em;
	}
	header .hd-logo .over {
		font-size: 20px;
		font-size: 2.0rem;
		line-height:100%;
		letter-spacing:0em;
	}
	header .hd-logo .under {
		font-size: 10px;
		font-size: 1.0rem;
		line-height:100%;
		letter-spacing:0em;
	}
	header nav.menu {
		overflow: hidden;
		-webkit-flex-direction:column;
		flex-direction:column;
		position:absolute;
		right:0;
		top:55px;
		width:0;
		background:rgba(255,255,255,0.9);
	}
	header nav.menu {
		/*--webkit-transform:translate3d(100%, 0, 0) ;
				transform:translate3d(100%, 0, 0) ;
		webkit-transform-origin:100% 0;
		-webkit-transform:scale3d(0, 1, 1) ;
				transform:scale3d(0, 1, 1) ;*/
	}
	header nav.menu.active {
		/* -webkit-transform:scale3d(1 , 1, 1) ;
				transform:scale3d(1 , 1, 1) ; */
				width: 100%;
	}
	
	header {
		background:rgba(255,255,255,0.9);
	}
	header nav.menu a, footer nav.menu a{
		padding:1em 0;
		width:100%;
		border-bottom:1px solid #bdbdbd;
	}
	header nav.menu a span, footer nav.menu a span {
		border-bottom:1px solid #383838;
	}
	header nav.menu a.active,header nav.menu a:hover, footer nav.menu a.active,footer nav.menu a:hover {
		color:#be1f1f;
	}
	header nav.menu a.active span, header nav.menu a:hover span, footer nav.menu a.active span, footer nav.menu a:hover span {
		border-bottom:1px solid #be1f1f;
	}
	header nav.menu a.active, header nav.menu a:hover, footer nav.menu a.active, footer nav.menu a:hover{
		background:rgba(100,100,100,0.2);
	}
	header nav.menu .tel {
		display:none;
	}
	#toContents {
		bottom:20%;
	}
	#toContents img{
	}
	p.scroll {
		text-align:center;
		margin:0 auto;
	}
	footer nav {
	}
	footer nav span {
		display:none;
	}
	#kv .kv-logo {
		line-height:100%;
		font-size: 2em;
		width: 100%;
	}
	#kv .kv-title {
		width: 100%;
		font-size: 1.4rem;
    line-height: 1.6;
    width: 100%;
		padding: 0 1em;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
		white-space: nowrap;
	}
	.kv-title::before {
    margin: 0 auto 10px;
	}
	#kv .over {
		letter-spacing:0;
		font-size: 2.8rem;
		line-height: .5;
	}
	#kv .under {
		font-size:12px;
		font-size:1.2rem;
		letter-spacing:0;
	}
	figure.panel {
		width:50%;
	}
	p.title ,
	h2.title {
		font-size:50px;
		font-size:5.0rem;
		margin:-0.7em 0 0 0;
		width:-webkit-calc(100% - 1em);
		width:calc(100% - 1em);
	}
	p.lead ,
	h2.lead {
		font-size:18px;
		font-size:1.8rem;
	}
	h3.title {
		margin:1em 0;
	}
	h3.name {
		font-size:25px;
		font-size:2.5rem;
		margin:0.5em 0;
	}
	h4.name {
		font-size:16px;
		font-size:1.6rem;
		margin:0 0 0.5em 0;
	}
	 .cta h2 {
		font-size:50px;
		font-size:5.0rem;
		text-align:center;
	 }
	figure.post {
		width:100%;
		height:300px;
	}
	figure.image {
		position:relative;
		max-width:100%;
		width:100%;
		height:300px;
		overflow:initial;
	}
	div.order_1 {
		width:100%;
	}
	div.comment {
		width:100%;
		margin-top:15px;
	}
	figure.image.gallery {
		min-width:140px;
		height:140px;
		margin-bottom:2em;
	}
	div.box.order_1 {
		padding-bottom:0;
	}
	.post-area .bg_white.single + .bg_beige {
		margin-top: 3em;
	}
	article figure.left.image:after {
		right:-15px;
		bottom:-15px;
	}
	article figure.right.image:after {
		left:-15px;
		bottom:-15px;
	}
	figure.image:after {
		content:"";
		z-index:-1;
		position:absolute;
		width:100%;
		height:100%;
		background:url(../img/common/bg_img_w.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.g:after {
		background:url(../img/common/bg_img_g.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.l:after {
		background:url(../img/common/bg_img_l.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.s:after {
		background:url(../img/common/bg_img_s.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.wo:after {
		background:url(../img/common/bg_img_wo.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.opp:after {
		-webkit-transform:scaleX(-1);
	}
	ul.access {
		margin-top:2em;
	}
	footer nav.menu {
		border-top:1px solid #bdbdbd;
		-webkit-box-lines:multiple;
	    -webkit-flex-wrap:wrap;
	    -ms-flex-wrap:wrap;
	    flex-wrap:wrap;
	}
	footer p.copy {
		padding:1em 0;
		margin-top:3em;
	}
	#contact .mw_wp_form dt {
		width:100%;
		padding: 1em 0 0.5em;
	}
	#contact .mw_wp_form dd {
		width:100%;
		margin-bottom:1.5em;
	}
	#contact .mw_wp_form .memo {
		height: auto;
	}
}

@media screen and (min-width:769px){
	body:before {
		background-image:url(../img/common/kv.jpg) ;
		background-size:auto 100%;
		background-position:center top;
	}
	.kv-logo,
	h1 {
		font-size:45px;
		font-size:4.5rem;
		line-height:80%;
		margin: 0;
	}
	.kv-logo span,
	h1 span {
		font-size:14px;
		font-size:1.4rem;
		letter-spacing:0;
	}
	address {
		margin: 0 2em 0 auto;
	}
	
	header {
		background:rgba(255,255,255,0.9);
	}
	header nav a, footer nav a{
		width:-webkit-calc(1300px / 7);
		width:calc(1300px / 7);
		height:100px;
	}
	header nav a span, footer nav a span {
		border-bottom:1px solid #383838;
	}
	header nav a:not(:first-child), footer nav a:not(:first-child) {
		border-left:1px solid #cccccc;
	}
	header nav a.active,header nav a:hover, footer nav a.active,footer nav a:hover {
		color:#be1f1f;
	}
	header nav a.active span, header nav a:hover span, footer nav a.active span, footer nav a:hover span {
		border-bottom:1px solid #be1f1f;
	}
	#kv {
		height:375px;
	}
	#kv.index {
		height:1060px;
	}
	h1 {
	}
	header .hd-logo {
		margin:0 0 1em 0;
		line-height:60%;
		text-align:center;
	}
	#toContents {
		bottom:0;
	}
	p.scroll {
		width:100%;
		text-align:center;
		margin-bottom:200px;
	}
	p.title ,
	h2.title {
		font-size:100px;
		font-size:10.0rem;
		margin:-0.7em 0 0 0;
		width:100%;
	}
	p.lead ,
	h2.lead {
		font-size:28px;
		font-size:2.8rem;
	}
	h3.title {
		margin:3.5em 0 2.5em 0;
	}
	h3.name {
		font-size:50px;
		font-size:5.0rem;
		margin:1.0em 0 0.5em 0;
	}
	h4.name {
		font-size:20px;
		font-size:2.0rem;
		margin:1.5em 0 1.0em 0;
	}
	figure.image {
		position:relative;
		max-width:570px;
		width:570px;
		height:570px;
		overflow:initial;
	}
	figure.image.gallery {
		max-width:540px;
		width:540px;
		height:540px;
		margin-bottom:5em;
	}
	figure.image img {
		position:relative;
		height: 100%;
		object-fit: cover;
	}
	div.comment {
		width:480px;
		margin-top:30px;
	}
	article.left .comment {
		padding-right:100px;
	}
	article.right .comment {
		padding-left:100px;
	}
	article figure.left.image:after {
		right:-30px;
		bottom:-30px;
	}
	article figure.right.image:after {
		left:-30px;
		bottom:-30px;
	}
	figure.image:after {
		content:"";
		z-index:-1;
		position:absolute;
		width:100%;
		height:100%;
		background:url(../img/common/bg_img_w.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.g:after {
		background:url(../img/common/bg_img_g.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.l:after {
		background:url(../img/common/bg_img_l.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.s:after {
		background:url(../img/common/bg_img_s.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.wo:after {
		background:url(../img/common/bg_img_wo.jpg) center top no-repeat;background-size:100% 100%;
	}
	figure.image.opp:after {
		-webkit-transform:scaleX(-1);
	}
	article.leaf {
		z-index:1;
		background-image:url(../img/common/bg_leaf.png);
		background-repeat:no-repeat;
		background-size:140px 256px;
		padding-top:100px;
	}
	article.left.leaf {
		background-position:right 50px top 30px;
	}
	article.right.leaf {
		background-position:left 380px top 30px;
	}
	article.left.leaf.in {
		background-position:right 380px top 30px;
	}
	article.right.leaf.out {
		background-position:left 50px top 30px;
	}
	figure.post {
		height:292px;
	}
	 .cta h2 {
	 	text-align:center;
		font-size:100px;
		font-size:10.0rem;
	 }
	ul.access {
		margin-top:5em;
	}
	/* .post-area .side */
	.post-area .side {
		padding-left:3.5em;
	}
}

@media screen and  (min-width:1051px) {

}

main {
	position:relative;
	overflow: hidden;
}
.kv_img {
	position: fixed;
	background-color: #fcfafa;
	margin:0 auto;
	top:0;
	left:0;
	right:0;
	z-index:-1;
	text-align: center;
}
.kv_figure img {
	height: 100vh;
	object-fit: cover;
}

.bg_img {
	position: absolute;
	height:100%;
	top:0;
	z-index:-1;
}
.bg_img img {
	width: auto;
	height:100%;
	object-fit:cover;
}
.social svg {
	max-width:2rem;
}

.social .facebook svg{
	max-width:1.3rem;
}
footer div.sns_icon {
	flex-wrap:wrap;
	justify-content: center;
}


footer div.sns_icon:has(a:nth-last-child(n + 3)) {
	margin-bottom:0;
}

div.box:only-child div.comment,div.order_1:only-child div.comment{
width:100%;
padding:0;
}


#policy .policy_box {
	word-break: break-all;
	line-height:1.8;
	text-align:left;
	margin: 0 auto 50px auto;
}
#policy .policy_lead {
	font-size: 1.4rem;
	margin-bottom:50px;
	text-align: center;
}
#policy .policy_box .num{
	font-style: normal;
    display: table-cell;
    padding-right: 5px;
    width: 30px;
		
}
#policy .policy_box {
	font-size: 1.4rem;
}
#policy .policy_box .content {
	display: table-cell;
}
#policy .policy_box dt {
font-size: 1.4rem;
font-weight: 700;
padding-bottom: 10px;
margin-bottom: 15px;
}
#policy .policy_box li {
	margin-bottom: 15px;
}
#policy .policy_box li li {
	margin: 15px 0 15px 1.5em;
}

.policy {
	text-align: center;
	font-size: .8em;
	padding-bottom:2em;
}
.privacy .title_sub {
	width:100%;
}
@media screen and (max-width: 768px) {
	.policy {
		padding:2em 0 0 0;
	}
	.kv_figure img {
		width: 100%;
		height:100%;
		padding-top:55px;
	}
	.is-showtitle .kv_figure img {
		padding-top:95px;
	}
	figure img {
		height:100%;
		object-fit:cover;
	}
	.bg_img img {
		width:100%;
	}
	footer article.sub_link {
		padding: 1em 0;
		margin-top: 3em;
}
	footer p.copy {
		padding:0;
		margin-top: 0;
}
}
.sp .m0{
	margin:0;
}
.menu a span {
margin-right:15px;
}
ul.sub_link {
	font-size:1.4rem;
}
ul.sub_link a:hover {
	color: #be1f1f;
}
@media screen and (min-width: 769px) {
	footer article.sub_link {
		padding: 2em 0 3em;
		margin-top: 3em;
}
	footer p.copy {
			padding:0;
			margin-top: 0;
	}
}

/*c-breadcrumbs*/
.c-breadcrumbs {
	font-size: 1.2rem;
	line-height: 1.2;
}
@media screen and (max-width: 768px) {
 .c-breadcrumbs {
  }
}
.c-breadcrumbs__list {
  overflow-x: auto;
	max-width: 1170px;
	width: 100%;
	margin: 0 auto;
  padding: 2em 1em;
  white-space: nowrap;
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
	.c-breadcrumbs__list {
		justify-content: flex-start;
	}
}
.c-breadcrumbs__list-item {
}
.c-breadcrumbs__list-item:not(:last-child)::after {
  display: inline-block;
  margin: 0 1em;
  content: ">";
}
.c-breadcrumbs__list-item-link {
  display: inline-block;
  border: none;
}
@media screen and (min-width: 769px) {
 .c-breadcrumbs .c-breadcrumbs__list-item-link span {
    color: #383838;
  }
}
@media screen and (min-width: 1024.1px) {
 .c-breadcrumbs__list-item-link:hover {
    text-decoration: underline;
  }
}
.c-breadcrumbs__list-item-link.-current {
  pointer-events: none;
  cursor: text;
}
@media screen and (min-width: 1024.1px) {
 .c-breadcrumbs__list-item-link.-current:hover {
    text-decoration: none;
  }
}

/*** h1 ***/
.page-title {
  font-size: 1.5rem;
  line-height: 1.6;
  background-color: #151515;
  color: #fff;
  padding: 13px 50px;
  min-height: 50px;
}
.page-title h1 ,
.page-title p {
  font-size: 1.5rem;
  line-height: 1.6;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  color: #fff;
}

@media screen and (max-width: 768px) {
 .page-title {
    padding: 8px 5%;
    min-height: 40px;
    white-space: nowrap;
		position: relative;
		z-index: 2;
  }
 .page-title h1 ,
 .page-title p {
    font-size: 1.2rem;
    line-height: 2;
  }
}


/***** profile *****/
.p-single__writer {
	text-align:center;
	margin:100px 0;
	padding:45px 0 0 0;
	border:1px solid #b6b558;
}
.p-single__writer-container {
	position: relative;
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	gap:0 20px;
	padding: 25px 40px 30px;
	z-index:0;
}
.p-single__writer-ttl {
	display:inline-block;
	margin:0 auto;
	font-weight:normal;
	font-size:4rem;
	letter-spacing:2px;
}
.p-single__writer-fig{
	max-width:calc(40% - 10px);
	width:100%;
}
.p-single__writer-fig img {
	width:100%;
	height:100%;
}
.p-single__writer-profile {
	max-width:calc(60% - 10px);
	width:100%;
}
.p-single__writer-profile:only-child {
	max-width: 100%;
	width: 100%;
}
.p-single__writer .p-single__writer-label {
	font-size:1.5rem;
	color:#9c9c9c;
	height: auto;
}
.p-single__writer .p-single__writer-name {
	margin-top:15px;
	color:#b6b558;
	height: auto;
}
.p-single__writer-name .p-single__writer-name-inner {
	font-size:2.4rem;
	font-weight: bold;
	margin-right:15px;
}
.p-single__writer-name .p-single__writer-name-ruby{
	font-size:1.2rem;
}
.p-single__writer-desc {
	font-size:1.4rem;
	text-align:left;
	margin-top:20px;
	letter-spacing:.2rem;
	color:#9c9c9c;
}

.p-single__writer-box {
	width:100%;
}
.p-single__writer-link {
	position:relative;
	display:flex;
	flex-wrap:wrap;
	gap:25px;
	font-size:1.3rem;
	margin-top:30px;
	text-align: left;
}
.p-single__writer-link .c-text-link {
	color:#ffffff;
}
.p-single__writer-link .c-text-link::before {
	display:inline-block;
	background: #ffffff;
	height: 7px;
  width: 7px;
	margin-right:8px;
	content:"";
}
.p-single__writer-item {
background:#b6b558;
padding:5px 20px;
color:#fff;
}
.p-single__writer-link .c-text-link:hover  {
	border-bottom:1px solid #ffffff;
}
.p-single__writer-sns{
	margin-top:25px;
}
.p-single__writer-sns-inner {
	display:flex;
	justify-content: flex-end;
	flex-wrap:wrap;
	gap:25px;
}
.c-sns-link{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  font-size: 3rem;
  vertical-align: middle;
}
.is-twitter .c-sns-link{
  font-size: 1.6rem;
  position: relative;
  color: #fff;
}
.c-sns-link-item svg{
	width: 20px;
	height: 20px;
	color:#b6b558;
}

.is-twitter .c-sns-link::after {
  position: absolute;
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-color: #000;
  border-radius: 15px;
  z-index: -1;
}
.blockCnt .singleContent figure:after {
	content:none;
}
.blogContent .wp-block-file__button {
	cursor: pointer;
	display: inline-block;
	text-align: center;
	word-break: break-word;
	box-sizing: border-box;
	color: #fff;
	background-color: #32373c;
	border-radius: 9999px;
	box-shadow: none;
	text-decoration: none;
	padding: calc(0.667em + 2px) calc(1.333em + 2px);
	font-size: 1.125em;
}
@media screen and (max-width:768px) {
	.p-single__writer  {
		margin:40px 0;
	}
	.p-single__writer-container {
		display:block;
		margin:10px;
		padding:30px 20px;
	}
	.p-single__writer-container::before{
		padding:9px 0;
		top:-10px;
	}
	.p-single__writer-fig {
		max-width:50%;
		margin:0 auto;
	}
	.p-single__writer-profile{
		max-width:100%;
	}
	.p-single__writer-label {
		margin:20px 0;
		text-align: center;
	}
	.p-single__writer-name {
		margin-top:20px;
		text-align: center;
	}
	.p-single__writer-link {
		display:block;
		text-align: left;
	}
	.p-single__writer-item {
		display:inline-block;
		margin-bottom:15px;
	}
	.p-single__writer-item:last-child {
		margin-bottom:0;
	}
	.p-single__writer-link .c-text-link::before {
		margin-right:5px;
	}
	.p-single__writer-sns-inner {
		gap:10px;
	}
	.p-single__writer-name .p-single__writer-name-inner{
		margin-right:0;
	}
}


.blogContent img {
	max-width:100%;
	height:auto;
}

/***** blogConent *****/
.blogContent a:not([class]) {
  color: #1a0dab;
  text-decoration: underline;
}
@media screen and (min-width: 769px) {
  .blogContent a:not([class]):hover {
    text-decoration: none;
  }
}
.blogContent {
  width: 100%;
  margin-top: 25px;
  line-height: 1.8;
}
.blogContent img {
  max-width: 100%;
  height: auto;
}
.blogContent img[class*="wp-image-"],
.blogContent img[class*="attachment-"] {
  height: auto;
  max-width: 100%;
}
.blogContent .aligncenter {
  display: block;
  margin: 0 auto;
}
.blogContent .alignright {
  float: right;
}
.blogContent .alignleft {
  float: left;
}
.blogContent .clearfix {
  overflow: hidden;
  zoom: 1;
}
.blogContent .clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.blogContent a:not([class]) {
  color: #1a0dab;
  text-decoration: underline;
}
@media screen and (min-width: 769px) {
  .blogContent a:not([class]):hover {
    text-decoration: none;
  }
}
.blogContent h1 {
  font-size: 2.44em;
}
.blogContent h2 {
  font-size: 2.8rem;
}
.blogContent h3 {
  font-size: 1.8rem;
}
.blogContent h4 {
  font-size: 1.4rem;
}
.blogContent h5 {
  font-size: 1.2rem;
}
.blogContent h6 {
  font-size: 1rem;
}
.blogContent h1,
.blogContent h2,
.blogContent h3 {
  line-height: 1.4;
}
.blogContent h4 {
  line-height: 1.5;
}

.blogContent h1,
.blogContent h2,
.blogContent h3,
.blogContent h4,
.blogContent h5,
.blogContent h6 {
  color: inherit;
  font-weight: bold;
	text-align: left;
	padding: 0;
}
.blogContent h1 {
  margin-top: 0.67em;
  margin-bottom: 0.67em;
}
.blogContent h2 {
  margin-top: 0.83em;
  margin-bottom: 0.83em;
  border-bottom: 1px solid #ccc;
}
.blogContent h3 {
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 10px;
	background: #eee;
	height: auto;
}
.blogContent h4 {
  margin-top: 1.33em;
  margin-bottom: 1.33em;
	height: auto;
}
.blogContent h5 {
  margin-top: 1.67em;
  margin-bottom: 1.67em;
}
.blogContent h6 {
  margin-top: 2.33em;
  margin-bottom: 2.33em;
}
.blogContent p {
  font-size: inherit;
  line-height: inherit;
  margin-top: 28px;
  margin-bottom: 28px;
}
.blogContent h2+p,
.blogContent h3+p {
	text-align: left;
}
.blogContent ul,
.blogContent ol {
  margin-bottom: 28px;
  padding: inherit;
  padding-left: 1.3em;
  margin-left: 1.3em;
}
.blogContent ul ul,
.blogContent ul ol,
.blogContent ol ul,
.blogContent ol ol {
  margin-bottom: 0;
}
.blogContent ul li,
.blogContent ol li {
  margin-bottom: initial;
}
.blogContent ul ,
.blogContent ul li {
  list-style-type: disc;
}
.blogContent ol ,
.blogContent ol li {
  list-style-type: decimal;
}
.blogContent ul ul,
.blogContent ol ul ,
.blogContent ul ul li,
.blogContent ol ul li {
  list-style-type: circle;
}
.blogContent #toc_container {
  display: block;
  margin-bottom: 30px;
  border: none;
}
.blogContent .wp-block-audio {
  margin-left: 0px;
  margin-right: 0px;
}
.blogContent .blogContent .wp-block-audio audio {
  width: 100%;
}
.blogContent blockquote,
.blogContent blockquote.wp-block-quote {
  font-size: 115%;
  line-height: 1.5;
  margin: 32px 0px;
  padding: 12px 18px;
  border-left: 2px solid rgba(0, 0, 0, 0.12);
}
.blogContent .wp-block-pullquote {
  padding: 0;
}
.blogContent .wp-block-quote:not(.is-large):not(.is-style-large) {
  padding-left: 18px;
  border-left: 2px solid rgba(0, 0, 0, 0.12);
}
.blogContent .wp-block-quote__citation,
.blogContent .wp-block-quote cite,
.blogContent .wp-block-quote footer {
  display: block;
  color: rgba(0, 0, 0, 0.4);
  font-size: 0.85rem;
  margin-top: 12px;
}
.blogContent .wp-block-quote cite::before,
.blogContent .wp-block-quote footer::before {
  content: '— '
}

.blogContent .wp-block-button {
  position: relative;
  box-sizing: border-box;
}
.blogContent .wp-block-button.alignwide a {
  display: block;
}
.blogContent .wp-block-code {
  color: #666666;
  font-family: Courier, sans-serif;
  line-height: 1.4;
	background-color: #fff;
}
.blogContent .wp-block-cover,
.blogContent .wp-block-cover-image {
  margin-top: 32px;
  margin-bottom: 32px;
}
.blogContent .wp-block-cover-image.has-background-dim,
.blogContent .wp-block-cover-image.has-background-dim h2 {
  color: #ffffff;
}
.blogContent .wp-block-gallery .blocks-gallery-item {
  margin-left: 0px;
  margin-right: 0px;
  padding: 0px;
}
.blogContent .wp-block-gallery .blocks-gallery-image {
  margin-left: 0px;
  margin-right: 0px;
}
.blogContent .wp-block-gallery .blocks-gallery-image figcaption,
.blogContent .wp-block-gallery .blocks-gallery-item figcaption {
  box-sizing: border-box;
}
.blogContent .wp-block-image {
  max-width: none;
  padding: 0px;
}
.blogContent img.aligncenter,
.blogContent .wp-block-image.aligncenter {
  display: block;
  margin: 12px auto;
  padding: 0px;
}
.blogContent img.alignnone,
.blogContent .wp-block-image.alignnone {
  display: inline;
  margin: 12px 0px;
  padding: 0px;
}
.blogContent img.alignright,
.blogContent .wp-block-image.alignright {
  display: inline;
  margin: 16px 0px 16px 24px;
  padding: 0px;
}
.blogContent img.alignleft,
.blogContent .wp-block-image.alignleft {
  display: inline;
  margin: 16px 24px 16px 0px;
  padding: 0px;
}
.blogContent table,
.blogContent table.wp-block-table {
  width: 100%;
  text-align: left;
  margin: 32px 0px;
  padding: 0px;
  border: 1px solid #dddddd;
  border-spacing: 0;
  border-collapse: collapse;
}
.blogContent table p,
.blogContent table form,
.blogContent table ul,
.blogContent table li {
  margin: 6px 0px;
  padding: 0px;
}
.blogContent table thead,
.blogContent table tfoot,
.blogContent table.wp-block-table thead,
.blogContent table.wp-block-table tfoot {
  border: 1px solid #dddddd;
}
.blogContent table tbody tr:nth-child(odd) {
  background: rgba(0, 0, 0, 0.04);
}
.blogContent table th,
.blogContent table.wp-block-table th {
  font-size: 1.1rem;
  text-transform: uppercase;
  margin: 0px;
  padding: 12px;
  border: 1px solid #dddddd;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0.04);
}
.blogContent table td,
.blogContent table.wp-block-table td {
  padding: 12px;
  margin: 0px;
  border: 1px solid #dddddd;
  box-sizing: border-box;
}
.blogContent table.wp-block-table.is-style-stripes {
  border-collapse: collapse;
}
.blogContent table.wp-block-table.is-style-stripes td {
  border: 1px solid #dddddd;
}
.blogContent video {
	width: 100%;
	height: auto;
}
.blogContent .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper,
.blogContent .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper,
.blogContent .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper,
.blogContent .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper,
.blogContent .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper,
.blogContent .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper,
.blogContent .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper {
  position: relative
}

.blogContent .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper:before,
.blogContent .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper:before,
.blogContent .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper:before,
.blogContent .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper:before,
.blogContent .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before,
.blogContent .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper:before,
.blogContent .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper:before {
  content: "";
  display: block;
  padding-top: 50%
}

.blogContent .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper iframe,
.blogContent .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper iframe,
.blogContent .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper iframe,
.blogContent .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper iframe,
.blogContent .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper iframe,
.blogContent .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper iframe,
.blogContent .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.blogContent .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper:before {
  padding-top: 42.85%
}

.blogContent .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper:before {
  padding-top: 50%
}

.blogContent .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
  padding-top: 56.25%
}

.blogContent .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper:before {
  padding-top: 75%
}

.blogContent .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper:before {
  padding-top: 100%
}

.blogContent .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper:before {
  padding-top: 177.78%
}

.blogContent .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper:before {
  padding-top: 200%
}
.blogContent .wp-block-cover-image img.wp-block-cover__image-background,
.blogContent .wp-block-cover-image video.wp-block-cover__video-background,
.blogContent .wp-block-cover img.wp-block-cover__image-background,
.blogContent .wp-block-cover video.wp-block-cover__video-background {
  width: 100%;
  height: 100%;
  max-width: none;
}
.blogContent .wp-block-file__button {
	cursor: pointer;
	display: inline-block;
	text-align: center;
	word-break: break-word;
	box-sizing: border-box;
	color: #fff;
	background-color: #32373c;
	border-radius: 9999px;
	box-shadow: none;
	text-decoration: none;
	padding: calc(0.667em + 2px) calc(1.333em + 2px);
	font-size: 1.125em;
}
.blogContent .wp-block-audio audio {
  min-width: auto;
}
.blogContent .wp-block-separator {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}
.blogContent #toc_container a:link {
  text-decoration: underline;
}
.blogContent #toc_container p.toc_title {
  text-align: left;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 1em;
}
.blogContent #toc_container {
  width: 100%;
  background: transparent;
  border: none;
  padding: 0;
  display: block;
  font-size: 100%;
}
.blogContent #toc_container .toc_list {
  width: 100%;
  padding: 15px;
  margin-bottom: 30px;
	background: #fff;
	margin: 0;
	list-style-type: none;
	border: 1px solid #ddd;
}
.blogContent #toc_container li:not(:first-child) {
  margin-top: 15px;
}
.blogContent #toc_container li ul {
  margin-top: 15px;
}
.blogContent #toc_container li a::before {
  content: "○";
}
.blogContent #toc_container li ul li a::before {
  content: "・";
}
.blogContent #toc_container ul li:before {
  content: none;
}
.blogContent #toc_container .toc_list a {
  text-decoration: underline;
  font-size: 16px;
  color: #555;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .blogContent #toc_container .toc_list a {
    font-size: 13px;
  }
}

.blogContent #toc_container .toc_list li {
  list-style-type: none;
}
.blogContent .wp-block-gallery.has-nested-images figure.wp-block-image figcaption,
.blogContent .wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before {
  top: auto;
	z-index: 1;
}
.blogContent .post-password-form input[type="password"] {
	border:inset;
	line-height: 1.5;
}
@media screen and (max-width: 768px) {
	.blogContent .post-password-form input[type="password"] {
		width: 50%;
	}
}
.blogContent .post-password-form input[type="submit"] {
  border: 1px solid #000;
  padding: 2px 10px;
  color: #000;
  font-size: 1.5rem;
  line-height: 1.6;
  display: inline-block;
}
.sp .sp_nav {
	align-items: stretch;
}