@charset "utf-8";
/*
Theme Name: lightning-child
Template: lightning
*/
:root {
	/*------▼基本設定▼------*/
	--color-background: #FFF;
	--color-font: #333;
	--color-primary: #082E77;
	--color-primary-shade: #082E77;
	--color-primary-tint:#082E77;
	--color-secondary: #082E77;
	--color-secondary-tint: #082E77;
}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

/*-------------------------------------------
   サイト全体共通
--------------------------------------------*/

html {
	font-size: 62.5%; /*ルート指定：1rem＝10px*/
}
body {
	overflow-x: hidden;
	font-size: 1.6rem; /*サイト全体の基準となる文字サイズ*/
	font-family: 'Roboto','Noto Sans JP', sans-serif;
	font-weight:normal;
	color:var(--color-font);
}
h1, h2, h3, h4, a,p {
    color: var(--color-font);
    font-family: 'Roboto','Noto Sans JP', sans-serif !important;
    font-weight: normal;
    font-size: 1.6rem;
	line-height:1.6;
    margin: 0;
	padding:0;
	border:none;
	border-radius:0;
	background:none;
}
* {
	box-sizing: border-box;
}
body img{
	display:block;
	margin:auto;
}
a img{
    backface-visibility: visible;
	transition:all ease .15s;
}
a:hover{
	color:#999;
}
a:hover img{
	opacity:.5;
}
/*------------------------
    ファーストビュー切り替え
------------------------*/
@media screen and (min-width:751px){
	.pc_hero{
		display:block;
	}
	.sp_hero{
		display:none;
	}
}
@media screen and (max-width:750px){
	.pc_hero{
		display:none;
	}
	.sp_hero{
		display:block;
	}
}
/*------------------------
     改行位置の調整
------------------------*/
@media screen and (min-width: 768px) {
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
/*------------------------------------------
lightning 打消し
--------------------------------------------*/
@media screen and (min-width:992px){
/*ヘッダー*/
header.site-header{
	height:100px;
} 
div#site-header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    width: 100%;
    max-width: unset;
	padding:0;
}
.site-header--layout--nav-float .site-header-logo {
    width: auto;
    padding: 0;
    margin: 0;
}
.site-header-logo img{
	max-height: 5rem;
}
div#site-header-container .site-header-logo {
    padding: 2rem 3rem;
}
header.site-header nav#global-nav ul li a {
    padding: 2rem;
}
.global-nav-list>li .global-nav-name{
	font-size:1.6rem;
}
.global-nav-list>li .global-nav-description {
    font-size: 60%;
    line-height: 1.4;
    opacity: 1;
}
header.site-header nav#global-nav ul li:last-child a{
	padding:0 2rem;
	& strong{
	    position: relative;
    	padding: 1.5rem 3rem 1.5rem 5.5rem;
    	background: transparent;
		border:1px solid var(--color-primary);
    	color:  var(--color-primary);
		box-shadow:0 0 15px #4c3a3114;
		transition:all cubic-bezier(0.8, 0, 0.2, 1) .6s;
		transform:skew(-10deg);
		&:before{
			position:absolute;
			content:"\f0e0";
			top:50%;
			transform:translatey(-50%);
			left:3rem;
			font-family: "FontAwesome";
			line-height:1;
		}
		&:after{
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			z-index: -1;
			background:linear-gradient(to right, #29FFE2, #2898C8);
			width: 100%;
			height: 100%;
			transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
			transform: scale(0, 1);
			transform-origin: right top;
		}
	}
	&:hover{
		opacity:1;
	}
	&:hover strong{
		opacity:1;
		background:transparent;
		color:#fff;
		border-color:#fff;
		transition:all ease 1s;
		&:after{
			transform-origin:left top;
  			transform:scale(1, 1);
		}
	}
}
header.site-header nav#global-nav ul li:before{
	display:none;
}
.header_scrolled .site-header {
    width: 100%;
    max-width: 100vw;
}
.header_scrolled .site-header-logo{
	display:block;
}
.header_scrolled .site-header .global-nav {
    display: flex;
    margin-left: 0;
    margin-right: 0;
    justify-content: flex-end;
}
}
/*フッター*/
footer.site-footer{
	border:none;
}
footer.site-footer .container.site-footer-copyright {
    margin: 0;
    padding: 0;
    max-width: none;
    width: 100%;
}
footer.site-footer .container.site-footer-copyright p{
	margin:0;
	font-size:1.4rem;
}
footer.site-footer .container.site-footer-copyright p:not(:first-child){
	display:none;
}
/*フッター上部*/
.container.site-footer-content {
    padding: 0;
    width: min(1100px,95%);
    margin: auto;
	max-width:unset;
}
.row {
    margin-right: 0;
    margin-left: 0;
}
.site-footer .widget:last-child {
    margin-bottom:0;
}
.container.site-footer-content .row .col-lg-4 figure.wp-block-image{
	margin:0;
}

/*下層ページヘッダー*/
.page-header {
    min-height:calc(30rem + (1vw - 1.92rem) * 6.4725);/*30-20(375)*/
	margin:0 !important;
}
/*見出し等*/
.container {
    width: 100%;
    max-width: unset;
    margin: 0;
    padding: 0;
}
h3:after{
	display:none;
}
/*投稿アーカイブページ*/
body.archive .site-body {
    padding: 8rem 0 0;
}
body.archive .site-body-container.container{
	display:flex;
	justify-content:space-between;
	width:min(110rem,95%);
	margin:auto;
}
body.archive .site-body-container.container .main-section{
	width:min(82.5rem,100%);
}
body.archive .site-body-container.container .sub-section{
	width:min(20rem,100%);
}
body.archive .vk_posts-mainSection .vk_post:first-child{
	padding-top:0;
	border-top:0;
}
.vk_posts {
    margin-left: 0;
    margin-right: 0;
}
.vk_post.media {
    margin: 0;
}
.site-footer-title:after, .sub-section-title:after, h3:after {
    border-bottom: 1px solid var(--color-primary);
}
.btn-primary {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
	transition:all ease .25s;
}
.btn-primary:hover{
	opacity:.5;
}
/*投稿アーカイブページの不要物削除*/
body.archive aside.widget.widget_media {
    display: none;
}
/*投稿詳細ページ*/
body.single-post .page-header{
	display:none;
}
body.single-post .site-body{
	padding:10rem 0;
	width:min(80rem,95%);
	margin:auto;
}
body.single-post h1.entry-title{
	font-size:2.4rem;
	font-weight:500;
	padding-bottom:1.5rem;
	margin-bottom:5px;
	border-bottom:1px solid #ccc;
}
body.single-post .entry-meta{
	text-align:right;
}
body.single-post .entry-meta span{
	font-size:1.4rem;
}
body.single-post .entry-body{
	line-height:2;
}
body.single-post .entry-footer{
	display:none;
}
body.single-post .entry-meta span.entry-meta-item-updated, body.single-post span.entry-meta-item-author{
	display:none;
}
body.single-post .next-prev{
	display:none;
}
body.single-post .comments-area {
    display: none;
}
.entry-body>.vk_posts>.media.vk_post-col-sm-12:first-child, 
.main-section>.vk_posts>.media.vk_post-col-sm-12:first-child {
    border-top: none;
}
.btn-primary:active, .btn-primary:focus, .btn-primary:hover, .btn-primary:not(:disabled):not(.disabled):active {
    background-color:var(--color-primary);
    border-color: var(--color-primary);
}

