@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: 'Kiwi Maru', 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',Osaka,verdana,arial,clean,sans-serif;
	font-size: 1.14286vw;
	font-weight: 400;
	font-style: normal;
	line-height: 1.9;
	margin: 0 auto;
	padding: 0;
	color: #43484a;
	-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: normal;
}

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: #31bfdb url(../img/common/logo.webp) center center no-repeat;
	background-size: 180px auto;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

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

/*
* #Header
*/

header {
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	width: 14.28571vw;
	padding-bottom: 4.28571vw;
	color: #fff;
	border-radius: 0 0 3.57143vw 0;
	background: #31bfdb;
}

.header-logo {
	padding-top: 2.14286vw;
	padding-bottom: 2.14286vw;
	text-align: center;
}

.header-logo a {
	display: block;
	width: 7.92857vw;
	margin-right: auto;
	margin-left: auto;
}

.header-contact {
	margin-top: 1.42857vw;
}

.header-contact a {
	display: block;
	width: 80%;
	padding-top: .35714vw;
	padding-bottom: .35714vw;
	padding-left: 1.42857vw;
	color: #31bfdb;
	border-radius: 0 50px 50px 0;
	background: #ffe100;
}

.header-contact a:hover {
	width: 90%;
	opacity: 1;
}

.spNavBtn__btn {
	position: fixed;
	z-index: 112;
	bottom: 0;
	left: 50%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.spNavBtn__btn a {
	font-size: 12px;
	font-size: 1.2rem;
	position: relative;
	display: block;
	text-align: center;
	color: #fff;
	border-radius: 50%;
	background: #31bfdb;
}

.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 {
	padding-bottom: 5.71429vw;
}

.footer-nav {
	margin-left: 2.85714vw;
}

.footer-nav li {
	line-height: 1.8;
}

.footer-nav a {
	position: relative;
	padding-left: 1vw;
}

.footer-nav a:after {
	position: absolute;
	top: .28571vw;
	left: 0;
	display: block;
	width: .64286vw;
	content: '';
	background: url(../img/common/arr_blue.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 1 / 1;
}

.footer-left {
	width: 37.85714vw;
}

.footer-logo {
	width: 22.85714vw;
}

.copyright {
	text-align: center;
}

.sp-fixed_menu {
	position: fixed;
	z-index: 10;
	bottom: 0;
	left: 0;
	width: 100%;
	box-shadow: 0 0 20px rgba(0, 0, 0, .3);
}

.sp-fixed_menu ul {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.sp-fixed_menu ._shop,
.sp-fixed_menu ._map {
	font-size: 1.2rem;
	width: 25%;
	background: #31bfdb;
}

.sp-fixed_menu ._shop a,
.sp-fixed_menu ._map a {
	padding-top: 37px;
	background: url(../img/common/icon_shop.webp) center top 10px no-repeat;
	background-size: 28px auto;
}

.sp-fixed_menu ._map {
	background: #3b578a;
}

.sp-fixed_menu ._map a {
	background-image: url(../img/common/icon_map.webp);
}

.sp-fixed_menu ._contact {
	font-size: 1.6rem;
	width: 50%;
	background: #0e701e;
}

.sp-fixed_menu ._contact a {
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.sp-fixed_menu ._contact a span {
	padding-left: 20px;
	background: url(../img/common/ar_white.webp) center left no-repeat;
	background-size: 15px auto;
}

.sp-fixed_menu a {
	display: block;
	height: 60px;
	text-align: center;
	color: #fff;
}

.page_top {
	position: fixed;
	z-index: 10;
	right: .71429vw;
	bottom: .71429vw;
	transition: all .3s ease-out;
	opacity: 0;
}

.scrolled .page_top {
	opacity: 1;
}

.page_top a {
	position: relative;
	display: block;
	width: 3.57143vw;
	height: 3.57143vw;
	text-indent: -9999px;
	border-radius: 50%;
	background: #f9dbd9;
	background: linear-gradient(90deg, #f9dbd9 0%, #de5c53 100%);
}

.page_top a:after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 1.42857vw;
	content: '';
	-ms-transform: translate(-50%, -50%) rotate(-90deg);
	transform: translate(-50%, -50%) rotate(-90deg);
	background: url(../img/common/arr_white.webp) center center no-repeat;
	background-size: 80% auto;
	aspect-ratio: 1 / 1;
}

.page_top a:hover {
	opacity: 1;
}

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

/**
 * #Main
 */

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

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

.box1 {
	padding: 3.57143vw;
	border-radius: 2.14286vw;
	background: #e6f6f7;
}

.round {
	border-radius: 0 2.14286vw 0 2.14286vw;
}

.frm1 {
	position: relative;
	z-index: 1;
	margin-top: 9.28571vw;
	margin-bottom: 7.14286vw;
	background: #d8f4fa;
}

.frm1:before,
.frm1:after {
	position: absolute;
	left: 0;
	display: block;
	width: 100%;
	content: '';
}

.frm1:before {
	top: -8.92857vw;
	background: url(../img/common/frm_t.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1400 / 127;
}

.frm1:after {
	bottom: -6.42857vw;
	background: url(../img/common/frm_b.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1400 / 94;
}

.frm1 .section {
	position: relative;
	z-index: 2;
}

.frm2 {
	position: relative;
	z-index: 1;
	margin-top: 9.28571vw;
	margin-bottom: 7.14286vw;
	color: #fff;
	background: #31bfdb;
}

.frm2:before,
.frm2:after {
	position: absolute;
	left: 0;
	display: block;
	width: 100%;
	content: '';
}

.frm2:before {
	top: -8.92857vw;
	background: url(../img/common/frm2_t.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1400 / 127;
}

.frm2:after {
	bottom: -6.42857vw;
	background: url(../img/common/frm2_b.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1400 / 94;
}

.frm2 .section {
	position: relative;
	z-index: 2;
}

.frm3 {
	position: relative;
	z-index: 1;
	margin-top: 9.28571vw;
	margin-bottom: 7.14286vw;
	background: #f8f8db;
}

.frm3:before,
.frm3:after {
	position: absolute;
	left: 0;
	display: block;
	width: 100%;
	content: '';
}

.frm3:before {
	top: -8.92857vw;
	background: url(../img/common/frm3_t.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1400 / 127;
}

.frm3:after {
	bottom: -6.42857vw;
	background: url(../img/common/frm3_b.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1400 / 94;
}

.frm3 .section {
	position: relative;
	z-index: 2;
}

.cv-line {
	margin-right: 2.14286vw;
	margin-left: 2.14286vw;
}

.cv-tel a {
	font-size: 2.57143vw;
	position: relative;
	padding-left: 2.85714vw;
}

.cv-tel a:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 2.21429vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/common/icon_tel.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 31 / 48;
}

.cv-btn a {
	font-size: 1.71429vw;
	font-weight: bold;
	line-height: 1.5;
	display: inline-block;
	width: 22.14286vw;
	padding-top: 1.42857vw;
	padding-bottom: 1.42857vw;
	text-align: center;
	vertical-align: top;
	color: #fff;
	border-radius: .71429vw;
	background: #06c755;
}

.cv-mail .cv-btn a {
	background: #ff8c00;
}

.cv-btn a span {
	position: relative;
	display: inline-block;
	padding-left: 4.28571vw;
}

.cv-mail .cv-btn a span {
	padding-left: 3.57143vw;
}

.cv-btn a span:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 3.78571vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/common/icon_line.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 1 / 1;
}

.cv-mail .cv-btn a span:after {
	width: 3.21429vw;
	background-image: url(../img/common/icon_mail.webp);
	aspect-ratio: 45 / 31;
}

.cv-ttl {
	position: absolute;
	top: -12.85714vw;
	left: 0;
	width: 100%;
	padding-left: 14.28571vw;
	animation: floatY 2s ease-in-out infinite;
	text-align: center;
}

.cv-ttl img {
	width: 41.42857vw;
}

/* ふわふわアニメーション */

.uline {
	background: url(../img/common/uline.webp) center bottom repeat-x;
	background-size: auto .57143vw;
}

.list_icon li {
	font-size: 1.28571vw;
	line-height: 1.6;
	position: relative;
	margin-bottom: .35714vw;
	padding-left: 1.42857vw;
}

.list_icon li:after {
	position: absolute;
	top: .64286vw;
	left: 0;
	display: block;
	width: 1vw;
	content: '';
	background: url(../img/common/icon2.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 14 / 15;
}

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

.top-fv {
	position: relative;
	height: 51.14286vw;
	background: url(../img/top/fv_bg.webp) center center no-repeat;
	background-size: cover;
}

.top-fv_ttl {
	position: absolute;
	z-index: 5;
	top: 1.42857vw;
	right: 1.42857vw;
	width: 48.64286vw;
}

.top-fv_img1 {
	position: absolute;
	top: 0vw;
	left: 12.78571vw;
	width: 30.57143vw;
}

.top-fv_img2 {
	position: absolute;
	top: 23.28571vw;
	left: 21.57143vw;
	width: 24.14286vw;
}

.top-fv_img3 {
	position: absolute;
	right: 0vw;
	bottom: -6.14286vw;
	width: 58.64286vw;
}

.top-fv_img4 {
	position: absolute;
	right: 0vw;
	bottom: -6.14286vw;
	width: 30.35714vw;
}

.top-fv_img5 {
	position: absolute;
	top: 12.85714vw;
	left: 44.57143vw;
	width: 17.5vw;
}

.top-nayami_box {
	position: relative;
	padding: 2.85714vw;
	padding-bottom: 5.71429vw;
	border-radius: 2.14286vw;
	box-shadow: 0 0 2.14286vw rgba(49, 191, 219, .5);
}

.top-nayami_icon {
	margin-top: -5vw;
	text-align: center;
}

.top-nayami_icon img {
	height: 8.35714vw;
}

.top-nayami_illust1 {
	position: absolute;
	top: -8.28571vw;
	left: 1.14286vw;
	width: 10.71429vw;
}

.top-nayami_illust2 {
	position: absolute;
	top: -8.71429vw;
	right: -.92857vw;
	width: 14.42857vw;
}

.top-nayami_answer {
	position: relative;
	margin-top: -.71429vw;
}

.top-nayami_answer:after {
	position: absolute;
	top: -5vw;
	left: 50%;
	display: block;
	width: 22.85714vw;
	content: '';
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background: url(../img/common/intro_arr.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 320 / 54;
}

.top-voice .section {
	position: relative;
}

.top-voice_illust1 {
	position: absolute;
	top: -11.42857vw;
	left: 33.57143vw;
	width: 9.85714vw;
}

.top-voice_illust2 {
	position: absolute;
	top: -10.71429vw;
	right: 3.57143vw;
	width: 34.57143vw;
}

.top-voice_slide .slick-track {
	display: -ms-flexbox;
	display: flex;
}

.top-voice_slide .slick-slide {
	height: auto !important;
}

.top-voice_slide_item {
	margin-right: 1.07143vw;
	margin-left: 1.07143vw;
	padding: 1.42857vw;
	color: #43484a;
	border-radius: .71429vw;
	background: #fff;
}

.top-voice_slide_item ._cont {
	font-size: 1.07143vw;
	line-height: 1.6;
}

.top-voice_slide_item_ttl {
	font-weight: 700;
	color: #31bfdb;
}

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

.top-strong_illust {
	margin-top: -4.28571vw;
	text-align: center;
	background: url(../img/common/wave2.webp) center bottom no-repeat;
	background-size: 41.92857vw auto;
}

.top-strong_illust img {
	width: 10.92857vw;
}

.top-strong_txt {
	margin-left: 6.78571vw;
}

.top-service {
	position: relative;
}

.top-service_wave {
	position: absolute;
	z-index: 2;
	top: -17.85714vw;
	right: 0;
	width: 29.07143vw;
}

.top-equ_slide_item {
	padding-right: 1.07143vw;
	padding-left: 1.07143vw;
}

.top-price {
	position: relative;
}

.top-price_bg {
	position: absolute;
	z-index: -1;
	top: 55%;
	left: 55%;
	width: 75.83214vw;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	opacity: .6;
}

.price-table {
	line-height: 1.6;
	width: 100%;
	border-collapse: collapse;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.price-table th {
	text-align: center;
	color: #fff;
	border-radius: .71429vw .71429vw 0 0;
	background: #31bfdb;
}

.price-table th._option {
	background: #747474;
}

.price-table td {
	border-top: 1px solid #31bfdb;
	background: #fff;
}

.price-table th,
.price-table td {
	padding: .71429vw .71429vw;
}

.price-table tr:last-child td:first-child {
	border-radius: 0 0 0 .71429vw;
}

.price-table tr:last-child td:last-child {
	border-radius: 0 0 .71429vw 0;
}

.price-table ._ttl {
	background: #f1f1f1;
}

.price-table ._price {
	text-align: right;
}

.price-detail {
	padding: 2.14286vw 2.85714vw;
	border-radius: 1.42857vw;
	background: rgba(255, 255, 255, .8);
}

.price-detail_list {
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.price-detail_list dt {
	font-weight: 700;
	width: 9vw;
}

.price-detail_list dd {
	width: calc(100% - 9vw);
	margin-bottom: 1.07143vw;
}

.top-flow_item {
	position: relative;
	width: 17.5%;
	padding: 1.42857vw;
	border: 2px solid #31bfdb;
	border-radius: 1.42857vw;
}

.top-flow_item:after {
	position: absolute;
	top: 50%;
	right: -2.14286vw;
	display: block;
	width: 1.35714vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/common/arr.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 19 / 26;
}

.top-flow_item:last-child:after {
	content: none;
}

.top-flow_item_num {
	line-height: 1.5;
	position: absolute;
	top: 0;
	left: 50%;
	display: -ms-flexbox;
	display: flex;
	width: 2.71429vw;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	color: #fff;
	border-radius: 50%;
	background: #31bfdb;
	aspect-ratio: 1 / 1;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.top-flow_item_ttl {
	font-size: 1.42857vw;
	font-weight: 500;
	margin-top: .71429vw;
	text-align: center;
	color: #31bfdb;
}

.top-eria_flex {
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.top-eria_map {
	width: 21.14286vw;
}

.top-eria_cont {
	width: 28.57143vw;
	margin-left: 2.85714vw;
}

.top-faq {
	position: relative;
}

.top-faq_wave {
	position: absolute;
	top: 2.14286vw;
	left: 0;
	width: 37.14286vw;
}

.faq-wrap {
	line-height: 1.6;
	border: 1px solid #31bfdb;
	border-radius: 2.14286vw;
}

.faq-box {
	position: relative;
	border-bottom: 1px solid #31bfdb;
}

.faq-box:last-child {
	border-bottom: none;
}

.faq-box:before,
.faq-box:after {
	position: absolute;
	top: 2.5vw;
	right: 2.85714vw;
	display: block;
	width: 1.42857vw;
	height: 2px;
	content: '';
	background: #31bfdb;
}

.faq-box:after {
	transition: all .15s ease-out;
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.faq-box.open:after {
	-ms-transform: rotate(0);
	transform: rotate(0);
}

.faq-box_ttl {
	font-size: 1.71429vw;
	font-weight: 500;
	position: relative;
	padding: 1.42857vw;
	padding-left: 5.5vw;
	cursor: pointer;
	color: #31bfdb;
}

.faq-box_ttl:after {
	font-size: 2.35714vw;
	position: absolute;
	top: .71429vw;
	left: 2.85714vw;
	content: 'Q';
}

.open .faq-box_ttl {
	border-bottom: 1px dotted #31bfdb;
}

.faq-box_cont {
	display: none;
	padding: 1.42857vw;
	padding-left: 5.5vw;
}

.open .faq-box_cont {
	display: block;
}

.faq-box_cont a {
	text-decoration: underline;
	color: #31bfdb;
}

.top-company .section {
	position: relative;
}

.top-company_cont {
	padding-left: 21.42857vw;
}

.top-company_illust {
	position: absolute;
	bottom: 0;
	left: 27.14286vw;
	width: 12.5vw;
}

.top-news_item {
	line-height: 1.6;
	border-bottom: 1px solid #31bfdb;
}

.top-news_item:first-child {
	border-top: 1px solid #31bfdb;
}

.top-news_item a {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	padding: 1.07143vw;
	padding-left: 2.57143vw;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.top-news_item a:after {
	position: absolute;
	top: 1.57143vw;
	left: 1.42857vw;
	display: block;
	width: .64286vw;
	content: '';
	background: url(../img/common/arr.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 9 / 12;
}

.company-ceo_img {
	text-align: center;
}

.company-ceo_img img {
	width: 70%;
}

.top-news_item_time {
	width: 7.85714vw;
}

.top-news_item_time_ttl {
	width: calc(100% - 7.85714vw);
}

/*------------ contact ------------*/

.contact-table {
	width: 100%;
	border-top: 1px solid #31bfdb;
}

.contact-table th,
.contact-table td {
	padding: 2.14286vw 1.42857vw;
	vertical-align: top;
	border-bottom: 1px solid #31bfdb;
}

.contact-table th {
	position: relative;
	padding-right: 5.71429vw;
	white-space: nowrap;
}

.contact-table th ._required {
	position: absolute;
	top: 3.21429vw;
	right: 1.42857vw;
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

input[type='text'],
input[type='tel'],
input[type='email'],
textarea {
	width: 100%;
	padding: 8px;
	border: none;
	background: #fff;
}

input[type='text']#zip,
input[type='text']#pref,
input[type='tel']#zip,
input[type='tel']#pref,
input[type='email']#zip,
input[type='email']#pref,
textarea#zip,
textarea#pref {
	width: 14.28571vw;
}

input[type='text']#city,
input[type='text']#addr,
input[type='text']#other,
input[type='tel']#city,
input[type='tel']#addr,
input[type='tel']#other,
input[type='email']#city,
input[type='email']#addr,
input[type='email']#other,
textarea#city,
textarea#addr,
textarea#other {
	width: 28.57143vw;
}

textarea {
	height: 150px;
}

.zip_list li {
	margin-bottom: .71429vw;
}

.zip_list li:last-child {
	margin-bottom: 0;
}

.select_wrap {
	display: inline-block;
	border: 1px solid #656565;
	border-radius: 5px;
	background: url(../img/common/select_bg.webp) right center no-repeat;
	background-size: 20px auto;
}

.no-webp .select_wrap {
	background-image: url(../img/common/select_bg.jpg);
}

.select_wrap select {
	width: 200px;
	padding: 0 30px 0 10px;
	border: none;
	background: 0 0;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

._required {
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: normal;
	line-height: 1;
	display: inline-block;
	padding: 3px 7px;
	color: #fff;
	border-radius: 4px;
	background: #dc0000;
}

._required._none {
	background: #acacac;
}

.pp_box {
	overflow-y: scroll;
	height: 14.28571vw;
	margin-right: 10%;
	margin-left: 10%;
	padding: 1.42857vw;
	border: 1px solid rgba(116, 116, 116, .3);
}

.wpcf7-checkbox input[type='checkbox'] {
	display: none;
}

.wpcf7-checkbox input[type='checkbox']:checked + .wpcf7-list-item-label {
	font-weight: bold;
	color: #ff8c00;
}

.wpcf7-checkbox input[type='checkbox']:checked + .wpcf7-list-item-label:before {
	opacity: 1;
}

.wpcf7-checkbox .wpcf7-list-item {
	margin-left: 0 !important;
}

.wpcf7-checkbox .wpcf7-list-item-label {
	position: relative;
	padding-left: 1.78571vw;
}

.wpcf7-checkbox .wpcf7-list-item-label:after {
	position: absolute;
	top: -.21429vw;
	left: 0;
	display: block;
	width: 1.42857vw;
	content: '';
	border-radius: .14286vw;
	background: rgba(116, 116, 116, .3);
	aspect-ratio: 1 / 1;
}

.wpcf7-checkbox .wpcf7-list-item-label:before {
	position: absolute;
	top: -.42857vw;
	left: .28571vw;
	width: .71429vw;
	content: '';
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	opacity: 0;
	border-right: 3px solid #ff8c00;
	border-bottom: 3px solid #ff8c00;
	aspect-ratio: 1 / 1.4;
}

.wpcf7-radio input[type=radio] {
	display: none;
}

.wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label {
	font-weight: bold;
	color: #ff8c00;
}

.wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label:before {
	opacity: 1;
}

.wpcf7-radio .wpcf7-list-item {
	margin-right: 2.85714vw;
	margin-bottom: 1.07143vw;
	margin-left: 0;
}

.wpcf7-radio .wpcf7-list-item-label {
	position: relative;
	padding-left: 1.78571vw;
}

.wpcf7-radio .wpcf7-list-item-label:after {
	position: absolute;
	top: -.21429vw;
	left: 0;
	display: block;
	width: 1.42857vw;
	content: '';
	border-radius: 50%;
	background: rgba(116, 116, 116, .3);
	aspect-ratio: 1 / 1;
}

.wpcf7-radio .wpcf7-list-item-label:before {
	position: absolute;
	top: .14286vw;
	left: .35714vw;
	display: block;
	width: .71429vw;
	content: '';
	opacity: 0;
	border-radius: 50%;
	background: #ff8c00;
	aspect-ratio: 1 / 1;
}

.contact_submit {
	border: none;
}

.check_boxs .wpcf7-form-control {
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-direction: column;
}

.contact-table .wpcf7-not-valid-tip {
	font-size: 1vw;
}

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

.slick-prev,
.slick-next {
	z-index: 5;
	width: 3.57143vw;
	height: auto;
	border-radius: 50%;
	background: #f8f8db url(../img/common/arr.webp) center center no-repeat;
	background-size: 26% auto;
	aspect-ratio: 1 / 1;
}

.slick-prev:before,
.slick-next:before {
	content: none;
}

.slick-prev {
	left: 15.71429vw;
	-ms-transform: translate(0, -50%) scale(-1, 1);
	transform: translate(0, -50%) scale(-1, 1);
}

.slick-next {
	right: 1.42857vw;
}

.slick-dotted.slick-slider {
	padding-bottom: 2.85714vw;
}

.slick-dots {
	bottom: 0;
}

.slick-dots li {
	width: 1.28571vw;
	height: 1.28571vw;
	margin: 0 .35714vw;
}

.slick-dots li button {
	width: 1.28571vw;
	height: 1.28571vw;
	border-radius: 50%;
	background: #f1f1f1;
}

.slick-dots li.slick-active button {
	background: #ffe100;
}

.fix-nav {
	display: none;
}

.top-about_item_img {
	margin-top: -.71429vw;
}

.top-about_item_img img {
	border-radius: 1.42857vw;
}

.wpcf7-turnstile {
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
}

.wp-side {
	width: 24%;
}

.post_main {
	width: 70%;
}

.sideBox .heading_eng2 {
	margin-right: 1.42857vw;
}

.side-ttl {
	font-size: 1.42857vw;
	font-weight: bold;
	line-height: 1;
	position: relative;
	margin-bottom: 1.07143vw;
	padding-bottom: .71429vw;
	color: #31bfdb;
}

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

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

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

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

.sideBox-list > li > a:after {
	position: absolute;
	top: .28571vw;
	left: 0;
	display: block;
	width: .71429vw;
	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: #31bfdb;
	border-radius: 50%;
	background: #31bfdb;
}

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

.post_content h2 {
	font-size: 1.71429vw;
	font-weight: bold;
	clear: both;
	margin-top: 2.5vw;
	padding: 1.07143vw 2.14286vw;
	color: #31bfdb;
	background: rgba(241, 241, 241, .7);
}

.post_content h3 {
	font-size: 1.57143vw;
	font-weight: bold;
	clear: both;
	margin-top: 2.5vw;
	padding-bottom: .71429vw;
	color: #31bfdb;
	border-bottom: 1px solid #31bfdb;
}

.post_content h4 {
	font-size: 1.5vw;
	font-weight: bold;
	position: relative;
	clear: both;
	margin-top: 2.5vw;
	padding-bottom: .71429vw;
	color: #31bfdb;
}

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

.post_content h5 {
	font-size: 1.35714vw;
	font-weight: bold;
	clear: both;
	margin-top: 2.5vw;
	padding-bottom: .71429vw;
	color: #31bfdb;
}

.post_content h6 {
	font-size: 1.28571vw;
	font-weight: bold;
	clear: both;
	margin-top: 2.5vw;
	padding-bottom: .71429vw;
	color: #31bfdb;
}

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

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

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

.post_content ul li:after,
.post_content ol li:after {
	position: absolute;
	top: .57143vw;
	left: 0;
	display: block;
	width: .71429vw;
	content: '';
	border-radius: 50%;
	background: #31bfdb;
	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: #31bfdb;
}

.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 {
	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: 2.85714vw;
	height: 2.85714vw;
	margin: 0 .28571vw;
	text-align: center;
	vertical-align: top;
	border-radius: 50%;
	background: #f1f1f1;
	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: #31bfdb;
}

.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: 100% auto;
}

.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 .btn2 a {
	width: 14.28571vw;
}

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

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

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

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

.wp-paging .next a:after {
	right: 1.07143vw;
	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 {
	transition: all .3s ease-out .5s;
	-webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
	clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
}

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

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

.breadcrumb li {
	font-size: 1.3rem;
	line-height: 1;
	position: relative;
	position: relative;
	margin-right: 1.07143vw;
	padding-left: 1vw;
	vertical-align: top;
}

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

.breadcrumb li a {
	text-decoration: underline;
}

/**
 * #btn
 */

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	font-size: 1.35714vw;
	font-weight: 500;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	width: 25vw;
	padding-top: 1.42857vw;
	padding-bottom: 1.42857vw;
	text-align: center;
	vertical-align: top;
	color: #31bfdb;
	border-radius: 60px;
	background: #f8f8db;
}

.btn a span,
.btn input[type='submit'] span,
.btn input[type='button'] span,
.btn button span {
	position: relative;
	padding-left: 1.42857vw;
}

.btn a span:after,
.btn input[type='submit'] span:after,
.btn input[type='button'] span:after,
.btn button span:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: .64286vw;
	content: '';
	transition: all .3s ease-out;
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/common/arr.webp) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 9 / 12;
}

.btn a:hover,
.btn input[type='submit']:hover,
.btn input[type='button']:hover,
.btn button:hover {
	color: #fff;
	background: #31bfdb;
}

.btn a:hover span:after,
.btn input[type='submit']:hover span:after,
.btn input[type='button']:hover span:after,
.btn button:hover span:after {
	background-image: url(../img/common/arr_white.webp);
}

.btn input[type='submit'] {
	padding-top: 1.42857vw;
	padding-bottom: 1.42857vw;
	color: #fff;
	background: #31bfdb;
}

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

.btn .wpcf7-previous {
	border: none;
}

.btn2 a {
	position: relative;
	z-index: 1;
	display: inline-block;
	overflow: hidden;
	width: 14.28571vw;
	padding: .71429vw 1.42857vw;
	color: #fff;
	border-radius: .71429vw;
	background: #31bfdb;
}

.btn2 a:after {
	position: absolute;
	top: 50%;
	right: 1.07143vw;
	display: block;
	width: 1.42857vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border-radius: 50%;
	background: #fff url(../img/common/arr.webp) center center no-repeat;
	background-size: 30% auto;
	aspect-ratio: 1 / 1;
}

.btn2 a:hover {
	opacity: 1;
	color: #31bfdb;
	background: #f8f8db;
}

.btn2 a:hover ._icon:after {
	left: -.14286vw;
	width: .71429vw;
	background: #31bfdb;
}

.btn2 a:hover ._icon:before {
	right: -.35714vw;
	width: 3.57143vw;
}

.btn3 a {
	position: relative;
	z-index: 1;
	display: inline-block;
	overflow: hidden;
	width: 14.28571vw;
	padding: .71429vw 1.42857vw;
	border-radius: .71429vw;
	background: #fff;
}

.btn3 a:after {
	position: absolute;
	top: 50%;
	right: 1.42857vw;
	display: block;
	width: 1.71429vw;
	content: '';
	transition: all .3s ease-out;
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	border-radius: 50%;
	background: #fff url(../img/common/arr_orange.webp) center center no-repeat;
	background-size: 40% auto;
	aspect-ratio: 1 / 1;
}

.btn3 a:hover {
	opacity: 1;
}

.btn3 a:hover:after {
	background-color: #e34d3f;
	background-image: url(../img/common/arr_white.webp);
}

.pageTtl {
	line-height: 1.5;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	height: 14.28571vw;
	text-align: center;
	color: #31bfdb;
	background: #f8f8db;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pageTtl .section {
	position: relative;
	z-index: 2;
}

.pageTtl .eng {
	font-size: 1.42857vw;
}

.pageTtl .jpn {
	font-size: 2.85714vw;
	font-weight: bold;
}

.pageTtl_bg {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.pageTtl_bg img {
	width: 100%;
	height: 100%;
	opacity: .3;
	object-fit: cover;
}

.pageTtl-recruit {
	width: 70vw;
	padding-top: 5.71429vw;
	padding-bottom: 5.71429vw;
	border-radius: 0 200px 200px 0;
	background: #cc8181;
	background: linear-gradient(63deg, rgba(204, 129, 129, .7) 0%, rgba(80, 163, 218, .7) 100%);
}

.heading1 {
	font-size: 3vw;
	font-weight: 500;
	position: relative;
	margin-bottom: 1.42857vw;
	padding-top: 3.57143vw;
	padding-bottom: .71429vw;
	text-align: center;
	color: #31bfdb;
	background: url(../img/common/wave.webp) center bottom no-repeat;
	background-size: auto .5vw;
}

.heading1._white {
	color: #fff;
	background-image: url(../img/common/wave_white.webp);
}

.heading1:after {
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 2.14286vw;
	content: '';
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background: url(../img/common/icon1.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 30 / 51;
}

.heading2 {
	font-size: 1.71429vw;
	font-weight: 500;
	margin-bottom: 1.07143vw;
	text-align: center;
	color: #31bfdb;
}

.heading2 ._l {
	font-size: 2.07143vw;
}

.heading3 {
	font-size: 2.14286vw;
	font-weight: 500;
	color: #31bfdb;
}

.heading3._l {
	font-size: 3vw;
}

.heading4 {
	font-size: 2vw;
	font-weight: 500;
	position: relative;
	margin-bottom: 1.07143vw;
	padding-left: 2.71429vw;
	color: #31bfdb;
}

.heading4:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 1.64286vw;
	content: '';
	background: url(../img/common/icon1.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 23 / 39;
}

.heading5 {
	line-height: 1.5;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	min-height: 6.42857vw;
	margin-bottom: 1.07143vw;
	padding-left: 6.78571vw;
	border-radius: 50px;
	background: #f8f8db;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

.heading5 ._num {
	font-size: 1.71429vw;
	position: absolute;
	top: 1.07143vw;
	left: 1.07143vw;
	display: -ms-flexbox;
	display: flex;
	width: 4.28571vw;
	text-align: center;
	color: #31bfdb;
	border-radius: 50%;
	background: #fff;
	aspect-ratio: 1 / 1;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.heading5 ._jpn {
	font-size: 1.71429vw;
	font-weight: 500;
	color: #31bfdb;
}

.heading6 {
	font-size: 2.07143vw;
}

.heading7 span {
	font-size: 1.28571vw;
	line-height: 1.6;
	position: relative;
	display: inline-block;
	padding: .14286vw 1.78571vw;
	color: #fff;
	border-radius: 40px;
	background: #31bfdb;
}

.heading7 span:after {
	position: absolute;
	bottom: -1.14286vw;
	left: 50%;
	display: block;
	width: 1.28571vw;
	content: '';
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	background: url(../img/common/icon_baloon.webp) center center no-repeat;
	background-size: contain;
	aspect-ratio: 18 / 21;
}

.heading8 {
	font-size: 1.28571vw;
	margin-bottom: .71429vw;
	padding: .21429vw 1.07143vw;
	color: #fff;
	background: #31bfdb;
}

.scroll_icon {
	display: none;
}

/**
 * #Col
 */

.section {
	padding-right: 3.57143vw;
	padding-left: 17.85714vw;
}

.w1100 {
	width: 78.57143vw;
	margin-right: auto;
	margin-left: auto;
}

.w600 {
	width: 42.85714vw;
	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 {
	width: 64.28571vw;
	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: 3.57143vw;
}

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

.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: 35%;
}

.grid2_wide {
	width: 60%;
}

/**
 * #Position
 */

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

/**
 * #Margin
 */

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/**
 * #Text
 */

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

.text_m {
	font-size: 1.28571vw;
}

.text_l {
	font-size: 1.42857vw;
	line-height: 1.7;
}

.text_red {
	color: #de2900;
}

.text_blue {
	color: #31bfdb;
}

.bold {
	font-weight: 700;
}

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

.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: 29.64286vw;
	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: 'Cormorant Garamond', serif;
	font-weight: 300;
	font-style: normal;
	font-optical-sizing: auto;
}

.table-1 {
	width: 100%;
	border-spacing: 0 1.42857vw;
	border-collapse: separate;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.table-1 th,
.table-1 td {
	line-height: 1.6;
	padding: .71429vw 1.42857vw;
	vertical-align: top;
}

.table-1 th {
	font-weight: bold;
	font-weight: 500;
	position: relative;
	text-align: right;
	color: #31bfdb;
	border-right: 2px solid #31bfdb;
}

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

.top-price_detail {
	padding-top: 250px;
	padding-bottom: 250px;
	text-align: center;
	background: #ccc;
}

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

.headerNav__list > li > a {
	line-height: 1.8;
	position: relative;
	display: block;
	padding-left: 1.42857vw;
	color: #fff;
}

.headerNav__list > li > a:after {
	position: absolute;
	top: 0;
	left: -7.14286vw;
	display: block;
	width: 7.14286vw;
	height: 100%;
	content: '';
	transition: all .15s ease-out;
	border-radius: 50px;
	background: #ffe100;
}

.headerNav__list > li > a:hover {
	opacity: 1;
	color: #ffe100;
}

.headerNav__list > li > a:hover:after {
	left: -6.42857vw;
}

}

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

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

}

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

body {
	font-size: 4.04762vw;
}

header {
	width: 46.28571vw;
	padding-bottom: 0;
	border-radius: 0 0 7.14286vw 0;
}

.header-logo {
	padding-top: 0;
	padding-bottom: 0;
}

.header-logo a {
	width: 35.42857vw;
	padding-top: 3.57143vw;
	padding-bottom: 3.57143vw;
}

.header-contact a {
	width: 100%;
	padding-top: 2.38095vw;
	padding-bottom: 2.38095vw;
	padding-left: 4.7619vw;
}

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

.recruit .hab-nav {
	background: #d8f4fa;
}

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

.headerNav {
	margin-bottom: 9.52381vw;
}

.headerNav__list {
	margin-bottom: 7.14286vw;
	text-align: left;
}

.headerNav__list > li {
	border-bottom: 1px solid rgba(49, 191, 219, .3);
}

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

.headerNav__list > li > a {
	font-size: 4.28571vw;
	font-weight: bold;
	position: relative;
	display: block;
	padding-top: 3.57143vw;
	padding-bottom: 3.57143vw;
	padding-left: 7.14286vw;
}

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

.headerNav__list > li ._sub {
	padding-left: 7.14286vw;
}

.headerNav__list > li ._sub li {
	border-top: 1px dotted rgba(49, 191, 219, .3);
}

.headerNav__list > li ._sub li a {
	position: relative;
	display: block;
	padding: 2.38095vw;
	padding-left: 5.95238vw;
}

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

.hab-menu__only {
	display: block;
}

.hab-menu_btn.btn2 a,
.hab-menu_btn.btn3 a {
	display: block;
	width: auto;
}

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

#spNavBtn {
	display: block;
}

footer {
	padding-bottom: 16.66667vw;
}

.footer-right {
	margin-bottom: 11.90476vw !important;
}

.footer-nav {
	display: -ms-flexbox;
	display: flex;
	margin-left: 0;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.footer-nav li {
	width: 50%;
}

.footer-nav a {
	display: block;
	padding-top: 1.19048vw;
	padding-bottom: 1.19048vw;
	padding-left: 3.33333vw;
}

.footer-nav a:after {
	top: 3.33333vw;
	width: 2.14286vw;
}

.footer-left {
	width: auto;
}

.footer-logo {
	width: 60vw;
	margin-right: auto;
	margin-left: auto;
}

.copyright {
	font-size: 3.33333vw;
	line-height: 1.6;
	padding-top: 4.7619vw;
	text-align: left;
}

.page_top {
	right: 2.38095vw;
	bottom: 21.42857vw;
}

.page_top a {
	width: 11.90476vw;
	height: 11.90476vw;
}

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

.box1 {
	padding: 4.7619vw;
	border-radius: 4.7619vw;
}

.round {
	border-radius: 0 4.7619vw 0 4.7619vw;
}

.frm1 {
	padding-bottom: 4.7619vw;
}

.frm1:before {
	top: -10.92857vw;
	background-size: auto 100%;
	aspect-ratio: 1400 / 200;
}

.frm1:after {
	bottom: -8.42857vw;
	background-size: auto 100%;
	aspect-ratio: 1400 / 160;
}

.frm1 .section {
	padding-top: 9.52381vw;
}

.frm2 {
	padding-bottom: 4.7619vw;
}

.frm2:before {
	top: -10.92857vw;
	background-size: auto 100%;
	aspect-ratio: 1400 / 200;
}

.frm2:after {
	bottom: -8.42857vw;
	background-size: auto 100%;
	aspect-ratio: 1400 / 160;
}

.frm2 .section {
	padding-top: 9.52381vw;
}

.frm3 {
	padding-bottom: 4.7619vw;
}

.frm3:before {
	top: -10.92857vw;
	background-size: auto 100%;
	aspect-ratio: 1400 / 200;
}

.frm3:after {
	bottom: -8.42857vw;
	background-size: auto 100%;
	aspect-ratio: 1400 / 160;
}

.frm3 .section {
	padding-top: 9.52381vw;
}

.cv-line {
	margin-top: 3.57143vw;
	margin-right: auto;
	margin-bottom: 3.57143vw;
	margin-left: auto;
}

.cv-tel {
	text-align: center;
}

.cv-tel a {
	font-size: 7.14286vw;
	line-height: 1.3;
	display: inline-block;
	margin-right: auto;
	margin-left: auto;
	padding-left: 6.66667vw;
	text-align: center;
	vertical-align: top;
}

.cv-tel a:after {
	width: 5.16667vw;
}

.cv-btn {
	text-align: center;
}

.cv-btn a {
	font-size: 4.04762vw;
	width: 80%;
	padding-top: 3.80952vw;
	padding-bottom: 3.80952vw;
	border-radius: 2.38095vw;
}

.cv-btn a span {
	padding-left: 7.14286vw;
}

.cv-mail .cv-btn a span {
	padding-left: 5.95238vw;
}

.cv-btn a span:after {
	width: 6.30952vw;
}

.cv-mail .cv-btn a span:after {
	width: 5.35714vw;
}

.cv-ttl {
	top: -16.85714vw;
	padding-left: 0;
}

.cv-ttl img {
	width: 86.42857vw;
}

.uline {
	background-size: auto 1.90476vw;
}

.list_icon li {
	font-size: 4.04762vw;
	margin-bottom: .83333vw;
	padding-left: 3.33333vw;
}

.list_icon li:after {
	top: 2.14286vw;
	width: 2.33333vw;
}

.top-fv {
	height: 126.2381vw;
}

.top-fv_ttl {
	top: 17.42857vw;
	right: 3.42857vw;
	width: 74.64286vw;
}

.top-fv_img1 {
	top: 38vw;
	left: 5.78571vw;
	width: 42.57143vw;
}

.top-fv_img2 {
	z-index: 1;
	top: 51.28571vw;
	left: 51.57143vw;
	width: 37.14286vw;
}

.top-fv_img3 {
	right: 0vw;
	bottom: -9.62381vw;
	width: 91.87381vw;
}

.top-fv_img4 {
	right: 0vw;
	bottom: -9.62381vw;
	width: 47.55952vw;
}

.top-fv_img5 {
	top: 73.85714vw;
	left: 30.57143vw;
	width: 19.5vw;
}

.top-nayami_box {
	padding: 4.7619vw;
	padding-bottom: 4.7619vw;
	border-radius: 5vw;
	box-shadow: 0 0 5vw rgba(49, 191, 219, .5);
}

.top-nayami_icon {
	margin-top: -7.14286vw;
}

.top-nayami_icon img {
	height: 16.71429vw;
}

.top-nayami_illust1 {
	top: 4.71429vw;
	left: -1.85714vw;
	width: 17.71429vw;
}

.top-nayami_illust2 {
	top: -4.71429vw;
	right: -1.92857vw;
	width: 22.42857vw;
}

.top-nayami_answer {
	margin-top: 0;
	padding-top: 9.52381vw;
}

.top-nayami_answer:after {
	top: 0;
	width: 47.61905vw;
}

.top-voice_illust1 {
	top: -14.42857vw;
	left: 9.57143vw;
	width: 15.85714vw;
}

.top-voice_illust2 {
	top: -15.71429vw;
	width: 61.57143vw;
}

.top-voice_slide_item {
	margin-right: 3.57143vw;
	margin-left: 3.57143vw;
	padding: 4.7619vw;
	border-radius: 2.38095vw;
}

.top-voice_slide_item ._cont {
	font-size: 3.57143vw;
}

.top-strong_illust {
	margin-top: -6.42857vw;
	background-size: 62.89286vw auto;
}

.top-strong_illust img {
	width: 16.39286vw;
}

.top-service_wave {
	width: 45.07143vw;
}

.top-price {
	overflow: hidden;
}

.top-price_bg {
	top: 63%;
	left: 50%;
	width: 195.83214vw;
}

.price-table th {
	border-radius: 2.38095vw 2.38095vw 0 0;
}

.price-table th,
.price-table td {
	padding: 2.38095vw 2.38095vw;
}

.price-table tr:last-child td:first-child {
	border-radius: 0 0 0 2.38095vw;
}

.price-table tr:last-child td:last-child {
	border-radius: 0 0 2.38095vw 0;
}

.price-detail {
	padding: 4.7619vw 4.7619vw;
	border-radius: 4.7619vw;
}

.price-detail_list dt {
	width: auto;
}

.price-detail_list dd {
	width: auto;
	margin-bottom: 2.38095vw;
	margin-left: 1em;
}

.top-flow_item {
	width: auto;
	margin-bottom: 11.90476vw !important;
	padding: 4.7619vw;
	border-radius: 4.7619vw;
}

.top-flow_item:after {
	top: auto;
	right: 50%;
	bottom: -8vw;
	width: 3.57143vw;
	-ms-transform: translate(50%, 0) rotate(90deg);
	transform: translate(50%, 0) rotate(90deg);
}

.top-flow_item_num {
	width: 7.14286vw;
}

.top-flow_item_ttl {
	font-size: 4.52381vw;
	margin-top: 2.38095vw;
}

.top-eria_flex {
	display: block;
}

.top-eria_map {
	width: auto;
	text-align: center;
}

.top-eria_map img {
	width: 60%;
}

.top-eria_cont {
	width: auto;
	margin-bottom: 3.57143vw;
	margin-left: 0;
}

.top-faq_wave {
	width: 61.14286vw;
}

.faq-wrap {
	border-radius: 4.7619vw;
}

.faq-box:before,
.faq-box:after {
	top: 5.83333vw;
	right: 6.66667vw;
	width: 3.33333vw;
}

.faq-box_ttl {
	font-size: 4.28571vw;
	padding: 3.33333vw;
	padding-right: 9.52381vw;
	padding-left: 12.83333vw;
}

.faq-box_ttl:after {
	font-size: 5.95238vw;
	top: .66667vw;
	left: 5.66667vw;
}

.faq-box_cont {
	padding: 3.33333vw;
	padding-left: 12.83333vw;
}

.top-company_cont {
	padding-left: 0;
}

.top-company_illust {
	left: 68.14286vw;
	width: 25.5vw;
}

.top-news_item a {
	display: block;
	padding: 2.38095vw;
	padding-left: 6vw;
}

.top-news_item a:after {
	top: 50%;
	left: 2.38095vw;
	width: 2.14286vw;
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.company-ceo_img img {
	width: 50%;
}

.top-news_item_time {
	width: auto;
}

.top-news_item_time_ttl {
	width: auto;
}

.contact-table th,
.contact-table td {
	display: block;
	width: 100%;
	padding: 3.57143vw 0;
}

.contact-table th {
	font-weight: 500;
	padding-bottom: 0;
	border-bottom: none;
}

.contact-table th ._required {
	top: 4.7619vw;
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

input[type='text']#zip,
input[type='text']#pref,
input[type='tel']#zip,
input[type='tel']#pref,
input[type='email']#zip,
input[type='email']#pref,
textarea#zip,
textarea#pref {
	width: 100%;
}

input[type='text']#city,
input[type='text']#addr,
input[type='text']#other,
input[type='tel']#city,
input[type='tel']#addr,
input[type='tel']#other,
input[type='email']#city,
input[type='email']#addr,
input[type='email']#other,
textarea#city,
textarea#addr,
textarea#other {
	width: 100%;
}

.zip_list li {
	margin-bottom: 2.38095vw;
}

._required {
	top: 30px;
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

.pp_box {
	height: 35.71429vw;
	margin-right: 0;
	margin-left: 0;
	padding: 4.7619vw;
}

.wpcf7-list-item {
	display: block !important;
}

.wpcf7-checkbox .wpcf7-list-item {
	margin-bottom: 3.57143vw;
}

.wpcf7-checkbox .wpcf7-list-item-label {
	padding-left: 5.95238vw;
}

.wpcf7-checkbox .wpcf7-list-item-label:after {
	top: -.71429vw;
	width: 4.7619vw;
	border-radius: .47619vw;
}

.wpcf7-checkbox .wpcf7-list-item-label:before {
	top: -1.42857vw;
	left: .95238vw;
	width: 2.38095vw;
}

.wpcf7-radio .wpcf7-list-item {
	margin-right: 0;
	margin-bottom: 3.57143vw;
}

.wpcf7-radio .wpcf7-list-item-label {
	padding-left: 5.95238vw;
}

.wpcf7-radio .wpcf7-list-item-label:after {
	top: -.71429vw;
	width: 4.7619vw;
}

.wpcf7-radio .wpcf7-list-item-label:before {
	top: .47619vw;
	left: 1.19048vw;
	width: 2.38095vw;
}

.contact-table .wpcf7-not-valid-tip {
	font-size: 3.33333vw;
}

.slick-prev,
.slick-next {
	width: 8.33333vw;
}

.slick-prev {
	left: 2.38095vw;
}

.slick-next {
	right: 2.38095vw;
}

.slick-dotted.slick-slider {
	padding-bottom: 7.14286vw;
}

.slick-dots li {
	width: 2.57143vw;
	height: 2.57143vw;
	margin: 0 .71429vw;
}

.slick-dots li button {
	width: 2.57143vw;
	height: 2.57143vw;
}

.top-about_item {
	width: 48% !important;
	margin-right: 4% !important;
}

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

.top-about_item_img {
	margin-top: -2.38095vw;
}

.top-about_item_img img {
	border-radius: 2.38095vw;
}

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

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

.sideBox {
	padding-bottom: 7.14286vw;
}

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

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

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

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

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

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

.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 .btn2 a {
	width: 33.33333vw;
}

.wp-paging .prev a:after {
	left: 3.57143vw;
}

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

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

.breadcrumb ul {
	white-space: nowrap;
}

.breadcrumb ul {
	width: auto;
}

.breadcrumb li {
	font-size: 2.85714vw;
	margin-right: 3.57143vw;
	padding-left: 3.33333vw;
}

.breadcrumb li:after {
	width: 2.14286vw;
	height: 2.14286vw;
}

.btn a,
.btn input[type='submit'],
.btn input[type='button'],
.btn button {
	font-size: 3.80952vw;
	width: 90%;
	padding-top: 4.7619vw;
	padding-bottom: 4.7619vw;
}

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

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

.btn2 a {
	width: 47.61905vw;
	padding: 2.38095vw 4.7619vw;
	border-radius: 2.38095vw;
}

.btn2 a:after {
	right: 3.57143vw;
	width: 4.7619vw;
}

.btn2 a:hover ._icon:after {
	left: -.47619vw;
	width: 2.38095vw;
}

.btn2 a:hover ._icon:before {
	right: -1.19048vw;
	width: 11.90476vw;
}

.btn3 a {
	width: 47.61905vw;
	padding: 2.38095vw 4.7619vw;
	border-radius: 2.38095vw;
}

.btn3 a:after {
	right: 4.7619vw;
	width: 5.71429vw;
}

.pageTtl {
	height: 47.61905vw;
	padding-bottom: 7.14286vw;
	-ms-flex-align: end;
	align-items: flex-end;
}

.pageTtl .eng {
	font-size: 3.09524vw;
}

.pageTtl .jpn {
	font-size: 5.95238vw;
}

.pageTtl-recruit {
	width: 94vw;
	padding-top: 5.95238vw;
	padding-bottom: 5.95238vw;
}

.heading1 {
	font-size: 5.71429vw;
	margin-bottom: 2.85714vw;
	padding-top: 9.52381vw;
	padding-bottom: 1.90476vw;
	background-size: auto 1vw;
}

.heading1:after {
	width: 5vw;
}

.heading2 {
	font-size: 5vw;
	margin-bottom: 2.5vw;
}

.heading2 ._l {
	font-size: 5.95238vw;
}

.heading3 {
	font-size: 4.7619vw;
}

.heading3._l {
	font-size: 5.47619vw;
}

.heading4 {
	font-size: 5vw;
	margin-bottom: 2.14286vw;
	padding-left: 5.42857vw;
}

.heading4:after {
	width: 3.83333vw;
}

.heading5 {
	min-height: 17.14286vw;
	margin-bottom: 2.85714vw;
	padding-left: 18.09524vw;
}

.heading5 ._num {
	font-size: 4.57143vw;
	top: 2.85714vw;
	left: 2.85714vw;
	width: 11.42857vw;
}

.heading5 ._jpn {
	font-size: 4.57143vw;
}

.heading6 {
	font-size: 4.52381vw;
}

.heading7 span {
	font-size: 3.80952vw;
	padding: .47619vw 4.7619vw;
}

.heading7 span:after {
	bottom: -3.33333vw;
	width: 3.57143vw;
}

.heading8 {
	font-size: 4.04762vw;
	margin-bottom: 2.38095vw;
	padding: .71429vw 2.38095vw;
}

.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%;
}

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

.w1100 {
	width: auto;
	padding-right: 4.7619vw;
	padding-left: 4.7619vw;
}

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

.section .w700 {
	margin-right: 0;
	margin-left: 0;
}

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

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

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

.flex._mb_sp > * {
	margin-bottom: 11.90476vw;
}

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

.flex._mb_sp-s > * {
	margin-bottom: 4.7619vw;
}

.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;
}

.tab-dblock .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: 8.33333vw;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.text_s {
	font-size: 3.57143vw;
}

.text_m {
	font-size: 4.28571vw;
}

.text_l {
	font-size: 4.28571vw;
}

.tablet_left {
	text-align: left;
}

.tablet_center {
	text-align: center;
}

.tablet {
	display: inline;
}

.pc {
	display: none;
}

.tablet-dblock {
	display: block;
}

.map iframe {
	height: 71.42857vw;
}

.table-1 th,
.table-1 td {
	display: block;
	padding: 3.57143vw 4.7619vw;
}

.table-1 th {
	padding-left: 6.19048vw;
	text-align: left;
	border: none;
	border-left: 2px solid #31bfdb;
}

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

}

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

.hab-nav {
	padding-top: 14.28571vw;
	padding-right: 9.52381vw;
	padding-left: 9.52381vw;
}

}

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

.loader-wrap {
	background-size: 40% auto;
}

.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;
	margin-right: 4.7619vw;
	margin-left: 4.7619vw;
}

}

@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_move {

0% {
	top: 50%;
}

50% {
	top: -120%;
}

51% {
	top: 120%;
}

100% {
	top: 50%;
}

}

@keyframes floatY {

0% {
	transform: translateY(0);
}

50% {
	transform: translateY(-1.07143vw);
}

100% {
	transform: translateY(0);
}

}

@keyframes arr_move {

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

50% {
	background-position: left 120% center;
}

51% {
	background-position: left -120% center;
}

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

}

@keyframes scroll_animation {

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

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

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

}


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