@charset "UTF-8";
/*
Theme Name: 双葉工業テーマ
Theme URI: https://xeory.jp/extension
Template: xeory_extension
Author: WorldUtility
Version: 1.0.0
*/

/* Fonts */
.halogen{
	font-family: "halogen", sans-serif;
	font-weight:400;
}
.halogen.bold{
	font-weight:900 !important;
}


/* RESET*/
p,h1,h2,h3,h4,h5,h6,li,span,small,em,dt,dd,th,td{
	line-height:1.6;
	letter-spacing:0.025em;
	padding:0;
	margin:0;
}
ul,ol,dl{
  padding:0;
  margin:0;
}

body{
	color:#FFF;
	background:#444444;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight:500;
	overflow-x:hidden;
}

a,a:hover{
	color:#FFF;
	text-decoration:none;
}

/* COMMON */
.center{
	text-align:center;
}
.right{
	text-align:right;
}

.flex{
	display:flex;
	flex-wrap:wrap;
}
.jc-sb{
	justify-content:space-between;
}
.jc-center{
	justify-content:center;
}
.al-center{
	align-items:center;
}
.al-end{
	align-items:flex-end;
}
.fd-row-r{
	flex-direction:row-reverse;
}
.fd-col-r{
	flex-direction:column-reverse;
}

.ps-re{
	position:relative;
}
.ps-ab{
	position:absolute;
}
.ps-fix{
	position:fixed;
}
.ps-st{
	position:sticky;
}

.vert{
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
}

.wrap,
body.home .wrap{
	width: 68.75vw;
  min-width: 1240px;
	padding:0 20px;
	margin:0 auto;
}
.wrap.wide,
body.home .wrap.wide{
	max-width:89.58vw;
}


/* HEADER */
header#header{
	position:fixed;
	top:0;
	left:0;
	z-index:999;
	background:transparent;
	width:100%;
	padding:0 20px;
	transition:all .3s ease;
	height:90px;
}
header#header.scroll{
	background:rgba(0,0,0,.8);
}
.header-wrap{
	height:100%;
	display:flex;
	align-items:center;
	gap:40px;
}
.header__logo--link--img{
	aspect-ratio:131/43;
	width:131px;
}
.header__menu--lists{
	display:flex;
	gap:30px;
}
.header__menu--list{
	position:relative;
}
.header__menu--list--num{
	font-size:10px;
	line-height:1;
	margin-bottom:10px !important;
}
.header__menu--list--text{
	font-size:14px;
	line-height:1;
}
.header__menu--list--link{
	color:#CCCCCC !important;
}
.header__menu--list.current .header__menu--list--link,
.header__menu--list--link:hover{
	color:#FFFFFF !important;
}
.header__contactbtn{
	position:absolute;
	top:0;
	right:0;
}
.header__contactbtn--link{
	width:260px;
	height:90px;
	border:1px solid #CCCCCC;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:12px;
	color:#CCCCCC !important;
	overflow:hidden;
	position:relative;
}
.header__contactbtn--link:hover{
	color:#FFF !important;
}
.header__contactbtn--link::before{
	content:'';
	position:absolute;
	width:calc(100% + 60px);
	height:100%;
	clip-path:polygon(0 0, calc(100% - 60px) 0, 100%, 100%, 0 100%);
	z-index:1;
	background:rgba(0,0,0,.4);
	transition:all .6s ease;
	top:0;
	left:0;
	transform:translateX(-101%);
}
.header__contactbtn--link:hover::before{
	transform:translateX(0);
}
.header__contactbtn--link--text{
	font-size:20px;
	z-index:2;
	position:relative;
}
.header__contactbtn--link--anker,
.header__contactbtn--link--anker--img{
	aspect-ratio:1/2;
	width:15px;
	line-height:1;
	z-index:2;
	position:relative;
}

.header__menu--sublist{
	position:absolute;
	top:100%;
	left:0;
	-webkit-clip-path:inset(0 0 0 100%);
	clip-path:inset(0 0 0 100%);
	translate-origin:top left;
	transition:all .3s ease-in-out;
	padding-top:20px !important;
	background:transparent;
}
.header__menu--list:hover .header__menu--sublist{
	-webkit-clip-path:inset(0);
	clip-path:inset(0);
}
.header__menu--sublist--list{
	background:rgba(0,0,0,.8);
}
.header__menu--sublist--list a{
	padding:14px;
	display:block;
}
.header__menu--sublist--list a:hover{
	color:#000 !important;
	background:rgba(255,255,255,.7);
}


/* ASIDE INSTAGRAM */
.aside__instagram{
	position:fixed;
	top:50%;
	right:5.2vw;
	z-index:997;
	transform:translate(100%,-50%);
	display:flex;
	flex-direction:column;
	gap:15px;
	align-items:center;
}
.aside__instagram--icon--img{
	aspect-ratio:1/1;
	width:30px;
	transition:all .3s ease;
}
.aside__instagram--link:hover .aside__instagram--icon--img{
	transform:scale(1.2);
}
p.copyright{
	font-size:12px;
	color:#CCCCCC;
	pointer-events:none;
}


/* ASIDE NUMBER MENU */
.aside__nummenu{
	position:fixed;
	top:50%;
	left:5.2vw;
	z-index:997;
	transform:translate(-100%,-50%);
}
.aside__nummenu--lists{
	display:flex;
	flex-direction:column;
	gap:15px;
	align-items:center;
}
.aside__nummenu--list--link{
	color:#CCCCCC;
}
.aside__nummenu--list--link:hover{
	color:#FFF;
}
.aside__nummenu--list.current .aside__nummenu--list--link{
	color:#FFF;
}
.aside__nummenu--list--link--num{
	font-size:14px;
}


/* ASIDE RECRUIT */
.aside__recruit{
	position: fixed;
    bottom: 50px;
    right: 50px;
    z-index: 5;
}
.aside__recruit img{
	max-width:400px;
}