/*リスト*/
ol, ul {
    padding-left:0;
	margin:0;
}
ul li {
    margin-top: 0;
    margin-bottom: 0;
	list-style:none;
}
/*パンくずリスト*/
.breadcrumb{
	border:none;
	background:#f9f9f9;
}
ol.breadcrumb-list{
	width:min(110rem,95%);
	margin:0 auto;
	padding:3px 0;
}
ol.breadcrumb-list li a{
	font-size:1.4rem;
}
@media screen and (max-width:767px){
body.archive.category .site-body-container.container {
    flex-direction: column;
}
body.archive.category .vk_post.media {
    flex-direction: column;
    align-items: center;
}
body.archive.category .vk_posts .vk_post-col-xs-12 {
    width:100%;
}
body.archive.category .vk_post .media-img {
    width: 100%;
    margin: 0;
}
body.archive.category .vk_post-btn-display.media .vk_post_body {
    padding-bottom: 30px;
	width:100%;
	margin-top:1rem;
}
body.archive.category .site-body-container.container .sub-section {
    width: 100%;
}
body.archive.category .site-body-container.container .sub-section h4,
body.archive.category .site-body-container.container .sub-section ul li a{
	font-size:1.4rem;
}
}
/*------------------------------------------
lightning 打消し(レスポンシブ)
--------------------------------------------*/
@media screen and (max-width:991px){
header.site-header {
    height: 60px;
}
header .site-header-container {
    padding: 0;
    margin: 0;
    height: 100%;
}
header .site-header-container .site-header-logo {
    padding: 0;
    margin: 0;
    text-align: left;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.site-header-container .site-header-logo a {
    padding-left: 2rem;
}
header .site-header-container .site-header-logo img {
    max-height: 2.5rem;
    margin: 0 auto 0 0;
}
.vk-mobile-nav-menu-btn {
    top: 10px;
    border: none;
    width: 40px;
    height: 40px;
}
.vk-mobile-nav-menu-btn.menu-open {
    border-color:transparent;
	border:none;
}
.alert-info {
    display: none;
}
.vk-mobile-nav {
    padding: 60px 1rem 0;
    background-color: rgb(255 255 255 / 95%);
}
.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in {
    padding: 6rem 1rem 0;
    margin:0;
}
.vk-mobile-nav.vk-mobile-nav-right-in {
    transition: all .5s ease;
}
}
/*------------------------------------------
  CONTACT お問い合わせページ
--------------------------------------------*/
body.page-id-18 section.contact_sec{
	display:none;
}
.wpcf7-form {
    padding: 0;
}
input[type=date], input[type=email], input[type=number], input[type=password], input[type=tel], input[type=text], input[type=url], select, textarea {
    font-size: 1.2rem;
}
input[type=submit]{
	font-size:1.4rem;
}
.post-name-contact .entry-body {
    padding: calc(10rem + (1vw - 1.92rem) * 2.5890) 0;
    width: min(110rem,90%);
    margin: auto;
}
.post-name-contact .entry-body table th{
	width:30%;
	vertical-align:middle;
	background:#f7f7f7;
	text-align:left;
}
body.post-name-contact .entry-body table td img{
	display:inline-block;
}
.wpcf7-form .must {
    color: #fff;
    font-weight: normal;
	background:rgb(255 82 83);
    margin-left: 0;
    font-size: 1.2rem;
    padding: 0px 10px;
    display: inline-block;
    line-height: 2;
	float:right;
}
.wpcf7-form .nini{
	background:#999;
}
/*チェックボックスズレ解消*/



/*同意ボタン調整*/
.agree_btn {
    margin: 3rem 0;
}
.agree_btn div,.agree_btn p{
	text-align:center;
}
.agree_btn div .wpcf7-list-item {
    margin: 0;
}
.agree_btn p,.agree_btn p a{
	font-size:90%;
}

/*送信ボタン調整*/
.SendBtn {
	text-align: center;
}
.SendBtn input[type="submit"], .SendBtn input[type="reset"], .SendBtn input[type="button"] {
    padding: 15px 100px;
    border-radius: 0vw;
	background-color:var(--color-primary);
    border: 1px solid var(--color-primary);
    transition: all ease .3s;
}
.SendBtn input[type="submit"]:hover, .SendBtn input[type="reset"]:hover, .SendBtn input[type="button"]:hover{
	color:var(--color-primary);
	background:transparent;
	transition:all ease .3s;
}
.wpcf7-spinner{
	display:none;
}
/*お問い合わせページのみフッター削除*/
body.post-name-contact .footer_cta{
	display:none;
}

@media screen and (max-width:800px){
.wpcf7-form .must {
    margin-left: 2rem;
	font-size:1rem;
}
.post-name-contact .entry-body table tr {
    display: flex;
    flex-direction: column;
}
	.post-name-contact .entry-body table{
		border-top:none;
	}
	.post-name-contact .entry-body table th,
	.post-name-contact .entry-body table td{
		padding:1.5rem 2rem;
		text-align:left;
		font-size:1.4rem;
		width:100%;
	}
}



/*------------------------------------------
  ORIGINAL
--------------------------------------------*/
/*グローバルメニュー*/
header.site-header nav#global-nav,
header.site-header nav#global-nav ul{
	height:100%;
}

