/*
Template: arkhe
Theme Name: Arkhe_child
Version: 1.0.0
*/

/* font-family: "Noto Sans JP", sans-serif; */
/* font-family: "Noto Serif JP", serif; */
/* font-family: "Fuzzy Bubbles", sans-serif; */

:root {
	--ark-font_family: "Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	--wp--preset--font-size--xsmall:0.75rem;
	--wp--preset--font-size--small:0.8rem;
}

/*******************************
/* utility
*******************************/

.m-sp_text-align_left{}

@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	.m-sp_text-align_left{
		text-align:left;
	}
}

/*******************************
/* 
*******************************/

b, strong{
	font-weight:600;
}
h1, h2, h3, h4, h5, h6{
	line-height:inherit;
}
h2.wp-block-heading{
	font-family: "Noto Serif JP", "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝",serif;
	font-size:1.80rem;
	font-weight:400;
	line-height:1.8;
	margin-bottom:0.5em;
}
h3.wp-block-heading{
	font-family: "Noto Serif JP", "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝",serif;
	font-size:1.65rem;
	font-weight:400;
	line-height:1.8;
	margin-bottom:0.5em;
}
body.page .p-page__title{
	display:none;
}
.l-content__body{
	margin-bottom:8.5rem;
}
body.page .l-content__body{
	margin-bottom:0;
}
.is-style-ark-list-numbered > li:before{
	background:var(--wp--preset--color--arkb-color-01);
}

/*******************************
/* #pagetop
*******************************/

.p-fixBtnWrap{
	bottom:4.5%;
	right:1.5%;
}
#pagetop.c-fixBtn{
	border-radius:50%;
	background:var(--wp--preset--color--arkb-color-01);
	box-shadow:none;
	opacity:1.0;
}
#pagetop.c-fixBtn:hover{
	opacity:0.6;
	background:var(--wp--preset--color--arkb-color-01);
}

/*******************************
/* table
*******************************/

.wp-block-table.is-style-stripes{
	border-bottom:none;
}

/*******************************
/* post
*******************************/

article.l-main__body.post{
	font-size:0.9rem;
	line-height:1.9;
}
article.l-main__body.post p + p{
	margin-top:0.9em;
}
article.l-main__body h1.wp-block-heading,
article.l-main__body h2.wp-block-heading,
article.l-main__body h3.wp-block-heading,
article.l-main__body h4.wp-block-heading,
article.l-main__body h5.wp-block-heading,
article.l-main__body h6.wp-block-heading{
	font-family:"Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	font-weight:500;
}
article.l-main__body h1.wp-block-heading{font-size:1.5rem;}
article.l-main__body h2.wp-block-heading{font-size:1.4rem;}
article.l-main__body h3.wp-block-heading{font-size:1.3rem;}
article.l-main__body h4.wp-block-heading{font-size:1.2rem;}
article.l-main__body h5.wp-block-heading{font-size:1.1rem;}
article.l-main__body h6.wp-block-heading{font-size:1.0rem;}

/*******************************
/* archive
*******************************/

body.single .c-pageTitle__main,
body.archive .c-pageTitle__main{
	background:#eeebe8;
	font-family:"Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	font-size:1.05rem;
	font-weight:500;
	border-radius:5px;
	padding:1.15em 1.5em;
}
@media (min-width: 600px) {
	.p-postList.-type-card .p-postList__item {
		flex-basis:calc(100% / 3);
	}
}

/*******************************
/* hero
*******************************/

#hero{}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	#hero{}
	#hero img{
		display:none;
	}
	#hero .wp-block-image{
		width:90%;
		background-image:url('images/hero_002.png');
		background-size:contain;
		aspect-ratio:890/590;
		margin:0 auto;
	}
}

/*******************************
/* header
*******************************/

#header{}
#header nav .primary-nav_onlineshop_button{
	display:flex;
	justify-content:center;
	align-items:center;
	margin-left:1.5em;
}
#header nav .primary-nav_onlineshop_button a{
	background:var(--wp--preset--color--arkb-color-01);
	color:#fff;
	height:auto;
	border-radius:999px;
	padding:1.0em 2.0em;
}

/*******************************
/* footer
*******************************/

