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

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

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

	font-family:"Noto Serif JP", serif;
	200-900

	font-family:"Zen Maru Gothic", sans-serif;
	300,400,500,700,900

	font-family: "M PLUS Rounded 1c", sans-serif;
	300,400,500,700,800,900

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

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

*/

:root {
	--ark-font_family: "Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
}

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

/* pc, 1000px 以上 */
@media (min-width: 1000px){}

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

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


/*******************************
/* Arkhe［ユーティリティクラス］
 * 詳しくは、src/scss/object/utility/**
*******************************/

/*

・「u-only-pc」というクラスをつけるとPCサイズでのみ表示されるようになったり
・「u-fz-l」を付けるとフォントサイズが大きくなったり
・「u-mt-0」を付けると上部マージンが 0 になったり

u-mt-0	(0,5,10,15,20,25,30,40,50,60,80)
u-mb-0	(0,5,10,15,20,25,30,40,50,60,80)

*/


/*******************************
/* 
*******************************/
*{
	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;
}
.l-content__body{
	margin-top:0;
}
@media screen and (max-width: 767px){
/* mobile -------------------------------------------------------------------------------------------- */
	input,
	textarea{
		font-size:16px;
	}
}

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

.c-pageTitle__main{
	font-family:"M PLUS Rounded 1c", sans-serif;
	font-weight:500;
}
/* mobile, 600px 以下 */
@media not all and (min-width: 600px){
	.c-pageTitle__main{
		font-size:1.45rem;
	}
	.p-topArea.c-filterLayer.-filter-none::before{
		content:"";
		opacity:0.30;
	}
}

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

#header{
	transition:all 0.65s;
}
.l-header{
	background:transparent;
}
[data-scrolled=true] .l-header{
	background:#fff;
}
.l-header__body.l-container{
	max-width:none;
}
.l-header .l-header__center{
	padding:1.0em 0;
}
.l-header__logo.has-text .c-headLogo{
	font-family:"M PLUS Rounded 1c", "Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	font-size:1.30rem;
	font-weight:400;
}
/* mobile, 600px 以下 */
@media not all and (min-width: 600px){
	.l-header__logo.has-text .c-headLogo{
		font-size:4vw;
		font-weight:500;
	}
	[data-scrolled=false] .l-header{
		background:rgba(255,255,255,0.4);
	}
}

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

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


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

.ark-block-heading{
	display:flex;
	flex-direction:column;
	padding:0.5em 0 0.5em 0;
}
.ark-block-heading[data-sub=top] .ark-block-heading__main{order:3;}
.ark-block-heading[data-sub=bottom] .ark-block-heading__main{order:2;}
.ark-block-heading[data-sub=top] .ark-block-heading__sub{order:2;}
.ark-block-heading[data-sub=bottom] .ark-block-heading__sub{order:3;}
.ark-block-heading .ark-block-heading__main{
	color:var(--wp--preset--color--arkb-color-01);
	font-family:"Zen Maru Gothic", sans-serif;
	font-size:2.60rem;
	font-weight:400;
	margin:0.5em 0;
}
.ark-block-heading .ark-block-heading__sub{
	font-family:"Zen Maru Gothic", sans-serif;
	font-size:1.10rem;
	font-weight:400;
	line-height:2.5;
	margin:0.5em 0;
	opacity:1;
}
.ark-block-heading .ark-block-heading__line,
.ark-block-heading[data-sub=top] .ark-block-heading__line,
.ark-block-heading[data-sub=bottom] .ark-block-heading__line{
	order:1;
	width:180px;
	height:auto;
	aspect-ratio:600/260;
	background-image:url(images/parts_001.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:contain;
	margin:0 auto 1.5em auto;
}
.ark-block-heading .ark-block-heading__line:before{
	content:none;
}

/* line 無 */

.ark-block-heading.has-text-align-left:not(:has(.ark-block-heading__line)) .ark-block-heading__main{
	font-size:2.25rem;
	margin:0;
}
.ark-block-heading.has-text-align-left:not(:has(.ark-block-heading__line)) .ark-block-heading__sub{
	color:var(--wp--preset--color--arkb-color-02);
	font-size:1.55rem;
	margin:0;
}

/* mobile, 600px 以下 */
@media not all and (min-width: 600px){
	.ark-block-heading .ark-block-heading__main,
	.ark-block-heading.has-text-align-left:not(:has(.ark-block-heading__line)) .ark-block-heading__main{
		font-size:1.65rem;
		line-height:1.5;
		margin:0.45em 0;
	}
	.ark-block-heading .ark-block-heading__sub,
	.ark-block-heading.has-text-align-left:not(:has(.ark-block-heading__line)) .ark-block-heading__sub{
		font-family:"Noto Sans JP","Helvetica Neue","Arial","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
		font-size:1.00rem;
		line-height:2.0;
		text-align:left;
		margin:0.15em 0;
	}
	.ark-block-heading .ark-block-heading__sub br,
	.ark-block-heading.has-text-align-left:not(:has(.ark-block-heading__line)) .ark-block-heading__sub br{
		display:none;
	}
	.ark-block-heading .ark-block-heading__line,
	.ark-block-heading[data-sub=top] .ark-block-heading__line,
	.ark-block-heading[data-sub=bottom] .ark-block-heading__line{
		width:80px;
		margin:0 auto 0.5em auto;
	}
	.ark-block-heading ~ p br{
		display:none;
	}
	.ark-block-heading ~ p,
	.ark-block-heading ~ p.has-text-align-center{
		text-align:left;
	}
}

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

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

/*******************************
/* #breadcrumb
*******************************/

body.page #breadcrumb{
	display:none;
}

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