header.site-header nav#global-nav ul li a strong{
	position:relative;
	transition:all ease .15s;
}
header.site-header nav#global-nav ul li a:hover strong{
	opacity:.5;
}
/*フッター*/
footer.site-footer {
    border: none;
    padding: 15rem 0 5rem;
    background:#111;
}
.container.site-footer-content .row{
	justify-content:space-between;
	align-items:center;
}
.container.site-footer-content .row .col-lg-4:first-child{
	width:65rem;
	border-right:1px solid #333;
	& .company_name{
		& p{
			font-size:2.6rem;
			font-weight:bold;
			color:#fff;
			margin-bottom:10rem;
		}
	}
	& .footer_address{
		display:grid;
		grid-template-columns:repeat(2,1fr);
		gap:5%;
		row-gap:2rem;
		& p:first-child{
			font-size:2rem;
			font-weight:bold;
			margin-bottom:1rem;
		}
		& p{
			color:#fff;
		}
	}
}
.container.site-footer-content .row .col-lg-4:last-child{
	width:35rem;
}
.container.site-footer-content .row .col-lg-4{
	max-width:unset;
	width:auto;
	flex:unset;
	padding:0;
}
.container.site-footer-content .row .col-lg-4 figure img {
    width: 100%;
    margin: 0 auto 0 0;
}
.container.site-footer-content .row .col-lg-4:nth-child(2){
	display:none;
}
.container.site-footer-content .row .col-lg-4 ul.menu{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:2%;
	row-gap:1.5rem;
}
.container.site-footer-content .row .col-lg-4 ul.menu li a{
	color:#fff;
	border:none;
	padding:0;
	font-size:1.4rem;
}
.container.site-footer-content .row .col-lg-4 ul.menu li a:hover{
	text-decoration:underline;
	color:#999;
	background-color:transparent;
}
footer.site-footer .container.site-footer-copyright{
	padding-top:5rem;
	border-top:none;
	width:min(110rem,95%);
	margin:5rem auto 0;
}
footer.site-footer .container.site-footer-copyright p{
	text-align:center;
	color:#fff;
}
@media screen and (max-width:1024px){
	.container.site-footer-content .row{
		flex-direction:column;
	}
	.container.site-footer-content .row .col-lg-4:first-child {
    width: 100%;
    border-right:none;
		margin-bottom:6rem;
}
}
@media screen and (max-width:767px){
footer.site-footer {
    padding: 10rem 0 5rem;
}
.container.site-footer-content .row {
    flex-direction: column;
}
.container.site-footer-content .row .col-lg-4:first-child {
    width: 100%;
    margin-bottom: 5rem;
	& .company_name{
		& p{
			text-align:center;
			font-size:2rem;
			margin-bottom:5rem;
		}
	}
	& .footer_address{
		& p{
			text-align:center;
			font-size:1.2rem;
		}
		& p:first-child{
			font-size:1.6rem;
		}
		
	}
}
.container.site-footer-content .row .col-lg-4 ul.menu li a {
    font-size: 1.2rem;
	text-align:center;
}
	footer.site-footer .container.site-footer-copyright{
		border-top:1px solid #fff;
	}
footer.site-footer .container.site-footer-copyright p {
    text-align: center;
    font-size: 1.2rem;
}
footer.site-footer .container.site-footer-copyright {
    margin: 5rem auto 0;
}
}

