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

/* 
	font-family:"Noto Sans JP", sans-serif;
	font-family:var(--wp--preset--font-family--noto-sans-jp);
	100-900

	font-family:"Noto Serif JP", serif;
	font-family:var(--wp--preset--font-family--noto-serif-jp);
	200-900

	font-family:Oswald, sans-serif;
	font-family:var(--wp--preset--font-family--oswald);
	200-700

	var(--wp--preset--color--arkb-color-01)

	[data-scrolled=false]
	[data-scrolled=true]

*/


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

:root {
	--ark-font_family: "Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	--ark-line_height:1.95;
}
/* mobile	---------------------------------- */
@media not all and (min-width: 600px){
	html{
		font-size:0.95rem;
	}
}
body{
	font-weight:400;
}


/*******************************
/* Arkhe @media
*******************************/

/* display	---------------------------------- */
@media (min-width: 1000px){}

/* tablet	---------------------------------- */
@media not all and (min-width: 1000px){}

/* mobile	---------------------------------- */
@media not all and (min-width: 600px){}

/*******************************
/* 
*******************************/
*{
	line-height:2.0;
}
a{
	text-decoration:none;
	transition:all 0.3s ease;
}
i{
	font-style:normal;
}
h1, h2, h3, h4, h5, h6{
	line-height:inherit;
}
strong,b{
	font-weight:600;
}
@media screen and (max-width: 767px){
/* mobile -------------------------------------------------------------------------------------------- */
	input,
	textarea{
		font-size:16px;
	}
}

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

.l-content__body{
	margin-bottom:0;
}
.c-pageTitle__main{
	font-weight:500;
	letter-spacing:0.095em;
}
h3.wp-block-heading{
	font-size:1.45rem;
	font-weight:500;
	border-left:4px solid var(--wp--preset--color--arkb-color-01);
	padding-left:0.95em;
}
/* mobile	---------------------------------- */
@media not all and (min-width: 600px){
	h3.wp-block-heading{
		font-size:1.15rem;
	}
}

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

/* nav */

.c-gnav__li > .c-gnav__a{
	color:#fff;
}
.c-gnav__li > .c-gnav__a:hover{
	color:var(--wp--preset--color--arkb-color-02);
}

/* header */

.l-header{
	position:fixed;
	background:transparent;
	transition:all 0.9s;
}
.l-header::before{
	position:absolute;
	top:0;
	width:100%;
	height:0%;
	content:"";
	background:#111;
	transition:all 0.4s 0.15s;
}
.l-header.active.hide::before{
	height:0%;
}
.l-header.active::before{
	transition-delay:0.45s;
	height:100%;
}
.l-header.hide{
	transform:translateY(-150px);
}
.l-header__body.l-container{
	max-width:none;
}
.l-header__center{
	padding:0.95em 0;
}
.l-header__logo.has-text{
	position:relative;
}
.l-header__logo.has-text::before{
	position:absolute;
	left:0;
	bottom:0.05em;
	display:block;
	content:"";
	width:11.05rem;
	aspect-ratio:580/110;
	background-image:url(images/logo_001.png);
	background-repeat:no-repeat;
	background-position:left center;
	background-size:contain;
	margin-right:1.15em;
}
.l-header__logo.has-text > .c-headLogo{
	position:relative;
	display:inline-flex;
	align-items:baseline;
	color:#fff;
	font-size:1.40rem;
	font-weight:600;
	letter-spacing:0.065em;
	padding:0.55em 0 0 11.95rem;
}
.l-header__logo.has-text > .c-headLogo::before{
	content:"株式会社";
	font-size:1.00rem;
	letter-spacing:0.015em;
	margin-right:0.40em;
}
.l-header__logo.has-text > .c-headLogo:hover{
	color:var(--wp--preset--color--arkb-color-02);
}
/* mobile	---------------------------------- */
@media not all and (min-width: 600px){
	.c-iconBtn__icon svg{
		fill:#fff;
	}
	.l-header__body.l-container{
		grid-template-columns:auto;
	}
	.l-header__center{
		padding:1.55em 0;
	}
	.l-header__logo.has-text::before{
		width:29vw;
		bottom:0;
	}
	.l-header__logo.has-text > .c-headLogo{
		font-size:5vw;
		line-height:1;
		padding:0 0 0 30vw;
	}
	.l-header__logo.has-text > .c-headLogo::before{}
}

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

