* {
	box-sizing: border-box;
}

body,
html {
	overflow: hidden !important;
}

html {
	font-size: 10px;
	overflow-x: hidden;
}

body {
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.5;
	color: #000;
	text-align: left;
	background-color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
	margin: 0;
}

ol,
ul,
dl {
	list-style-type: none;
	margin: 0;
	padding-left: 0;
}

b,
strong {
	font-weight: 700;
}

a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}

img {
	vertical-align: middle;
	border-style: none;
	max-width: 100%;
}

table {
	border-collapse: collapse;
}

th {
	font-weight: 500;
	text-align: inherit;
	text-align: -webkit-match-parent;
}

input,
button,
select,
optgroup,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

select {
	word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

textarea {
	overflow: auto;
	resize: vertical;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	outline-offset: -2px;
	-webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

[hidden] {
	display: none !important;
}

:root {
	--animate-duration: 1s;
	--animate-delay: 1s;
	--animate-repeat: 1;
}

.animate__animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-duration: var(--animate-duration);
	animation-duration: var(--animate-duration);
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.animate__fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
}

body:not(.ie11) .active .wow {
	opacity: 0;
	transform: translateY(100px);
	transition: .6s ease;
}

body:not(.ie11) .animated .wow {
	opacity: 1;
	transform: translateY(0);
}

body:not(.ie11) .animated .wow--delay01 {
	transition-delay: .6s;
}

body:not(.ie11) .animated .wow--delay02 {
	transition-delay: .9s;
}

body:not(.ie11) .animated .wow--delay03 {
	transition-delay: 1.2s;
}

body:not(.ie11) .animated .wow--delay04 {
	transition-delay: 1.5s;
}

.btn {
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	color: #000;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-color: transparent;
	border: 1px solid transparent;
}

.btn:focus,
.btn.focus {
	outline: 0;
}

.btn.disabled,
.btn:disabled {
	opacity: 0.6;
}

.btn:not(:disabled):not(.disabled) {
	cursor: pointer;
}

.btn-outline-white {
	border: 2px solid rgba(255, 255, 255, 0.67);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "Montserrat", sans-serif;
	font-size: 1.7rem;
	font-weight: 600;
	height: 7.5rem;
	max-width: 50rem;
	margin: 0 auto;
	width: 100%;
	transition: .3s ease;
}

.btn-outline-white:hover {
	background-color: #fff;
	color: #000;
}

.btn-outline-black {
	border: 2px solid rgba(0, 0, 0, 0.67);
	color: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "Montserrat", sans-serif;
	font-size: 1.7rem;
	font-weight: 600;
	height: 7.5rem;
	max-width: 50rem;
	width: 100%;
	transition: .3s ease;
}

.btn-outline-black:hover {
	background-color: #000;
	color: #fff;
}

.btn-next {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	font-weight: bold;
	height: 7.8rem;
	position: relative;
	padding: 1rem 1.5rem;
	z-index: 10;
}

.btn-next::before {
	content: '';
	background-color: rgba(0, 0, 0, 0.51);
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: -1;
}

.btn-next .scroll-line {
	position: absolute;
	background-color: #fff;
	width: 1px;
	height: 5.6rem;
	position: absolute;
	left: 50%;
	top: -3.5rem;
	overflow: hidden;
}

.btn-next .scroll-line__bar {
	content: '';
	background-color: #8E8E8E;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 1px;
	-webkit-animation: scroll 1.5s infinite ease;
	animation: scroll 1.5s infinite ease;
}

.page-header {
	color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	padding: 4rem 3.3rem 0 2.7rem;
	transition: .3s ease;
	z-index: 1000;
}

.page-header.fixed {
	background-color: #fff;
	color: inherit;
	padding: 2rem 3.3rem 2rem 2.7rem;
}

.page-header.fixed:not(.open) .page-header__logo .logo-normal {
	display: block;
}

.page-header.fixed:not(.open) .page-header__logo .logo-white {
	display: none;
}

.page-header.fixed .navigation a::after {
	background-color: #000;
}

.page-header__container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.page-header__logo {
	max-width: 21.6rem;
	position: relative;
	z-index: 500;
}

.page-header__logo .logo-normal {
	display: none;
}

.page-header .navigation.navigation--sp {
	display: none;
}

.page-header .navigation a {
	position: relative;
}

.hamburger-box {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin-left: auto;
	height: 3rem;
	width: 3rem;
	z-index: 1100;
}

.hamburger-box.is-active .hamburger-inner {
	transition-delay: .12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	transform: rotate(45deg);
}

.hamburger-box.is-active .hamburger-inner:before {
	transition: top 75ms ease,opacity 75ms ease .12s;
	opacity: 0;
	top: 0;
}

.hamburger-box.is-active .hamburger-inner:after {
	transition: bottom 75ms ease, transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;
	transform: rotate(-90deg);
	bottom: 0;
}

.hamburger-inner:after,
.hamburger-inner:before {
	display: block;
	content: "";
}

.hamburger-inner,
.hamburger-inner:before,
.hamburger-inner:after {
	width: 3rem;
	height: 1px;
	background-color: #fff;
	transition: transform .15s ease;
}

.fixed:not(.open) .hamburger-inner,
.fixed:not(.open) .hamburger-inner:before,
.fixed:not(.open) .hamburger-inner:after {
	background-color: #000;
}

.hamburger-inner {
	position: relative;
	display: block;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition-duration: 75ms;
}

.hamburger-inner:before {
	position: absolute;
	top: -.8rem;
	transition: top 75ms ease .12s,opacity 75ms ease;
}

.hamburger-inner:after {
	position: absolute;
	bottom: -.8rem;
	transition: bottom 75ms ease 0.12s, transform 75ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.page-footer {
	background-color: #000;
	color: #fff;
	padding: 5.7rem 0 4rem;
}

.footer-row {
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
}

.footer-row .footer-col {
	margin-bottom: 5.3rem;
}

.footer-row .footer-col:last-child {
	margin-bottom: 0;
}

.footer-row .footer-col p:not(:last-child) {
	margin-bottom: 3rem;
}

.footer-row .footer-col p:not(:last-child):last-child {
	margin-bottom: 0;
}

.footer-row .footer-ttl {
	font-family: "Montserrat", sans-serif;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.1rem;
}

.footer-row .f-mail {
	font-family: "Montserrat", sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
}

.footer-row .txt-link {
	font-size: 1.2rem;
	text-decoration: underline;
}

.footer-row .f-address {
	font-size: 1.5rem;
}

.footer-row .f-address span {
	font-size: 1.067em;
	margin-right: 2rem;
}

.footer-row .copyright {
	font-size: 1.4rem;
	font-weight: 600;
}

.form-control {
	display: block;
	width: 100%;
	height: 56px;
	padding: 10px 1.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5;
	color: #333;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #D1D1D1;
}

.form-control::-ms-expand {
	background-color: transparent;
	border: 0;
}

.form-control:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #333;
}

.form-control::-moz-placeholder {
	color: #BCBCBC;
	opacity: 1;
}

.form-control:-ms-input-placeholder {
	color: #BCBCBC;
	opacity: 1;
}

.form-control::placeholder {
	color: #BCBCBC;
	opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
	background-color: #D1D1D1;
	opacity: 1;
}

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

textarea.form-control {
	height: 22.8rem;
}

.custom-checkbox {
	font-size: 1.6rem;
	font-weight: bold;
	display: flex;
	justify-content: center;
}

.custom-checkbox input {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.custom-checkbox span {
	background-color: #F5F5F5;
	border: 1px solid #D1D1D1;
	flex-shrink: 0;
	margin-right: 1rem;
	height: 3rem;
	width: 3rem;
}

.container {
	margin: auto;
	max-width: 112.4rem;
	padding-left: 2.2rem;
	padding-right: 2.2rem;
	width: 100%;
}

.table {
	width: 100%;
}

.tbl-layout__row {
	margin-bottom: 3rem;
}

.tbl-layout__row:last-child {
	margin-bottom: 0;
}

.tbl-layout__row:first-child .tbl-layout__tr {
	border-top: 1px solid #000;
	padding-top: 2.9rem;
}

.tbl-layout__col {
	flex: 0 100%;
	line-height: 2;
}

.tbl-layout__col p {
	margin-bottom: 2rem;
}

.tbl-layout__col p:last-child {
	margin-bottom: 0;
}

.tbl-layout__col .sign-txt {
	margin-top: 4rem;
}

.tbl-layout__tr.tbl-layout__tr--head {
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 2.2rem;
}

.tbl-layout__tr.tbl-layout__tr--en {
	font-family: "Montserrat", sans-serif;
}

.tbl-layout.tbl-layout--short {
	font-size: 1.6rem;
}

.hline {
	color: #fff;
	margin-bottom: 1rem;
	text-align: center;
}

.hline__sub {
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 0.9rem;
}

.hline__ttl {
	font-family: "Montserrat", sans-serif;
	font-size: 4.2rem;
	font-weight: 600;
	line-height: 1.12;
}

.hline.hline--black {
	color: #000;
}

.hline.hline--black .hline__ttl {
	font-weight: bold;
}

.title01 {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 2.7rem;
}

.title01 span {
	font-size: 2.6rem;
	font-weight: bold;
	margin-right: 2.7rem;
}

.title01 small {
	font-family: "Montserrat", sans-serif;
	font-size: 1.6rem;
	font-weight: 600;
}

.section {
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	height: 100vh;
	position: relative;
	z-index: 5;
}

.section--bg {
	background-color: #D2D2D8;
}

.wrapper {
	padding: 8.4rem 0 5.6rem;
}

.wrapper::after {
	content: '';
	background-color: rgba(0, 0, 0, 0.27);
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	opacity: 0;
	z-index: -1;
}

.wrapper.wrapper--overlay::after {
	opacity: 1;
}

.wrapper.wrapper--overlay-contact::after {
	background-color: rgba(0, 0, 0, 0.33);
	opacity: 1;
}

.wrapper.wrapper--content {
	padding: 8.4rem 0 7.4rem;
}

.wrapper.wrapper--content .hline {
	margin-bottom: 5rem;
}

.mv-main {
	color: #fff;
	position: absolute;
	bottom: 11rem;
	left: 3rem;
}

.mv-main .en-txt {
	position: absolute;
	left: -1.3rem;
	top: -2.8rem;
	max-width: 11.7rem;
}

.mv-main__ttl {
	font-family: "Montserrat", sans-serif;
	font-size: 2.9rem;
	font-weight: bold;
	font-style: italic;
	line-height: 1.07;
	margin-bottom: 1rem;
}

.mv-main__txt {
	font-size: 1.8rem;
	font-weight: bold;
}

.main-scroll {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 1.2rem;
	font-weight: bold;
	position: absolute;
	left: 50%;
	bottom: 4rem;
	transform: translateX(-50%);
	text-transform: uppercase;
	z-index: 50;
}

.main-scroll .scroll {
	overflow: hidden;
	background-color: #8E8E8E;
	height: 5.6rem;
	width: 1px;
	position: absolute;
	bottom: -6.4rem;
	left: 50%;
}

.main-scroll .scroll__bar {
	content: '';
	background-color: #fff;
	height: 100%;
	width: 1px;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-animation: scroll 1.5s infinite ease;
	animation: scroll 1.5s infinite ease;
	z-index: 5;
}

.service-intro {
	margin: 4.8rem 0 3rem;
}

.service-intro li {
	margin-bottom: 1.3rem;
}

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

.service-intro__item {
	box-shadow: 0 1.1rem 1.7rem rgba(0, 0, 0, 0.16);
	border-radius: 4px;
	color: #fff;
	display: flex;
	align-items: center;
	height: 100%;
	position: relative;
	padding: 2.6rem 1.5rem 2.6rem 2.7rem;
	text-align: center;
	z-index: 5;
}

.service-intro__item::after {
	content: '';
	background-color: rgba(0, 0, 0, 0.46);
	-webkit-backdrop-filter: blur(8px) brightness(113%);
	backdrop-filter: blur(8px) brightness(113%);
	border-radius: 4px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: -1;
}

.service-intro__item__ttl {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.47;
	margin-bottom: 1rem;
}

.service-intro__item__img {
	max-width: 11.7rem;
	margin-right: 2rem;
}

.service-intro__item__body {
	font-size: 1.1rem;
	text-align: left;
}

.fullpage-nav {
	display: none;
	position: fixed;
	top: 50%;
	right: 2rem;
	transform: translateY(-50%);
	z-index: 1000;
}

.fullpage-nav li {
	margin-bottom: 3rem;
}

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

.fullpage-nav li.active a::after {
	opacity: 1;
	transform: scale(1);
}

.fullpage-nav a {
	display: block;
	background-color: #fff;
	border-radius: 50%;
	height: 0.7rem;
	width: 0.7rem;
	position: relative;
}

.fullpage-nav a::after {
	content: '';
	border: 2px solid #fff;
	border-radius: 50%;
	position: absolute;
	top: -0.5rem;
	bottom: -0.5rem;
	right: -0.5rem;
	left: -0.5rem;
	transform: scale(0);
	opacity: 0;
	transition: .3s ease;
}

.service-list li {
	margin-bottom: 2.6rem;
}

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

.service-list .service-item {
	background-color: #fff;
}

.service-list .service-item__body {
	padding: 3.1rem 2rem 3.9rem;
}

.service-list .service-item__ttl {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.4rem;
}

.service-list .service-item__txt {
	line-height: 2;
}

.company-figure {
	margin-bottom: 4.4rem;
}

.company-figure__col {
	margin-bottom: 2.2rem;
}

.company-figure__col:last-child {
	margin-bottom: 0;
}

.company-figure__content {
	background: rgba(0, 0, 0, 0.03) url("../images/bg-pattern.png") repeat left top;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: column;
	padding: 39vw 2rem;
}

.company-figure__txt {
	font-size: 1.6rem;
	font-weight: bold;
	margin-top: 1.9rem;
}

.company-figure__logo img {
	max-width: 18.3rem;
}

.company-article {
	margin-bottom: 7.6rem;
}

.form-wrap {
	background-color: #fff;
	padding: 4.5rem 2.6rem;
}

.form-wrap__ttl {
	font-size: 2.7rem;
	font-weight: bold;
	margin-bottom: 2.1rem;
}

.form-wrap__txt {
	font-weight: 400;
	line-height: 1.6;
	margin-bottom: 3.5rem;
}

.form-wrap__txt p:not(:last-child) {
	margin-bottom: 2rem;
}

.form-list dt {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 1.6rem;
}

.form-list dt small {
	color: #f00;
}

.form-list dd {
	margin-bottom: 3.2rem;
	margin-left: 0;
	padding-left: 0;
}

.form-list dd:last-child {
	margin-bottom: 0;
}

.policy-wrap {
	border-top: 1px solid #D1D1D1;
	margin-top: 2.4rem;
	margin-bottom: 3.5rem;
	padding-top: 3.6rem;
}

.policy-wrap__ttl {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 2.9rem;
}

.policy-wrap dl {
	margin-top: 2rem;
}

.policy-wrap dl dt {
	font-size: 1.4rem;
	font-weight: bold;
	margin-bottom: 0.8rem;
}

.policy-wrap dl dd {
	line-height: 1.83;
	margin: 0 0 2rem;
}

.policy-wrap__content {
	background-color: #F5F5F5;
	border: 1px solid #D1D1D1;
	font-size: 1.4rem;
	font-weight: 400;
	padding: 2rem 0.7rem 1.2rem 2.2rem;
}

.policy-wrap .policy-scroll {
	height: 19rem;
	overflow: auto;
	padding: 0 2rem 0 0;
}

.policy-wrap .policy-scroll::-webkit-scrollbar {
	width: 5px;
}

.policy-wrap .policy-scroll::-webkit-scrollbar-thumb {
	background: #B5B5B5;
	border-radius: 100px;
}

.form-agree {
	text-align: center;
}

.form-agree input {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.form-agree input:checked ~ .custom-checkbox {
	border-color: #29437E;
	background-color: #EAEFFA;
	color: #29437E;
	position: relative;
}

.form-agree input:checked ~ .custom-checkbox::after {
	content: '';
	border: 1px solid #29437E;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

.form-agree input:checked ~ .custom-checkbox span {
	background: #29437E url("../images/icon-check-white.svg") no-repeat center;
	border-color: #29437E;
}

.form-agree .custom-checkbox {
	border: 1px solid #D1D1D1;
	box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.12);
	cursor: pointer;
	max-width: 52.8rem;
	margin: 0 auto;
	padding: 2.4rem 0.5rem 2.4rem 1.5rem;
	width: 100%;
}

.form-btn-group {
	border-top: 1px solid #D1D1D1;
	margin-top: 3.8rem;
	padding-top: 4rem;
}

.form-btn-group .btn-form {
	margin-bottom: 2rem;
}

.form-btn-group .btn-form:last-child {
	margin-bottom: 0;
}

.btn-form {
	background-color: #000;
	border: 2px solid #000;
	border-radius: 4.5rem;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	font-weight: bold;
	height: 6rem;
	max-width: 43.6rem;
	width: 100%;
}

label.error {
	display: block;
	margin-top: 1rem;
	color: #f00;
}

.d-none {
	display: none !important;
}

.d-block {
	display: block !important;
}

.d-flex {
	display: flex !important;
}

.hover:hover {
	opacity: .7;
}

.text-justify {
	text-align: justify !important;
}

.text-wrap {
	white-space: normal !important;
}

.text-nowrap {
	white-space: nowrap !important;
}

.text-left {
	text-align: left !important;
}

.text-right {
	text-align: right !important;
}

.text-center {
	text-align: center !important;
}

.text-lowercase {
	text-transform: lowercase !important;
}

.text-uppercase {
	text-transform: uppercase !important;
}

.text-capitalize {
	text-transform: capitalize !important;
}

.c-txt {
	font-size: 1.5rem;
	line-height: 1.94;
}

.c-txt.c-txt--white {
	color: #fff;
}

.c-txt.c-txt--complete {
	margin-bottom: 4rem;
}

.c-red {
	color: #f00;
}

@media (min-width: 576px) {

.d-sm-none {
	display: none !important;
}

.d-sm-block {
	display: block !important;
}

.d-sm-flex {
	display: flex !important;
}

.text-sm-left {
	text-align: left !important;
}

.text-sm-right {
	text-align: right !important;
}

.text-sm-center {
	text-align: center !important;
}

}

@media (min-width: 768px) {

.btn-next {
	height: 17rem;
	font-size: 1.8rem;
}

.btn-next .scroll-line {
	top: -1.5rem;
}

.page-header {
	padding: 8rem 3.7rem 0 3.7rem;
}

.page-header.fixed {
	padding: 2.3rem 3.7rem;
}

.page-header__logo {
	max-width: 100%;
}

.page-header .navigation.navigation--sp {
	display: none !important;
}

.page-header .navigation a {
	font-weight: bold;
	margin-left: 4.5rem;
	padding: 3.7rem 0;
}

.page-header .navigation a::after {
	content: '';
	background-color: #fff;
	height: 0.4rem;
	position: absolute;
	left: 50%;
	bottom: 0;
	opacity: 0;
	transform: translateX(-50%);
	transition: .3s ease;
	width: 0;
}

.page-header .navigation a.active::after,
.page-header .navigation a:hover::after {
	opacity: 1;
	width: 100%;
}

.page-header .navigation a:first-child {
	margin-left: 0;
}

.hamburger-box {
	display: none !important;
}

.page-footer {
	padding-bottom: 6rem;
}

.footer-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.footer-row .footer-col {
	margin-bottom: 0;
	margin-right: 6.4rem;
}

.footer-row .footer-col p:not(:last-child) {
	margin-bottom: 0;
}

.footer-row .footer-ttl {
	margin-bottom: 0;
}

.footer-row .f-mail {
	font-size: 2.1rem;
}

.footer-row .txt-link:hover {
	text-decoration: none;
}

.form-control {
	font-size: 1.8rem;
	padding: 10px 22px;
}

textarea.form-control {
	height: 31rem;
}

.custom-checkbox {
	font-size: 1.8rem;
}

.custom-checkbox span {
	margin-right: 3.7rem;
}

.tbl-layout__row {
	display: flex;
}

.tbl-layout__row:first-child .tbl-layout__col {
	border-top: 1px solid #8E8E8E;
	padding-top: 3.4rem;
}

.tbl-layout__row:first-child .tbl-layout__tr {
	padding-top: 3.4rem;
}

.tbl-layout__col p {
	margin-bottom: 3.6rem;
}

.tbl-layout__col .sign-txt {
	margin-top: 7.6rem;
}

.tbl-layout__tr {
	flex-shrink: 0;
	margin-right: 2.5rem;
	max-width: 35rem;
}

.tbl-layout__tr.tbl-layout__tr--head {
	margin-bottom: 0;
	font-size: 2.2rem;
}

.hline__sub {
	font-size: 2.6rem;
}

.hline__ttl {
	font-size: 6rem;
}

.hline.hline--black .hline__ttl {
	font-size: 4.4rem;
}

.hline.hline--far {
	margin-bottom: 2.7rem;
}

.title01 span {
	font-size: 2.9rem;
}

.wrapper {
	padding: 11.4rem 0 8.6rem;
}

.wrapper.wrapper--content {
	padding: 19rem 0;
}

.wrapper.wrapper--content .hline {
	margin-bottom: 10rem;
}

.mv-main {
	bottom: 15.6rem;
	left: 10rem;
}

.mv-main .en-txt {
	left: -2.7rem;
	top: -5.9rem;
	max-width: 100%;
}

.mv-main__ttl {
	font-size: 6.9rem;
}

.mv-main__txt {
	font-size: 3.5rem;
}

.main-scroll {
	font-size: 1.8rem;
	bottom: 5rem;
}

.service-intro {
	display: flex;
/*	margin: 4rem -1.2rem 4.4rem;*/
}

.service-intro li {
	flex: 0 33.33%;
	max-width: 33.33%;
	margin-bottom: 0;
	padding: 0 1.2rem;
}

.service-intro__item {
	display: block;
	padding: 4.5rem 1rem;
}

.service-intro__item__ttl {
	font-size: 1.7rem;
	margin: 2rem 0 1.5rem;
}

.service-intro__item__img {
	max-width: 100%;
	margin-right: 0;
	padding: 0 2rem;
}

.service-intro__item__body {
	font-size: 1.6rem;
	text-align: center;
}

.c-intro-txt {
	margin-bottom: 8rem;
}

.fullpage-nav {
	display: block;
}

.fullpage-nav a:hover::after {
	opacity: 1;
	transform: scale(1);
}

.service-list li {
	margin-bottom: 2px;
}

.service-list .service-item {
	display: flex;
}

.service-list .service-item__img {
	flex-shrink: 0;
	width: 52.78%;
}

.service-list .service-item__body {
	display: flex;
	justify-content: center;
	flex-flow: column;
	padding: 0 0 0 6.1rem;
}

.service-list .service-item__ttl {
	font-size: 2.4rem;
	font-weight: 500;
	margin-bottom: 1.8rem;
}

.company-figure {
	display: flex;
	justify-content: space-between;
	margin-bottom: 12rem;
}

.company-figure__col {
	margin-bottom: 0;
	flex-shrink: 0;
	width: 48.88%;
}

.company-figure__content {
	padding: 0 2rem;
}

.company-figure__txt {
	font-size: 2.7rem;
	margin-top: 2.8rem;
}

.company-figure__logo img {
	max-width: 100%;
}

.form-wrap {
	padding: 12rem 9.2rem 7.6rem;
}

.form-wrap__ttl {
	font-size: 2.9rem;
	margin-bottom: 3.7rem;
}

.form-wrap__txt {
	line-height: 2;
	margin-bottom: 7.6rem;
}

.form-wrap__txt p:not(:last-child) {
	margin-bottom: 0;
}

.form-list dt {
	font-size: 2.2rem;
	margin-bottom: 3rem;
}

.policy-wrap {
	margin-top: 5rem;
	margin-top: 5rem;
	padding-top: 4.2rem;
}

.policy-wrap__ttl {
	font-size: 2.2rem;
}

.policy-wrap dl {
	margin-top: 4rem;
}

.policy-wrap dl dt {
	font-size: 1.8rem;
}

.policy-wrap dl dd {
	margin-bottom: 4rem;
}

.policy-wrap__content {
	font-size: 1.5rem;
	padding-bottom: 2.5rem;
}

.policy-wrap .policy-scroll {
	padding-right: 3rem;
	height: 26.5rem;
}

.form-btn-group {
	display: flex;
	justify-content: center;
	margin-top: 6.1rem;
	padding-top: 5.3rem;
}

.form-btn-group .btn-form {
	flex: 0 100%;
	margin: 0 2rem;
}

.btn-form {
	height: 8rem;
}

.btn-form:hover {
	background-color: #fff;
	color: #000;
}

.d-md-none {
	display: none !important;
}

.d-md-block {
	display: block !important;
}

.d-md-flex {
	display: flex !important;
}

.text-md-left {
	text-align: left !important;
}

.text-md-right {
	text-align: right !important;
}

.text-md-center {
	text-align: center !important;
}

.c-txt {
	font-size: 1.8rem;
}

}

@media (min-width: 992px) {

body {
	font-size: 1.6rem;
}

.page-header {
	padding-left: 6rem;
	padding-right: 6rem;
}

.page-header .navigation a {
	padding: 3.5rem 0;
}

.service-intro__item {
	padding: 4.5rem 1rem 2.9rem;
}

.service-intro__item__ttl {
	font-size: 1.8rem;
	margin-bottom: 2rem;
	margin-top: 2rem;
}

.fullpage-nav {
	right: 6rem;
}

.d-lg-none {
	display: none !important;
}

.d-lg-block {
	display: block !important;
}

.d-lg-flex {
	display: flex !important;
}

.text-lg-left {
	text-align: left !important;
}

.text-lg-right {
	text-align: right !important;
}

.text-lg-center {
	text-align: center !important;
}

}

@media (min-width: 1200px) {

.d-xl-none {
	display: none !important;
}

.d-xl-block {
	display: block !important;
}

.d-xl-flex {
	display: flex !important;
}

.text-xl-left {
	text-align: left !important;
}

.text-xl-right {
	text-align: right !important;
}

.text-xl-center {
	text-align: center !important;
}

}

@media (max-width: 767.98px) {

.page-header .navigation {
	background-color: #000;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 100vh;
	padding: 14.2rem 4.2rem;
}

.page-header .navigation.navigation--pc {
	display: none !important;
}

.page-header .navigation a {
	color: #fff;
	display: block;
	font-family: "Montserrat", sans-serif;
	font-size: 3.2rem;
	font-weight: 600;
	margin-bottom: 5rem;
}

.page-header .navigation a:last-child {
	margin-bottom: 0;
}

.tbl-layout.tbl-layout--short .tbl-layout__col {
	line-height: 1.75;
}

.tbl-layout.tbl-layout--short .tbl-layout__row {
	margin-bottom: 1.7rem;
}

.tbl-layout.tbl-layout--short .tbl-layout__tr {
	font-weight: bold;
}

.wrapper.wrapper--main .btn-outline-white {
	position: absolute;
	left: 2.2rem;
	right: 2.2rem;
	bottom: 5.6rem;
	width: auto;
}

.wrapper.wrapper--main .c-txt {
	margin-bottom: 5.6rem;
}

}

@-webkit-keyframes fadeInUp {

from {
	opacity: 0;
	transform: translate3d(0, 100%, 0);
}

to {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

}

@keyframes fadeInUp {

from {
	opacity: 0;
	transform: translate3d(0, 100%, 0);
}

to {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

}

@-webkit-keyframes scroll {

0% {
	transform: translateY(-100%);
}

to {
	transform: translateY(100%);
}

}

@keyframes scroll {

0% {
	transform: translateY(-100%);
}

to {
	transform: translateY(100%);
}

}