/* FOOTER */
.footer-contact{
	background:#FFF;
}
.footer-contact--text{
	color:#444444;
	font-size:7vw;
	line-height:5.9vw !important;
	text-align:center;
	line-height:1;
}
.recruit-page .footer-contact--text{
	color:#1478EB;
}
.footer-contact__linkbox{
	padding:40px 0 60px;
	text-align:center;
}
.footer-contact__linkbox--link{
	position:relative;
	display:inline-flex;
	width:260px;
	height:90px;
	color:#444444;
	border:1px solid #444444;
	justify-content:center;
	align-items:center;
	gap:10px;
	overflow:hidden;
}
.footer-contact__linkbox--link:hover{
	color:#444444;
}
.footer-contact__linkbox--link::before{
	position:absolute;
	top:0;
	left:-200px;
	content:'';
	width:200px;
	height:100%;
	clip-path:polygon(0 0, 170px 0, 100% 100%, 30px 100%);
	background:linear-gradient(to left, transparent, #CCC);
	transition:all .6s ease;
}
.footer-contact__linkbox--link:hover::before{
	left:100%;
}
.footer-contact__linkbox--link--text{
	font-size:20px;
	z-index:2;
	position:relative;
}
.footer-contact__linkbox--link--icon,
.footer-contact__linkbox--link--icon--img{
	aspect-ratio:1/2;
	width:15px;
	line-height:1;
	z-index:2;
	position:relative;
}

footer#footer{
	border:0;
	background:#444444;
}
#footer .wrap {
    padding: 60px 20px;
}
.footer__flex{
	gap:40px;
}
.footer__logo--img{
	aspect-ratio:131/43;
	width:131px;
}
.footer__menu{
	width:100%;
}
.footer__menu--lists{
	display:flex;
	gap:30px;
	justify-content: center;
}
.footer__menu--list--num{
	font-size:10px;
	line-height:1;
	margin-bottom:10px !important;
}
.footer__menu--list--text{
	font-size:14px;
	line-height:1;
}
.footer__menu--list--link{
	color:#CCCCCC !important;
}
.footer__menu--list.current .footer__menu--list--link,
.footer__menu--list--link:hover{
	color:#FFFFFF !important;
}
.footer__menu--sublist{
	margin-top:12px;
}
.footer__menu--sublist a{
	color:#CCCCCC !important;
}
.footer__menu--sublist--text{
	font-size:12px;
}
.footer-partnership{
	margin-top:40px !important;
	text-align:center;
}
.footer-partnership img{
	background:#FFF;
	padding: 4px 6px;
	max-width:160px;
}
.footer-privacylink{
	margin:20px 0 30px !important;
	text-align:center;
}
.footer-privacylink a{
	color:#FFF;
	font-family: "halogen", sans-serif;
	font-size:14px;
	text-decoration:underline;
	text-decoration-color:#FFF;
	text-underline-offset:4px;
}



/* PARTS */
.common-section{
	position:relative;
	padding:200px 0;
}


.viewmore--link{
	display:inline-flex;
	width:176px;
	height:176px;
	border:1px solid #FFF;
	background:#444444;
	flex-direction:column;
	justify-content:center;
	padding:24px;
	text-align: left;
}
.viewmore--link--text{
	font-size:28px;
	line-height:1.2;
	margin-bottom:8px;
}
.viewmore--link--anker{
	position:relative;
	height:30px;
}
.viewmore--link--anker--img{
	width:15px;
	aspect-ratio:1/2;
	position:absolute;
	top:0;
	left:0;
	transition:all .3s ease;
	transform:translateX(0);
}
.viewmore--link:hover .viewmore--link--anker--img{
	left:100%;
	transform:translateX(-100%);
}


.common-bg__corn{
	line-height:1;
	pointer-events:none;
	z-index:-1;
	position:absolute;
}
.common-bg__corn img{
	vertical-align:top;
}

.common-bg__corn--tl01{
	top:0;
	left:0;
	width:36.45vw;
}
.common-bg__corn--br01{
	bottom:0;
	right:0;
	width:56.25vw;
}

.common-left-box,
.common-right-box{
	max-width:800px;
}
.common-right-box{
	margin-left:auto;
}

.common-section-title{
	margin-bottom:50px;
}
.common-section-title--jpline{
	display:flex;
	align-items:flex-end;
	gap:12px;
	margin-bottom:24px;
}
.common-section-title.center .common-section-title--jpline{
	justify-content:center;
}
.common-section-title--jpline--slash,
.common-section-title--jpline--slash img{
	width:20px;
	height:20px;
	vertical-align:top;
	line-height:1;
}
.common-section-title--jpline--text{
	font-size:16px;
	font-weight:900;
	color:#CCCCCC;
}
.common-section-title--enline{
	font-size:46px;
	color:#CCCCCC;
}

.common-section--lead{
	font-size:30px;
	font-weight:900;
	line-height:2.2;
	margin-bottom:1.2em;
}
.common-section--lead--mt{
	margin-top:100px;
}
.common-section--text{
	font-size:17px;
	line-height:2;
}


/* TOP */
.top-kv{
	background-image:url('img/top/bg_kv.png');
	background-size:cover;
	background-position:center;
	position:relative;
}
.top-kv--wrap{
	width:78.75vw !important;
}
.top-kv__logobox{
	text-align:center;
	padding-top: 22vh;
	position:relative;
	z-index:2;
}
.top-kv--text{
	padding:80px 0 140px;
	font-size:14px;
	line-height:2.4;
	position:relative;
	z-index:2;
}
.top-kv__imgbox{
	z-index: 1;
    width: 100%;
    bottom: 0;
    left: 0;
}
.top-kv--ankerbottom{
	position:absolute;
	bottom:30px;
	left:0;
	width:100%;
	text-align:center;
	z-index:2;
}
.top-kv--ankerbottom--img{
	aspect-ratio:2/1;
	width:30px;
	animation:ankerfloat infinite 2s;
}
@keyframes ankerfloat{
	0%{
		transform:translateY(0);
	}
	50%{
		transform:translateY(50px);
	}
	100%{
		transform:translateY(0);
	}
}

.top-sec01__corn01{
	top:0;
	right:0;
	height:100%;
}
.top-sec01__corn01 img{
	height:100%;
	object-fit: cover;
  object-position: bottom right;
}

.top-title{
	text-align:center;
	margin-bottom:50px;
}
.top-title__jpline{
	display:flex;
	justify-content:center;
	align-items:flex-end;
	gap:12px;
	margin-bottom:24px;
}
.top-title__jpline--num{
	font-size:40px;
	line-height:1;
}
.top-title__jpline--slash,
.top-title__jpline--slash img{
	width:20px;
	height:20px;
	vertical-align:top;
	line-height:1;
}
.top-title__jpline--text{
	font-size:16px;
	font-weight:900;
}
.top-title__enline{
	font-size:80px;
}

.top-sec--maintitle{
	text-align:center;
	font-size:30px;
	font-weight:900;
	line-height:2.2;
	margin-bottom:1em;
}
.top-sec--maintext{
	text-align:center ;
	font-size:14px;
	line-height:2.4;
	margin-bottom:50px;
}

.top-sec01__flex{
	gap:40px;
}
.top-sec01__flex--instagram{
	display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
}


.top-sec02__corn01{
	top:0;
	left:0;
	width:63.54vw;
}
.top-sec02--mov--video{
	clip-path: polygon(0 0, 50% 0, 0 100%);
}

