@charset "UTF-8";
/* --HTML-- */

html {
	font-size: 62.5%;
}

/* --BODY-- */

body {
	font-family: 'Noto Sans JP', '游ゴシック', YuGothic, '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ', sans-serif;
	font-size: 1.6rem;
	font-style: normal;
	line-height: 1.9;
	margin: 0 auto;
	padding: 0;
	color: #0a3241;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'palt' 1;
}

body.open {
	overflow: hidden;
}

.serif {
	font-family: 'NotoSerifCJKjp-R', 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
}

* {
	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: #0a3241;
}

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

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

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

.js-fadein {
	position: relative;
	top: 20px;
	transition: all .3s ease-out;
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=0);
	-khtml-opacity: 0;
	-moz-opacity: 0;
}

.js-fade {
	top: 0;
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

.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,
.loader:after {
	width: 15em;
	height: 15em;
	border-radius: 50%;
}

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

.heading1 .eng {
	line-height: 1;
}

.heading1 .eng span {
	position: relative;
	display: inline-block;
	padding-left: 25px;
}

.heading1 .eng span:after {
	position: absolute;
	top: -3px;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	content: '';
	background: url(../img/icon1.png) center center no-repeat;
	background-size: 100% auto;
}

.heading1 .jpn {
	font-size: 50px;
	font-size: 5rem;
	font-weight: 700;
}

.heading1._white {
	color: #fff;
}

.heading2 {
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: 700;
}

/**
 * #Col
 */

.section {
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
}

.section_wide {
	width: 100%;
	max-width: 1090px;
	margin-right: auto;
	margin-left: auto;
}

.w600 {
	width: 600px;
	margin-right: auto;
	margin-left: auto;
}

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

.w800 {
	width: 800px;
	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: 4%;
}

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

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

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

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

.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%;
	margin-right: 4%;
}

.grid2_wide {
	width: 61%;
}

/**
 * #Position
 */

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

/**
 * #Margin
 */

.mb-xs {
	margin-bottom: 10px;
}

.mb-s {
	margin-bottom: 20px;
}

.mb-m {
	margin-bottom: 40px;
}

.mb-l {
	margin-bottom: 80px;
}

.mb-xl {
	margin-bottom: 120px;
}

.pb-xs {
	padding-bottom: 10px;
}

.pb-s {
	padding-bottom: 20px;
}

.pb-m {
	padding-bottom: 40px;
}

.pb-l {
	padding-bottom: 80px;
}

.pb-xl {
	padding-bottom: 120px;
}

/**
 * #Text
 */

.text_s {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.6;
}

.text_m {
	font-size: 17px;
	font-size: 1.7rem;
}

.text_l {
	font-size: 18px;
	font-size: 1.8rem;
}

.green {
	color: #39a299;
}

.text_red {
	color: #de2900;
}

.text_blue {
	color: #1153c0;
}

.bold {
	font-weight: 700;
}

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

.lh15 {
	line-height: 1.5;
}

/**
 * #Display
 */

.sp {
	display: none;
}

.tablet {
	display: none;
}

.pc {
	display: inline;
}

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

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

.eng {
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	font-style: normal;
}

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

.table-1 th,
.table-1 td {
	line-height: 1.5;
	padding: 20px;
	border-bottom: 1px solid #d5d5d5;
}

.table-1 th {
	font-weight: bold;
	position: relative;
}

.table-1 th:after {
	position: absolute;
	top: 10px;
	right: 0;
	display: block;
	width: 1px;
	height: calc(100% - 20px);
	content: '';
	background: #747474;
}

/*
* #Header
*/

header {
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
}

.confirm header {
	position: static;
	background: #146773;
}

.header-inner {
	padding: 30px;
}

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

.header-logo {
	width: 374px;
}

