@charset "UTF-8";
/*
---------------------------------------------------------
    reset.css ver 1.2 [2008/11/25] 
    *This document validates as CSS level 3
    *GNU General Public License v3
    *http://higash.net/20081125/reset_css3.html

    Modify YUI Reset CSS, YUI Fonts CSS 
    *Copyright (c) 2008, Yahoo! Inc. All rights reserved.
    *http://developer.yahoo.com/yui/license.html
    
    Modify Formy CSS Form Framework 0.8(beta)
    *GNU General Public License v2
    *http://code.google.com/p/formy-css-framework/
---------------------------------------------------------
*/

/* --HTML-- */

html {
	font-size: 62.5%;
}

/* --BODY-- */

body {
	font-family: '游ゴシック', Yu Gothic, '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ', sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	font-style: normal;
	line-height: 2.2;
	margin: 0 auto;
	padding: 0;
	color: #000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'palt' 1;
}

body.open {
	overflow: hidden;
}

* {
	box-sizing: border-box;
}

/* --OTHER TAGS-- */

a {
	overflow: hidden;
	transition: all .2s ease-out;
	text-decoration: none;
	word-break: break-all;
}

a:hover {
	opacity: .7;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=70);
	-khtml-opacity: .7;
	-moz-opacity: .7;
}

a:link,
a:visited {
	text-decoration: none;
	color: #000;
}

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

a:active {
	text-decoration: none;
	color: #000;
}

a img,
img {
	vertical-align: bottom;
	border: 0;
}

abbr,
acronym {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
th,
strong,
var,
i {
	font-weight: normal;
	font-style: normal;
}

blockquote,
dd,
div,
dl,
dt,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
pre,
span,
td,
th,
ul,
figure {
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.5;
}

caption,
th {
	text-align: left;
}

code,
kbd,
pre,
samp,
tt {
	font-family: monospace;
	line-height: 100%;
}

/* for IE7 */

* + html code,
kbd,
pre,
samp,
tt {
	font-size: 108%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: bold;
}

ol,
ul {
	list-style: none;
}

q:before,
q:after {
	content: '';
}

/* form */

button,
fieldset,
form,
input,
label,
legend,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	font-weight: inherit;
	font-style: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

/* tables still need 'cellspacing="0"' */

table {
	font-size: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

section,
article,
aside,
hgroup,
header,
footer,
nav,
figure,
figcaption,
summary {
	display: block;
}

img {
	max-width: 100%;
	height: auto;
}

.loader-wrap {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	height: 100%;
	background: #fff;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.loader-logo {
	width: 180px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}

.loader-map {
	width: 420px;
	margin-right: auto;
	margin-left: auto;
	background: url(../img/common/loading_map.webp) center bottom no-repeat;
	background-size: 100% auto;
	aspect-ratio: 41 / 12;
}

.loader-map ._cloud1 {
	width: 20px;
}

.loader-map ._cloud2 {
	width: 13px;
}

.loader-map {
	position: relative; /* 雲を絶対配置するため */
	overflow: hidden; /* はみ出し防止（お好みで） */
}

.loader-map img[class*='_cloud'] {
	position: absolute;
	transform: translate3d(0, 0, 0); /* 雲サイズの微妙な差 */
	animation: cloudFloat var(--dur) ease-in-out var(--delay) infinite, cloudDrift var(--drift) linear var(--delay) infinite alternate;
	will-change: transform, left; /* 各雲ごとに個別値（--ampX, --ampY, --dur, --delay, --drift, --scale）を上書き */
	--ampX: 8px; /* 左右の揺れ幅（transform内で使用） */
	--ampY: 10px; /* 上下の揺れ幅 */
	--dur: 5.5s; /* ふわふわ周期 */
	--delay: 0s; /* 開始ディレイ */
	--drift: 22s; /* 左右に流れる時間（leftの往復） */
	--scale: 1;
}

/* ふわふわ（上下＋微小な左右） */

/* じわっと左右に流れる（left を往復） */

/* 位置と個性（大きさ・揺れ幅・速度・遅延）を雲ごとに変える */

.loader-map { /* マップの相対基準で top/left を決める */ /* 雲タイプ別のサイズは既存指定を活かしつつ、微調整したい場合 */
}

.loader-map ._num1 {
	top: 11%;
	--left-start: 5%;
	--left-end: 28%;
	--ampX: 10px;
	--ampY: 12px;
	--dur: 6.2s;
	--delay: .2s;
	--drift: 24s;
	--scale: 1.0;
}

.loader-map ._num2 {
	top: 13%;
	--left-start: 65%;
	--left-end: 35%;
	--ampX: 7px;
	--ampY: 9px;
	--dur: 5.1s;
	--delay: .6s;
	--drift: 26s;
	--scale: .95;
}

.loader-map ._num3 {
	top: 12%;
	--left-start: 12%;
	--left-end: 52%;
	--ampX: 12px;
	--ampY: 14px;
	--dur: 7.0s;
	--delay: .0s;
	--drift: 30s;
	--scale: 1.05;
}

.loader-map ._num4 {
	top: 15%;
	--left-start: 85%;
	--left-end: 75%;
	--ampX: 6px;
	--ampY: 10px;
	--dur: 5.8s;
	--delay: .4s;
	--drift: 20s;
	--scale: .9;
}

.loader-map ._num5 {
	top: 18%;
	--left-start: 42%;
	--left-end: 80%;
	--ampX: 9px;
	--ampY: 13px;
	--dur: 6.6s;
	--delay: .9s;
	--drift: 28s;
	--scale: .98;
}

.loader-map ._cloud1 { /* 大きめの雲 */
}

.loader-map ._cloud2 { /* 小さめの雲 */
}

/* 低速端末やユーザー設定に配慮 */

.loader {
	text-indent: -9999em;
}

/*
* #Header
*/

header {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 130px;
	padding-top: 40px;
	transition: all .3s ease-out;
	background: #fff;
}

.scrolled header {
	height: 80px;
	padding-top: 13px;
}

.header-logo {
	width: 172px;
}

.header-logo a {
	display: block;
}

.header-logo_mark {
	display: inline-block;
	width: 13.86719vw;
}

.header-logo_txt {
	display: inline-block;
	width: 28.22266vw;
}

#menu_popup {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.4;
	position: fixed;
	z-index: 103;
	top: 60px;
	right: 10px;
	padding: 5px 10px;
	color: #fff;
	border-radius: 5px;
	background: rgba(0, 0, 0, .8);
}

#menu_popup span {
	position: relative;
}

#menu_popup span:after {
	position: absolute;
	top: -15px;
	right: 6px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 6px 12px 6px;
	border-style: solid;
	border-color: transparent transparent rgba(0, 0, 0, .8) transparent;
}

#menu_popup.none {
	display: none;
}

.spNavBtn__btn {
	position: fixed;
	z-index: 112;
	top: 0;
	right: 0;
}

.spNavBtn__btn a {
	font-size: 12px;
	font-size: 1.2rem;
	position: relative;
	display: block;
	text-align: center;
	color: #fff;
	background: #003b90;
}

.spNavBtn__btn a:after {
	position: absolute;
	top: 50%;
	left: 35%;
	display: block;
	width: 30%;
	height: 1px;
	content: '';
	transition: all .3s ease-out;
	background: #fff;
}

.open .spNavBtn__btn a:after {
	opacity: 0;
}

.spNavBtn__btn a span:before,
.spNavBtn__btn a span:after {
	position: absolute;
	left: 35%;
	display: block;
	width: 30%;
	height: 1px;
	content: '';
	transition: all .3s ease-out;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	background: #fff;
}