/*------------------------------------------
  よく使うCSS
--------------------------------------------*/
.flex{
	display:flex;
	flex-wrap:wrap;
}
.row_reverse{
	flex-direction:row-reverse;
}
.center{
	text-align:center;
}
@media screen and (max-width:767px){
.flex{
	flex-direction:column;
}
}
/*-------------------------------------------
    　　プライバシーポリシー
-------------------------------------------*/
div#privacy {
    padding: calc(10rem + (1vw - 1.92rem) * 2.5890) 0;/*10-6(375)*/
	width:min(110rem,95%);
	margin:auto;
}
div#privacy h3 {
    font-size:calc(2.4rem + (1vw - 1.92rem) * 0.2589);
	font-weight:bold;
    margin:calc(5rem + (1vw - 1.92rem) * 1.2945) 0 1rem;/*5-3(375)*/
	line-height:1.5;
}
div#privacy h4{
	margin:3rem 0 1rem;
	font-size:calc(2rem + (1vw - 1.92rem) * 0.1294);/*2-1.8*/
	font-weight:500;
}
div#privacy p{
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);/*1.6-1.4(375)*/
	line-height:1.6;
}
div#privacy ul li{
	line-height:1.6;
	position:relative;
	padding-left:1em;
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);/*1.6-1.4(375)*/
}
div#privacy ul li:before{
	position:absolute;
	content:"・";
	top:0;
	left:0;
}
/*-------------------------------------------
    　サイトマップ
-------------------------------------------*/
body.post-name-sitemap .entry-body{
    padding: calc(10rem + (1vw - 1.92rem) * 2.5890) 0;/*10-6(375)*/
	width:min(110rem,95%);
	margin:auto;
}
.entry-body ul#sitemap_list li{
	padding-left:0;
	font-size:1.8rem;
	padding-bottom:1rem;
	border-bottom:1px dashed #a1a1a1;
	margin-top:1rem;
	margin-bottom:0;
	position:relative;
}
.entry-body ul#sitemap_list li a{
	position:relative;
	padding-left:1.2em;
}
.entry-body ul#sitemap_list li a:before {
    position: absolute;
    content: "";
    border: 5px solid transparent;
    border-left: 10px solid var(--color-primary);
    top: 50%;
    left: 0;
    transform: translatey(-50%);
}
.entry-body ul#sitemap_list li.cat-item{
	padding-bottom:0;
}
.entry-body ul#sitemap_list li.cat-item ul li{
	border-bottom:none !important;
	padding-left:1em;
	font-size:16px;
}
@media screen and (max-width:1023px){
.entry-body ul#sitemap_list li{
	font-size:16px;
}
.entry-body ul#sitemap_list li a:before {
    border: 5px solid transparent;
    border-left: 10px solid var(--color-primary);
}
.entry-body ul#sitemap_list li.cat-item ul li{
	font-size:14px;
}
}
/*------------------------------------------
  TOP 新着情報一覧
--------------------------------------------*/
section.front_news{
	position:relative;
	z-index:0;
}
section.front_news .front_news_inner {
    width: min(100rem,90%);
    margin: auto;
    padding:10rem 0 15rem;
}
section.front_news .front_news_inner h2{
	font-size:calc(4.5rem + (1vw - 1.92rem) * 0.6472);/*4.5-3.5(378)*/
	font-weight:bold;
	text-align:center;
	line-height:1.2;
}
section.front_news .front_news_inner h2 span{
	display:block;
	font-size:50%;
}
.front_news_list{
	margin-top:5rem;
}
.front_news_list ul{
	padding:0;
	margin:0;
}
.front_news_list ul li{
	list-style:none;
	margin:0;
	padding:1.5rem 0;
	border-top:1px dashed #ccc;
	border-bottom:1px dashed #ccc;
}
.front_news_list ul li a{
	text-decoration:none;
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);
	transition:all ease .15s;
}
.front_news_list ul li a:hover{
	color:#999;
}
.front_news_list ul li a span.cate {
    padding: 2px 10px;
    border-radius: 4px;
    margin-right: 10px;
    background: var(--color-primary);
    color: #fff;
    display: inline-block;
}
.front_news_btn {
    text-align: right;
    margin-top: .8rem;
}
.front_news_btn a {
    position: relative;
    padding: 0 0 5px;
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);
    z-index: 0;
	transition:all ease .3s;
}
.front_news_btn a:hover{
	color:#999;
}
.front_news_btn a:before {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background:#182b51;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s;
    z-index: 0;
}
.front_news_btn a:hover:before {
    transform-origin: left top;
    transform: scale(1, 1);
}
.front_news_btn a:after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #cfcfcf;
    z-index: -1;
}
@media screen and (max-width:767px){
section.front_news .front_news_inner {
    padding: 6rem 0 8rem;
}
section.front_news .front_news_inner ul li a span.ttl{
	display:block;
	margin-top:5px;
}
}
/*------------------------------------------
  TOPページ
--------------------------------------------*/
* p.txt{
	line-height:2;
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);/*1.6-1.4(768)*/
}
table th,
table td,
ul li,
dl dt,
dl dd{
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);/*1.6-1.4(768)*/
	line-height:1.6;
}
img.cover{
	object-fit:cover;
	width:100%;
	height:100%;
}
img.contain{
	object-fit:contain;
	width:100%;
	height:100%;
}
.top_page{
	overflow:hidden;
}
a.btn{
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);/*1.6-1.4(768)*/
	line-height:1.6;
}
a.link_btn{
	display:inline-block;
	text-align:center;
	position:relative;
	z-index:0;
	font-size:calc(1.6rem + (1vw - 1.92rem) * 0.1294);/*1.6-1.4(768)*/
	line-height:1.6;
	color: var(--color-primary);
	border:1px solid var(--color-primary);
    font-family: "Poppins",'Noto Sans JP', sans-serif !important;
	font-weight:bold;
	background:transparent;
	border-radius:0;
	padding:1.5rem 6rem;
	opacity:1;
	transform:skew(-10deg);
	transition:all cubic-bezier(0.8, 0, 0.2, 1) .6s;
	&:before{
	    content: "";
    	position: absolute;
    	top: 0;
    	left: 0;
    	z-index: -2;
    	background: linear-gradient(to right, #29FFE2, #2898C8);
    	width: 100%;
    	height: 100%;
    	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    	transform: scale(0, 1);
    	transform-origin: right top;
	}
	&:hover{
		color:#fff;
		background:var(--color-primary);
		border-color:#fff;
		&:before{
			transform-origin:left top;
  			transform:scale(1, 1);
		}
	}
}
a#scrollUp{
	background:var(--color-secondary);
}
/*------------KV-------------------------*/
section.kv{
	position:relative;
	width:100vw;
	height:80rem;
	z-index:0;
	&:before{
		position:absolute;
		content:"";
		background:rgb(5 16 32 / 55%);
		top:0;
		left:0;
		width:100%;
		height:100%;
		z-index:0;
	}
	& video{
		position:absolute;
		content:"";
		top:0;
		left:0;
		object-fit:cover;
		width:100%;
		height:100%;
		z-index:-1;
	}
}
@media screen and (max-width:767px){
section.kv{
	height:100rem;
}
}
/*------流れるキャッチコピー------*/
.catch {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    align-items: center;
    color: #fff;
    display: flex;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
    z-index: 1;
}
.catch ul {
  animation: flowing 180s linear infinite;
  transform:translateX(100%);
  margin: 0;
  padding: 0;
}
.catch ul li{
 	display: inline-block;
 	padding-right: .5em;
	margin:0;
	font-size:6.4rem;
	font-family: "Poppins", sans-serif;
}
@keyframes flowing {
  0% { transform:translateX(0); }
  100% { transform:translateX(-100%); }
}
@media screen and (max-width:767px){
.catch ul li{
	font-size:4.2rem;
}
}
/*------日本語キャッチコピー------*/
section.kv h1{
	position:absolute;
	left:5%;
	bottom:10%;
	color:#fff;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	& span{
		font-size:3.6rem;
		font-weight:bold;
		background:#000;
		line-height:1.4;
		padding:1rem;
		display:inline-block;
		margin-top:2rem;
		&.small{
			font-size:1.6rem;
			margin:0 0 1rem;
		}
	}
}
@media screen and (max-width:767px){
section.kv h1{
	position:absolute;
	left:5%;
	bottom:5%;
	color:#fff;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	& span{
		font-size:2rem;
		margin-top:1.5rem;
		&.small{
			font-size:1rem;
			margin:0 0 1rem;
		}
	}
}
}
/*------スクロールダウン------*/
.scrolldown1{
  position:absolute;
  left:50%;
  bottom:10px;
  height:50px;
}
.scrolldown1 span {
    position: absolute;
    left: -22px;
    top: -15px;
    color: #eee;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
}
.scrolldown1::after{
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 30px;
  background: #eee;
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}