.header-right {
	position: fixed;
	top: 20;
	right: 0;
	display: -ms-flexbox;
	display: flex;
	padding-right: 20px;
	text-align: right;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.header-right__mail {
	margin-left: 7px;
}

.header-right__mail a {
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	text-indent: -9999px;
	border-radius: 50%;
	background: #fff;
}

.header-right__mail a:before {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	transition: all .2s ease-out;
	border-radius: 50%;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #00c972 100%);
}

.header-right__mail a:after {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	transition: all .2s ease-out;
	border-radius: 50%;
	background: url(../img/icon_mail.png) center center no-repeat;
	background-size: 40% auto;
}

.header-right__mail a:hover {
	opacity: 1;
	background: #fff;
}

.header-right__mail a:hover:before {
	opacity: 0;
}

.header-right__mail a:hover:after {
	background-image: url(../img/icon_mail_color.png);
}

.hab-nav {
	display: -ms-flexbox;
	display: flex;
	height: 50px;
	padding-right: 40px;
	padding-left: 40px;
	border-radius: 60px;
	background: #fff;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

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

.headerNav__list li {
	display: -ms-flexbox;
	display: flex;
	margin-right: 25px;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.headerNav__list li:last-child {
	margin-right: 0;
}

.headerNav__list a {
	font-weight: 700;
	position: relative;
	display: inline-block;
}

.headerNav__list a:after {
	position: absolute;
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	content: '制作実績';
	transition: all .2s ease-out;
	opacity: 0;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #00c972 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.headerNav__list a:hover {
	color: #fff;
}

.headerNav__list a:hover:after {
	opacity: 1;
}

.headerNav__list .gn2 a:after {
	content: '選ばれる理由';
}

.headerNav__list .gn3 a:after {
	content: 'お客様の声';
}

.headerNav__list .gn4 a:after {
	content: '制作の流れ';
}

.headerNav__list .gn5 a:after {
	content: 'よくあるご質問';
}

.spNavBtn__btn {
	position: fixed;
	z-index: 10;
	top: 3.73333vw;
	right: 3.73333vw;
}

.spNavBtn__btn a {
	position: relative;
	display: block;
	width: 13.33333vw;
	height: 13.33333vw;
	text-indent: -9999px;
	color: #fff;
	border-radius: 50%;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #03e9d5 100%);
}

.spNavBtn__btn a:before,
.spNavBtn__btn a:after {
	position: absolute;
	left: 50%;
	display: block;
	width: 4.53333vw;
	height: .53333vw;
	content: '';
	transition: all .3s ease-out;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	background: #fff;
}

.open .spNavBtn__btn a:before,
.open .spNavBtn__btn a:after {
	opacity: 1;
	background: #17c7c0;
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	filter: alpha(opacity=100);
	-khtml-opacity: 1;
	-moz-opacity: 1;
}

.spNavBtn__btn a:before {
	top: 42%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

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

.spNavBtn__btn a:after {
	top: 58%;
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.open .spNavBtn__btn a:after {
	top: 50%;
	-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;
}

.open .spNavBtn__btn a {
	background: #fff;
}

#spNavBtn {
	display: none;
	height: 50px;
}

/**
 * #Footer
 */

footer {
	padding-top: 60px;
	padding-right: 80px;
	padding-bottom: 50px;
	padding-left: 80px;
	color: #fff;
	background: #146773;
}

.footer-logo {
	max-width: 465px;
}

.footer-tel {
	line-height: 1.5;
	width: calc(100% - 465px);
	text-align: right;
}

.footer-tel ._tel {
	display: inline-block;
	margin-right: 10px;
	padding: 2px 10px;
	vertical-align: 10px;
	border: 1px solid #fff;
}

.footer-tel ._num {
	font-size: 32px;
	font-size: 3.2rem;
	line-height: 1;
	display: inline-block;
	color: #fff;
}

.footer-tel ._time {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
	margin-left: 15px;
	vertical-align: 11px;
}

.copyright {
	font-size: 13px;
	font-size: 1.3rem;
	text-align: center;
}

/**
 * #Main
 */

#container {
	position: relative;
}

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

.btn a {
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: 700;
	position: relative;
	display: inline-block;
	min-width: 500px;
	padding: 22px 30px;
	text-align: center;
	border-radius: 60px;
	background: #fff;
	box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
}

.btn a:after {
	position: absolute;
	top: 50%;
	right: 30px;
	display: block;
	width: 9px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/arr.png) 0 center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 31 / 51;
}

.btn a span {
	position: relative;
	display: inline-block;
	padding-left: 30px;
}

.btn a span:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 22px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/icon_mail_blk.png) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 66 / 50;
}

.btn a:hover {
	opacity: 1;
	background: #ffd771;
}

.btn a:hover:after {
	animation-name: btn_ani;
	animation-duration: .3s;
	animation-timing-function: linear;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: backwards;
}

.card1 {
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
}

.card1_txt {
	width: 67%;
	padding-top: 20px;
	padding-right: 40px;
	padding-bottom: 20px;
	padding-left: 40px;
}

.card1_img {
	width: 33%;
}

.baloon2 {
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	font-style: normal;
	padding-top: 10px;
	padding-right: 30px;
	padding-bottom: 10px;
	padding-left: 30px;
	color: #fff;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #00c972 100%);
	-webkit-clip-path: polygon(12% 0%, 100% 0%, 88% 100%, 0% 100%);
	clip-path: polygon(12% 0%, 100% 0%, 88% 100%, 0% 100%);
}

.baloon2 i {
	font-size: 26px;
	font-size: 2.6rem;
	display: inline-block;
	margin-left: 10px;
	vertical-align: -3px;
}

/*------------ lp ------------*/

.lp-fv {
	position: relative;
	z-index: 2;
	height: 700px;
	padding-top: 180px;
	text-align: center;
	background: #98c5d1 url(../img/fv_bg.png) center top no-repeat;
	background-size: auto 100%;
}

.lp-fv_txts__h {
	font-size: 33px;
	font-size: 3.3rem;
	font-weight: 700;
	margin-bottom: 23px;
	color: #fff;
}

.lp-fv_txts__h strong {
	font-weight: 700;
	color: #ebef26;
}

.lp-fv_txts__name {
	margin-bottom: 23px;
}

.lp-fv_txts__name img {
	width: 100%;
	max-width: 634px;
}

.lp-fv_txts__txt {
	font-size: 24px;
	font-size: 2.4rem;
	margin-bottom: 50px;
	color: #fff;
}

.lp-img {
	position: relative;
	width: 100%;
	max-width: 607px;
	margin-right: auto;
	margin-left: auto;
}

.lp-img__icon {
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.6;
	position: absolute;
	top: -13px;
	right: 0;
	display: -ms-flexbox;
	display: flex;
	width: 142px;
	height: 142px;
	text-align: center;
	color: #fff;
	border-radius: 50%;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #00c972 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;
}

.lp-works {
	position: relative;
	z-index: 1;
	padding-top: 150px;
	padding-bottom: 105px;
	background: url(../img/works_bg.jpg) center top no-repeat;
	background-size: 100% auto;
}

.lp-works:after {
	position: absolute;
	z-index: 1;
	top: -170px;
	left: 0;
	display: block;
	width: 100%;
	height: 500px;
	content: '';
	background: url(../img/fv_arr.png) center bottom no-repeat;
	background-size: 1400px auto;
}