.top-works--video{
	max-width:900px;
	margin:0 auto 60px;
	overflow:hidden;
}
.top-works--video video{
	aspect-ratio:16/9;
	width:100%;
}
.top-works__links{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}
.top-works__link{
	width:calc(33.3% - 20px);
	background-size:cover;
	background-position:center;
	padding:48px 24px;
}
.top-works__link.n1{
	background-image:url('img/top/bg_s2_btn01.png');
}
.top-works__link.n2{
	margin-top:50px;
	background-image:url('img/top/bg_s2_btn02.png');
}
.top-works__link.n3{
	margin-top:100px;
	background-image:url('img/top/bg_s2_btn03.png');
}
.top-works__link--title{
	font-size:40px;
}
.top-works__link--jpline{
	display:flex;
	align-items:flex-end;
	gap:12px;
	margin-bottom:250px;
}
.top-works__link--jpline--text{
	font-size:16px;
	font-weight:900;
}
.top-works__link--jpline--slash,
.top-works__link--jpline--slash img{
	width:20px;
	height:20px;
	vertical-align:top;
}

.top-sec03__corn01{
	top:0;
	left:0;
	width:63.54vw;
}
.top-sec03__corn02{
	bottom:0;
	right:0;
	width:36.45vw;
}

.top-sec04__corn01{
	top:0;
	right:0;
	height:100%;
}
.top-sec04__corn01 img{
	height:100%;
	object-fit: cover;
  object-position: bottom right;
}

.top-sec05__corn01{
	top:0;
	right:0;
	height:100%;
	text-align: right;
}
.top-sec05__corn01 img{
	height:100%;
}

.top-sec05__title{
	margin-bottom:50px;
}
.top-topics__flex{
	flex-direction:row-reverse;
}
.top-topics__flex--cont{
	width:calc(100% - 300px);
}

.topics__article{
	padding:20px;
	border-bottom:1px solid #CCCCCC;
}
.topics__article--link{
	display:flex;
	justify-content:space-between;
}
.topics__article--thumb{
	width:240px;
	height:160px;
}
.topics__article--thumb img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}
.topics__article--anker{
	width:20px;
	display:flex;
	align-items:center;
}
.topics__article--cont{
	width:calc(100% - 360px);
	display:flex;
	flex-direction:column;
	align-items:left;
	justify-content:center;
	gap:24px;
}
.topics__article--cont--meta{
	display:flex;
	gap:24px;
}
.topics__article--date,
.topics__article--cat,
.topics__article--title{
	font-size:14px;
}
.topics__article--title{
	width:100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}


/* COMMON KEY VISUAL */
.common-kv{
	position: relative;
	padding:250px 0 600px;
}
.common-kv__corn--top{
	top:0;
	left:0;
	width:36.45vw;
}

.common-kv__title--jpline{
	display:flex;
	align-items:flex-end;
	gap:12px;
	margin-bottom:24px;
}
.common-kv__title--jpline--num{
	font-size:40px;
	line-height:1;
}
.common-kv__title--jpline--slash,
.common-kv__title--jpline--slash img{
	width:20px;
	height:20px;
	vertical-align:top;
	line-height:1;
}
.common-kv__title--jpline--text{
	font-size:16px;
	font-weight:900;
	color:#CCCCCC;
}
.common-kv__enline{
	font-size:110px;
	color:#CCCCCC;
}
.common-kv__enline.halogen.bold{
	font-weight:500 !important;
	letter-spacing: -0.03em;
}

.common-kv__corn--head{
	top:0;
	right:0;
	height:100%;
}
.common-kv__corn--head img{
	object-fit: cover;
  object-position: top left;
  width: 100%;
	height:100%;
}

.common-kv--text{
	font-size:18px;
	line-height:1.8;
}


/* ABOUT */
.about-kv__lists{
	display:flex;
	justify-content:flex-end;
	align-items:center;
}
.about-kv__list--link{
	font-size:20px;
	font-weight:900;
}
.about-kv__list.current .about-kv__list--link{
	opacity:0.2;
	pointer-events:none;
}
.about-kv__lists--devider{
	width:20px;
	margin:0 10px;
}


/* CONCEPT */
.concept-sec01__corn{
	top:0;
	left:0;
	width:56.25vw;
}
.concept-sec03__corn{
	top:0;
	left:0;
	width:56.25vw;
}
.concept-sec04__corn{
	bottom:0;
	right:0;
	width:47.8vw;
}

.concept-sec01,
.concept-sec02{
	padding:100px 0;
}
.concept-message__signature{
	margin-top:50px;
	font-size:20px;
	line-height:2;
}

.concept-middle-section {
	margin-top: 50px;
	padding:50px 0;
}

.concept-middle-section .common-section-title--jpline {
	justify-content: center;
}

.concept-middle-section__content {
	margin-bottom: 50px;
	text-align: center;
}

.concept-middle-section__content.company-policy-1 {
	margin-bottom: 100px;
}

.concept-middle-section__content__grid-box {
	display: grid;
}

.company-policy-1 .concept-middle-section__content__grid-box {
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.company-policy-1 .concept-middle-section__content__grid-box__word-box {
	font-size: clamp(20px, 3vw, 46px);
	color: #1478EB;
	font-weight: bold;
	text-align: center;
	position: relative;
	z-index: 5;
}

.company-policy-1 .concept-middle-section__content__grid-box__word-box::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #fff;
	transform: skew(-45deg);
	background-color: #fff;
	z-index: -1;
}

.company-policy-2 .common-section--lead {
	font-size: clamp(18px, 2vw, 30px);
}