@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}
@media screen and (max-width:767px){
	.scrolldown1{
		display:none;
	}
}
/*------------TOPコンテンツ-------------------------*/
p.en_ttl{
    font-size: calc(15rem + (1vw - 1.92rem) * 6.4725);
    font-family: "Poppins", sans-serif !important;
	font-style:italic;
	font-weight:900;
	line-height:1;
  color:transparent;
  -webkit-text-stroke: 1px #FFF;
  text-stroke: 1px #FFF;
}
.top_page{
	& section {
		& .inner{
			width:min(1300px,93%);
			margin:0 auto;
			& h2{
				font-weight:bold;	
			}
		}
}
}
/*------------TOP ABOUT-------------------------*/
section.top_about{
	position:relative;
	z-index:0;
	padding:10rem 0;
	& video{
		position:absolute;
		content:"";
		top:0;
		left:0;
		object-fit:cover;
		width:100%;
		height:100%;
		z-index:-1;
	}
	&:after{
		position:absolute;
		content:"";
		top:0;
		left:0;
		background:rgba(255 255 255/82%);
		width:100%;
		height:100%;
		z-index:-1;
	}
	& p.en_ttl{
  -webkit-text-stroke: 1px #0A317C;
  text-stroke: 1px #0A317C;
	}
	& h2{
		font-size:calc(3.6rem + (1vw - 1.92rem) * 1.0356);
		color:#0A317C;
		margin:5rem 0 3rem;
	}
	& p.txt:not(:first-of-type){
		margin-top:1.5em;
	}
	& .btn_sec{
		text-align:right;
	}
}
@media screen and (max-width:767px){
section.top_about{
	& .btn_sec{
		margin-top:3rem;
	}
}
}
/*------------TOP PRODUCT-------------------------*/
section.top_product{
	position:relative;
	z-index:0;
	padding:10rem 0;
	&:after{
		position:absolute;
		content:"";
		top:0;
		left:0;
		background:linear-gradient(45deg, #29FFE2, #2898C8);
		opacity:92%;
		width:100%;
		height:100%;
		z-index:-1;
	}
	& p.en_ttl{
		text-align:center;
	}
	& h2{
		font-size:calc(2.4rem + (1vw - 1.92rem) * 0.2589);
		font-weight:bold;
		margin-bottom:2rem;
		color:#fff;
	}
	& p.txt{
		color:#fff;
	}
	& .grid{
		display:grid;
		grid-template-columns:repeat(3,1fr);
		gap:3%;
		margin-top:5rem;
		& p.ttl{
			text-align:center;
			font-size:2.4rem;
			font-weight:bold;
			margin-top:2rem;
			& b{
				font-size:80%;
				display:block;
			}
		}
		& .img_box{
			position:relative;
			height:302px;
			z-index:0;
		& a{
			position:absolute;
			z-index:1;
			& img{
				max-width:35px;
			}
		}
	}
		& .factory{
			& a.abs_01{
				bottom:113px;
				right:180px;
			}
			& a.abs_02{
				bottom:60px;
				left:138px;
			}
			& a.abs_03{
				bottom:86px;
				right:30px;
			}
		}
		& .logistics{
			& a.abs_01{
				bottom:110px;
				right:79px;
			}
			& a.abs_02{
				top:55px;
				left:90px;
			}
			& a.abs_03{
				top:30px;
				right:151px;
			}
		}
		& .retail{
			& a.abs_01{
				top:17px;
				left:37px;
			}
			& a.abs_02{
				top:62px;
				right:140px;
			}
			& a.abs_03{
				bottom:123px;
				right:50px;
			}
		}
}
}
@media screen and (max-width:1360px){
section.top_product{
	& .grid{
		& p.ttl{
			text-align:center;
			font-size:2.4rem;
			font-weight:bold;
			margin-top:2rem;
			& b{
				font-size:80%;
				display:block;
			}
		}
		& .img_box{
			height:calc(30.2rem + (1vw - 1.35rem) * 24.8466);
		& a{
			& img{
				max-width:calc(3.5rem + (1vw - 1.35rem) * 4.6012);
			}
		}
	}
		& .factory{
			& a.abs_01{
				bottom:calc(11.3rem + (1vw - 1.35rem) * 9.5092);
				right:calc(18rem + (1vw - 1.35rem) * 13.8037);
			}
			& a.abs_02{
				bottom:calc(6rem + (1vw - 1.35rem) * 4.6012);
				left:calc(13.8rem + (1vw - 1.35rem) * 10.4294);
			}
			& a.abs_03{
				bottom:calc(8.6rem + (1vw - 1.35rem) * 5.8282);
				right:calc(3rem + (1vw - 1.35rem) * 2.1472);
			}
		}
		& .logistics{
			& a.abs_01{
				bottom:calc(11rem + (1vw - 1.35rem) * 8.2822);
				right:calc(7.9rem + (1vw - 1.35rem) * 5.5215);
			}
			& a.abs_02{
				top:calc(5.5rem + (1vw - 1.35rem) * 1.5337);
				left:calc(9rem + (1vw - 1.35rem) * 6.7485);
			}
			& a.abs_03{
				top:30px;
				right:calc(15.1rem + (1vw - 1.35rem) * 11.0429);
			}
		}
		& .retail{
			& a.abs_01{
				top:calc(1.7rem + (1vw - 1.35rem) * -0.9202);
				left:calc(3.7rem + (1vw - 1.35rem) * 2.4540);
			}
			& a.abs_02{
				top:calc(6.2rem + (1vw - 1.35rem) * 2.7607);
				right:calc(14rem + (1vw - 1.35rem) * 10.7362);
			}
			& a.abs_03{
				bottom:calc(12.3rem + (1vw - 1.35rem) * 9.5092);
				right:calc(5rem + (1vw - 1.35rem) * 3.3742);
			}
		}
	}
}
}
@media screen and (max-width:1023px){
section.top_product{
	& .grid{
		grid-template-columns:100%;
		row-gap:5rem;
		& .img_box{
			height:auto;
		& a{
			& img{
				max-width:calc(3.5rem + (1vw - 1.02rem) * 1.5432);
			}
		}
	}
		& .factory{
			& a.abs_01{
				bottom:calc(25rem + (1vw - 1.02rem) * 24.6914);
				right:calc(45rem + (1vw - 1.02rem) * 44.7531);
			}
			& a.abs_02{
				bottom:calc(12rem + (1vw - 1.02rem) * 11.5741);
				left:calc(34rem + (1vw - 1.02rem) * 33.9506);
			}
			& a.abs_03{
				bottom:calc(18rem + (1vw - 1.02rem) * 16.9753);
				right:calc(9rem + (1vw - 1.02rem) * 9.5679);
			}
		}
		& .logistics{
			& a.abs_01{
				bottom: calc(27rem + (1vw - 1.02rem) * 27.0062);
    			right: calc(20.5rem + (1vw - 1.02rem) * 20.8333);
			}
			& a.abs_02{
			    top: calc(21rem + (1vw - 1.02rem) * 23.9198);
    			left: calc(23.5rem + (1vw - 1.02rem) * 23.9198);
			}
			& a.abs_03{
				top: calc(15rem + (1vw - 1.02rem) * 17.7469);
    			right: calc(38rem + (1vw - 1.02rem) * 38.1173);
			}
		}
		& .retail{
			& a.abs_01{
				top: calc(12rem + (1vw - 1.02rem) * 14.6605);
    			left:calc(11rem + (1vw - 1.02rem) * 11.5741);
			}
			& a.abs_02{
				top: calc(22rem + (1vw - 1.02rem) * 24.6914);
    			right: calc(35rem + (1vw - 1.02rem) * 35.0309);
			}
			& a.abs_03{
			    bottom: calc(25rem + (1vw - 1.02rem) * 24.6914);
    			right: calc(14rem + (1vw - 1.02rem) * 14.6605);
			}
		}
	}
}
}
/*------------TOP NEWS-------------------------*/
section.top_news{
	& .inner{
		position:relative;
		z-index:0;
		padding:15rem 0;
		& .flex{
			justify-content:space-between;
			align-items:center;
			& p.en_ttl{
				-webkit-text-stroke: 1px #F8A415;
				text-stroke: 1px #F8A415;
			}
			& .right_box{
				width:50%;
				& h2{
					font-size:calc(2.4rem + (1vw - 1.92rem) * 0.2589);
					font-weight:bold;
					margin-bottom:2rem;
					color:var(--color-primary);
				}
				& ul{
					& li{
						margin:0;
						& a{
							position:relative;
							width:100%;
							display:inline-block;
							padding:3rem 8rem 3rem 0;
							text-decoration:none;
							color:var(--color-primary);
							border-bottom:1px solid var(--color-primary);
							transition:all ease .3s;
							& span.date{
								margin-right:2em;
							}
							&:hover{
								border-color:#F8A415;
							}
							&:before{
								position:absolute;
								content:"";
								width:5rem;
								height:1px;
								top:50%;
								right:3rem;
								background:var(--color-primary);
								transition:all ease .3s;
							}
							&:after{
								position:absolute;
								content:"";
								width:1rem;
								height:1px;
								transform:rotate(45deg);
								top:calc(50% - 4px);
								right:3rem;
								background:var(--color-primary);
								transition:all ease .3s;
							}
							&:hover{
								&:before{
									background:#F8A415;
									right:0;
								}
								&:after{
									background:#F8A415;
									right:0;
								}
							}
						}
					}
				}
			}
		}
	}
}
@media screen and (max-width:767px){
section.top_news{
	& .inner{
		padding:8rem 0;
		& .flex{
			align-items:flex-start;
			& .right_box{
				width:100%;
			}
		}
	}
}
}
/*------------TOP RECRUIT-------------------------*/
section.top_recruit{
	& .inner{
		position:relative;
		padding:5rem;
		border-radius:15px;
		overflow:hidden;
		z-index:0;
	&:before{
		position:absolute;
		content:"";
		top:0;
		left:0;
		background:url(/struct/wp-content/uploads/pixta_44662249_L.jpg) no-repeat;
		background-size:cover;
		width:100%;
		height:100%;
		z-index:-1;
	}
	&:after{
		position:absolute;
		content:"";
		top:0;
		left:0;
		background:var(--color-primary);
		opacity:80%;
		width:100%;
		height:100%;
		z-index:-1;
	}
		& .flex{
			justify-content:space-between;
			
			& .txt_box{
				width:48%;
			& h2{
				font-size:calc(2.4rem + (1vw - 1.92rem) * 0.2589);
				font-weight:bold;
				margin-bottom:2rem;
				color:#fff;
				& span{
					display:block;
					margin-top:6rem;
					font-size:calc(3.6rem + (1vw - 1.92rem) * 1.0356);
				}
			}
			& p.txt{
				color:#fff;
			}
				}
			& figure{
				width:48%;
			}
		}
		& .btn_sec{
			margin-top:8rem;
			display:flex;
			justify-content:flex-end;
			gap:3rem;
			& a:first-child{
				background:#fff;
				&:hover{
					background:var(--color-primary);
				}
			}
			& a:last-child{
				background:#F8A415;
				color:#fff;
				border-color:#F8A415;
				&:hover{
					color:#F8A415;
					background:transparent;
					&:before{
						display:none;
					}
				}
			}
		}
	}
}
@media screen and (max-width:767px){
section.top_recruit{
	& .inner{
		padding:3.5rem;
		& .flex{
				gap:3.5rem;
			& .txt_box{
				width:100%;
				}
			& figure{
				width:100%;
			}
		}
		& .btn_sec{
			margin-top:3.5rem;
			flex-direction:column;
			align-items:center;
			gap:1.5rem;
		}
	}
}
}

/*------------------------------------------
  フッターお問い合わせ
--------------------------------------------*/
section.contact_sec{
	position:relative;
	z-index:0;
	& .inner{
		width:min(1300px,93%);
		margin:0 auto;
		padding:20rem 0;
		& h2{
			color:var(--color-primary);
			text-align:center;
			font-weight:bold;
			font-size:calc(2.4rem + (1vw - 1.92rem) * 0.2589);
			position:relative;
			padding-bottom:2rem;
			&:before{
				position:absolute;
				content:"";
				left:50%;
				top:100%;
				transform:translateX(-50%);
				width:20rem;
				height:2px;
				background:var(--color-primary);
			}
		}
		& p.txt{
			margin:5rem 0 6rem;
			text-align:center;
			color:var(--color-primary);
		}
		& .btn_sec{
			text-align:center;
			& a{
				position:relative;
				display:inline-block;
				width:100px;
				height:100px;
				border:1px solid var(--color-primary);
				border-radius:50vw;
				transition:all ease .5s;
				&:before{
					position:absolute;
					content:"";
					top:50%;
					left:50%;
					transform:translate(-50%,-50%);
					height:1px;
					width:30%;
					background:var(--color-primary);
				}
				&:after{
					position:absolute;
					content:"";
					top:calc(50% - 4px);
					right:33px;
					transform:rotate(45deg);
					height:1px;
					width:1rem;
					background:var(--color-primary);	
				}
				&:hover{
					transform:rotate(360deg);
					background:var(--color-primary);
					&:before{
						background:#fff;
					}
					&:after{
						background:#fff;
					}
				}
			}
		}
	}
	& .contact_catch{
	    position: absolute;
    	top: 50%;
    	left: 50%;
    	transform: translate(-50%, -50%);
    	align-items: center;
    	color: transparent;
		-webkit-text-stroke: 1px #ffefc1;
				text-stroke: 1px #ffefc1;
    	display: flex;
    	overflow: hidden;
    	width: 100%;
    	white-space: nowrap;
    	z-index: -1;
		& ul {
  			animation: flowing 180s linear infinite;
  			transform:translateX(100%);
  			margin: 0;
  			padding: 0;
			& li{
 				display: inline-block;
 				padding-right: .5em;
				margin:0;
				font-size: calc(15rem + (1vw - 1.92rem) * 5.8252);
    			font-family: "Poppins", sans-serif !important;
    			font-style: italic;
    			font-weight: 900;
    			line-height: 1;
			}
		}
	}
}
@media screen and (max-width:767px){
section.contact_sec{
	position:relative;
	z-index:0;
	& .inner{
		padding:10rem 0;
		& p.txt{
			margin:5rem 0 6rem;
			text-align:center;
			color:var(--color-primary);
		}
	}
}
}
/*------------------------------------------
  下層設定
--------------------------------------------*/
.page_inner {
    padding:calc(10rem + (1vw - 1.92rem) * 2.5890) 0 calc(15rem + (1vw - 1.92rem) * 4.5307);/*10-6(375) 15-8(375)*/
}
.page-header{
	position:relative;
	z-index:0;
}
.page-header:before{
	position:absolute;
	content:"";
	z-index:-1;
	background:rgb(4 10 20 / 85%);
	width:100%;
	height:100%;
	top:0;
	left:0;
}
body .page-header{
	background:url(/struct/wp-content/uploads/eye.png) no-repeat;
	background-size:cover;
	background-position:top 50% left 50%;
}
h1.page-header-title{
    font-size: calc(4.8rem + (1vw - 1.92rem) * 1.5534);
    font-weight: bold;
    line-height: 1.4;
    margin: 0;
    color: #fff;
}
@media screen and (min-width:1200px){
.site-body{
	padding:0;
}
}
.site-body {
    padding:0;
}
.kasou_page {
	padding:15rem 0 0;
	& section{
		& .inner{
			width:min(1100px,93%);
			margin:0 auto;
		}
			& h2{
				text-align:center;
				font-size:3.6rem;
				font-weight:bold;
				position:relative;
				margin-bottom:5rem;
				& span{
					display:block;
					color:var(--color-primary);
					font-size:2rem;
				}
			}
		&:not(:first-of-type){
			margin-top:10rem;
		}
	}
}
@media screen and (max-width:767px){
.kasou_page {
	padding:6rem 0 0;
	& section{
			& h2{
				font-size:2.4rem;
				margin-bottom:3.5rem;
				& span{
					font-size:1.8rem;
				}
			}
		&:not(:first-of-type){
			margin-top:6rem;
		}
	}
}
}
/*------------------------------------------
  エスエステクナについて
--------------------------------------------*/
.philosophy_sec{
	& p.center{
		padding:3rem;
		background:#f9f9f9;
		& b{
			font-size:150%;
			display:block;
		}
	}
	& p.mt{
		margin-top:1.5em;
	}
}
section.para_sec{
	padding:10rem 0 0;
	position:relative;
	z-index:0;
	& h2{
		color:#fff;
	}
	&:before{
		position:absolute;
		content:"";
		background:url(/struct/wp-content/uploads/pixta_87072205_L.jpg) no-repeat;
		background-size:cover;
		background-attachment:fixed;
		width:100%;
		height:50%;
		top:0;
		left:0;
		z-index:-1;
	}
	&:after{
		position:absolute;
		content:"";
		background:rgba(0 0 0 / 50%);
		top:0;
		left:0;
		width:100%;
		height:50%;
		z-index:-1;
	}
	& .flex{
		width:min(1100px,93%);
		margin:10rem auto 0;
		padding:5rem;
		border-radius:15px;
		background:#f9f9f9;
		align-items:center;
		justify-content:space-between;
		& figure{
			width:48%;
		}
		& .txt_box{
			width:48%;
			& p.txt.mt{
				margin-top:1em;
			}
		}
	}
}
.grid.reason_grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:3rem;
	& .item{
		padding:3rem;
		background:#f9f9f9;
		& figure{
			width:100%;
			height:auto;
			aspect-ratio:3/2;
			& img{
				width:100%;
				height:100%;
				object-fit:cover;
			}
		}
		& p.ttl{
			text-align:center;
			font-size:1.8rem;
			font-weight:bold;
			margin:1.5rem 0;
			color:var(--color-primary);
		}
	}
}
section.service_sec{
	& .flex{
		justify-content:space-between;
		align-items:center;
		width:min(1520px,90%);
		margin:0 auto;
		& figure{
			width:48%;
			& img{
				width:100%;
				height:100%;
				object-fit:contain;
			}
		}
		& .txt_box{
			width:48%;
			& p.ttl{
				font-size:2.8rem;
				font-weight:bold;
				padding-bottom:2rem;
				margin-bottom:2rem;
				border-bottom:1px solid #ccc;
				color:var(--color-primary);
				& span{
					display:block;
					color:var(--color-primary);
					font-size:2rem;
				}
			}
			& .btn_sec{
				text-align:right;
				margin-top:3.5rem;
			}
		}
	}
	& .row-reverse{
		flex-direction:row-reverse;
		margin:8rem 0 0 auto;
	}
}
@media screen and (max-width:767px){
.philosophy_sec{
	& p.center{
		& b{
			font-size:130%;
		}
	}
}
section.para_sec{
	padding:6rem 0 0;
	&:before {
    	background-attachment: unset;
	}
	& .flex{
		margin:6rem auto 0;
		padding:2.5rem;
		gap:2rem;
		& figure{
			width:100%;
		}
		& .txt_box{
			width:100%;
		}
	}
}
	
.grid.reason_grid {
	grid-template-columns:100%;
	gap:2rem;
	& .item{
		padding:2rem;
		& p.ttl{
			font-size:1.6rem;
		}
	}
}
section.service_sec{
	& .flex{
		width:95%;
		gap:2rem;
		& figure{
			width:100%;
			height:20rem;
		}
		& .txt_box{
			width:100%;
			padding-left:5%;
			& p.ttl{
				font-size:2rem;
				padding-bottom:1.5rem;
				margin-bottom:1.5rem;
				& span{
					font-size:1.6rem;
				}
			}
			& .btn_sec{
				text-align:center;
			}
		}
	}
	& .row-reverse{
		margin:5rem 0 0 auto;
		& .txt_box{
			padding:0 5% 0 0;
		}
	}
}
}