.l-footer__nav a{
	padding:0.4em 0.5em;
}
.l-footer__widgets{
	margin-top:2.0em;
}
.l-footer__foot{
	padding:0 0 1.5rem 0;
}
.l-footer__foot p.c-copyright{
	margin-top:4em;
}

/*******************************
/* sidebar
*******************************/

#sidebar{}
#sidebar a{
	text-decoration:none;
}
#sidebar h2.wp-block-heading{
	color:#b99164;
	font-family: "Fuzzy Bubbles", "Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	font-size:1.25rem;
	font-weight:400;
	line-height:inherit;
	margin:0.25em 0;
}
#sidebar ul.wp-block-latest-posts:not(.is-grid){
	border:none;
}
#sidebar ul.wp-block-latest-posts:not(.is-grid) li{
	border:none;
	padding:0;
	padding-bottom:1.0em;
}
#sidebar ul.wp-block-latest-posts:not(.is-grid) li + li{
	border-top:1px dotted #888;
	padding:1.0em 0;
}

/*******************************
/* message-box-001
*******************************/

.ark-block-container.message-box-001{
	position:relative;
	padding:2.5em 2.5em;
}
.ark-block-container.message-box-001::before,
.ark-block-container.message-box-001::after{
	content:"";
	position:absolute;
	display:block;
	width:4.4em;
	height:4.4em;
}
.ark-block-container.message-box-001::before{
	top:0;
	left:0;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
}
.ark-block-container.message-box-001::after{
	bottom:0;
	right:0;
	border-right:1px solid #ddd;
	border-bottom:1px solid #ddd;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	.ark-block-container.message-box-001{
		padding:1.5em 1.5em;
	}
	.ark-block-container.message-box-001::before,
	.ark-block-container.message-box-001::after{
		width:2.2em;
		height:2.2em;
	}
}

/*******************************
/* hr
*******************************/

hr.wp-block-separator.is-style-default,
hr.wp-block-separator.is-style-wide,
hr.wp-block-separator.is-style-dots,
hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots){
	background:none;
	width:100%;
	height:auto;
	max-width:none;
	border:none;
	padding:0;
	margin:3.0em auto;
}
hr.wp-block-separator.is-style-default::before,
hr.wp-block-separator.is-style-wide::before,
hr.wp-block-separator.is-style-dots::before,
hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots)::before{
	content:none;
}
hr.wp-block-separator::after,
hr.wp-block-separator.is-style-default::after,
hr.wp-block-separator.is-style-wide::after,
hr.wp-block-separator.is-style-dots::after,
hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots)::after{
	content:"";
	display:block;
	margin:0 auto;
}
hr.wp-block-separator.is-style-default::after,
hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots)::after{
	width:100%;
	height:4px;
	border-top:1px solid #888;
	border-bottom:1px solid #888;
	opacity:0.6;
}
hr.wp-block-separator.is-style-wide::after{
	width:100%;
	height:1px;
	border-top:1px solid #888;
	opacity:0.6;
}
hr.wp-block-separator.is-style-dots::after{
	width:60%;
	height:1px;
	border-top:1px dotted #888;
}

/* line_bg_001 */

hr.line_bg_001.wp-block-separator:not(.is-style-wide):not(.is-style-dots){
	background-color:transparent;
	background-image:url('images/line_bg_001.png');
	background-repeat:no-repeat;
	background-size:auto 65px;
	background-position:center bottom;
	width:100%;
	max-width:100%;
	height:90px;
	margin:0 auto;
	opacity:1;
}
hr.line_bg_001.wp-block-separator:not(.is-style-wide):not(.is-style-dots)::before,
hr.line_bg_001.wp-block-separator:not(.is-style-wide):not(.is-style-dots)::after{
	content:none;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	hr.line_bg_001.wp-block-separator:not(.is-style-wide):not(.is-style-dots){
		background-size:auto 35px;
		height:60px;
	}
}

/*******************************
/* Arkhe［ブロック］：セクション見出し
 * ark-block-heading
*******************************/