.behavioral-guidelines .concept-middle-section__content__grid-box {
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.behavioral-guidelines .concept-middle-section__content__grid-box__word-box {
	border: 1px solid #fff;
	position: relative;
	font-weight: bold;
	text-align: center;
	z-index: 5;
	line-height: 4;
	font-size: clamp(16px, 2vw, 20px);
	overflow: hidden;
}

.behavioral-guidelines .concept-middle-section__content__grid-box__word-box::before,
.behavioral-guidelines .concept-middle-section__content__grid-box__word-box::after {
	position: absolute;
	display: block;
}

.behavioral-guidelines .concept-middle-section__content__grid-box__word-box::before {
    content: '';
    width: 1px;
    height: 100%;
    background-color: #fff;
    transform: rotate(45deg);
    top: -20px;
    left: 20px;
}
.behavioral-guidelines .concept-middle-section__content__grid-box__word-box::after {
    content: '';
    width: 1px;
    height: 100%;
    background-color: #fff;
    transform: rotate(45deg);
    bottom: -20px;
    right: 20px;
}

.last-word .concept-middle-section__content__grid-box {
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(10px, 2vw, 30px);
}

.last-word .concept-middle-section__content__grid-box__word-box {
	position: relative;
	border: 1px solid #fff;
	font-weight: bold;
	text-align: center;
	line-height: 3;
	font-size: clamp(14px, 2vw, 18px);
	background-color: #444;
	z-index: 5;
}

.last-word .concept-middle-section__content__grid-box__word-box:not(:last-child)::after {
    content: '';
    position: absolute;
    width: 31px;
    height: 20px;
    top: 50%;
    right: 0;
    transform: translate(100%, -50%);
    background: #fff;
	z-index: -1;
}


/* COMPANY */
.company-sec01__flex--cont{
	width:calc(100% - 380px);
	max-width:800px;
}

.common-listbox{
	padding:50px 0;
	border-top:1px solid #707070;
}
.common-listbox:last-of-type{
	border-bottom:1px solid #707070;
}

.common-dot-title{
	position:relative;
	font-size:20px;
	font-weight:bold;
	color:#CCCCCC;
	margin-bottom:1.2em;
	padding-left:1.5em;
}
.common-dot-title::before{
	content:'';
	width:10px;
	height:10px;
	position:absolute;
	background:#CCCCCC;
	top:12px;
	left:0;
	border-radius:50%;
}
.common-listbox--text{
	font-size:18px;
}
.common-listbox--wwbox{
	font-size:18px;
	color:#FFF;
}
.common-listbox--wwbox>*:not(:last-child){
	margin-bottom:1em;
}
.common-listbox--wwbox a{
	color:#FFF;
	font-weight:bold;
	text-decoration:underline;
}

.company-sec02__corn{
	top:0;
	left:0;
	width:56.25vw;
}

.company-clients{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:60px;
	margin-bottom:150px;
}
/*
.company-client a{
	pointer-events:none;
}
*/

.company-partnerbanner{
	margin-top:30px;
}
.company-partnerbanner img{
	background:#FFF;
	padding: 4px 6px;
}

.company-sec02 .common-section-title--enline span{
	white-space:wrap;
}
.company-evaluations{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:60px;
	padding:40px;
	border-top:1px solid #FFF;
}
.company-evaluations:last-of-type{
	border-bottom:1px solid #FFF;
}
.company-evaluation{
	display:flex;
	justify-content:space-between;
}
.company-evaluation__img{
	width:200px;
}
.company-evaluation__cont{
	width:calc(100% - 240px);
}



/* HISTORY */
.history-bg__corn{
	top:28%;
	left:0;
	width:71.875vw;
}
.history-title{
	margin:0 auto;
	max-width:300px;
}
.history-title .common-section-title--enline{
	width:100%;
}
.timeline{
	position:relative;
}
.timeline::before{
	content:'';
	position:absolute;
	top:44px;
	left:calc(50% - 1.5px);
	height:calc(100% - 44px);
	width:0;
	border-right:3px dashed #FFF;
}
.timeline--li{
	position:relative;
	margin-bottom:10px;
}
.timeline--li::before{
	content:'';
	width:16px;
	height:16px;
	position:absolute;
	border-radius:50%;
	background:#FFF;
	top:44px;
}
.timeline--li::after{
	content:'';
	width:105px;
	height:1px;
	background:#FFF;
	position:absolute;
	top:50px;
}
.timeline--right{
	margin-left:50%;
	padding-left:110px;
}
.timeline--left{
	margin-right:50%;
	padding-right:110px;
}
.timeline--right::before{
	left:-8px;
}
.timeline--left::before{
	right:-8px;
}
.timeline--right::after{
	left:0;
}
.timeline--left::after{
	right:0;
}
.timeline--date{
	font-size:26px;
	font-weight:900;
	margin-bottom:20px;
}
.timeline--text{
	font-weight:bold;
	color:#CCCCCC;
}
.timeline--left .timeline--date,
.timeline--left .timeline--text{
	text-align:right;
}
.timeline--img{
	width:100%;
	position:relative;
	margin-top:20px;
}
.timeline--right .timeline--img{
	text-align:right;
}
.timeline--img::before{
	content:'';
	width:120px;
	height:120px;
	position:absolute;
	top:10px;
	background-image:url('img/history/img-line.png');
	background-size:contain;
	background-repeat:no-repeat;
}
.timeline--right .timeline--img::before{
	left:calc(-100% - 120px);
}
.timeline--left .timeline--img::before{
	right:calc(-100% - 120px);
}


/* OFFICE */
.office-bg--tr01{
	width:58.85vw;
	top:0;
	right:0;
}
.office-sec01{
	overflow:hidden;
}

.office-box:nth-of-type(1){
	margin-top:120px;
}
.office-box{
	margin-bottom:100px;
	position:relative;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:40px 20px;
}
.office-box:not(:last-of-type){
	padding-bottom:80px;
	border-bottom:1px solid #FFF;
}

.office-address{
	display:flex;
	align-items:flex-end;
	gap:60px;
}
.office-address--texts {
    min-width: 480px;
}


/* SUSTAINABILITY */
.sustainability-sec01--bg{
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.sustainability-sec01--bg img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center left;
}
.sustainability-sec01--box{
	max-width:500px;
	margin-left:auto;
}
.sustainability-sec01--cont .common-dot-title{
	margin-top:60px;
}

.sustainability-sec02{
	padding:120px 0;
}
.sustainability-sec02--bg{
	top:20%;
	right:0;
	height:80%;
	width:40vw;
}
.sustainability-sec02--bg img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center left;
}

.sustainability-sec03--bg{
	top:0;
	left:0;
	width:56.25vw;
}

.carbon-graph{
	margin:60px 0;
}
.carbon-graph .gr-popup{
	transform-origin:center;
	transition:all .8s ease;
	opacity:0;
	transform:scaleX(0);
}
.carbon-graph.scrollin .gr-popup{
	opacity:1;
	transform:scaleX(1);
}
.carbon-graph .gr-graph{
	transform-origin:50% 90%;
	transition:all .8s ease;
	transform:scaleY(0);
}
.carbon-graph .gr-arrow{
	transform-origin:8% 23%;
	transition:all 2s ease;
	transform:scale(0);
}
.carbon-graph.scrollin .gr-arrow{
	transform:scale(1);
}
.carbon-graph.scrollin .gr-graph{
	transform:scaleY(1);
}
.carbon-graph.scrollin .gr-graph.n2{
	transition-delay:.4s;
}
.carbon-graph.scrollin .gr-graph.n3{
	transition-delay:.8s;
}
.carbon-graph.scrollin .gr-graph.n4{
	transition-delay:1.2s;
}
.carbon-graph.scrollin .gr-graph.n5{
	transition-delay:1.6s;
}
.carbon-graph.scrollin .gr-graph.n6{
	transition-delay:2.0s;
}

.csr-banner{
	margin-top:40px;
}


/* PRODUCT */
.product-bg__corn--middle{
	top:330px;
	right:0;
	width:56.18vw;
}
.product-bg__corn--bottom{
	bottom:0;
	right:0;
	width:56.25vw;
}