.lp-works .section_wide {
	position: relative;
	z-index: 2;
}

.lp-works_item {
	margin-bottom: 45px;
}

.lp-works_item__img img {
	box-shadow: 0 0 12px rgba(0, 0, 0, .25);
}

.lp-works_item__txt {
	margin-top: 6px;
	text-align: center;
	color: #7c7c8e;
}

.lp-reason {
	padding-top: 80px;
	padding-bottom: 120px;
	background: #f6f8f9 url(../img/reason_bg.png) center top 280px no-repeat;
	background-size: 100% auto;
}

.lp-reason .heading1 .jpn {
	font-size: 30px;
	font-size: 3rem;
	position: relative;
	display: inline-block;
}

.lp-reason .heading1 .jpn:before,
.lp-reason .heading1 .jpn:after {
	position: absolute;
	bottom: 0;
	display: block;
	width: 1px;
	height: 100%;
	content: '';
	background: #000;
}

.lp-reason .heading1 .jpn:before {
	left: 0;
	-ms-transform: skew(18deg, 0);
	transform: skew(18deg, 0);
}

.lp-reason .heading1 .jpn:after {
	right: 0;
	-ms-transform: skew(-18deg, 0);
	transform: skew(-18deg, 0);
}

.lp-reason .heading1 .jpn ._large {
	font-size: 35px;
	font-size: 3.5rem;
}

.lp-reason .heading1 .jpn .baloon1 {
	font-size: 51px;
	font-size: 5.1rem;
	font-weight: 700;
	line-height: 95px;
	display: inline-block;
	height: 95px;
	margin-top: 20px;
	padding-right: 90px;
	padding-left: 90px;
	vertical-align: top;
	color: #fff;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #00c972 100%);
	-webkit-clip-path: polygon(12% 0%, 100% 0%, 88% 100%, 0% 100%);
	clip-path: polygon(12% 0%, 100% 0%, 88% 100%, 0% 100%);
}

.lp-reason .heading1 .jpn .baloon1 i {
	font-size: 71px;
	font-size: 7.1rem;
	font-weight: 700;
}

.cv {
	position: relative;
	z-index: 1;
	margin-right: 23px;
	margin-left: 23px;
	padding-top: 65px;
	padding-bottom: 65px;
	color: #fff;
	border-radius: 10px;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #03e9d5 100%);
}

.cv:after {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	background: url(../img/cv_img.png) right top no-repeat;
	background-size: auto 100%;
}

.cv .heading1 {
	position: relative;
	display: inline-block;
	padding-right: 120px;
}

.cv .heading1 .eng {
	margin-bottom: 20px;
}

.cv .heading1 .jpn {
	font-size: 40px;
	font-size: 4rem;
}