.ark-block-heading{
	padding:1.0em 0 1.05em 0;
}
.ark-block-heading .ark-block-heading__main{
	font-family: "Noto Serif JP", "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E", "ＭＳ Ｐ明朝",serif;
	font-size:1.95rem;
	font-weight:400;
	line-height:1.8;
	margin:0.35em 0;
}
.ark-block-heading .ark-block-heading__sub{
	color:#b99164;
	font-family: "Fuzzy Bubbles", "Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	font-size:1.25rem;
	font-weight:400;
	line-height:inherit;
	margin:0.25em 0;
}
.ark-block-heading[data-sub=top] .ark-block-heading__line{
	margin-top:1.5em;
}
.ark-block-heading[data-sub=bottom] .ark-block-heading__line{
	margin-bottom:1.5em;
}
.ark-block-heading .ark-block-heading__line::before{
	background-color:#b99164;
	width:4.5em;
	height:1px;
	border-radius:0;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	.ark-block-heading{
		padding:0.5em 0 0 0;
	}
	.ark-block-heading .ark-block-heading__main{
		font-size:1.25rem;
		font-weight:600;
		line-height:1.5;
		margin:0.65em 0 0.35em 0;
	}
	.ark-block-heading .ark-block-heading__sub{
		font-size:0.8rem;
		font-weight:400;
		line-height:1.5;
		margin:0.25em 0;
	}
}

/* type-001 */

.ark-block-heading.type-001{
	position:relative;
	display:flex;
	flex-direction:column;
	justify-content:center;
	min-height:180px;
	padding:0 250px;
	margin:0;
}
.ark-block-heading.type-001::before,
.ark-block-heading.type-001::after{
	position:absolute;
	top:0;
	display:flex;
	justify-content:space-between;
	align-items:center;
	content:"";
	width:250px;
	height:180px;
	background-repeat:no-repeat;
}
.ark-block-heading.type-001::before{
	left:0;
	background-image:url('images/title_decoration_01.png');
	background-size:200px auto;
	background-position:50% 50%;
	padding-right:25px;
}
.ark-block-heading.type-001::after{
	right:0;
	background-image:url('images/title_decoration_02.png');
	background-size:auto 120px;
	background-position:50% 25%;
	padding-left:25px;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	.ark-block-heading.type-001{
		position:relative;
		display:flex;
		flex-direction:column;
		justify-content:center;
		min-height:auto;
		padding:0;
		margin:0;
	}
	.ark-block-heading.type-001::before,
	.ark-block-heading.type-001::after{
		position:absolute;
		top:0;
		display:flex;
		justify-content:space-between;
		align-items:center;
		content:"";
		width:100%;
		height:50px;
		background-repeat:no-repeat;
	}
	.ark-block-heading.type-001::before{
		left:0;
		height:50px;
		background-image:url('images/title_decoration_01.png');
		background-size:contain;
		background-position:top left;
		padding:0;
	}
	.ark-block-heading.type-001::after{
		right:0;
		height:70px;
		background-image:url('images/title_decoration_02.png');
		background-size:contain;
		background-position:top right;
		padding:0;
	}
	.ark-block-heading.type-001 .ark-block-heading__main{
		display:block;
		width:100%;
		padding:30px 0 10px 0;
		margin:0 auto;
	}
	.ark-block-heading.type-001 .ark-block-heading__sub{
		display:flex;
		justify-content:center;
		align-items:center;
		min-height:70px;
		padding:0 80px;
		margin:0;
	}
}

/*******************************
/* Arkhe［ブロック］：アコーディオン
 * ark-block-accordion
*******************************/

.ark-block-accordion.is-style-box .ark-block-accordion__body{
	border-top-style:solid;
}

/*******************************
/* home
*******************************/

/* home-images-roll-001 */