#pagetop{}
#pagetop.c-fixBtn{
	background-color:var(--wp--preset--color--arkb-color-01);
	border-radius:50%;
	box-shadow:none;
	opacity:1;
}
#pagetop.c-fixBtn:hover{
	opacity:0.65;
}

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

#hero,
#hero > div.hero_visual .swiper-slide img{
	width:100%;
	height:100vh;
	min-height:600px;
}
#hero{
	position:relative;
	width:100%;
	overflow:hidden;
}
#hero > div.hero_title{
	position:absolute;
	top:50%;
	left:55%;
	transform:translateY(-55%);
	z-index:10;
	width:clamp(300px, 40%, 40vw);
}
#hero > div.hero_title > span{}
#hero > div.hero_title > span img{
	max-height:90vh;
}
#hero > div.hero_visual{
	position:relative;
}
#hero > div.hero_visual .swiper{}
#hero > div.hero_visual .swiper-wrapper{}
#hero > div.hero_visual .swiper-slide{}
#hero > div.hero_visual .swiper-slide img{
	object-fit:cover;
	transform:scale(1.25);
}
#hero > div.hero_visual .swiper-slide[class*=-active] img,
#hero > div.hero_visual .swiper-slide[class*=-prev] img,
#hero > div.hero_visual .swiper-slide[class*=-next] img{
	animation:HeroAnimation 15s linear 0s normal both;
}
@keyframes HeroAnimation{
	0%{
		transform:scale(1.25);
	}
	100%{
		transform:scale(1);
	}
}
/* mobile, 600px 以下 */
@media not all and (min-width: 600px){
	#hero,
	#hero > div.hero_visual .swiper-slide img{
		height:55vh;
		min-height:400px;
	}
	#hero > div.hero_title{
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-50%, -35%);
		width:60%;
	}
}

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

.contact-form-7-area{
	background:#fff;
	border-radius:20px;
	padding:3.0em 4.5em;
}
.contact-form-7-area .wpcf7-list-item{
	display:block;
}
.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:var(--wp--preset--color--arkb-color-01);
	min-width:60%;
	color:#fff;
	font-size:1.05rem;
	font-weight:600;
	letter-spacing:0.05em;
	border:none;
	border-radius:10px;
	padding:0.65em 2.5em;
}
.contact-form-7-area .wpcf7-list-item{
	margin:0 1.5em 0 0;
}
.contact-form-7-area .unit{
	display:flex;
	justify-content:space-between;
	border-bottom:1px solid #ddd;
	padding:1.15em 0;
}
.contact-form-7-area div.unit-title{
	flex:0 0 35%;
	font-weight:600;
}
.contact-form-7-area div.unit-item{
	flex:0 0 65%;
}
.contact-form-7-area div.unit-submit{
	text-align:center;
	margin-top:1.80em;
}
.contact-form-7-area i.required{
	display:inline-block;
	color:#dc3232;
	font-size:80%;
	font-style:normal;
	margin-left:0.4em;
}
.contact-form-7-area span.sup{
	color:#dc3232;
}
.contact-form-7-area span.wpcf7-spinner{
	display:block;
	margin:-30px auto 0 auto;
}
/* mobile, 600px 以下 */
@media not all and (min-width: 600px){
	.contact-form-7-area{
		background:#fff;
		width:100%;
		border-radius:15px;
		padding:1.5em 1.5em;
		margin:0 auto;
	}
	.contact-form-7-area .unit{
		flex-wrap:wrap;
	}
	.contact-form-7-area div.unit-title,
	.contact-form-7-area div.unit-item{
		flex:0 0 100%;
	}
	.contact-form-7-area div.unit-item{
		font-size:0.90rem;
	}
}