.open .spNavBtn__btn a span:before,
.open .spNavBtn__btn a span:after {
	top: 50% !important;
	left: 50% !important;
	width: 30% !important;
	opacity: 1;
	background: #fff;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

.spNavBtn__btn a span:before {
	top: 40%;
}

.open .spNavBtn__btn a span:before {
	-ms-transform: rotate(-45deg) translate(-50%, -50%);
	transform: rotate(-45deg) translate(-50%, -50%);
}

.spNavBtn__btn a span:after {
	top: 60%;
}

.open .spNavBtn__btn a span:after {
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	transform: rotate(45deg) translate(-50%, -50%);
}

.spNavBtn__btn a:hover {
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

.spNavBtn__btn a:hover:after {
	left: 35%;
	width: 30%;
}

.spNavBtn__btn a:hover span:before,
.spNavBtn__btn a:hover span:after {
	left: 35%;
	width: 30%;
}

.open .spNavBtn__btn a:hover span:before,
.open .spNavBtn__btn a:hover span:after {
	width: 40% !important;
}

.spNavBtn__btn a:hover span:before {
	top: 40%;
}

.spNavBtn__btn a:hover span:after {
	top: 60%;
}

.open .spNavBtn__btn a {
	color: #747474;
	background: #747474;
}

#spNavBtn {
	display: none;
}

/**
 * #Footer
 */

footer {
	position: relative;
	margin-top: 600px;
	padding-top: 40px;
	padding-bottom: 50px;
	text-align: center;
	color: #fff;
	background: #003b90;
}

footer:before {
	position: absolute;
	top: -400px;
	left: 0;
	display: block;
	width: 100%;
	height: 400px;
	content: '';
	background: url(../img/common/footer_bg.webp) center top no-repeat;
	background-size: auto 100%;
}

.footer-logo {
	text-align: right;
}

.footer-logo img {
	width: 178px;
}

.copyright {
	font-size: 12px;
	font-size: 1.2rem;
	margin-bottom: 5px;
}

.page_top {
	position: absolute;
	top: -550px;
	left: 50%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.page_top a {
	position: relative;
	display: block;
	overflow: hidden;
	width: 65px;
	height: 65px;
	text-indent: -9999px;
	border: 4px solid #003b90;
	border-radius: 50%;
}

.page_top a:after {
	position: absolute;
	top: 20%;
	left: 50%;
	display: block;
	width: 20px;
	content: '';
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background: url(../img/common/icon_pagetop.svg) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 20 / 33;
}

.page_top a:hover {
	-ms-transform: scale(1.1);
	transform: scale(1.1);
	opacity: 1;
}

.page_top a:hover:after {
	animation-name: pagetop_mv2;
	animation-duration: .3s;
	animation-timing-function: ease-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: forwards;
}

/**
 * #Main
 */

#contents {
	padding-top: 130px;
}

/*------------ common ------------*/

.fixed_insta {
	position: fixed;
	top: 40%;
	right: 0;
}

.fixed_insta a {
	display: block;
	width: 70px;
	padding: 14px;
	text-align: center;
	border-radius: 10px 0 0 10px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

.fixed_insta a img {
	vertical-align: top;
}

.bd-l {
	padding-left: 20px;
	border-left: 5px solid #fdd000;
}

.js-slidein._slide {
	transition: all .3s ease-out;
	-webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
	clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

.js-slidein._on {
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.line-b {
	border-bottom: 1px solid #003b90;
}

.list1 {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.list1 dt {
	width: 160px;
	margin-bottom: 10px;
	padding-top: 3px;
	padding-bottom: 3px;
	text-align: center;
	color: #fff;
	border-radius: 50px;
	background: #003b90;
}

.list1 dd {
	width: calc(100% - 180px);
	margin-bottom: 10px;
	padding-top: 3px;
}

.list1._access dt {
	width: 270px;
}

.list1._access dd {
	width: calc(100% - 290px);
}

.list1._recruitment {
	-ms-flex-align: stretch;
	align-items: stretch;
}

.list1._recruitment dt {
	display: -ms-flexbox;
	display: flex;
	width: 180px;
	border-radius: 20px;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.list1._recruitment dd {
	width: calc(100% - 200px);
}

/*------------ top ------------*/

.top-fv_slide_item img._img {
	width: 100%;
	height: auto;
	transition: transform 8s ease-out;
	-ms-transform: scale(1);
	transform: scale(1);
	will-change: transform;
}

.top-fv_slide_item img._img.do-zoom {
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.top-fv_slide_item {
	position: relative;
	height: calc(100vh - 130px);
}

.top-fv_slide_item img._img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.top-fv_txt {
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: 0;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	height: 100%;
	transition: all .3s ease-out 2s;
	opacity: 0;
	-ms-flex-align: end;
	align-items: flex-end;
	-ms-flex-pack: center;
	justify-content: center;
}

.top-fv_txt._on {
	opacity: 1;
}

.top-fv_txt img {
	height: 635px;
	max-height: calc(100vh - 180px);
	vertical-align: bottom;
}

.top-intro_flex {
	-ms-flex-align: end;
	align-items: flex-end;
}

.top-intro_ttl {
	font-size: 30px;
	font-size: 3rem;
	font-weight: 600;
	margin-bottom: 20px;
	color: #003b90;
}

.top-intro_ttl span {
	position: relative;
	opacity: 0;
}

.top-intro_ttl span:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	-ms-transform-origin: right center;
	transform-origin: right center;
	opacity: 0;
	background: #003b90;
}

.top-intro_ttl span._on {
	opacity: 1;
}

.top-intro_ttl span._on:after {
	animation-name: txt_fade;
	animation-duration: .6s;
	animation-timing-function: ease-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	opacity: 1;
	animation-fill-mode: forwards;
}

.top-intro_txt {
	font-size: 28px;
	font-size: 2.8rem;
	color: #003b90;
}

.top-intro_txt span {
	position: relative;
	opacity: 0;
}

.top-intro_txt span:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	-ms-transform-origin: right center;
	transform-origin: right center;
	opacity: 0;
	background: #003b90;
}

.top-intro_txt span._on {
	opacity: 1;
}

.top-intro_txt span._on:after {
	animation-name: txt_fade;
	animation-duration: .6s;
	animation-timing-function: ease-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	opacity: 1;
	animation-fill-mode: forwards;
}

.top-company_flex {
	-ms-flex-pack: center;
	justify-content: center;
}

.top-company {
	background: url(../img/top/top_company_bg.webp) center center no-repeat;
	background-size: cover;
}

.top-company_illust {
	width: 340px;
	margin-left: 45px;
}

.top-detail .w1024 {
	position: relative;
	z-index: 2;
	padding-bottom: 420px;
}

.top-detail .w1024 .top-detail_img {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	background: url(../img/top/detail_img.webp) right top no-repeat;
	background-size: auto 100%;
}

.top-detail .w1024:before {
	position: absolute;
	bottom: 0;
	left: -60px;
	display: block;
	width: 426px;
	content: '';
	background: url(../img/top/detail_illust.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 426 / 309;
}

.top-examples .w1024 {
	background: url(../img/top/ecample_illust.webp) 350px top no-repeat;
	background-size: 433px auto;
}

.top-person .w1024 {
	background: url(../img/top/rerson_illust.webp) 350px 20px no-repeat;
	background-size: 370px auto;
}

.top-examples,
.top-person {
	background: #003b90;
}

.top-examples_slide_item {
	width: 430px;
	margin-right: 15px;
	margin-left: 15px;
}

.top-examples_slide_item ._cat {
	margin-top: 10px;
}

.top-examples_slide_item ._cat span {
	font-size: 25px;
	font-size: 2.5rem;
	line-height: 1.5;
	display: inline-block;
	padding: 1px 20px;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 50px;
}

.top-person_slide_item {
	width: 443px;
	margin-right: 25px;
	margin-left: 25px;
}

.top-person_slide_item ._img {
	position: relative;
}

.top-person_slide_item ._img img {
	position: relative;
	z-index: 1;
	display: block;
	transition: all .3s ease-out;
}

.top-person_slide_item ._img img._hv {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	opacity: 0;
}

.top-person_slide_item a {
	line-height: 1.6;
	display: block;
	color: #fff;
}

.top-person_slide_item a:hover {
	opacity: 1;
}

.top-person_slide_item a:hover ._hv {
	opacity: 1;
}

.top-person_slide_item a ._name {
	font-size: 30px;
	font-size: 3rem;
	margin-top: 15px;
	margin-bottom: 10px;
}

.top-person_slide_item a ._date {
	font-size: 18px;
	font-size: 1.8rem;
}

.top-recruit_illust {
	padding-right: 10%;
	padding-left: 10%;
}

.top-inquiry {
	overflow: hidden;
}

.top-inquiry .w1024 {
	position: relative;
	z-index: 2;
}

.top-inquiry .w1024:after {
	position: absolute;
	z-index: -1;
	top: -50px;
	left: 700px;
	display: block;
	width: 395px;
	content: '';
	background: url(../img/top/inquiry_illust.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 395 / 319;
}

.company-intro_flex {
	-ms-flex-align: end;
	align-items: flex-end;
}

.ceo_name {
	font-size: 30px;
	font-size: 3rem;
}

/*------------ company ------------*/

.company-marker {
	background: #003b90;
}

.company-marker_item {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 2%;
}

.company-marker_item:nth-child(3n) {
	margin-right: 0;
}

.company-sdgs_flex {
	-ms-flex-align: end;
	align-items: flex-end;
}

.company-sdgs_logo {
	width: 70%;
}

.company-sdgs_img {
	width: 24.8%;
}

/*------------ detail ------------*/

.detail-box_cont {
	width: 30%;
}

.detail-box_img {
	position: relative;
	width: 67%;
}

.detail-box_img ._on {
	position: relative;
	z-index: 2;
}

.detail-box_img ._hv {
	position: absolute;
	z-index: 3;
	top: 0;
	left: 0;
	transition: all .3s ease-out;
	opacity: 0;
}

.detail-box_img:hover ._hv {
	opacity: 1;
}

.detail-box_img ._icon {
	font-size: 25px;
	font-size: 2.5rem;
	line-height: 1.5;
	position: absolute;
	top: 20px;
	left: 20px;
	padding: 3px 30px;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 40px;
}

.examples-box_grid {
	width: 49%;
	margin-right: 2%;
}

.examples-box_grid:nth-child(2n) {
	margin-right: 0;
}

.examples-box_item {
	margin-bottom: 4%;
}

/*------------ person ------------*/

.person-box {
	max-width: 850px;
	margin-right: auto;
	margin-left: auto;
}

.person-box_img {
	position: relative;
	max-width: 560px;
	margin-right: auto;
	margin-left: auto;
}

.person-box_img ._on {
	position: relative;
	z-index: 2;
}

.person-box_img ._hv {
	position: absolute;
	z-index: 3;
	top: 0;
	left: 0;
	transition: all .3s ease-out;
	opacity: 0;
}

.person-box_img:hover ._hv {
	opacity: 1;
}

.person-box_ttl {
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.6;
	text-align: center;
}

.person-box_ttl ._name {
	font-size: 31px;
	font-size: 3.1rem;
	margin-left: 10px;
}

.inquiry-form input[type='text'],
.inquiry-form input[type='email'],
.inquiry-form input[type='tel'] {
	width: 100%;
	padding: 5px;
}

.inquiry-form textarea {
	width: 100%;
	height: 250px;
	padding: 5;
}

.tel_num {
	font-size: 55px;
	font-size: 5.5rem;
	line-height: 1;
}

.grecaptcha-badge {
	display: none;
}

#contact .grecaptcha-badge {
	display: block;
}

.wp-side {
	width: 24%;
}

.post_main {
	width: 70%;
}

.sideBox {
	padding-bottom: 50px;
}

.side-ttl {
	font-size: 1.95312vw;
	font-weight: 500;
	line-height: 1;
	position: relative;
	margin-bottom: 1.46484vw;
	padding-bottom: .97656vw;
	color: #003b90;
}

.side-ttl:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 3.90625vw;
	height: 2px;
	content: '';
	background: #003b90;
}

.sideBox-list {
	line-height: 1.5;
}

.sideBox-list > li {
	margin-bottom: .97656vw;
}

.sideBox-list > li > a {
	position: relative;
	position: relative;
	display: block;
	padding-left: 1.5625vw;
}

.sideBox-list > li > a:after {
	position: absolute;
	top: .87891vw;
	left: .39062vw;
	display: block;
	width: .48828vw;
	content: '';
	background: url(../img/common/arr_blue.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 18 / 31;
}

.sideBox-list .children {
	padding-left: 20px;
}

.sideBox-list .children li {
	position: relative;
	margin-top: 5px;
	padding-left: 10px;
}

.sideBox-list .children li:after {
	position: absolute;
	top: 9px;
	left: 0;
	display: block;
	width: 6px;
	height: 6px;
	content: '';
	color: #003b90;
	border-radius: 50%;
	background: #003b90;
}

.sideBox-list .children li a {
	display: block;
}

.post_content h2 {
	font-size: 2.34375vw;
	font-weight: 500;
	clear: both;
	margin-top: 3.41797vw;
	padding: 1.46484vw 2.92969vw;
	color: #003b90;
	background: rgba(238, 238, 238, .7);
}

.post_content h3 {
	font-size: 2.14844vw;
	font-weight: 500;
	clear: both;
	margin-top: 3.41797vw;
	padding-bottom: .97656vw;
	color: #003b90;
	border-bottom: 1px solid #003b90;
}

.post_content h4 {
	font-size: 2.05078vw;
	font-weight: 500;
	position: relative;
	clear: both;
	margin-top: 3.41797vw;
	padding-bottom: .97656vw;
	color: #003b90;
}

.post_content h4:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 9.76562vw;
	height: 1px;
	content: '';
	background: #003b90;
}

.post_content h5 {
	font-size: 1.85547vw;
	font-weight: 500;
	clear: both;
	margin-top: 3.41797vw;
	padding-bottom: .97656vw;
	color: #003b90;
}

.post_content h6 {
	font-size: 1.75781vw;
	font-weight: 500;
	clear: both;
	margin-top: 3.41797vw;
	padding-bottom: .97656vw;
	color: #003b90;
}

.post_content p {
	clear: both;
	margin-top: 1.95312vw;
}

.post_content ul,
.post_content ol {
	margin-top: 1.95312vw;
}

.post_content ul li,
.post_content ol li {
	line-height: 1.6;
	position: relative;
	margin-bottom: .48828vw;
	padding-left: 1.46484vw;
}

.post_content ul li:after,
.post_content ol li:after {
	position: absolute;
	top: .78125vw;
	left: 0;
	display: block;
	width: .97656vw;
	content: '';
	border-radius: 50%;
	background: #003b90;
	aspect-ratio: 1 / 1;
}

.post_content img,
.post_content video,
.post_content iframe {
	max-width: auto;
	height: auto;
}

.post_content strong {
	font-weight: bold;
}

.post_content .alignleft {
	float: left;
	margin: .5em 1em .5em 0;
}

.post_content .aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.post_content .alignright {
	float: right;
	margin: .5em 0 .5em 1em;
}

.post_content a {
	text-decoration: underline;
	color: #003b90;
}

.post_content .ez-toc-list li:before {
	content: none;
}

.post_content .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.post_content .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.post_content table {
	line-height: 1.6;
	width: 100%;
}

.post_content table th,
.post_content table td {
	padding: 10px;
}

.pager_wrap {
	padding-top: 50px;
}

.pager {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: center;
	justify-content: center;
}

.pager .page-numbers {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	min-width: 3.90625vw;
	height: 3.90625vw;
	margin: 0 .78125vw;
	text-align: center;
	vertical-align: top;
	border-radius: 50%;
	background: #eee;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pager .page-numbers:hover,
.pager .page-numbers.current {
	opacity: 1;
	color: #fff;
	background: #003b90;
}

.pager .page-numbers.current:after {
	content: none;
}

.pager .page-numbers.prev,
.pager .page-numbers.next {
	position: relative;
	transition: all .2s ease-out;
	text-indent: -9999px;
}

.pager .page-numbers.prev:after,
.pager .page-numbers.next:after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 30%;
	height: 30%;
	content: '';
	transition: all .15s ease-out;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: url(../img/common/arr_blue.webp) center center no-repeat;
	background-size: auto 100%;
}

.pager .page-numbers.prev:hover:after,
.pager .page-numbers.next:hover:after {
	background-image: url(../img/common/arr_white.webp);
}

.pager .page-numbers.prev {
	-ms-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.wp-paging .btn a {
	min-width: 19.53125vw;
}

.wp-paging:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: '.';
}

.wp-paging .prev {
	float: left;
}

.wp-paging .prev a:after {
	-ms-transform: translate(0, -50%) scale(-1, 1);
	transform: translate(0, -50%) scale(-1, 1);
}

.wp-paging .next {
	float: right;
	text-align: right;
}

.wp-paging .next a:after {
	right: 1.95312vw;
	left: auto;
}

.frame-wrapper__video {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}

.frame-wrapper__video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/**
 * #Breadcrumbs
 */

.breadcrumb ul {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.breadcrumb li {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1;
	position: relative;
	position: relative;
	margin-left: 30px;
	vertical-align: top;
	color: #003b90;
}

.breadcrumb li:after {
	position: absolute;
	top: 50%;
	right: -22px;
	display: block;
	width: 16px;
	height: 1px;
	content: '';
	background: #003b90;
}

.breadcrumb li:last-child:after {
	content: none;
}

.breadcrumb li a {
	color: #003b90;
}

/**
 * #btn
 */

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	font-size: 25px;
	font-size: 2.5rem;
	font-weight: 300;
	display: inline-block;
	min-width: 300px;
	padding: 6px 10px;
	text-align: center;
	color: #fff;
	border-radius: 50px;
	background: #003b90;
}

.btn a span,
.btn input[type='submit'] span,
.btn input[type='button'] span,
.btn button span {
	position: relative;
	padding-right: 50px;
}

.btn a span:after,
.btn input[type='submit'] span:after,
.btn input[type='button'] span:after,
.btn button span:after {
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 47px;
	content: '';
	transition: all .15s ease-out;
	-ms-transform: translate(0, -60%);
	transform: translate(0, -60%);
	background: url(../img/common/arr_white.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 47 / 18;
}

.btn a:hover,
.btn input[type='submit']:hover,
.btn input[type='button']:hover,
.btn button:hover {
	opacity: 1;
	background-color: #005bc6;
}

.btn a:hover span:after,
.btn input[type='submit']:hover span:after,
.btn input[type='button']:hover span:after,
.btn button:hover span:after {
	right: -10px;
}

.btn._orange a {
	color: #000;
	background-color: #fdd000;
}

.btn._orange a:hover {
	background-color: #fd9b00;
}

.btn._orange a span:after {
	background-image: url(../img/common/arr_blk.webp);
}

.btn input[type='submit'] {
	padding-top: 1.95312vw;
	padding-bottom: 1.95312vw;
}

.btn button {
	overflow: hidden;
	cursor: pointer;
	border: none;
	background: none;
}

.btn2 {
	text-align: center;
}

.btn2 a,
.btn2 input[type='submit'],
.btn2 input[type='button'] {
	font-size: 25px;
	font-size: 2.5rem;
	display: inline-block;
	min-width: 325px;
	padding: 10px 30px;
	text-align: center;
	color: #fff;
	border-radius: 50px;
	background: #003b90;
}

.btn2 a:hover,
.btn2 input[type='submit']:hover,
.btn2 input[type='button']:hover {
	background-color: #005bc6;
}

.btn2 input[type='submit'] {
	cursor: pointer;
	border: none;
}

.btn2 input[type='button'] {
	min-width: 120px;
	margin-right: 20px;
	border: none;
	background: #747474;
}

.btn2._l a {
	min-width: 450px;
	padding: 15px 20px;
	background: #fb4d00;
}

.wpcf7-spinner {
	display: none !important;
}

.pageTtl {
	position: relative;
}

.pageTtl._js-slide:after {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	transition: all .3s ease-out;
	background: #003b90;
}

.pageTtl._js-slide._vis:after {
	width: 0;
}

.pageTtl_img {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1425 / 665;
}

.pageTtl_img img {
	position: absolute;
	bottom: 0;
	left: 50%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.pageTtl_img._scroll img {
	animation-name: pageTtl_img_mv;
	animation-duration: 15s;
	animation-timing-function: ease-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: forwards;
}

.pageTtl-ttl {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-align: center;
	white-space: nowrap;
}

.pageTtl-ttl span {
	display: block;
}

.pageTtl-ttl .eng {
	font-size: 68px;
	font-size: 6.8rem;
	line-height: 1;
	color: #fff;
}

.pageTtl-ttl .jpn {
	font-size: 26px;
	font-size: 2.6rem;
	font-weight: bold;
	color: #fdd000;
}

.pageTtl-ttl ._icon {
	margin-bottom: 35px;
}

.pageTtl-ttl ._icon img {
	width: 175px;
}

.heading1 {
	color: #003b90;
}

.heading1 .eng {
	font-size: 68px;
	font-size: 6.8rem;
	line-height: 1;
	margin-bottom: 5px;
}

.heading1 .jpn {
	font-size: 25px;
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: .2em;
}

.heading1._white {
	color: #fff;
}

.heading2 {
	font-size: 35px;
	font-size: 3.5rem;
	font-weight: bold;
	margin-bottom: 30px;
	padding-bottom: 5px;
	color: #003b90;
	border-bottom: 1px solid #003b90;
}

.heading2._white {
	color: #fff;
	border-bottom: 1px solid #fff;
}

.heading3 {
	font-size: 35px;
	font-size: 3.5rem;
	margin-bottom: 10px;
	padding: 2px 20px;
	text-align: center;
	color: #fff;
	border-radius: 50px;
	background: #003b90;
}

.heading4 {
	margin-bottom: 20px;
	border-bottom: 1px solid #003b90;
}

.heading4 span {
	font-size: 35px;
	font-size: 3.5rem;
	display: inline-block;
	min-width: 310px;
	padding: 5px 10px;
	text-align: center;
	color: #fff;
	border-radius: 20px 20px 0 0;
	background: #003b90;
}

.heading5 {
	font-size: 25px;
	font-size: 2.5rem;
	margin-bottom: 20px;
	color: #003b90;
}

.heading6 {
	font-size: 30px;
	font-size: 3rem;
	margin-bottom: 10px;
	padding-left: 20px;
	color: #003b90;
	border-left: 5px solid #fdd000;
}

.scroll_icon {
	display: none;
}

/**
 * #Col
 */

.section {
	margin-right: 5.85938vw;
	margin-left: 5.85938vw;
}

.w1024 {
	max-width: 1024px;
	margin-right: auto;
	margin-left: auto;
}

.w600 {
	width: 58.59375vw;
	margin-right: auto;
	margin-left: auto;
}

.w700 {
	width: 700px;
	margin-right: auto;
	margin-left: auto;
}

.w800 {
	width: 800px;
	margin-right: auto;
	margin-left: auto;
}

.w900 {
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
}

.flex {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.flex.align-c {
	-ms-flex-align: center;
	align-items: center;
}

.flex._revease {
	flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
}

.flex._revease .grid2 {
	margin-right: 0;
}

.flex._revease .grid2:nth-child(2n) {
	margin-right: 6%;
}

.flex._start {
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.flex._center {
	-ms-flex-pack: center;
	justify-content: center;
}

.flex._between {
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.flex._mb > * {
	margin-bottom: 40px;
}

.tab-dblock {
	display: -ms-flexbox;
	display: flex;
}

.grid2 {
	width: 47%;
	margin-right: 6%;
}

.grid2:nth-child(2n) {
	margin-right: 0;
}

.grid3 {
	width: 31%;
	margin-right: 3.5%;
}

.grid3:nth-child(3n) {
	margin-right: 0;
}

.grid4 {
	width: 22%;
	margin-right: 4%;
}

.grid4:nth-child(4n) {
	margin-right: 0;
}

.grid7 {
	width: 65.5%;
}

.grid2_small {
	width: 32%;
}

.grid2_wide {
	width: 63%;
}

/**
 * #Position
 */

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

/**
 * #Margin
 */

.mb-xs {
	margin-bottom: .48828vw;
}

.mb-s {
	margin-bottom: .97656vw;
}

.mb-m {
	margin-bottom: 2.92969vw;
}

.mb-mm {
	margin-bottom: 4.88281vw;
}

.mb-l {
	margin-bottom: 9.76562vw;
}

.mb-xl {
	margin-bottom: 14.64844vw;
}

.mb-xxl {
	margin-bottom: 17.57812vw;
}

.pb-xs {
	padding-bottom: .48828vw;
}

.pb-s {
	padding-bottom: .97656vw;
}

.pb-m {
	padding-bottom: 2.92969vw;
}

.pb-mm {
	padding-bottom: 4.88281vw;
}

.pb-l {
	padding-bottom: 9.76562vw;
}

.pb-xl {
	padding-bottom: 14.64844vw;
}

.pb-xxl {
	padding-bottom: 17.57812vw;
}

.pt-xs {
	padding-top: .48828vw;
}

.pt-s {
	padding-top: .97656vw;
}

.pt-m {
	padding-top: 2.92969vw;
}

.pt-mm {
	padding-top: 4.88281vw;
}

.pt-l {
	padding-top: 9.76562vw;
}

.pt-xl {
	padding-top: 14.64844vw;
}

.pt-xxl {
	padding-top: 17.57812vw;
}

.ptb-l {
	padding-top: 100px;
	padding-bottom: 100px;
}

.mb-0 {
	margin-bottom: 0 !important;
}

/**
 * #Text
 */

.text_s {
	font-size: 1.46484vw;
	line-height: 1.7;
}

.text_l {
	font-size: 20px;
	font-size: 2rem;
}

.text_l {
	font-size: 22px;
	font-size: 2.2rem;
}

.text_xl {
	font-size: 30px;
	font-size: 3rem;
}

.text_red {
	color: #de2900;
}

.text_blue {
	color: #003b90;
}

.bold {
	font-weight: 700;
}

a.link_orange {
	text-decoration: underline;
	color: #fdd000;
}

.lh15 {
	line-height: 1.5;
}

.lh16 {
	line-height: 1.6;
}

.lh18 {
	line-height: 1.8;
}

/**
 * #Display
 */

.tablet {
	display: none;
}

.pc {
	display: inline;
}

.map iframe {
	width: 100%;
	height: 40.52734vw;
	vertical-align: top;
}

/*-------------------------------*/

.icon_tel {
	font-size: 25px;
	font-size: 2.5rem;
}

.icon_tel span {
	position: relative;
	padding-left: 30px;
}

.icon_tel span:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 23px;
	height: 24px;
	content: '';
	background: url(../img/common/icon_tel.webp) center center no-repeat;
	background-size: 100% auto;
}

.icon_time span {
	position: relative;
	padding-left: 30px;
}

.icon_time span:after {
	position: absolute;
	top: -6px;
	left: 0;
	display: block;
	width: 26px;
	height: 26px;
	content: '';
	background: url(../img/common/icon_time.webp) center center no-repeat;
	background-size: 100% auto;
}

.icon_map span {
	position: relative;
	padding-left: 37px;
}

.icon_map span:after {
	position: absolute;
	top: -6px;
	left: 0;
	display: block;
	width: 33px;
	height: 26px;
	content: '';
	background: url(../img/common/icon_map.webp) center center no-repeat;
	background-size: 100% auto;
}

.eng {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	font-style: normal;
	font-optical-sizing: auto;
}

.table-1 {
	width: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.table-1 th,
.table-1 td {
	line-height: 1.8;
	position: relative;
	padding-top: .48828vw;
	padding-bottom: .48828vw;
	padding-left: 2.24609vw;
	vertical-align: top;
}

.table-1 th {
	position: relative;
	padding-right: .97656vw;
}

.table-1 th:after {
	position: absolute;
	top: 1.95312vw;
	left: 0;
	display: block;
	width: 1.46484vw;
	height: 3px;
	content: '';
	border-radius: 10px;
	background: #003b90;
}

.table-1 td {
	padding-left: 0;
}

.table-2 {
	width: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.table-2 th,
.table-2 td {
	padding: 1.95312vw;
	vertical-align: top;
	border-right: 1px dotted rgba(0, 59, 144, .4);
	border-bottom: 2px solid rgba(0, 59, 144, .7);
}

.table-2 tr:first-child th,
.table-2 tr:first-child td {
	border-top: 2px solid rgba(0, 59, 144, .7);
}

.table-2 tr td:last-child {
	border-right: 2px solid rgba(0, 59, 144, .7);
}

.table-2 th {
	border-left: 2px solid rgba(0, 59, 144, .7);
	background: rgba(0, 59, 144, .1);
}

.table-3 {
	width: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.table-3 th,
.table-3 td {
	line-height: 1.8;
	position: relative;
	padding: 1.95312vw;
	vertical-align: top;
}

.table-3 th {
	position: relative;
	padding-right: .97656vw;
	text-align: right;
}

.table-3 th:after {
	position: absolute;
	right: .97656vw;
	bottom: .97656vw;
	display: block;
	width: 1.95312vw;
	height: .19531vw;
	content: '';
	border-radius: 40px;
	background: #fff226;
}

.table-3 td {
	padding-left: 0;
}

.table-3 td:after {
	position: absolute;
	bottom: .97656vw;
	left: 0;
	display: block;
	width: 5.85938vw;
	height: .19531vw;
	content: '';
	border-radius: 40px;
	background: #b5dff1;
}

.w90p {
	padding-right: 5%;
	padding-left: 5%;
}

@media (prefers-reduced-motion: reduce) {

.loader-map img[class*='_cloud'] {
	animation: none;
}

}

@media only screen and (min-width: 768px) {

.hab-menu {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.headerNav__list {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.headerNav__list li {
	font-size: 17px;
	font-size: 1.7rem;
	line-height: 1.2;
	margin-left: 35px;
}

.headerNav__list li a {
	position: relative;
	display: block;
	text-align: center;
}

.headerNav__list li a span {
	display: block;
	text-align: center;
}

.headerNav__list li a .eng {
	font-size: 26px;
	font-size: 2.6rem;
	color: #003b90;
}

.headerNav__list li a .jpn {
	position: relative;
	display: inline-block;
	padding-bottom: .68359vw;
}

.headerNav__list li a .jpn:after {
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	width: 0;
	height: .29297vw;
	content: '';
	transition: all .3s ease-out;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	opacity: 1;
	background: #003b90;
}

.headerNav__list li a:hover .jpn:after {
	width: 1.36719vw;
	opacity: 1;
}

#top .headerNav__list > li#gn1 > a .jpn:after,
#about .headerNav__list > li#gn2 > a .jpn:after,
#detail .headerNav__list > li#gn3 > a .jpn:after,
#project .headerNav__list > li#gn4 > a .jpn:after,
#recruitment .headerNav__list > li#gn5 > a .jpn:after,
#team .headerNav__list > li#gn6 > a .jpn:after,
#contact .headerNav__list > li#gn7 > a .jpn:after {
	width: 1.36719vw;
	opacity: 1;
}

}

@media only screen and (min-width: 768px) and (max-width: 1200px) {

.headerNav__list li {
	font-size: calc((17 / 1200) * 100vw);
	margin-left: calc((35 / 1200) * 100vw);
}

.headerNav__list li a .eng {
	font-size: calc((26 / 1200) * 100vw);
}

}

@media only screen and (max-width: 1400px) {

.top-fv_txt img {
	height: calc((635 / 1400) * 100vw);
}

}

@media only screen and (max-width: 1200px) {

header {
	height: calc((130 / 1200) * 100vw);
	padding-top: calc((40 / 1200) * 100vw);
}

.scrolled header {
	height: calc((80 / 1200) * 100vw);
	padding-top: calc((13 / 1200) * 100vw);
}

.header-logo {
	width: calc((172 / 1200) * 100vw);
}

#contents {
	padding-top: calc((130 / 1200) * 100vw);
}

.top-fv_slide_item {
	height: calc(100vh - 10.83333vw);
}

.top-fv_txt img {
	max-height: calc(100vh - 10.83333vw);
}

}

@media only screen and (max-width: 1024px) {

body {
	font-size: 1.5625vw;
}

.loader-logo {
	width: 17.57812vw;
	margin-bottom: 1.95312vw;
}

footer {
	margin-top: 58.59375vw;
	padding-top: 3.90625vw;
	padding-bottom: 4.88281vw;
}

footer:before {
	top: -39.0625vw;
	height: 39.0625vw;
}

.footer-logo img {
	width: 17.38281vw;
}

.page_top {
	top: -53.71094vw;
}

.page_top a {
	width: 6.34766vw;
	height: 6.34766vw;
	border: .39062vw solid #003b90;
}

.page_top a:after {
	width: 1.95312vw;
}

.top-intro_ttl {
	font-size: 2.92969vw;
	margin-bottom: 1.95312vw;
}

.top-intro_txt {
	font-size: 1.91406vw;
}

.top-company_illust {
	width: 33.20312vw;
	margin-left: 4.39453vw;
}

.top-detail .w1024 {
	padding-bottom: 41.01562vw;
}

.top-examples .w1024 {
	background-position: 34.17969vw top;
	background-size: 42.28516vw auto;
}

.top-person .w1024 {
	background-size: 36.13281vw;
}

.top-examples_slide_item {
	width: 41.99219vw;
	margin-left: 1.46484vw;
	margin-rihgt: 1.46484vw;
}

.top-examples_slide_item ._cat {
	margin-top: .97656vw;
}

.top-examples_slide_item ._cat span {
	font-size: 2.44141vw;
	padding: .09766vw 1.95312vw;
}

.top-person_slide_item {
	width: 41.99219vw;
	margin-left: 2.44141vw;
	margin-rihgt: 2.44141vw;
}

.top-person_slide_item a ._name {
	font-size: 2.92969vw;
	margin-top: 1.46484vw;
}

.top-person_slide_item a ._date {
	font-size: 1.75781vw;
}

.top-inquiry .w1024:after {
	top: -4.88281vw;
	left: 68.35938vw;
	width: 38.57422vw;
}

.ceo_name {
	font-size: 2.92969vw;
}

.detail-box_img ._icon {
	font-size: 2.44141vw;
	top: 1.95312vw;
	left: 1.95312vw;
	padding: .29297vw 2.92969vw;
}

.person-box_ttl {
	font-size: 2.14844vw;
}

.person-box_ttl ._name {
	font-size: 3.02734vw;
	margin-left: .97656vw;
}

.tel_num {
	font-size: 5.37109vw;
}

.breadcrumb li {
	font-size: 1.75781vw;
	margin-left: 2.92969vw;
}

.breadcrumb li:after {
	right: -2.14844vw;
	width: 1.5625vw;
}

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	font-size: 2.44141vw;
	min-width: 29.29688vw;
	padding: .58594vw .97656vw;
}

.btn a span,
.btn input[type='submit'] span,
.btn input[type='button'] span,
.btn button span {
	padding-right: 4.88281vw;
}

.btn a span:after,
.btn input[type='submit'] span:after,
.btn input[type='button'] span:after,
.btn button span:after {
	width: 4.58984vw;
}

.btn2 a,
.btn2 input[type='submit'],
.btn2 input[type='button'] {
	font-size: 2.44141vw;
	min-width: 31.73828vw;
	padding: 1.95312vw 2.92969vw;
}

.btn2 input[type='button'] {
	min-width: 11.71875vw;
	margin-right: 1.95312vw;
}

.btn2._l a {
	min-width: 43.94531vw;
	padding: 1.46484vw 1.95312vw;
}

.pageTtl-ttl .eng {
	font-size: 6.64062vw;
}

.pageTtl-ttl .jpn {
	font-size: 2.53906vw;
}

.pageTtl-ttl ._icon {
	margin-bottom: 3.41797vw;
}

.pageTtl-ttl ._icon img {
	width: 17.08984vw;
}

.heading1 .eng {
	font-size: 6.64062vw;
	margin-bottom: .48828vw;
}

.heading1 .jpn {
	font-size: 1.70898vw;
}

.heading2 {
	font-size: 3.41797vw;
	margin-bottom: 2.92969vw;
	padding-bottom: .48828vw;
}

.heading3 {
	font-size: 3.41797vw;
	margin-bottom: .97656vw;
	padding: .19531vw 1.95312vw;
}

.heading4 {
	margin-bottom: 1.95312vw;
}

.heading4 span {
	font-size: 3.41797vw;
	min-width: 30.27344vw;
	padding: .48828vw .97656vw;
	border-radius: 1.95312vw 1.95312vw 0 0;
}

.heading5 {
	font-size: 2.44141vw;
	margin-bottom: 1.95312vw;
}

.heading6 {
	font-size: 2.92969vw;
	margin-bottom: .97656vw;
	padding-left: 1.95312vw;
}

.w1024 {
	padding-right: 1.95312vw;
	padding-left: 1.95312vw;
}

.text_l {
	font-size: 1.95312vw;
}

.text_l {
	font-size: 2.14844vw;
}

.text_xl {
	font-size: 2.92969vw;
}

}

@media only screen and (max-width: 930px) {

.w900 {
	width: auto;
	margin-right: 4.7619vw;
	margin-left: 4.7619vw;
}

}

@media only screen and (max-width: 830px) {

.w800 {
	width: auto;
	margin-right: 20px;
	margin-left: 20px;
}

}

@media only screen and (max-width: 768px) {

body {
	font-size: 3.80952vw;
}

.loader-logo {
	width: 40%;
	margin-bottom: 4.7619vw;
}

.loader-map {
	width: 80vw;
}

header {
	height: 14.28571vw !important;
	padding-top: 2.6vw !important;
}

.header-logo {
	width: 28.57143vw;
}

.header-logo_mark {
	width: 20.28571vw;
}

.header-logo_txt {
	width: 41.28571vw;
}

.hab-nav {
	position: fixed;
	z-index: 109;
	top: 0;
	left: 100vw;
	overflow: auto;
	width: 100vw;
	height: 100vh;
	padding: 21.42857vw 4.7619vw 4.7619vw;
	transition: all .2s ease-out;
	background: #fff;
	-webkit-overflow-scrolling: touch;
}

.open .hab-nav {
	left: 0;
}

.headerNav {
	margin-bottom: 9.52381vw;
}

.headerNav__list {
	text-align: left;
}

.headerNav__list > li {
	border-bottom: 1px solid #d5d5d5;
}

.headerNav__list > li.tablet {
	display: block;
}

.headerNav__list > li > a {
	font-size: 4.28571vw;
	font-weight: bold;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	padding-top: 3.57143vw;
	padding-bottom: 3.57143vw;
	padding-left: 9.52381vw;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.headerNav__list > li > a:after {
	position: absolute;
	top: 50%;
	left: 2.38095vw;
	display: block;
	width: 3.57143vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/common/arr_blk.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 1 / 1;
}

.headerNav__list > li > a .eng {
	font-size: 7.14286vw;
	line-height: 1;
	color: #003b90;
}

.headerNav__list > li > a .jpn {
	position: relative;
}

.headerNav__list > li > a .jpn:after {
	position: absolute;
	top: 49%;
	left: -10.71429vw;
	display: block;
	width: 9.52381vw;
	height: .47619vw;
	content: '';
	opacity: 0;
	background: #003b90;
}

.hab-menu__only {
	display: block;
}

#top .headerNav__list > li#gn1 > a .jpn:after,
#company .headerNav__list > li#gn2 > a .jpn:after,
#detail .headerNav__list > li#gn3 > a .jpn:after,
#examples .headerNav__list > li#gn4 > a .jpn:after,
#recruitment .headerNav__list > li#gn5 > a .jpn:after,
#person .headerNav__list > li#gn6 > a .jpn:after,
#inquiry .headerNav__list > li#gn7 > a .jpn:after {
	opacity: 1;
}

.spNavBtn__btn a {
	width: 14.28571vw;
	height: 14.28571vw;
}

#spNavBtn {
	display: block;
}

footer {
	margin-top: 85.71429vw;
	padding-top: 5.71429vw;
	padding-bottom: 7.14286vw;
}

footer:before {
	top: -57.14286vw;
	height: 57.14286vw;
}

#contact footer {
	padding-bottom: 25.14286vw;
}

.footer-logo img {
	width: 42.38095vw;
}

.copyright {
	font-size: 3.33333vw;
	line-height: 1.6;
}

.page_top {
	top: -78.57143vw;
}

.page_top a {
	width: 9.28571vw;
	height: 9.28571vw;
	border: .71429vw solid #003b90;
}

.page_top a:after {
	width: 2.85714vw;
}

#contents {
	padding-top: 14.28571vw;
}

.fixed_insta {
	top: 70%;
}

.fixed_insta a {
	width: 14.28571vw;
	padding: 2.38095vw;
}

.list1 {
	display: block;
}

.list1 dt {
	width: auto !important;
	margin-bottom: 1.19048vw;
	padding-left: 4.7619vw;
	text-align: left;
}

.list1 dd {
	top: 0;
	width: auto !important;
	margin-bottom: 3.57143vw;
}

.list1._recruitment dt {
	display: block;
}

.top-fv_slide_item {
	height: auto;
}

.top-fv_slide_item img._img {
	object-fit: fill;
}

.top-fv_txt img {
	max-height: none;
}

.top-intro_ttl {
	font-size: 5vw;
	margin-bottom: 3.33333vw;
}

.top-intro_txt {
	font-size: 4.66667vw;
}

.top-detail {
	overflow: hidden;
}

.top-detail .w1024 {
	padding-bottom: 19.04762vw;
}

.top-detail .w1024 .top-detail_img {
	position: static;
	height: 100vw;
	background-image: url(../img/top/detail_img_sp.webp);
	background-position: center bottom;
	background-size: 80% auto;
}

.top-detail .w1024:before {
	top: 11vw;
	bottom: auto;
	left: 58.14062vw;
	width: 51.60156vw;
}

.top-examples_slide_item {
	width: 71.66667vw;
	margin-left: 2.5vw;
	margin-rihgt: 2.5vw;
}

.top-examples_slide_item ._cat {
	margin-top: 1.42857vw;
}

.top-examples_slide_item ._cat span {
	font-size: 3.57143vw;
	padding: .14286vw 2.85714vw;
}

.top-person_slide_item {
	width: 66.66667vw;
	margin-left: 4.16667vw;
	margin-rihgt: 4.16667vw;
}

.top-person_slide_item ._img img._hv {
	animation: hvFade 5s ease-in-out infinite;
}

.top-person_slide_item a ._name {
	font-size: 4.28571vw;
	margin-top: 2.14286vw;
}

.top-person_slide_item a ._date {
	font-size: 3.57143vw;
}

.top-recruit_illust {
	padding-right: 20%;
	padding-left: 20%;
}

.top-inquiry {
	padding-top: 47.61905vw !important;
}

.top-inquiry .w1024:after {
	top: -35.88281vw;
	left: 50%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.ceo_name {
	font-size: 5vw;
}

.company-intro_img {
	width: 60% !important;
	margin-right: auto;
	margin-left: auto;
}

.company-marker_item {
	width: 49%;
	margin-right: 2% !important;
}

.company-marker_item:nth-child(2n) {
	margin-right: 0 !important;
}

.company-sdgs_logo {
	width: auto;
}

.company-sdgs_img {
	width: 40%;
	margin-right: auto;
	margin-left: auto;
}

.detail-box {
	margin-bottom: 14.28571vw !important;
}

.detail-box_cont {
	width: auto;
}

.detail-box_img {
	width: auto;
}

.detail-box_img ._hv {
	animation: hvFade 5s ease-in-out infinite;
}

.detail-box_img ._icon {
	font-size: 4.16667vw;
	top: 3.33333vw;
	left: 3.33333vw;
	padding: .5vw 5vw;
}

.person-box_img {
	margin-right: 20%;
	margin-left: 20%;
}

.person-box_img ._hv {
	animation: hvFade 5s ease-in-out infinite;
}

.person-box_ttl {
	font-size: 3.66667vw;
}

.person-box_ttl ._name {
	font-size: 5.16667vw;
	margin-left: 2.38095vw;
}

.tel_num {
	font-size: 9.16667vw;
}

.wp-side {
	float: none;
	width: 100%;
	margin-right: 0;
}

.post_main {
	float: none;
	width: 100%;
	margin-bottom: 100px;
}

.side-ttl {
	font-size: 4.52381vw;
	margin-bottom: 3.57143vw;
	padding-bottom: 2.38095vw;
}

.side-ttl:after {
	width: 9.52381vw;
}

.sideBox-list {
	border-top: 1px dotted #d5d5d5;
}

.sideBox-list > li {
	margin-bottom: 0;
	border-bottom: 1px dotted #d5d5d5;
}

.sideBox-list > li > a {
	padding-top: 3.57143vw;
	padding-bottom: 3.57143vw;
	padding-left: 7.14286vw;
}

.sideBox-list > li > a:after {
	top: 5.47619vw;
	left: 3.57143vw;
	width: 1.19048vw;
}

.sideBox-list .children li {
	margin-top: 0;
	border-top: 1px dotted #d5d5d5;
}

.sideBox-list .children li:after {
	top: 21px;
}

.sideBox-list .children li a {
	padding-top: 12px;
	padding-bottom: 12px;
}

.post_content h2 {
	font-size: 4.57143vw;
	margin-top: 6.66667vw;
	padding: 2.85714vw 5.71429vw;
}

.post_content h3 {
	font-size: 4.19048vw;
	margin-top: 6.66667vw;
	padding-bottom: 1.90476vw;
}

.post_content h4 {
	font-size: 4vw;
	margin-top: 6.66667vw;
	padding-bottom: 1.90476vw;
}

.post_content h4:after {
	width: 19.04762vw;
}

.post_content h5 {
	font-size: 4.04762vw;
	margin-top: 6.66667vw;
	padding-bottom: 1.90476vw;
}

.post_content h6 {
	font-size: 4.04762vw;
	margin-top: 6.66667vw;
	padding-bottom: 1.90476vw;
}

.post_content p {
	margin-top: 4.7619vw;
}

.post_content ul,
.post_content ol {
	margin-top: 8.33333vw;
}

.post_content ul li,
.post_content ol li {
	margin-bottom: 1.19048vw;
	padding-left: 3.57143vw;
}

.post_content ul li:after,
.post_content ol li:after {
	top: 1.90476vw;
	width: 2.38095vw;
}

.pager .page-numbers {
	min-width: 9.52381vw;
	height: 9.52381vw;
	margin: 0 1.19048vw;
}

.wp-paging .btn a {
	min-width: 40.47619vw;
}

.wp-paging .next a:after {
	right: 4.7619vw;
}

.breadcrumb {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

.breadcrumb ul {
	white-space: nowrap;
}

.breadcrumb ul {
	width: auto;
}

.breadcrumb li {
	font-size: 3.42857vw;
	margin-left: 5.71429vw;
}

.breadcrumb li:after {
	right: -5.2381vw;
	width: 3.80952vw;
}

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	font-size: 4.16667vw;
	min-width: 50vw;
	padding: 1vw 1.66667vw;
}

.btn a span,
.btn input[type='submit'] span,
.btn input[type='button'] span,
.btn button span {
	padding-right: 8.33333vw;
}

.btn a span:after,
.btn input[type='submit'] span:after,
.btn input[type='button'] span:after,
.btn button span:after {
	width: 7.83333vw;
}

.btn2 a,
.btn2 input[type='submit'],
.btn2 input[type='button'] {
	font-size: 4.16667vw;
	min-width: 54.16667vw;
	padding: 3.33333vw 5vw;
}

.btn2 input[type='button'] {
	margin-right: 0;
	margin-bottom: 1.95312vw;
}

.btn2._l a {
	min-width: 75vw;
	padding: 2.5vw 3.33333vw;
}

.pageTtl_img {
	aspect-ratio: 375 / 400;
}

.pageTtl_img img {
	max-width: none;
	height: 70vh;
}

.pageTtl_img._scroll img {
	animation-duration: 10s;
}

.pageTtl-ttl .eng {
	font-size: 11.33333vw;
}

.pageTtl-ttl .jpn {
	font-size: 4.33333vw;
}

.pageTtl-ttl ._icon {
	margin-bottom: 5.83333vw;
}

.pageTtl-ttl ._icon img {
	width: 29.16667vw;
}

.pageTtl_slide_item {
	height: 60vh;
}

.pageTtl_slide_item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.heading1 .eng {
	font-size: 11.33333vw;
	margin-bottom: .83333vw;
}

.heading1 .jpn {
	font-size: 4.16667vw;
}

.heading2 {
	font-size: 5.83333vw;
	margin-bottom: 5vw;
	padding-bottom: .83333vw;
}

.heading3 {
	font-size: 5.83333vw;
	margin-bottom: 1.66667vw;
	padding: .95238vw 2.38095vw;
}

.heading4 {
	margin-bottom: 4.7619vw;
}

.heading4 span {
	font-size: 5vw;
	min-width: 51.66667vw;
	padding: .83333vw 1.66667vw;
	border-radius: 3.33333vw 3.33333vw 0 0;
}

.heading5 {
	font-size: 4.16667vw;
	margin-bottom: 3.33333vw;
}

.heading6 {
	font-size: 5vw;
	margin-bottom: 1.66667vw;
	padding-left: 3.33333vw;
}

.scroll {
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

.scroll._sp {
	overflow-x: auto;
	overflow-y: auto;
}

.scroll_icon {
	font-size: 13px;
	font-size: 1.3rem;
	position: absolute;
	top: 30px;
	left: 50%;
	display: block;
	width: 60%;
	height: 70px;
	padding-top: 48px;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	text-align: center;
	pointer-events: none;
	color: #fff;
	border-radius: 5px;
	background: rgba(0, 0, 0, .5) url(../img/common/icon_scroll_arr.png) center 18px no-repeat;
	background-size: auto 20px;
}

.scroll_icon ._icon {
	position: absolute;
	top: 8px;
	left: 50%;
	display: block;
	width: 30px;
	height: 34px;
	margin-left: -15px;
	content: '';
	-ms-transform: translate(-20px, 0);
	transform: translate(-20px, 0);
	animation-name: scroll_animation;
	animation-duration: 2s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	background: url(../img/common/icon_scroll_hand.png) center center no-repeat;
	background-size: auto 100%;
}

.flex._mb > * {
	margin-bottom: 7.14286vw;
}

.flex._mb_sp > * {
	margin-bottom: 50px;
}

.flex._mb_sp > *:last-child {
	margin-bottom: 0;
}

.flex._mb_sp-s > * {
	margin-bottom: 20px;
}

.flex._mb_sp-s > *:last-child {
	margin-bottom: 0;
}

.tab-dblock {
	display: block;
}

.grid2 {
	width: 100%;
	margin-right: 0;
}

.grid3 {
	width: 100%;
	margin-right: 0;
}

.grid4 {
	width: 100%;
	margin-right: 0;
}

.grid7 {
	width: 100%;
}

.grid2_small {
	width: 100%;
}

.grid2_wide {
	width: 100%;
}

.mb-xs {
	margin-bottom: 1.19048vw;
}

.mb-s {
	margin-bottom: 1.66667vw;
}

.mb-m {
	margin-bottom: 5vw;
}

.mb-mm {
	margin-bottom: 6.66667vw;
}

.mb-l {
	margin-bottom: 14.28571vw;
}

.mb-xl {
	margin-bottom: 21.42857vw;
}

.mb-xxl {
	margin-bottom: 25.71429vw;
}

.pb-xs {
	padding-bottom: 1.19048vw;
}

.pb-s {
	padding-bottom: 1.66667vw;
}

.pb-m {
	padding-bottom: 5vw;
}

.pb-mm {
	padding-bottom: 6.66667vw;
}

.pb-l {
	padding-bottom: 14.28571vw;
}

.pb-xl {
	padding-bottom: 21.42857vw;
}

.pb-xxl {
	padding-bottom: 25.71429vw;
}

.pt-xs {
	padding-top: 1.19048vw;
}

.pt-s {
	padding-top: 1.66667vw;
}

.pt-m {
	padding-top: 5vw;
}

.pt-mm {
	padding-top: 6.66667vw;
}

.pt-l {
	padding-top: 14.28571vw;
}

.pt-xl {
	padding-top: 21.42857vw;
}

.pt-xxl {
	padding-top: 25.71429vw;
}

.text_s {
	font-size: 3.57143vw;
}

.text_l {
	font-size: 3.33333vw;
}

.text_l {
	font-size: 3.66667vw;
}

.text_xl {
	font-size: 5vw;
}

.tablet_left {
	text-align: left;
}

.tablet_center {
	text-align: center;
}

.tablet {
	display: inline;
}

.pc {
	display: none;
}

.map iframe {
	height: 71.42857vw;
}

.table-1 th,
.table-1 td {
	display: block;
	width: 100%;
	padding-top: 2.38095vw;
	padding-bottom: 2.38095vw;
}

.table-1 th {
	font-weight: 500;
	padding-right: 0;
	padding-bottom: 0;
	padding-left: 4.7619vw;
}

.table-1 th:after {
	top: 5.2381vw;
	width: 3.57143vw;
}

.table-1 td {
	padding-top: 0;
	padding-bottom: 2.38095vw;
	padding-left: 4.7619vw;
}

.table-3 th,
.table-3 td {
	display: block;
	width: 100%;
	padding: 5.95238vw 4.7619vw;
}

.table-3 th {
	font-weight: 500;
	padding-top: 0;
	padding-bottom: 0;
	text-align: left;
}

.table-3 td {
	padding-top: 0;
	padding-bottom: 2.38095vw;
}

}

@media only screen and (max-width: 730px) {

.w700 {
	width: auto;
	margin-right: 20px;
	margin-left: 20px;
}

}

@media only screen and (max-width: 640px) {

.scroll._sp {
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

.sp_left {
	text-align: left;
}

.sp_center {
	text-align: center;
}

}

@media only screen and (max-width: 630px) {

.w600 {
	width: auto;
}

}

@media only screen and (max-width: 420px) {

.top-company_illust {
	width: auto;
	margin-left: 0;
	padding-right: 20%;
	padding-left: 20%;
}

.w1024 {
	padding-right: 4.7619vw;
	padding-left: 4.7619vw;
}

}

@keyframes cloudFloat {

0% {
	transform: translate(0, 0) scale(var(--scale));
}

25% {
	transform: translate(calc(var(--ampX) * .6), calc(var(--ampY) * -1)) scale(var(--scale));
}

50% {
	transform: translate(calc(var(--ampX) * -.8), 0) scale(calc(var(--scale) * 1.02));
}

75% {
	transform: translate(calc(var(--ampX) * .4), calc(var(--ampY))) scale(var(--scale));
}

100% {
	transform: translate(0, 0) scale(var(--scale));
}

}

@keyframes cloudDrift {

0% {
	left: var(--left-start);
}

100% {
	left: var(--left-end);
}

}

@keyframes icon1_anime2 {

0% {
	background-position: left 160% center;
}

100% {
	background-position: left -190% center;
}

}

@keyframes icon2_anime2 {

0% {
	-webkit-clip-path: polygon(100% 0%, 100% 45%, 100% 45%, 100% 100%, 0 100%, 0 0);
	clip-path: polygon(100% 0%, 100% 45%, 100% 45%, 100% 100%, 0 100%, 0 0);
}

45% {
	-webkit-clip-path: polygon(0% 0%, 0% 45%, 100% 45%, 100% 100%, 0 100%, 0 0);
	clip-path: polygon(0% 0%, 0% 45%, 100% 45%, 100% 100%, 0 100%, 0 0);
}

100% {
	-webkit-clip-path: polygon(0% 0%, 0% 45%, 100% 45%, 100% 100%, 0 100%, 0 0);
	clip-path: polygon(0% 0%, 0% 45%, 100% 45%, 100% 100%, 0 100%, 0 0);
}

}

@keyframes pagetop_mv2 {

0% {
	top: 20%;
}

50% {
	top: -30%;
}

51% {
	top: 110%;
}

100% {
	top: 20%;
}

}

@keyframes txt_fade {

0% {
	width: 0;
}

50% {
	width: 100%;
	transform: scaleX(1);
}

51% {
	transform: scaleX(1);
}

100% {
	transform: scaleX(0);
}

}

@keyframes hvFade {

0% {
	opacity: 0;
}

/* 工事前 */

10% {
	opacity: 1;
}

/* 1秒でフェードイン */

50% {
	opacity: 1;
}

/* 表示キープ（約2秒）*/

60% {
	opacity: 0;
}

/* 1秒でフェードアウト */

100% {
	opacity: 0;
}

/* 非表示キープ（約2秒）*/

}

@keyframes arr_move {

0% {
	transform: translate(0, 0);
}

50% {
	transform: translate(100%, 0);
}

51% {
	transform: translate(-100%, 0);
}

100% {
	transform: translate(0, 0);
}

}

@keyframes pageTtl_img_mv {

0% {
	bottom: 0;
}

100% {
	bottom: -9.76562vw;
}

}

@keyframes scroll_animation {

0 {
	transform: translate(-20px, 0);
}

50% {
	transform: translate(20px, 0);
}

100% {
	transform: translate(-20px, 0);
}

}


/*# sourceMappingURL=style.css.map */