.cv .heading1 .cv-icon {
	position: absolute;
	right: 0;
	bottom: 10px;
	display: -ms-flexbox;
	display: flex;
	width: 106px;
	height: 106px;
	text-align: center;
	border: 1px solid #fff;
	border-radius: 50%;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.cv .btn._tel a {
	background: #ffd771;
}

.cv_wrap {
	position: relative;
	margin-bottom: 200px;
}

.cv_wrap:after {
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: '';
	background: #4a6067;
}

.cv-tel {
	line-height: 1.5;
	display: -ms-flexbox;
	display: flex;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

.cv-tel .pc ._tel {
	display: inline-block;
	margin-right: 10px;
	padding: 2px 10px;
	vertical-align: 7px;
	border: 1px solid #fff;
}

.cv-tel ._num {
	font-size: 35px;
	font-size: 3.5rem;
	display: inline-block;
}

.cv-tel ._time {
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: 700;
	margin-left: 15px;
}

.cv_inner {
	position: relative;
	z-index: 2;
}

.lp-voice {
	position: relative;
	z-index: 2;
}

.lp-voice_item {
	position: relative;
	overflow: hidden;
	padding: 30px 28px;
	border-radius: 11px;
	background: #fff;
	box-shadow: 0 4px 13px rgba(0, 0, 0, .15);
}

.lp-voice_item:before,
.lp-voice_item:after {
	position: absolute;
	display: block;
	width: 66px;
	height: 53px;
	content: '';
	background: #22d8d1;
	aspect-ratio: 66 / 53;
}

.lp-voice_item:before {
	top: 0;
	left: 0;
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
	clip-path: polygon(0 0, 0% 100%, 100% 0);
}

.lp-voice_item:after {
	right: 0;
	bottom: 0;
	-webkit-clip-path: polygon(100% 0, 0 100%, 100% 100%);
	clip-path: polygon(100% 0, 0 100%, 100% 100%);
}

.lp-voice_item__img {
	margin-bottom: 30px;
	text-align: center;
}

.lp-voice_item__img img {
	width: 100%;
	max-width: 188px;
}

.lp-voice_item__txt {
	font-size: 18px;
	font-size: 1.8rem;
}

.lp-flow {
	position: relative;
	z-index: 1;
}

.lp-flow:before {
	position: absolute;
	z-index: -1;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: calc(100% + 375px);
	content: '';
	background: url(../img/flow_bg.jpg) center top no-repeat;
	background-size: cover;
}

.lp-flow_item {
	position: relative;
	margin-bottom: 25px;
	padding: 14px 17px;
	border-radius: 10px;
	background: #fff;
}

.lp-flow_item:before {
	position: absolute;
	bottom: -17px;
	left: 30px;
	display: block;
	width: 31px;
	height: 18px;
	content: '';
	background: #fff;
	-webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
	clip-path: polygon(100% 0, 0 0, 50% 100%);
	aspect-ratio: 31 / 18;
}

.lp-flow_item:last-child {
	margin-bottom: 0;
}

.lp-flow_item:last-child:before {
	content: none;
}

.lp-flow_item > .flex {
	position: relative;
}

.lp-flow_item > .flex:after {
	position: absolute;
	top: 50%;
	left: 80px;
	display: block;
	width: 1px;
	height: 100%;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: #ccc;
}

.lp-flow_item ._cation {
	font-size: 10px;
	font-size: 1rem;
	position: absolute;
	right: 0;
	bottom: -20px;
	color: #fff;
}

.lp-flow_item__num {
	font-family: 'Roboto Mono', monospace;
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: 500;
	font-weight: bold;
	font-style: normal;
	line-height: 1;
	padding-right: 10px;
	padding-left: 10px;
	text-align: center;
	color: #22d8d1;
	font-optical-sizing: auto;
}

.lp-flow_item__num ._num {
	font-size: 40px;
	font-size: 4rem;
}

.lp-flow_item__cont {
	display: -ms-flexbox;
	display: flex;
	padding-left: 30px;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

.lp-flow_item__cont ._ttl {
	font-size: 23px;
	font-size: 2.3rem;
	font-weight: 700;
}

.lp-flow_item__cont ._ttl ._small {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: normal;
	margin-left: 10px;
}

.lp-flow_item__cont ._txt {
	margin-left: 30px;
}

.lp-flow_item__cont ._txt.flex p {
	margin-right: 20px;
}

.lp-flow_item__cont ._txt.flex p:last-child {
	margin-right: 0;
}

.faq-box {
	border-radius: 10px;
	background: #eaf2f4;
}

.faq-box_ttl {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	width: 35%;
	min-height: 70px;
	padding-top: 60px;
	padding-right: 35px;
	padding-bottom: 60px;
	padding-left: 115px;
	border-radius: 10px;
	background: #22d8d1;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

.faq-box_ttl:after {
	font-family: 'Roboto Mono', monospace;
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: 500;
	font-weight: bold;
	font-style: normal;
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 32px;
	display: block;
	display: -ms-flexbox;
	display: flex;
	width: 64px;
	height: 64px;
	content: 'Q';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	color: #22d8d1;
	border-radius: 50%;
	background: #fff;
	font-optical-sizing: auto;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.faq-box_ttl:before {
	position: absolute;
	top: 50%;
	left: -38px;
	display: block;
	width: 42px;
	height: 31px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/icon_baloon.png) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 42 / 31;
}

.faq-box_ttl ._txt {
	font-size: 25px;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.5;
	color: #fff;
}

.faq-box_cont {
	font-size: 18px;
	font-size: 1.8rem;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	width: 65%;
	padding-top: 35px;
	padding-right: 30px;
	padding-bottom: 35px;
	padding-left: 100px;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
}

.faq-box_cont:after {
	font-family: 'Roboto Mono', monospace;
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: 500;
	font-weight: bold;
	font-style: normal;
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 15px;
	display: block;
	display: -ms-flexbox;
	display: flex;
	width: 64px;
	height: 64px;
	content: 'A';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	color: #ff8153;
	border-radius: 50%;
	background: #fff;
	font-optical-sizing: auto;
	box-lines: multiple;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.lp-form {
	position: relative;
	padding-top: 173px;
	background: #d3e2e9;
}

.lp-form__eng {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	width: 100%;
	height: 10.35714vw;
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	animation-name: eng_slide;
	animation-duration: 20s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-direction: normal;
	text-indent: -9999px;
	background: url(../img/cv_txt.png) left top repeat-x;
	background-size: 138.42857vw auto;
	animation-fill-mode: none;
}

:root {
	--slide-wide: -138.42857vw;
}

.form-table {
	width: 100%;
}

.form-table th,
.form-table td {
	padding: 20px 0;
	vertical-align: top;
}

.form-table th {
	font-size: 18px;
	font-size: 1.8rem;
	width: 25%;
}

.form-table th span {
	position: relative;
	display: inline-block;
	padding-left: 15px;
}

.form-table th span:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 4px;
	height: 23px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: #fff;
}

.form-table input {
	width: 100%;
	padding: 12px 15px;
	border: 1px solid #ccc;
	border-radius: 6px;
}

.form-table input:-ms-input-placeholder {
	color: #ccc;
}

.form-table input::placeholder {
	color: #ccc;
}

.form-table textarea {
	width: 100%;
	height: 170px;
	padding: 12px 15px;
	border: 1px solid #ccc;
	border-radius: 6px;
}

.form-table textarea:-ms-input-placeholder {
	color: #ccc;
}

.form-table textarea::placeholder {
	color: #ccc;
}

.confirm .form-table th {
	position: relative;
	width: 45%;
	padding-left: 15px;
}

.confirm .form-table th:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 4px;
	height: 23px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: #22d8d1;
}

.pp_box__link a {
	position: relative;
	color: #6c6c6c;
}

.pp_box__link a:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 1px;
	content: '';
	transition: all .2s ease-out;
	opacity: 0;
	background: #0a3241;
}

.pp_box__link a:hover {
	color: #0a3241 !important;
	opcity: 1 !important;
}

.pp_box__link a:hover:after {
	opacity: 1;
}

.pp_box__link a span {
	position: relative;
	display: inline-block;
	padding-right: 20px;
}

.pp_box__link a span:after {
	position: absolute;
	top: 10px;
	right: 0;
	display: block;
	width: 15px;
	height: 12px;
	content: '';
	background: url(../img/icon_blank.png) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 15 / 12;
}

.submit_btn {
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: 700;
	position: relative;
	display: inline-block;
	min-width: 500px;
	padding: 22px 30px;
	transition: all .2s ease-out;
	text-align: center;
	color: #0a3241;
	border: 1px solid #a9a9a9;
	border-radius: 60px;
	background: #fff;
	box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
}

.submit_btn:after {
	position: absolute;
	top: 50%;
	right: 30px;
	display: block;
	width: 9px;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/arr.png) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 31 / 51;
}

.submit_btn:hover {
	opacity: 1;
	background: #ffd771;
}

.submit_btn:hover:after {
	animation-name: btn_ani;
	animation-duration: .3s;
	animation-timing-function: linear;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: backwards;
}

.return_btn input {
	cursor: pointer;
	border: none;
	background: none;
}

.return_btn input:hover {
	border-bottom: 1px solid #0a3241;
}

button {
	cursor: pointer;
}

#formWrap .heading1 .jpn {
	font-size: 36px;
	font-size: 3.6rem;
}

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

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