/*------------------------------------------
  会社概要
--------------------------------------------*/
.grt_grid {
    display: grid;
    grid-template-columns:40% 55%;
	align-items:center;
    gap: 5%;
	row-gap:2rem;
	& p.ttl{
		font-size:2.4rem;
		font-weight:bold;
		margin-bottom:2rem;
	}
	& p.name{
		text-align:right;
		margin-top:1em;
	}
}
.entry-body table{
	& th, td{
		border:3px solid #fff;
		background:#f9f9f9;
		padding:2rem;
	}
	& th{
		width:25%;
	}
}
ul.factory_list {
		& li{
			justify-content:space-between;
			& figure{
				width:48%;
			}
			& table{
				width:48%;
				margin:0;
			}
			&:not(:first-child){
				margin-top:5rem;
			}
		}
}
@media screen and (max-width:767px){
.grt_grid {
    grid-template-columns: 100%;
    gap: 2rem;
	& p.ttl{
		font-size:2rem;
	}
}
.entry-body table{
	& th, td{
		padding:1.5rem;
	}
	& th{
		width:30%;
	}
}
ul.factory_list {
		& li{
			gap:2rem;
			& figure{
				width:100%;
			}
			& table{
				width:100%;
			}
			&:not(:first-child){
				margin-top:3rem;
			}
		}
}
	table.responsive{
		& th,td{
			display:block;
			width:100%;
			text-align:left;
		}
		& th p{
			font-weight:bold;
		}
	}
}