.l-footer__foot{
	background:var(--wp--preset--color--arkb-color-02);
	color:#000;
	font-weight:400;
	padding:2.55rem 0;
}
.l-footer__nav a{
	font-size:0.90rem;
}
.c-copyright{
	margin-top:2.55rem;
}
/* mobile	---------------------------------- */
@media not all and (min-width: 600px){
	.l-footer__nav a{
		padding:0.45em 0.65em;
	}
}

/*******************************
/* #hero
*******************************/

#hero{}
#hero::before{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:2;
	width:100%;
	height:100%;
	content:"";
	background:rgba(25,45,105,0.25);
	mix-blend-mode:hard-light;
}
#hero .hero_visual{
	position:relative;
	display:flex;
	overflow:hidden;
	margin:0 auto;
	transition:all 0.4s ease;
}
#hero .hero_visual,
#hero .hero_visual .swiper,
#hero .hero_visual .swiper-slide,
#hero .hero_visual .swiper-slide .slide{
	width:100%;
	height:100vh;
	min-height:600px;
}
#hero .hero_caption{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:15;
	color:#fff;
	width:100%;
	height:100%;
	display:flex;
	flex-wrap:wrap;
	align-items:flex-end;
}
#hero .hero_caption > div{
	display:flex;
	flex-wrap:wrap;
	padding:80px 0 0 5.5%;
}
#hero .hero_caption div.primary{
	flex:0 0 100%;
}
#hero .hero_caption div.primary p{}
#hero .hero_caption div.primary p > span{
	display:block;
	font-size:6.5vw;
	font-size:clamp(5.00rem, calc(2.05vw + 3.46rem), 6.00rem);
	font-weight:800;
	line-height:1.45;
}
#hero .hero_caption div.secondary{
	flex:0 0 100%;
	padding:1.0% 0.5em clamp(4.50rem, calc(4.10vw + 1.42rem), 6.50rem) 0.5em;
}
#hero .hero_caption div.secondary p{}
#hero .hero_caption div.secondary p > span{
	display:block;
	font-size:clamp(0.9375rem, 0.3125rem + 2vw, 1.5625rem);
	font-weight:400;
	letter-spacing:0.045em;
	line-height:1.95;
}
#hero .hero_decoration_word{
	position:absolute;
	left:-0.1em;
	bottom:-0.6em;
	z-index:10;
	width:calc(100% - 0.2em);
	color:#111;
	font-family:"Oswald", sans-serif;
	font-size:11.8vw;
	font-weight:700;
	line-height:1;
	text-align:center;
	white-space:nowrap;
	mix-blend-mode:overlay;
	opacity:0.80;
}
#hero .hero_decoration_word > p{}
#hero .hero_visual .slide{
	position:relative;
	overflow:hidden;
	display:flex;
	justify-content:center;
	align-items:center;
}
#hero .hero_visual .slide > .image{
	position:absolute;
	width:100%;
	height:100%;
}
#hero .hero_visual .slide > .image img{
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	object-fit:cover;
	width:100%;
	height:100%;
}
#hero .hero_visual .slide > .image.core{
	z-index:1;
}
#hero .hero_visual .slide > .image.mirror{
	z-index:0;
	filter:blur(5px) contrast(1.5);
	opacity:0.9;
}
#hero .hero_visual .swiper-slide{
	-webkit-transition-property:opacity, -webkit-transform !important;
	transition-property:opacity, -webkit-transform !important;
	transition-property:opacity, transform !important;
	transition-property:opacity, transform, -webkit-transform !important;
	pointer-events:none;
}
#hero .hero_visual .slide > .image.core img{
	transform:scale(1.10);
	filter:blur(20px);
	opacity:1;
}
#hero .hero_visual .swiper-slide .image.mirror img{
	transform:scale(1.3);
	filter:blur(0);
	opacity:0.8;
}
#hero .hero_visual .swiper-slide[class*=-prev] .image.core img,
#hero .hero_visual .swiper-slide[class*=-active] .image.core img{
	animation:fadeHeroCore 8s 0s ease both;
}
#hero .hero_visual .swiper-slide[class*=-prev] .image.mirror img,
#hero .hero_visual .swiper-slide[class*=-active] .image.mirror img{
	animation:fadeHeroMirror 6s 0s ease both;
}
#hero .hero_visual .swiper-slide[class*=-prev] .image img{}
#hero .hero_visual .swiper-slide[class*=-next] .image img{}
@keyframes fadeHeroCore{
	0%{
		transform:scale(1.10);
		filter:blur(20px);
	}
	0%,5%{
		opacity:0;
	}
	10%{
		opacity:0.2;
		filter:blur(0);
	}
	30%{
		opacity:0.6;
	}
	60%,100%{
		opacity:1;
		filter:blur(0);
	}
	100%{
		transform:scale(1);
	}
}
@keyframes fadeHeroMirror{
	0%{
		transform:scale(1);
		filter:blur(20px);
		opacity:1;
	}
	100%{
		transform:scale(1.3);
		filter:blur(0);
		opacity:0.8;
	}
}
/* mobile	---------------------------------- */
@media not all and (min-width: 600px){
	#hero .hero_visual,
	#hero .hero_visual .swiper,
	#hero .hero_visual .swiper-slide,
	#hero .hero_visual .swiper-slide .slide{
		width:100%;
		height:65vh;
		min-height:400px;
	}
	#hero .hero_caption div.primary p > span{
		font-size:8vw;
	}
	#hero .hero_caption div.secondary{
		padding-left:0;
	}
	#hero .hero_caption div.secondary p > span{
		font-size:3.5vw;
	}
}