.header-inner {
	padding: 2vw;
}

.header-logo {
	width: 30vw;
}

.header-right__mail {
	margin-left: .7vw;
}

.hab-nav {
	height: 5vw;
	padding-right: 3vw;
	padding-left: 3vw;
}

.headerNav__list li {
	margin-right: 1vw;
}

.footer-flex {
	display: block;
}

.footer-logo {
	margin-bottom: 30px;
}

.footer-tel {
	width: auto;
	text-align: left;
}

.cv:after {
	background-position: left 55vw top;
}

}

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

.section_wide {
	padding-right: 2vw;
	padding-left: 2vw;
}

}

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

.section {
	width: auto;
	padding-right: 20px;
	padding-left: 20px;
}

}

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

body {
	font-size: 1.6vw;
}

.heading1 .eng span {
	padding-left: 2.5vw;
}

.heading1 .eng span:after {
	top: -.3vw;
	width: 2vw;
	height: 2vw;
}

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

.heading2 {
	font-size: 2.8vw;
}

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

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

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

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

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

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

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

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

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

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

.header-right__mail a {
	width: 5vw;
	height: 5vw;
}

footer {
	padding-top: 6vw;
	padding-right: 8vw;
	padding-bottom: 5vw;
	padding-left: 8vw;
}

.footer-logo {
	margin-bottom: 3vw;
}

.btn a {
	font-size: 2.2vw;
	min-width: 50vw;
	padding: 2.2vw 3vw;
	box-shadow: 0 .4vw .4vw rgba(0, 0, 0, .25);
}

.btn a:after {
	right: 3vw;
	width: .9vw;
}

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

.btn a span:after {
	width: 2.2vw;
}

.card1 {
	border-radius: .6vw;
	box-shadow: 0 .4vw .4vw rgba(0, 0, 0, .25);
}

.card1_txt {
	padding-top: 2vw;
	padding-right: 4vw;
	padding-bottom: 2vw;
	padding-left: 4vw;
}

.baloon2 {
	padding-top: 1vw;
	padding-right: 3vw;
	padding-bottom: 1vw;
	padding-left: 3vw;
}

.baloon2 i {
	font-size: 2.5vw;
	margin-left: 1vw;
	vertical-align: -.3vw;
}

.lp-fv {
	height: 70vw;
	padding-top: 18vw;
}

.lp-fv_txts__h {
	font-size: 3.3vw;
}

.lp-fv_txts__name {
	margin-bottom: 2.3vw;
}

.lp-fv_txts__name img {
	max-width: 63.4vw;
}

.lp-fv_txts__txt {
	font-size: 2.4vw;
}

.lp-img {
	max-width: 60.7vw;
}

.lp-img__icon {
	font-size: 2.2vw;
	top: -1.3vw;
	width: 14.2vw;
	height: 14.2vw;
}

.lp-works {
	padding-top: 15vw;
	padding-bottom: 10.5vw;
}

.lp-works:after {
	top: -17vw;
	height: 50vw;
	background-size: 140vw auto;
}

.lp-works_item {
	margin-bottom: 4.5vw;
}

.lp-works_item__img img {
	box-shadow: 0 0 1.2vw rgba(0, 0, 0, .25);
}

.lp-works_item__txt {
	margin-top: .6vw;
}

.lp-reason {
	padding-top: 8vw;
	padding-bottom: 12vw;
}

.lp-reason .heading1 .jpn {
	font-size: 3vw;
}

.lp-reason .heading1 .jpn ._large {
	font-size: 3.5vw;
}

.lp-reason .heading1 .jpn .baloon1 {
	line-height: 9.5vw;
	height: 9.5vw;
	margin-top: 2vw;
	padding-right: 9vw;
	padding-left: 9vw;
}

.lp-reason .heading1 .jpn .baloon1 i {
	font-size: 7.1vw;
}

.cv {
	margin-right: 2.3vw;
	margin-left: 2.3vw;
	padding-top: 6.5vw;
	padding-bottom: 6.5vw;
	border-radius: 1vw;
}

.cv .heading1 {
	padding-right: 12vw;
}

.cv .heading1 .eng {
	margin-bottom: 2vw;
}

.cv .heading1 .jpn {
	font-size: 4vw;
}

.cv .heading1 .cv-icon {
	bottom: 1vw;
	width: 10.6vw;
	height: 10.6vw;
}

.cv_wrap {
	margin-bottom: 20vw;
}

.cv-tel .pc ._tel {
	margin-right: 1vw;
	padding: .2vw 1vw;
	vertical-align: .7vw;
}