.product-car{
	position:relative;
	margin-bottom:200px;
}
.product-car>img{
	width:94%;
}
.product-car--link{
	position:absolute;
	width:103px;
	height:103px;
	border-radius:50%;
	color:#CCCCCC;
	background:#444444;
	border:3px solid #CCCCCC;
	font-size:38px;
	line-height:1;
	display:flex;
	align-items:center;
	justify-content:center;
	transform: translate(-50%,-50%);
	z-index:2;
}
/*
.product-car--link::before{
	content:'';
	width:1px;
	height:45px;
	background:#CCCCCC;
	top:99%;
	left:50%;
	position:absolute;
}
*/
.product-car--link:hover{
	transform:translate(-50%,-50%) scale(1.1);
}
.product-car--link.n1{
	top: 26%;
  left: 14%;
}
.product-car--link.n2{
	top: 60%;
  left: 1%;
}
.product-car--link.n3{
	top: 34%;
  left: 93%;
}
.product-car--link.n4{
	top: 87%;
  left: 77%;
}
.product-car--link.n5{
	top: -2%;
  left: 53.5%;
}
.product-car--link.n6{
	top: 94%;
  left: 55%;
}
.product-car--link.n7{
	top: 67%;
  left: 84%;
}
.product-car--link.n8{
	top: 4%;
  left: 35%;
}

.product-parts{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:0 16px;
}
.product-partbox{
	padding-top:120px;
}
.product-part{
	border:3px solid #CCCCCC;
	position:relative;
	padding:40px;
	height: 100%;
}
.product-part--num{
	position:absolute;
	font-size:38px;
	color:#CCCCCC;
	background:#444444;
	padding:0 30px;
	top:0;
	left:50%;
	transform:translate(-50%,-50%);
}
.product-part--title{
	text-align:center;
}
.product-part--title--text{
	display:inline-block;
	padding:14px;
	border:3px solid #FFF;
	font-size:19px;
	font-weight:bold;
	margin-bottom:45px;
	position:relative;
}
.product-part--title--text small{
	font-size:13px;
	margin-left:4px;
}
.product-part--title--text::before{
	content:'';
	width:1px;
	height:45px;
	background:#FFF;
	position:absolute;
	top:100%;
	left:50%;
}
.product-part--img{
	text-align:center;
	margin-bottom:30px;
}
.product-part--typetext{
	margin-bottom:14px;
	font-size:14px;
}
.product-part--text{
	line-height:1.7;
	font-weight:bold;
	font-size:17px;
}

.product-sec02{
	padding-top:0;
}
.product-car02{
	position:relative;
	margin-bottom:200px;
}
.product-car--link.n12{
	top: -1%;
    left: 60.5%;
}
.product-car--link.n13{
	top: 21%;
    left: 95%;
}
.product-car--link.n14{
	top: 12%;
    left: 28%;
}
.product-car02>img{
	width:100%;
	mix-blend-mode:multiply;
}
.product-car02-part--text{
	margin-top:40px;
	font-size:18px;
	line-height:2;
}


/* TECHNICAL */
.technical-box{
	margin:0 auto 200px;
}

.technical-flex{
	flex-direction:column-reverse;
	gap:40px;
}

.technical-flex--img{
	text-align:center;
}

.technical-sec01--betweenimg{
	text-align:center;
	margin-top:40px;
}


/* MACHINE */
.machine-sec01.common-section{
	padding-bottom:0;
}
.machine-sec01__corn01{
	top:18%;
	left:0;
	width:84.375vw;
	z-index: -2;
}
.machine-sec01__corn02{
	bottom:300px;
	right:0;
	width:56vw;
}

.machine-sec02__corn01{
	bottom:300px;
	right:0;
	width:56vw;
}

.machine-box:not(:last-of-type){
	margin-bottom:120px;
}

.machine-box .common-section--text{
	margin-bottom:60px;
}
.machine-box--additionaltext{
	margin-bottom:60px;
	padding:60px 0;
	border-top:1px solid #707070;
	border-bottom:1px solid #707070;
	font-size:17px;
	font-weight:bold;
}



/* RECRUIT */
body.recruit-page{
	background:#1478EB;
}

.recruit-kv img{
	width:100%;
}

.recruit-bg__corn--tl01{
	top:0;
	left:0;
	width:36.45vw;
}
.recruit-bg__corn--tl02{
	top:0;
	left:0;
	width:63.54vw;
}
.recruit-bg__corn--br01{
	bottom:0;
	right:0;
	width:56.25vw;
}
.recruit-bg__corn--br02{
	bottom:0;
	right:0;
	width:36.45vw;
}

.recruit-bg__s4{
	bottom:0;
	right:0;
	width:56.25vw;
}

.recruit-title .common-section-title--enline,
.recruit-title .common-section-title--jpline--text{
	color:#FFF;
}
.recruit-title .common-section-title--enline{
	font-size:80px;
}


.recruit-sec02{
	padding-bottom:0;
}

.recruit-jobmap{
	max-width:1320px;
	margin:0 auto;
	margin-bottom:100px;
}
.recruit-job--link{
	position:absolute;
	width:103px;
	height:103px;
	border-radius:50%;
	color:#CCCCCC;
	background:#444444;
	border:3px solid #CCCCCC;
	font-size:38px;
	line-height:1;
	display:flex;
	align-items:center;
	justify-content:center;
	transform: translate(-53px,-148px);
	z-index:2;
}
.recruit-job--link::before{
	content:'';
	width:2.5px;
	height:45px;
	background:#CCCCCC;
	top:100%;
	left:calc(50% - 1.25px);
	position:absolute;
}
.recruit-job--link:hover{
	transform:translate(-53px,-148px) scale(1.1);
}
.recruit-job--link.n1 {
    top: 31%;
    left: 50.25%;
}
.recruit-job--link.n2 {
    top: 15%;
    left: 21.15%;
}
.recruit-job--link.n3 {
    top: 9%;
    left: 41%;
}
.recruit-job--link.n4 {
    top: 10%;
    left: 64%;
}
.recruit-job--link.n5 {
    top: 18%;
    left: 83.55%;
}
.recruit-job--link.n6 {
    top: 46%;
    left: 94.45%;
}
.recruit-job--link.n7 {
    top: 65.5%;
    left: 79.55%;
}
.recruit-job--link.n8 {
    top: 73%;
    left: 62.34%;
}
.recruit-job--link.n9 {
    top: 74%;
    left: 42.75%;
}
.recruit-job--link.n10 {
    top: 67%;
    left: 22.75%;
}
.recruit-job--link.n11 {
    top: 44%;
    left: 7.14%;
}

.recruit-jobboxes{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:0 16px;
}
.recruit-jobbox{
	padding-top:120px;
}
.recruit-job{
	border:3px solid #CCCCCC;
	position:relative;
	padding:40px 30px;
	height: 100%;
}
.recruit-job--num{
	position:absolute;
	font-size:38px;
	color:#CCCCCC;
	background:#1478EB;
	padding:0 30px;
	top:0;
	left:50%;
	transform:translate(-50%,-50%);
}
.recruit-job--title{
	text-align:center;
}
.recruit-job--title--text{
	display:inline-block;
	padding:14px 26px;
	border:3px solid #FFF;
	font-size:22px;
	font-weight:bold;
	margin-bottom:45px;
	position:relative;
}
.recruit-job--title--text::before{
	content:'';
	width:1px;
	height:45px;
	background:#FFF;
	position:absolute;
	top:100%;
	left:50%;
}
.recruit-job--thumb{
	text-align:center;
	margin-bottom:30px;
}
.recruit-job--text{
	text-align:left;
	line-height:1.8;
	font-weight:bold;
	font-size:18px;
}