/*******************************
/* ark-block-heading
*******************************/

.ark-block-heading{
	padding-bottom:0.65rem;
}
.ark-block-heading .ark-block-heading__main:empty,
.ark-block-heading .ark-block-heading__sub:empty{
	display:none;
}
.ark-block-heading[data-sub=top] .ark-block-heading__main{
	margin:1.95rem auto;
}
.ark-block-heading[data-sub=top] .ark-block-heading__sub{
	margin:0.55rem auto;
}
.ark-block-heading[data-sub=top] .ark-block-heading__line{
	margin:1.95rem auto;
}
.ark-block-heading[data-sub=bottom] .ark-block-heading__main{
	margin:1.95rem auto;
}
.ark-block-heading[data-sub=bottom] .ark-block-heading__sub{
	margin:0.55rem auto;
}
.ark-block-heading[data-sub=bottom] .ark-block-heading__line{
	margin:1.95rem auto;
}
.ark-block-heading .ark-block-heading__main{
	font-family:Oswald,"Noto Serif JP", serif;
	font-size:1.95rem;
	font-weight:600;
	line-height:1.65;
}
.ark-block-heading .ark-block-heading__sub{
	color:#000;
	font-family:Oswald,"Noto Sans JP", sans-serif;;
	font-size:2.65rem;
	font-weight:500;
	line-height:1.65;
	opacity:1;
}
.ark-block-heading .ark-block-heading__sub::first-letter{
	color:var(--wp--preset--color--arkb-color-01);
}
.ark-block-heading .ark-block-heading__line{
	margin:0 auto;
}
.ark-block-heading .ark-block-heading__line:before{
	width:6em;
	height:3px;
	border-radius:0;
	background:linear-gradient(to right, #a00000 0%, #a00000 50%, #000 50%, #000 100%);
}
.ark-block-heading ~ p.has-text-align-center{
	line-height:2.45;
}
/* mobile	---------------------------------- */
@media not all and (min-width: 600px){
	.ark-block-heading .ark-block-heading__main{
		font-size:1.25rem;
	}
	.ark-block-heading .ark-block-heading__sub{
		font-size:1.90rem;
	}
	.ark-block-heading[data-sub=top] .ark-block-heading__main,
	.ark-block-heading[data-sub=top] .ark-block-heading__sub,
	.ark-block-heading[data-sub=bottom] .ark-block-heading__main,
	.ark-block-heading[data-sub=bottom] .ark-block-heading__sub{
		margin:0.55rem auto;
	}
	.ark-block-heading[data-sub=top] .ark-block-heading__line,
	.ark-block-heading[data-sub=bottom] .ark-block-heading__line{
		margin:0 auto;
		margin-top:1.45em;
	}
	.ark-block-heading ~ p.has-text-align-center{
		text-align:left;
		line-height:2.45;
	}
	.ark-block-heading ~ p.has-text-align-center br{
		display:none;
	}
}

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

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

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

.p-fixBtnWrap{
	bottom:1.15rem;
	right:1.15rem;
}
#pagetop.c-fixBtn{
	background-color:var(--wp--preset--color--arkb-color-01);
	border-radius:50%;
	box-shadow:none;
	opacity:1;
}

/*******************************
/* 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:500;
	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;
}