.cv-tel ._num {
	font-size: 3.5vw;
}

.cv-tel ._time {
	font-size: 1.7vw;
	margin-left: 1.5vw;
}

.lp-voice_item {
	padding: 3vw 2.8vw;
	border-radius: 1.1vw;
	box-shadow: 0 .4vw 1.3vw rgba(0, 0, 0, .15);
}

.lp-voice_item:before,
.lp-voice_item:after {
	width: 6.6vw;
	height: 5.3vw;
}

.lp-voice_item__img {
	margin-bottom: 3vw;
}

.lp-voice_item__img img {
	max-width: 18.8vw;
}

.lp-voice_item__txt {
	font-size: 1.8vw;
}

.lp-flow:before {
	height: calc(100% + 37vw);
}

.lp-flow_item {
	margin-bottom: 2.5vw;
	padding: 1.4vw 1.7vw;
	border-radius: 1vw;
}

.lp-flow_item:before {
	bottom: -1.7vw;
	left: 3vw;
	width: 3.1vw;
	height: 1.8vw;
}

.lp-flow_item > .flex:after {
	left: 8vw;
}

.lp-flow_item ._cation {
	font-size: 1vw;
	bottom: -2vw;
}

.lp-flow_item__num {
	font-size: 1.7vw;
	padding-right: 1vw;
	padding-left: 1vw;
}

.lp-flow_item__num ._num {
	font-size: 4vw;
}

.lp-flow_item__cont {
	padding-left: 3vw;
}

.lp-flow_item__cont ._ttl {
	font-size: 2.3vw;
}

.lp-flow_item__cont ._ttl ._small {
	font-size: 1.6vw;
	margin-left: 1vw;
}

.lp-flow_item__cont ._txt {
	margin-left: 3vw;
}

.lp-flow_item__cont ._txt.flex p {
	margin-right: 2vw;
}

.faq-box {
	border-radius: 1vw;
}

.faq-box_ttl {
	min-height: 7vw;
	padding-top: 6vw;
	padding-right: 3.5vw;
	padding-bottom: 6vw;
	padding-left: 11.5vw;
	border-radius: 1vw;
}

.faq-box_ttl:after {
	font-size: 3.6vw;
	left: 3.2vw;
	width: 6.4vw;
	height: 6.4vw;
}

.faq-box_ttl:before {
	left: -3.8vw;
	width: 4.2vw;
	height: 3.1vw;
}

.faq-box_ttl ._txt {
	font-size: 2.5vw;
}

.faq-box_cont {
	font-size: 1.8vw;
	padding-top: 3.5vw;
	padding-right: 3vw;
	padding-bottom: 3.5vw;
	padding-left: 10vw;
}

.faq-box_cont:after {
	font-size: 3.6vw;
	font-size: 3.6vw;
	left: 1.5vw;
	width: 6.4vw;
	height: 6.4vw;
}

.lp-form {
	padding-top: 17.3vw;
}

.lp-form__eng img {
	width: 188vw;
}

.form-table th,
.form-table td {
	padding: 2vw 0;
}

.form-table th {
	font-size: 1.8vw;
}

.form-table th span {
	padding-left: 1.5vw;
}

.form-table th span:after {
	width: .4vw;
	height: 2.3vw;
}

.form-table input {
	padding: 1.2vw 1.5vw;
	border-radius: .6vw;
}

.form-table textarea {
	height: 17vw;
	padding: 1.2vw 1.5vw;
	border-radius: .6vw;
}

.pp_box__link a span {
	padding-right: 2vw;
}

.pp_box__link a span:after {
	top: 1vw;
	width: 1.5vw;
	height: 1.2vw;
}

.submit_btn {
	font-size: 2.2vw;
	min-width: 50vw;
	padding: 2.2vw 3vw;
	box-shadow: 0 .4vw .4vw rgba(0, 0, 0, .25);
}

.submit_btn:after {
	right: 3vw;
	width: .9vw;
}

#formWrap .heading1 .jpn {
	font-size: 3.6vw;
}

}

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

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

}

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

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

}

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

body {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.7;
}

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

.heading1 .eng {
	margin-bottom: 1.33333vw;
}

.heading1 .eng span {
	padding-left: 6.66667vw;
}

.heading1 .eng span:after {
	top: -1.06667vw;
	width: 5.33333vw;
	height: 5.33333vw;
}

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

.heading2 {
	font-size: 5.86667vw;
}

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

.section_wide {
	padding-right: 5.33333vw;
	padding-left: 5.33333vw;
}

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

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

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

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

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

.grid7 {
	width: 100%;
}

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

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

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

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

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

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

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

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

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

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

.text_m {
	font-size: 15px;
	font-size: 1.5rem;
}

.text_l {
	font-size: 17px;
	font-size: 1.7rem;
}

.text_l {
	font-size: 15px;
	font-size: 1.5rem;
}

.tablet_left {
	text-align: left;
}

.tablet_center {
	text-align: center;
}

.sp_left {
	text-align: left;
}

.sp_center {
	text-align: center;
}

.sp {
	display: inline;
}

.tablet {
	display: inline;
}

.tablet {
	display: none;
}

.tablet.sp {
	display: inline;
}

.pc {
	display: none;
}

.pc {
	display: none;
}

.table-1 th,
.table-1 td {
	display: block;
	width: 100%;
}

.table-1 th:after {
	right: auto;
	left: 0;
}

.table-1 th {
	border-bottom: none;
}

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

.header-inner {
	padding: 0;
}

.header-logo {
	width: 66.66667vw;
}