/*------------------------------------------
  採用情報
--------------------------------------------*/
ul.recruit_list{
	& li{
		width:100%;
		height:25rem;
		margin-top:5rem;
		& a{
			display:block;
			width:100%;
			height:100%;
			position:relative;
			text-decoration:none;
			box-shadow:0 0 15px -15px #000;
			z-index:0;
			& img{
				width:100%;
				height:100%;
				object-fit:cover;
				object-position:top 50% left 50%;
				position:absolute;
				top:0;
				left:0;
			}
			& span.txt_box{
				display:block;
				position:absolute;
				top:50%;
				left:5%;
				width:50%;
				translate:0 -50%;
				z-index:1;
				& p{
					color:#222;
					font-size:2rem;
					text-decoration:none;
					&.comment{
						margin-top:1.5em;
					}
				}
			}
		}
	}
}
div#entry_form{
	padding-top:10rem;
	margin-top:-10rem;
}
.image_txt{
	text-align:center;
	line-height:2;
	font-size:2rem;
}
@media screen and (max-width:767px){
.image_txt{
	font-size:1.6rem;
}
ul.recruit_list{
	& li{
		height:auto;
		& a{
			& img{
				position:relative;
				height:20rem;
				object-position:top 50% left 80%;
			}
			& span.txt_box{
				position:relative;
				padding:2rem;
				top:0;
				left:0;
				width:100%;
				translate:0 0;
				& p{
					font-size:1.6rem;
				}
			}
		}
	}
}
}
/*------------------------------------------
  インタビュー
--------------------------------------------*/
ul.interview_list{
	& li{
		width:100%;
		margin-top:15rem;
		& div[id]{
			margin-top:-10rem;
			padding-top:10rem;
		}
		& .box{
			display:block;
			width:100%;
			height:25rem;
			position:relative;
			text-decoration:none;
			box-shadow:0 0 15px -15px #000;
			z-index:0;
			& img{
				width:100%;
				height:100%;
				object-fit:cover;
				object-position:top 50% left 50%;
				position:absolute;
				top:0;
				left:0;
			}
			& .txt_box{
				display:block;
				position:absolute;
				top:50%;
				left:5%;
				width:50%;
				translate:0 -50%;
				z-index:1;
				& p{
					color:#222;
					font-size:2rem;
					text-decoration:none;
					&.comment{
						margin-top:1.5em;
					}
				}
			}
		}
		& .flex{
			margin-top:5rem;
			justify-content:space-between;
			& figure{
				width:48%;
			}
			& .txt_box{
				width:48%;
				& dl{
					&:not(:first-of-type){
						margin-top:3rem;
					}
					& dt{
						padding-bottom:1rem;
						border-bottom:1px solid var(--color-primary);
						margin-bottom:1rem;
					}
				}
			}
		}
	}
}