div.home-images-roll-001{}
div.home-images-roll-001 .swiper-wrapper{
	transition-timing-function:linear;
}
div.home-images-roll-001 div.slide{
	display:flex;
	width:calc((480px + 360px + 360px + 270px) + (60px * 4));
	height:360px;
}
div.home-images-roll-001 div.block{
	display:flex;
	flex-wrap:wrap;
	height:100%;
	margin-right:60px;
}
div.home-images-roll-001 div.block.type-01{
	flex:0 0 480px;
	width:480px;
}
div.home-images-roll-001 div.block.type-02,
div.home-images-roll-001 div.block.type-04{
	flex:0 0 360px;
	width:360px;
}
div.home-images-roll-001 div.block.type-03{
	flex:0 0 270px;
	width:270px;
}
div.home-images-roll-001 div.block img{
	vertical-align:bottom;
	object-fit:cover;
}
div.home-images-roll-001 div.block div.box{
	overflow:hidden;
	border-radius:15px;
}
div.home-images-roll-001 div.block.type-01 img,
div.home-images-roll-001 div.block.type-01 div.box{
	flex:0 0 480px;
	width:480px;
	height:360px;
}
div.home-images-roll-001 div.block.type-03 img,
div.home-images-roll-001 div.block.type-03 div.box{
	flex:0 0 270px;
	width:270px;
	height:360px;
}
div.home-images-roll-001 div.block.type-02 img,
div.home-images-roll-001 div.block.type-04 img,
div.home-images-roll-001 div.block.type-02 div.box,
div.home-images-roll-001 div.block.type-04 div.box{
	flex:0 0 240px;
	width:240px;
	height:170px;
}
div.home-images-roll-001 div.block.type-02 div.box:nth-child(1){
	margin:0 auto auto 0;
}
div.home-images-roll-001 div.block.type-02 div.box:nth-child(2){
	margin:auto 0 0 auto;
}
div.home-images-roll-001 div.block.type-04 div.box:nth-child(1){
	margin:0 0 auto auto;
}
div.home-images-roll-001 div.block.type-04 div.box:nth-child(2){
	margin:auto auto 0 0;
}
div.home-images-roll-001 div.box{
	position:relative;
}
div.home-images-roll-001 div.box::after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	right:0;
	top:0;
	background:#f0f0eb;
	animation: box_shutter 15.0s infinite;
}
div.home-images-roll-001 div.box img{
	transform:scale(1.1);
}
div.home-images-roll-001 div.box img.image-01{
	animation: horizontal_movement_01 15.0s infinite ease-in-out;
}
div.home-images-roll-001 div.box img.image-02{
	position:absolute;
	top:0;
	left:0;
	animation: horizontal_movement_02 15.0s infinite ease-in-out;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	div.home-images-roll-001 div.slide{
		width:calc((240px + 180px + 180px + 135px) + (20px * 4));
		height:180px;
	}
	div.home-images-roll-001 div.block{
		margin-right:20px;
	}
	div.home-images-roll-001 div.block.type-01{
		flex:0 0 240px;
		width:240px;
	}
	div.home-images-roll-001 div.block.type-01 img,
	div.home-images-roll-001 div.block.type-01 div.box{
		flex:0 0 240px;
		width:240px;
		height:180px;
	}
	div.home-images-roll-001 div.block.type-02,
	div.home-images-roll-001 div.block.type-04{
		flex:0 0 180px;
		width:180px;
	}
	div.home-images-roll-001 div.block.type-02 img,
	div.home-images-roll-001 div.block.type-04 img,
	div.home-images-roll-001 div.block.type-02 div.box,
	div.home-images-roll-001 div.block.type-04 div.box{
		flex:0 0 120px;
		width:120px;
		height:85px;
	}
	div.home-images-roll-001 div.block.type-03{
		flex:0 0 135px;
		width:135px;
	}
	div.home-images-roll-001 div.block.type-03 img,
	div.home-images-roll-001 div.block.type-03 div.box{
		flex:0 0 135px;
		width:135px;
		height:180px;
	}
}

/* home-images-roll-002 */