.header-logo {
	padding-top: 4vw;
	padding-left: 4.8vw;
}

.header-right__mail {
	display: none;
}

.hab-nav {
	position: fixed;
	z-index: 9;
	top: 0;
	left: -100vw;
	display: block;
	overflow: auto;
	width: 100vw;
	height: 100vh;
	padding: 0;
	transition: all .2s ease-out;
	border-radius: 0;
	background: #52acc8;
	background: linear-gradient(90deg, #52acc8 0%, #03e9d5 100%);
	-webkit-overflow-scrolling: touch;
}

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

.hab-menu {
	position: relative;
	padding-top: 26.66667vw;
	padding-right: 5.33333vw;
	padding-bottom: 26.66667vw;
	padding-left: 5.33333vw;
}

.hab-menu__logo {
	position: absolute;
	top: 4vw;
	left: 4.8vw;
	width: 66.66667vw;
}

.headerNav__list {
	display: block;
	margin-bottom: 10.66667vw;
}

.headerNav__list > li {
	margin-bottom: 4vw;
	text-align: center;
}

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

.headerNav__list > li > a {
	font-size: 4.8vw;
	font-weight: 700;
	position: relative;
	display: inline-block;
	color: #fff;
}

.headerNav__list > li > a:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: .53333vw;
	content: '';
	background: #fff;
}

.hab-menu_cv {
	display: block !important;
	padding: 6.66667vw 8vw;
	text-align: center;
	color: #fff;
	border: 1px solid #fff;
}

.hab-menu_cv__txt {
	font-weight: 700;
	margin-bottom: 2.66667vw;
}

.btn a {
	min-width: 100%;
}

.btn._tel a {
	background: #ffd771;
}

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

.btn span:after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 5.06667vw;
	content: '';
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	background: url(../img/icon_mail_blk.png) center center no-repeat;
	background-size: 100% auto;
	aspect-ratio: 66 / 50;
}

.hab-menu_cv__txt2 {
	font-size: 4vw;
	font-weight: 700;
	margin-bottom: 5.33333vw;
}

.hab-menu_cv__txt2 ._zenkoku {
	display: inline-block;
	margin-top: .53333vw;
	padding: .53333vw 2.66667vw;
	border: 1px solid #fff;
}

#spNavBtn {
	display: block;
}

footer {
	padding-top: 10.66667vw;
	padding-right: 5.33333vw;
	padding-bottom: 10.66667vw;
	padding-left: 5.33333vw;
}

.footer-logo {
	margin-bottom: 8vw;
}

.footer-tel ._time {
	display: block;
	margin-left: 15vw;
}

.btn a {
	font-size: 4.26667vw;
	padding-top: 6.66667vw;
	padding-bottom: 6.66667vw;
	box-shadow: 0 1.06667vw 1.06667vw rgba(0, 0, 0, .25);
}

.btn a:after {
	right: 2.66667vw;
	width: 2.4vw;
}

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

.btn a span:after {
	width: 5.06667vw;
}

.card1 {
	padding: 5.33333vw;
	border-radius: 1.6vw;
	box-shadow: 0 1.06667vw 1.06667vw rgba(0, 0, 0, .25);
}

.card1 .flex {
	display: block;
}

.card1_txt {
	width: auto;
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 4vw;
	padding-left: 0;
	text-align: center;
}

.card1_img {
	width: auto;
}

.baloon2 {
	padding-top: 2.13333vw;
	padding-right: 8vw;
	padding-bottom: 2.13333vw;
	padding-left: 8vw;
}

.baloon2 i {
	font-size: 6.66667vw;
	margin-left: 2.66667vw;
	vertical-align: -.8vw;
}

.lp-fv {
	height: 158.4vw;
	padding-top: 34.93333vw;
	background-image: url(../img/fv_bg_sp.png);
}

.lp-fv_txts__h {
	font-size: 5.6vw;
	margin-bottom: 4.8vw;
}

.lp-fv_txts__name {
	margin-bottom: 9.33333vw;
}

.lp-fv_txts__name img {
	width: 69.33333vw;
}

.lp-fv_txts__txt {
	font-size: 5.33333vw;
}

.lp-img {
	max-width: 85.6vw;
}

.lp-img__icon {
	font-size: 4.26667vw;
	top: -1.6vw;
	right: -1.6vw;
	width: 28vw;
	height: 28vw;
}

.lp-works {
	padding-top: 19vw;
	background: url(../img/works_bg_sp.jpg) center top no-repeat;
	background-size: 100% auto;
}

.lp-works:after {
	height: 70vw;
	background: url(../img/fv_arr_sp.png) center bottom no-repeat;
	background-size: 100% auto;
}

.lp-works .heading1 {
	margin-bottom: 23vw;
}

.lp-works__flex {
	display: -ms-flexbox;
	display: flex;
}

.lp-works_item {
	width: 46%;
	margin-right: 8%;
	margin-bottom: 5.33333vw;
}

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

.lp-works_item__img img {
	box-shadow: 0 0 2.13333vw rgba(0, 0, 0, .25);
}

.lp-works_item__txt {
	font-size: 3.46667vw;
	margin-top: 2.66667vw;
}

.lp-reason {
	padding-top: 21.33333vw;
	padding-bottom: 16vw;
	background: #f6f8f9 url(../img/reason_bg_sp.png) center top 80.33333vw no-repeat;
	background-size: 100% auto;
}

.lp-reason .heading1 .jpn {
	font-size: 6.4vw;
}

.lp-reason .heading1 .jpn:before,
.lp-reason .heading1 .jpn:after {
	top: 0;
	bottom: auto;
	height: 58%;
}