.recruit-sec04--text{
	font-size:14px;
	line-height:2;
	margin-bottom:100px;
}

.recruit-workers{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:flex-start;
	gap:16px;
}
.recruit-worker{
	position:relative;
	width:calc((100% - 32px) / 3);
	background-size:cover;
	background-position:top center;
	padding:40px 20px;
	padding-top:400px;
	height:630px;
}
.recruit-worker.n1{
	background-image:url('img/recruit/work01.jpg');
}
.recruit-worker.n2{
	background-image:url('img/recruit/work02.jpg');
}
.recruit-worker.n3{
	background-image:url('img/recruit/work03.jpg');
}
.recruit-worker.n4{
	background-image:url('img/recruit/work04.jpg');
}
.recruit-worker.n5{
	background-image:url('img/recruit/work05.jpg');
}
.recruit-worker.n6{
	background-image:url('img/recruit/work06.jpg');
}
.recruit-worker{
	margin-top:87px;
}
.recruit-worker:nth-of-type(3n+2){
	margin-top:187px;
}
.recruit-worker:nth-of-type(3n+3){
	margin-top:287px;
}

.recruit-worker--title{
	position:absolute;
	bottom:634px;
	left:0;
}
.recruit-worker--title--enline{
	font-size:40px;
	letter-spacing:-0.08em;
	line-height: 1;
}
.recruit-worker--title--jpline--slash{
	display:none;
}
.recruit-worker--title--jpline--text small{
	display:block;
	font-size:14px;
}
.recruit-worker--graduate{
	height:2em;
	font-size:14px;
}

.recruit-ctsec{
	margin-top:250px;
}
.recruit-ct{
	display:block;
	background:url('img/recruit/ct-back.png');
	border:4px solid #FFF;
	padding:30px;
}
.recruit-ct--hv{
	bottom:0;
	left:0;
	width:100%;
}
.recruit-ct--box{
	width:50%;
	margin-left:auto;
}
.recruit-ct--text{
	font-size:14px;
	line-height:2;
	margin-bottom:30px;
	text-align:right;
}
.recruit-ct--box .common-section-title{
	margin-bottom:0 !important;
}
.recruit-ct--box .common-section-title--enline{
	margin-bottom:0;
	font-size:70px !important;
}

.recruit-infogs{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:20px;
}
.recruit-infog.item1 {
    width:calc(100% / 2 - 10px);
}
.recruit-infog.item2 {
    width:calc(100% / 3 - 14px);
}
.recruit-infog.item3 {
    width:calc(100% / 3 * 2 - 10px);
}
.recruit-infog{
	background:#FFF;
	position:relative;
	padding:40px;
	text-align:center;
	overflow:hidden;
}
.recruit-infog::before{
	content:'';
	position:absolute;
	bottom:0;
	right:0;
	width:420px;
	height:467px;
	background:rgba(204,204,204,0.2);
	clip-path:polygon(100% 0, 100% 100%, 0 100%);
	z-index:0;
}
.recruit-infog>*{
	position:relative;
	z-index:1;
}
.recruit-infog--title{
	color:#444444;
	font-size:30px;
	font-weight:bold;
	margin-bottom:1.2em;
}
.recruit-infog--data{
	color:#1478EB;
	font-size:30px;
	font-weight:900;
	margin-bottom:24px;
}
.recruit-infog--data--number{
	font-size:100px;
	line-height: 1;
}
.recruit-infog.item1 .recruit-infog--data{
	font-size:50px;
}
.recruit-infog.item1 .recruit-infog--data--number{
	font-size:120px;
}
.recruit-infog--horbox{
	display:flex;
	align-items:center;
	gap:20px;
	justify-content:space-between;
}
.recruit-infog--adddata,
.recruit-infog--adddata02{
	display:block;
	font-size:18px;
	font-weight:bold;
	color:#1478EB;
}

.recruit-infog--img.inf12 .inf12-popup{
	transition:all .8s ease;
	transform-origin:center;
	transform:scale(0.1);
	opacity:0;
}
.recruit-infog--img.inf12.scrollin .inf12-popup{
	transform:scale(1);
	opacity:1;
}
.recruit-infog--img.inf12.scrollin .inf12-popup.n2{
	transition-delay:.4s;
}
.recruit-infog--img.inf12.scrollin .inf12-popup.n3{
	transition-delay:.8s;
}
.recruit-infog--img.inf12.scrollin .inf12-popup.n4{
	transition-delay:1.2s;
}

.recruit-inf16-flex{
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	justify-content:space-between;
	gap:12px;
}
.recruit-inf16-flex--box{
	width:calc(50% - 6px);
}
.recruit-inf16-flex--box--title{
	color:#444;
	font-weight:bold;
	font-size:18px;
}
.recruit-inf16-flex--text{
	width:100%;
	margin-top:20px 10px;
	color:#444;
	display:flex;
	gap:14px;
	justify-content:center;
}
.recruit-inf16-flex--text span em{
	color:#1478EB;
}

.r05-graph{
	transform: scaleX(0);
	transform-origin: 34% 0%;
    transition: all 2s ease;
}
.recruit-infog.scrollin .r05-graph{
	transform:scaleX(1);
}

.inf-round-anim img{
	clip-path:circle(0);
	transition:all 2s ease;
}
.inf-round-anim.scrollin img{
	clip-path:circle(100% at 50% 50%);
}

.recruit-carriculum{
	margin-top:100px;
	padding-top:80px;
}
.recruit-carriculum__box{
	border:3px solid #CCCCCC;
	padding:100px;
	position:relative;
}
.recruit-carriculum__box .common-section-title{
	position:absolute;
	top:0;
	left:50%;
	transform:translate(-50%, -50%);
	background:#1478EB;
	padding:0 30px;
	min-width: 700px;
}
.recruit-carriculum__box .common-section-title .common-section-title--jpline{
	margin-bottom:0;
}

.recruit-steps{
	display:flex;
	justify-content:center;
	gap:77px;
}
.recruit-step{
	width:25%;
}
.recruit-step--num{
	text-align:center;
	margin-bottom:20px;
}
.recruit-step--num--text{
	display:block;
	font-size:16px;
}
.recruit-step--num--num{
	font-size:40px;
	line-height:1;
}
.recruit-step--title{
	border:3px solid #FFF;
	padding:18px;
	text-align:center;
	position:relative;
}
.recruit-step--title::before{
	content:'';
	width:80px;
	height:22px;
	background:#FFF;
	position:absolute;
	left:100%;
	bottom:12px;
}
.recruit-step:last-of-type .recruit-step--title::before{
	content:none;
}
.recruit-step--title--text{
	font-size:18px;
	font-weight:bold;
}
.recruit-step--icon{
	position:relative;
	text-align:center;
	margin-top:20px;
	margin-bottom:20px;
}
/*
.recruit-step--icon::before{
	content:'';
	position:absolute;
	bottom:100%;
	left:50%;
	height:45px;
	width:1px;
	background:#FFF;
}
*/
.recruit-step--text{
	text-align:left;
	font-size:18px;
	line-height:2;
}
.recruit-step--text--mini{
	font-size:12px;
}
.recruit-step--text span{
	white-space:nowrap;
}