div.home-images-roll-002{}
div.home-images-roll-002 .swiper-wrapper{
	transition-timing-function:linear;
}
div.home-images-roll-002 div.slide{
	width:310px;
}
div.home-images-roll-002 div.block{}
div.home-images-roll-002 div.block.type-01{
	padding-bottom:60px;
}
div.home-images-roll-002 div.block.type-02{
	padding-top:60px;
}
div.home-images-roll-002 div.box,
div.home-images-roll-002 div.box img{
	object-fit:cover;
	width:265px;
	height:265px;
	vertical-align:bottom;
}
div.home-images-roll-002 div.box{
	position:relative;
	overflow:hidden;
	border-radius:20px;
}
div.home-images-roll-002 div.box::after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	right:0;
	top:0;
	background:#f0f0eb;
	animation: box_shutter 15.0s infinite;
}
div.home-images-roll-002 div.box img{
	transform:scale(1.1);
}
div.home-images-roll-002 div.box img.image-01{
	animation: horizontal_movement_01 15.0s infinite ease-in-out;
}
div.home-images-roll-002 div.box img.image-02{
	position:absolute;
	top:0;
	left:0;
	animation: horizontal_movement_02 15.0s infinite ease-in-out;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	div.home-images-roll-002 div.slide{
		width:145px;
	}
	div.home-images-roll-002 div.block{}
	div.home-images-roll-002 div.block.type-01{
		padding-bottom:30px;
	}
	div.home-images-roll-002 div.block.type-02{
		padding-top:30px;
	}
	div.home-images-roll-002 div.box,
	div.home-images-roll-002 div.box img{
		object-fit:cover;
		width:130px;
		height:130px;
		vertical-align:bottom;
	}
}

@keyframes box_shutter{
	0%		{width:100%;	right:0;		left:auto;	}
	5%		{width:0%;		right:0;		left:auto;	}
	6%		{width:0%;		right:auto;		left:0;		}
	45%		{width:0%;		right:auto;		left:0;		}
	50%		{width:100%;	right:auto;		left:0;		}
	51%		{width:100%;	right:0;		left:auto;	}
	59%		{width:0%;		right:0;		left:auto;	}
	60%		{width:0%; 		right:auto;		left:0;		}
	91%		{width:0%;		right:auto;		left:0;		}
	92%		{width:0%;		right:auto;		left:0;		}
	99%		{width:100%;	right:auto;		left:0;		}
	100%	{width:100%;	right:0;		left:auto;	}
}
@keyframes horizontal_movement_01{
	0%		{opacity:1;	transform:scale(1.1) translateX(-5%);	}
	50%		{opacity:1;	transform:scale(1.1) translateX(5%);	}
	51%		{opacity:0;	transform:scale(1.1) translateX(-5%);	}
	99%		{opacity:0;	transform:scale(1.1) translateX(-5%);	}
	100%	{opacity:1;	transform:scale(1.1) translateX(-5%);	}
}
@keyframes horizontal_movement_02{
	0%		{opacity:0;	transform:scale(1.1) translateX(-5%);	}
	50%		{opacity:0;	transform:scale(1.1) translateX(-5%);	}
	51%		{opacity:1;	transform:scale(1.1) translateX(-5%);	}
	99%		{opacity:1;	transform:scale(1.1) translateX(5%);	}
	100%	{opacity:0;	transform:scale(1.1) translateX(-5%);	}
}

/*******************************
/* home / home-image-panel-001
*******************************/