.lp-reason .heading1 .jpn ._large {
	font-size: 7.46667vw;
}

.lp-reason .heading1 .jpn .baloon1 {
	font-size: 8.26667vw;
	line-height: 16vw;
	height: 16vw;
	margin-top: 4vw;
	padding-right: 14.66667vw;
	padding-left: 14.66667vw;
}

.lp-reason .heading1 .jpn .baloon1 i {
	font-size: 11.73333vw;
}

.cv {
	margin-right: 5.33333vw;
	margin-left: 5.33333vw;
	padding-top: 13.33333vw;
	padding-bottom: 8vw;
	text-align: center;
	border-radius: 2.66667vw;
}

.cv:after {
	content: none;
}

.cv .heading1 {
	padding-right: 0;
}

.cv .heading1 .jpn {
	font-size: 5.33333vw;
}

.cv .heading1 .cv-icon {
	display: none;
}

.cv .btn a {
	min-width: 73.06667vw;
}

.cv-tel {
	display: block;
}

.cv-tel ._time {
	font-size: 4vw;
}

.lp-voice_item {
	margin-bottom: 8vw;
	padding: 8vw 7.46667vw;
	border-radius: 2.93333vw;
	box-shadow: 0 1.06667vw 3.46667vw rgba(0, 0, 0, .15);
}

.lp-voice_item:last-child {
	margin-bottom: 0;
}

.lp-voice_item:before,
.lp-voice_item:after {
	width: 17.6vw;
	height: 14.13333vw;
}

.lp-voice_item__img img {
	max-width: 50%;
}

.lp-voice_item__txt {
	font-size: 4.53333vw;
}

.lp-flow:before {
	height: calc(100% + 67vw);
}

.lp-flow_item {
	margin-bottom: 6.66667vw;
	padding: 3.73333vw 4.53333vw;
	border-radius: 2.66667vw;
}

.lp-flow_item:before {
	bottom: -4.53333vw;
	left: 8vw;
	width: 8.26667vw;
	height: 4.8vw;
}

.lp-flow_item > .flex:after {
	left: 12vw;
}

.lp-flow_item ._cation {
	font-size: 2.66667vw;
	bottom: -5.33333vw;
}

.lp-flow_item__num {
	font-size: 2.72vw;
	width: 15%;
	padding-right: 2.66667vw;
	padding-left: 0;
}

.lp-flow_item__num ._num {
	font-size: 6.4vw;
}

.lp-flow_item__cont {
	display: block;
	width: 85%;
	padding-left: 4vw;
}

.lp-flow_item__cont ._ttl {
	font-size: 4.8vw;
}

.lp-flow_item__cont ._ttl ._small {
	font-size: 4.26667vw;
	margin-left: 2.66667vw;
}

.lp-flow_item__cont ._txt {
	margin-left: 0;
}

.lp-flow_item__cont ._txt.flex {
	display: block;
}

.lp-flow_item__cont ._txt.flex p {
	margin-right: 0;
}

.faq-box {
	display: block;
	border-radius: 2.66667vw;
}

.faq-box_ttl {
	width: auto;
	min-height: 21.33333vw;
	padding-top: 4vw;
	padding-right: 5.33333vw;
	padding-bottom: 4vw;
	padding-left: 19.2vw;
	border-radius: 2.66667vw;
}

.faq-box_ttl:after {
	font-size: 6.13333vw;
	left: 6.13333vw;
	width: 11.2vw;
	height: 11.2vw;
}

.faq-box_ttl ._txt {
	font-size: 4.8vw;
}

.faq-box_cont {
	font-size: 4.26667vw;
	width: auto;
	padding-top: 4.53333vw;
	padding-right: 5.33333vw;
	padding-bottom: 5.06667vw;
	padding-left: 19.2vw;
}

.faq-box_cont:after {
	font-size: 6.13333vw;
	top: 3vw;
	left: 6.13333vw;
	width: 11.2vw;
	height: 11.2vw;
	-ms-transform: translate(0, 0);
	transform: translate(0, 0);
}

.form-table th,
.form-table td {
	display: block;
	width: 100%;
}

.form-table th {
	font-size: 4.26667vw;
}

.form-table th span {
	padding-left: 3.46667vw;
}

.form-table th span:after {
	width: 1.06667vw;
	height: 6.13333vw;
}

.form-table input {
	padding: 2.24vw 2.8vw;
	border-radius: 1.6vw;
}

.form-table textarea {
	height: 37.33333vw;
	padding: 2.24vw 2.8vw;
	border-radius: 1.6vw;
}

.confirm .form-table th {
	width: 100%;
}

.pp_box__link a span {
	padding-right: 5.33333vw;
}

.pp_box__link a span:after {
	top: 1.86667vw;
	width: 4vw;
	height: 3.2vw;
}

.submit_btn {
	font-size: 4.26667vw;
	min-width: 100%;
	padding-top: 6.66667vw;
	padding-bottom: 6.66667vw;
	box-shadow: 0 1.06667vw 1.06667vw rgba(0, 0, 0, .25);
}

.submit_btn:after {
	right: 2.66667vw;
	width: 2.4vw;
}

#formWrap .heading1 .jpn {
	font-size: 5.86667vw;
}

}

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

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

}

@keyframes eng_slide {

0% {
	background-position: 0;
}

100% {
	background-position: var(--slide-wide);
}

}

@keyframes btn_ani {

0% {
	background-position: 0 center;
}

50% {
	background-position: 15px center;
}

51% {
	background-position: -15px center;
}

100% {
	background-position: 0 center;
}

}


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