.recruit-req--menubox{
	margin-bottom:60px;
}
.recruit-req--menus{
	display:flex;
	gap:20px;
	align-items:center;
}
.recruit-req--menu{
	cursor:pointer;
	color:#CCCCCC;
	transition:all .3s ease;
	font-size:20px;
	font-weight:bold;
}
.recruit-req--menu.current{
	color:#FFFFFF;
}
.recruit-req-listboxes .common-dot-title{
	color:#FFF;
}
.recruit-req-listboxes .common-dot-title::before{
	background:#FFF;
}

.recruit-req--btns{
	margin-top:80px;
	display:flex;
	justify-content:center;
	gap:30px;
}

.recruit-schedule-steps{
	gap:27px;
}
.recruit-schedule-steps .recruit-step{
	width:18%;
}
.recruit-schedule-steps .recruit-step--title::before{
	width:30px;
}
.recruit-schedule__box{
	padding:100px 40px;
}
.recruit-step--title--text{
	white-space:nowrap;
}

.recruit-entry{
	display:flex;
}
.recruit-entry:not(:last-of-type){
	margin-bottom:40px;
}
.recruit-entry--title{
	width:170px;
	padding-top:50px;
}
.recruit-entry--steps{
	display:flex;
	gap:20px;
	width:calc(100% - 170px);
}
.recruit-entry--step{
	width:calc((100% - (20px * 6)) / 7);
}
.recruit-entry--step--icon{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:columns;
	border-radius:50%;
	border:1px solid #FFF;
	width:100%;
	height:128px;
	margin-bottom:20px;
	position:relative;
}
.recruit-entry--step:not(:last-of-type) .recruit-entry--step--icon::before{
	content:'';
	width:15px;
	height:2px;
	background:#FFF;
	position:absolute;
	left:calc(100% + 3.5px);
	top:59px;
}
.recruit-entry--step--icon--text{
	font-size:16px;
}
.recruit-entry--step--icon--text em{
	font-style:normal;
	font-size:30px;
	font-weight:500;
	line-height:1;
	display: block;
	text-align:center;
}
.recruit-entry--step--text{
	text-align:center;
	font-size:17px;
	font-weight:bold;
	line-height:2;
}