.home-image-panel-001{
	max-width:1000px;
	margin:0 auto;
}
.home-image-panel-001 > div.photos{}
.home-image-panel-001 > div.photos div.block-01{
	display:flex;
	justify-content:space-between;
}
.home-image-panel-001 > div.photos div.block-01 > div:nth-child(1){
	flex:0 0 538px;
}
.home-image-panel-001 > div.photos div.block-01 > div:nth-child(2){
	flex:0 0 454px;
}
.home-image-panel-001 > div.photos div.block-02{
	display:flex;
	justify-content:space-between;
}
.home-image-panel-001 > div.photos div.block-02 > div:nth-child(1){
	flex:0 0 228px;
}
.home-image-panel-001 > div.photos div.block-02 > div:nth-child(2){
	flex:0 0 218px;
}
.home-image-panel-001 > div.photos div.block-03{
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	height:100%;
}
.home-image-panel-001 > div.photos div.block-03 > div:nth-child(1){}
.home-image-panel-001 > div.photos div.block-03 > div:nth-child(2){}
.home-image-panel-001 > div.photos img.photos-01{
	object-fit:cover;
	width:538px;
	height:360px;
}
.home-image-panel-001 > div.photos img.photos-02{
	object-fit:cover;
	width:228px;
	height:176px;
}
.home-image-panel-001 > div.photos img.photos-03{
	object-fit:cover;
	width:228px;
	height:176px;
}
.home-image-panel-001 > div.photos img.photos-04{
	object-fit:cover;
	width:218px;
	height:360px;
}
@media screen and (max-width: 767px){
/* mobile --------------------------------------------- */
	.home-image-panel-001{}
	.home-image-panel-001 > div.photos{}
	.home-image-panel-001 > div.photos div.block-01{
		display:flex;
		justify-content:space-between;
		flex-wrap:wrap;
	}
	.home-image-panel-001 > div.photos div.block-01 > div:nth-child(1){
		flex:0 0 100%;
	}
	.home-image-panel-001 > div.photos div.block-01 > div:nth-child(2){
		flex:0 0 100%;
		margin-top:0;
	}
	.home-image-panel-001 > div.photos div.block-02{
		display:flex;
		justify-content:space-between;
	}
	.home-image-panel-001 > div.photos div.block-02 > div:nth-child(1){
		flex:0 0 calc((100% / 3) * 2);
	}
	.home-image-panel-001 > div.photos div.block-02 > div:nth-child(2){
		flex:0 0 calc((100% / 3) * 1);
	}
	.home-image-panel-001 > div.photos div.block-03{
		display:flex;
		flex-direction:row;
		justify-content:space-between;
		height:auto;
	}
	.home-image-panel-001 > div.photos div.block-03 > div:nth-child(1){
		flex:0 0 calc(50%);
	}
	.home-image-panel-001 > div.photos div.block-03 > div:nth-child(2){
		flex:0 0 calc(50%);
	}
	.home-image-panel-001 > div.photos img.photos-01{
		display:block;
		object-fit:cover;
		width:80%;
		height:auto;
		margin:0 auto 0.5em auto;
	}
	.home-image-panel-001 > div.photos img.photos-02,
	.home-image-panel-001 > div.photos img.photos-03,
	.home-image-panel-001 > div.photos img.photos-04{
		object-fit:cover;
		width:auto;
		height:auto;
		border:5px solid #fff;
	}
}

/*******************************
/* contact-form-7
*******************************/

.contact-form-7-area{}
.contact-form-7-area input[type=text],
.contact-form-7-area input[type=email],
.contact-form-7-area textarea{
    width:100%;
	font-size:16px;
	padding:0.45em 0.8em;
}
.contact-form-7-area textarea{
	height:12em;
}
.contact-form-7-area input[type=submit]{
	background:#111;
	color:#fff;
	padding:0.5em 2.5em;
}
.contact-form-7-area .wpcf7-list-item{
	margin:0 1.5em 0 0;
}
.contact-form-7-area div.unit-title{
	display:block;
	font-weight:700;
	margin:1em 0 0 0;
}
.contact-form-7-area div.unit-item{
	display:block;
	margin:0.5em 0 1.5em 0;
}
.contact-form-7-area div.unit-submit{
	text-align:center;
}
.contact-form-7-area i.required{
	display:inline-block;
	color:#cc0000;
	font-style:normal;
	margin-left:0.4em;
}
.contact-form-7-area span.wpcf7-spinner{
	display:block;
	margin:-30px auto 0 auto;
}

/*******************************
/* opening
*******************************/

body.opening-no-scroll{
	overflow:hidden;
	height:100vh;
}
div.opening{
	position:fixed;
	top:0;
	left:0;
	z-index:999;
	width:100vw;
	height:100vh;
	display:flex;
	justify-content:center;
	align-items:center;
	background:#fff;
	opacity:1;
	visibility:visible;
	transition:all 1.0s ease;
}
div.opening.active{
	opacity:0;
	visibility:hidden;
}
div.opening div.opening-element{
	width:90%;
	height:100%;
	background-image:url('images/hero_lead_001.png');
	background-repeat:no-repeat;
	background-position:50% 40%;
	background-size:85px;
	opacity:0;
	filter:blur(0);
}
div.opening div.opening-element.active{
	animation:opening_element 2.4s 0.0s ease forwards;
}
@media screen and (max-width: 767px){
/* mobile -------------------------------------------------------------------------------------------- */
	div.opening div.opening-element{
		background-size:65px;
	}
}
@keyframes opening_element{
	0%{
		opacity:0;
		filter:blur(0);
	}
	15%{
		opacity:1;
		filter:blur(0);
	}
	65%{
		opacity:1;
		filter:blur(0);
	}
	100%{
		filter:blur(10px);
		opacity:0;
	}
}