@media screen and (max-width:767px){
ul.interview_list{
	& li{
		margin-top:5rem;
		& .box{
			height:auto;
			& img{
				position:relative;
				height:20rem;
				object-position:top 50% left 80%;
			}
			& .txt_box{
				position:relative;
				padding:2rem;
				top:0;
				left:0;
				width:100%;
				translate:0 0;
				& p{
					font-size:1.6rem;
				}
			}
		}
		& .flex{
			margin-top:5rem;
			justify-content:space-between;
			& figure{
				width:100%;
			}
			& .txt_box{
				width:100%;
				margin-top:2rem;
				& dl{
					&:not(:first-of-type){
						margin-top:3rem;
					}
				}
			}
		}
	}
}
}
/*------------------------------------------
  商品
--------------------------------------------*/
.product_grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:3rem;
	& a{
		& figure{
			
		}
		& p.ttl{
			text-align:center;
			font-size:2.4rem;
			font-weight:bold;
			margin-top:2rem;
			& b{
				font-size:80%;
				display:block;
			}
		}
	}
}

/*------------------------------------------
  共通ページ
--------------------------------------------*/
.commn_page{
	& ul{
		& li{
			&:not(:first-child){
				margin-top:10rem;
			}
			& h3{
				font-size:2.4rem;
				font-weight:bold;
				margin-bottom:2rem;
				padding-bottom:1.5rem;
				border-bottom:1px solid var(--color-primary);
			}
			& .grid{
				display:grid;
				grid-template-columns:repeat(3,1fr);
				gap:3%;
				row-gap:2rem;
				& a{
					text-decoration:unset;
					& figure{
						width:100%;
						height:auto;
						aspect-ratio:3/2;
						& img{
							width:100%;
							height:100%;
							object-fit:cover;
						}
					}
					& p.ttl{
						font-weight:bold;
					}
				}
			}
		}
	}
}
@media screen and (max-width:767px){
.commn_page{
	& ul{
		& li{
			&:not(:first-child){
				margin-top:6rem;
			}
			& h3{
				font-size:2rem;
			}
			& .grid{
				display:grid;
				grid-template-columns:repeat(2,1fr);
				gap:5%;
				row-gap:1.5rem;
			}
		}
	}
}
}