/* SYMPOSIUM */
.symposium-sec01{
	padding-top:0;
}
.symposium-title{
	font-size:60px;
	font-weight:bold;
	margin-bottom:80px;
}
.symposium-box{
	margin-bottom:100px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
}
.symposium-box.box2{
	flex-direction:row-reverse;
}
.symposium-box--img{
	width:400px;
}
.symposium-box--img img{
	clip-path:polygon(30px 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
}
.symposium-box--content{
	width:calc(100% - 500px);
}
.symposium-line{
	display:flex;
	justify-content:space-between;
	margin-bottom:60px;
}
.symposium-name{
	width:16em;
}
.symposium-text{
	width:calc(100% - 16em);
}
.symposium-name--text{
	font-size:18px;
	font-weight:bold;
}
.symposium-name--text small{
	display:block;
	font-size:16px;
}
.symposium-name--graduate {
    margin-top: 6px;
    font-size: 12px;
}
.symposium-text--text{
	font-size:18px;
	font-weight:bold;
	line-height:2;
}
.symposium-bigimg{
	margin-bottom:100px;
}
.symposium-bigimg img{
	clip-path:polygon(120px 0, 100% 0, calc(100% - 120px) 100%, 0 100%);
}



/* GREAT WORKERS */
.gw-sec01{
	padding-top:0;
}

.gw-namecard{
	display:flex;
	justify-content:center;
	align-items: center;
	gap:80px;
	margin-bottom:100px;
}
.gw-namecard--img{
	width:240px;
}
.gw-namecard--img img{
	clip-path:polygon(0 30px, 100% 0, 100% calc(100% - 30px), 0 100%);
}
.gw-namecard--div--flex{
	display:flex;
	align-items:flex-end;
	gap:6px;
}
.gw-namecard--div{
	font-size:22px;
	font-weight:bold;
	margin-bottom:24px;
}
.gw-namecard--div-en{
	font-size:18px;
	line-height: 22px;
}
.gw-namecard--name{
	font-size:46px;
	font-weight:bold;
	line-height: 1.3;
	margin-bottom:14px;
}

.gw-box{
	max-width:800px;
	margin-bottom:100px;
}
.gw-img{
	max-width:800px;
	margin-bottom:100px;
}

.gw-box.n2{
	margin-left:auto;
}
.gw-img.n1{
	margin-left:auto;
}

.gw-img img{
	clip-path:polygon(120px 0, 100% 0, calc(100% - 120px) 100%, 0 100%);
}

.gw-box--title{
	font-size:40px;
	font-weight:bold;
	margin-bottom:1em;
}
.gw-box--text{
	font-size:18px;
	font-weight:bold;
	line-height:2;
}



/* SYSTEM COMMON */
.system-kv{
	padding-bottom:120px;
}
.system-kv__corn--top{
	top:0;
	left:0;
	width:66.66vw;
}



/* ARCHIVE */
.archive-sec01{
	padding-top:0;
}
.archive-bg__corn{
	bottom:0;
	left:0;
	width:84.375vw;
	z-index:-2;
}

.archive__flex{
	flex-direction:row-reverse;
}
.archive__flex--menu{
	width:250px;
}
.archive__flex--cont{
	width:calc(100% - 350px);
}

.archive__flex--menu--box{
	margin-bottom:60px;
}
.archive-menu--title{
	font-size:30px;
	margin-bottom:14px;
	color:#CCCCCC;
}

.archive-menu--categories>li,
.archive-menu--category{
	font-size:14px;
	margin-bottom:1em;
}
.archive-menu--category.childterm{
	margin-left:1.2em;
}
.archive-menu--categories a{
	text-decoration:underline;
	text-decoration-color:#FFF;
}

.archive-dropdown{
	padding:14px 30px;
}

.archive-pagenavi{
	margin-top:50px;
}
.wp-pagenavi a,.wp-pagenavi span{
	border:0;
	font-family:"halogen",sans-serif;
	font-size:30px;
	margin: 0 10px;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current{
	color:#CCC;
}
.previouspostslink,
.nextpostslink{
	border:1px solid #FFF !important;
	display:inline-flex;
	width:100px;
	height:100px;
	justify-content:center;
	align-items:center;
}
.previouspostslink{
	margin-left:0;
}
.nextpostlink{
	margin-right:0;
}



/* SINGLE */
.single-sec01{
	padding-top:0;
}

.single-meta{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	margin-bottom:12px;
}
.single-meta--date{
	font-size:14px;
}
.single-meta--category a{
	text-decoration:underline;
	text-decoration-color:#FFF;
}

.single-title{
	font-size:40px;
	font-weight:900;
	margin-bottom:50px;
}

.single-thumbnail{
	text-align:center;
	margin-bottom:50px;
}

.single-content{
	max-width:800px;
	margin:0 auto 100px;
}

.single-content>*{
	margin-bottom:22px;
}
.single-content p{
	line-height:2;
}
.single-content h1,
.single-content h2{
	font-size:30px;
	font-weight:900;
}
.single-content h3,
.single-content h4{
	font-size:24px;
	font-weight:900;
}

.single-content ul{
	list-style:disc;
}
.single-content ol{
	list-style:decimal;
}
.single-content ul li,
.single-content ol li{
	margin-left:1.2em;
	line-height:2;
}

.single-bottom{
	margin-top:150px;
	clear:both;
	text-align:center;
}
.single-bottom--link{
	display:inline-flex;
	position:relative;
	justify-content:center;
	gap:20px;
	align-items:center;
	border:1px solid #FFF;
	padding:30px 50px;
	font-size:22px;
	font-weight:bold;
	overflow:hidden;
}
.single-bottom--link::before{
	position: absolute;
    top: 0;
    left: -200px;
    content: '';
    width: 200px;
    height: 100%;
    clip-path: polygon(0 0, 170px 0, 100% 100%, 30px 100%);
    background: linear-gradient(to left, transparent, #CCC);
    transition: all .6s ease;
}
.single-bottom--link:hover::before {
    left: 100%;
}
.single-bottom--link--icon{
	transform:scaleX(-1);
}




/* CONTACT */
.contact-sec01{
	padding-top:0;
}
.common-bg__corn--br03{
	bottom:0;
	right:0;
	width:36.45vw;
	z-index:-2;
}

.contact--text{
	font-size:18px;
	line-height:2.2;
	margin-bottom:120px;
}

.contact-formbox{
	max-width:800px;
	margin-left:auto;
}
.contact-formparts input,
.contact-formparts textarea{
	width:100%;
	background:transparent;
	border:0 !important;
	padding:20px 0;
	color:#FFF;
	font-size:18px;
}
.contact-formparts input::placeholder,
.contact-formparts textarea::placeholder{
	color:rgba(255,255,255,0.2);
}

.contact-submit{
	margin-top:80px;
}
.contact-submit input[type="submit"]{
	border:1px solid #FFF;
	color:#FFF;
	background:transparent;
	font-size:22px;
	font-weight:bold;
	padding:40px 60px;
	cursor:pointer;
}
.contact-submit input[type="submit"]:disabled{
	opacity:0.2;
	pointer-events:none;
}





/* ANIMATION */
.fadein {
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 800ms;
}
.fadeinr {
    opacity : 0.1;
    transform : translate(50px, 0);
    transition : all 800ms;
}
.fadeinb {
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 800ms;
}
.fadeint {
    opacity : 0.1;
    transform : translate(0, -50px);
    transition : all 800ms;
}
.fadeinl {
    opacity : 0.1;
    transform : translate(-50px, 0);
    transition : all 800ms;
}
.fadeino {
    opacity : 0.1;
    transition : all 800ms;
}

.fadein.scrollin, .fadeinr.scrollin, .fadeinb.scrollin, .fadeint.scrollin, .fadeinl.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
.fadeino.scrollin {
   opacity : 1;
}

.clip-from-left.ef{
	-webkit-clip-path:inset(0 100% 0 0);
	clip-path:inset(0 100% 0 0);
	transition:all .7s ease-in-out;
}
.clip-from-right.ef{
	-webkit-clip-path:inset(0 0 0 100%);
	clip-path:inset(0 0 0 100%);
	transition:all .7s ease-in-out;
}
.bg-clip-from-top.ef{
	-webkit-clip-path:inset(100% 100% 0 0);
	clip-path:inset(100% 100% 0 0);
	transition:all .7s ease-in-out;
}
.bg-clip-from-bottom.ef{
	-webkit-clip-path:inset(0 0 100% 100%);
	clip-path:inset(0 0 100% 100%);
	transition:all .7s ease-in-out;
}
.clip-from-left.ef.scrollin,
.clip-from-right.ef.scrollin,
.bg-clip-from-top.ef.scrollin,
.bg-clip-from-bottom.ef.scrollin{
	-webkit-clip-path:inset(0);
	clip-path:inset(0);
}


@supports (-ms-ime-align:auto) {
.fadein {
    opacity : 1;
    transform : inherit;
    transition : inherit;
}
.fadeinr {
    opacity : 1;
    transform : inherit;
    transition : inherit;
}
.fadeinb {
    opacity : 1;
    transform : inherit;
    transition : inherit;
}
.fadeint {
    opacity : 1;
    transform : inherit;
    transition : inherit;
}
.fadeinl {
    opacity : 1;
    transform : inherit;
    transition : inherit;
}
.fadeino {
    opacity : 1;
    transition : inherit;
}

.fadein.scrollin, .fadeinr.scrollin, .fadeinb.scrollin, .fadeint.scrollin, .fadeinl.scrollin {
    opacity : 1;
    transform : inherit;
}
.fadeino.scrollin {
   opacity : 1;
}
}/* @ supports end */

@media only screen and (max-width:1239px){
/* ANIMATION */
.fadein,
.fadeinr,
.fadeinl,
.fadeinb,
.fadeint{
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 800ms;
}
}/* fade animation wrap over */


.top-title__jpline,
.top-title__enline,
.common-section-title--enline{
	position:relative;
	-webkit-clip-path:inset(0 100% 0 0);
	clip-path:inset(0 100% 0 0);
	translate-origin:left center;
	transition:all .7s ease-in-out;
}
.top-title__enline span,
.common-section-title--enline span{
	position:relative;
	white-space:nowrap;
	line-height:1;
}
.top-title__enline span::before,
.common-section-title--enline span::before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:0;
	height:100%;
	background:#FFF;
	translate-origin:left center;
	transition:all .7s linear;
	z-index:9;
}
.scrollin .top-title__jpline,
.scrollin .top-title__enline,
.scrollin .common-section-title--enline{
	-webkit-clip-path:inset(0);
	clip-path:inset(0);
}
.scrollin .top-title__jpline::before,
.scrollin .top-title__enline span::before,
.scrollin .common-section-title--enline span::before{
	animation:titlecover_scrollin 1.2s forwards;
}
@keyframes titlecover_scrollin{
	0%{
		width:0%;
		opacity:1;
	}
	50%{
		width:100%;
		opacity:1;
	}
	80%{
		width:0%;
		opacity:1;
	}
	100%{
		opacity:0;
	}
}

