/*! destyle.css v3.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */

*,
::before,
::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}

html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

body {
	margin: 0;
}

main {
	display: block;
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}

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

dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
	border-top-width: 1px;
	margin: 0;
	clear: both;
	color: inherit;
}

pre {
	font-family: monospace,monospace;
	font-size: inherit;
}

address {
	font-style: inherit;
}

a {
	background-color: rgba(0,0,0,0);
	text-decoration: none;
	color: inherit;
}

abbr[title] {
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace,monospace;
	font-size: inherit;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

svg,
img,
embed,
object,
iframe {
	vertical-align: bottom;
}

button,
input,
optgroup,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	     appearance: none;
	vertical-align: middle;
	color: inherit;
	font: inherit;
	background: rgba(0,0,0,0);
	padding: 0;
	margin: 0;
	border-radius: 0;
	text-align: inherit;
	text-transform: inherit;
}

[type=checkbox] {
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	     appearance: checkbox;
}

[type=radio] {
	-webkit-appearance: radio;
	-moz-appearance: radio;
	     appearance: radio;
}

button,
[type=button],
[type=reset],
[type=submit] {
	cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
	cursor: default;
}

:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

option {
	padding: 0;
}

fieldset {
	margin: 0;
	padding: 0;
	min-width: 0;
}

legend {
	padding: 0;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

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

[type=search] {
	outline-offset: -2px;
}

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

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

label[for] {
	cursor: pointer;
}

details {
	display: block;
}

summary {
	display: list-item;
}

[contenteditable]:focus {
	outline: auto;
}

table {
	border-color: inherit;
	border-collapse: collapse;
}

caption {
	text-align: left;
}

td,
th {
	vertical-align: top;
	padding: 0;
}

th {
	text-align: left;
	font-weight: bold;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

body {
	font-size: 16px;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	line-height: 1.5;
	color: #3c3c3c;
}

a {
	color: inherit;
	text-decoration: none;
	transition: .3s;
}

a:hover {
	text-decoration: none;
	opacity: .8;
}

input {
	margin: 0;
}

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

input[type=submit] {
	-webkit-appearance: none;
}

.l-cta {
	position: relative;
	z-index: 2;
	background-color: #003e8e;
	color: #fff;
	text-align: center;
	padding-top: 24px;
	padding-bottom: 24px;
}

.l-cta__ttl {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	margin-bottom: 16px;
}

.l-cta__btn {
	max-width: 354px;
	margin-left: auto;
	margin-right: auto;
}

.l-cta__btn--link {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	z-index: 2;
	box-sizing: border-box;
	box-shadow: 0px 0px 2px 4px rgba(60,60,60,.3);
	border-radius: 40px;
	background-color: #ffd442;
	color: #003e8e;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .05em;
	min-height: 60px;
	padding: 16px;
}

.l-cta__btn--link::after {
	position: absolute;
	right: 56px;
	content: "＞";
}

.l-cta__btn--text {
	padding-right: 32px;
}

.p-top-cta {
	position: relative;
	z-index: 2;
	background-color: #3b3b3b;
	color: #fff;
	text-align: center;
	padding-top: 24px;
	padding-bottom: 24px;
}

.p-top-cta__ttl {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	margin-bottom: 16px;
}

.p-top-cta__btn {
	margin-left: auto;
	margin-right: auto;
}

.p-top-cta__btn--small {
	max-width: 335px;
	margin-top: 16px;
}

.p-top-cta__btn--link {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 2;
	box-sizing: border-box;
	box-shadow: 0px 0px 2px 4px rgba(60,60,60,.3);
	border-radius: 40px;
	background-color: #ffd442;
	color: #003e8e;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .05em;
	min-height: 60px;
	padding: 15px;
}

.p-top-cta__btn--link::after {
	position: absolute;
	right: 20px;
	content: "＞";
}

.p-top-cta__btn--link-secondary {
	font-size: 18px;
	min-height: 60px;
}

.p-top-cta__btn--link-secondary::after {
	right: 20px;
}

.p-top-cta__btn--link:hover {
	cursor: pointer;
	transition: .5s;
}

.l-footer {
	background-color: #dbdbdb;
	color: #292929;
	text-align: center;
	padding-top: 26px;
	padding-bottom: 32px;
}

.l-footer__list {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	margin-top: 16px;
	margin-bottom: 8px;
}

.l-footer__item:not(:last-child)::after {
	content: "｜";
	padding-left: 16px;
	padding-right: 16px;
}

.l-footer__copyright {
	text-align: center;
	font-size: 11px;
	line-height: 1;
}

.l-header {
	position: absolute;
	z-index: 3;
	width: 100%;
	min-height: 46px;
	margin-top: 16px;
	padding: 8px 20px;
}

.l-header__inner {
	max-width: 135px;
}

.l-wrapper {
	overflow-x: hidden;
}

.l-inner {
	box-sizing: border-box;
	max-width: 1120px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
}

.c-ttl-h2 {
	position: relative;
	text-align: center;
	color: #003e8e;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.33;
	letter-spacing: .05em;
	margin-bottom: 50px;
}

.c-ttl-h2::before {
	position: absolute;
	left: 0;
	right: 0;
	top: auto;
	bottom: -14px;
	display: block;
	content: "";
	background-color: #679ce0;
	width: 108px;
	height: 4px;
	margin: auto;
}

.c-ttl-h2::after {
	position: absolute;
	left: -55px;
	right: 0;
	top: auto;
	bottom: -14px;
	display: block;
	content: "";
	background-color: #2d6fb5;
	width: 54px;
	height: 4px;
	margin: auto;
}

.c-ttl-h3 {
	text-align: center;
	line-height: 1.6;
	color: #41628b;
	font-size: 20px;
	font-weight: 700;
	margin-top: 24px;
	margin-bottom: 16px;
}

.c-ttl-h3__text {
	position: relative;
	display: inline-block;
}

.c-ttl-h3__text::after,
.c-ttl-h3__text::before {
	position: absolute;
	bottom: 0;
	content: "";
	display: block;
	background-color: #41628b;
	width: 2px;
	height: 28px;
	margin: auto;
}

.c-ttl-h3__text::before {
	left: -32px;
	transform: rotate(-32deg);
}

.c-ttl-h3__text::after {
	right: -32px;
	transform: rotate(32deg);
}

.c-ttl-h3 .u-ttl-h3__text::before,
.c-ttl-h3 .u-ttl-h3__text::after {
	display: none;
}

.c-top__ttl {
	background: #435672;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	padding: 13px 16px;
}

.c-top__ttl span {
	color: #ffefb8;
}

.p-top-kv {
	position: relative;
	padding-top: 68px;
	background: url("../images/bgFvSp.jpg") no-repeat;
	background-size: contain;
	overflow: hidden;
}

.p-top-kv__inner {
	position: relative;
	z-index: 2;
	text-align: center;
}

.p-top-kv__contents--logo {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-right: auto;
	margin-left: auto;
}

.p-top-kv__ttl {
	left: 32px;
	text-align: center;
	font-size: 32px;
	line-height: 1.25;
	width: 100%;
	padding: 0 10px;
	margin-top: -10px;
}

.p-top-kv__ttl--small-text {
	position: absolute;
	bottom: 30%;
	font-size: 9px;
	font-weight: 400;
	color: #fff;
	text-align: left;
	white-space: nowrap;
}

.p-top-kv__text {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	text-align: center;
	font-size: 15px;
	font-weight: 500;
	color: #fff;
	margin-inline: auto;
	margin-top: 10px;
}

.p-top-kv__image {
	position: relative;
	text-align: center;
	width: 80%;
	margin: -20px auto 0;
}

.p-top-kv__cta {
	width: 100%;
	text-align: center;
	margin-top: -14%;
	padding: 4px 20px 30px;
	background: #333;
}

.p-top-kv__cta-text {
	position: relative;
	top: -26px;
	width: 90%;
	background: #fff;
	color: #333;
	font-size: 17px;
	font-style: normal;
	font-weight: 700;
	margin: 0 auto;
	padding: 18px 16px 8px;
	border: solid 2px #000;
}

.p-top-kv__cta-text--orange {
	color: #e95513;
}

.p-top-kv__cta-text--yellow {
	color: #ffefb8;
}

.p-top-kv__cta-text--big {
	font-size: 22px;
}

.p-top-kv__cta-text::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 14px 12px 14px;
	border-color: #fff rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
	position: absolute;
	bottom: -30px;
	left: 50%;
	transform: translateX(-50%);
}

.p-top-kv__cta-head {
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%;
	width: 90%;
	color: #fff;
	font-size: 14px;
	line-height: 1;
	white-space: nowrap;
	background: #333;
	border: 1px solid #fff;
	padding: 2px 8px 8px;
}

.p-top-kv__cta .p-top-cta__btn--link {
	background: #0c76ff;
	color: #fff;
	box-shadow: none;
}

.p-top-kv__cta .p-top-cta__btn--link:hover {
	cursor: pointer;
	transition: .5s;
}

.p-top-kv__bg {
	position: absolute;
	pointer-events: none;
	top: auto;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
	filter: drop-shadow(0px 2px 4px rgba(99, 122, 137, 0.2));
	width: 100vw;
	height: calc(100% + 30px);
	margin: 0 calc(50% - 50vw);
}

.p-top-kv__bg img {
	-webkit-clip-path: polygon(0 0, 100% 0%, 100% 97%, 50% 100%, 0 97%);
	clip-path: polygon(0 0, 100% 0%, 100% 97%, 50% 100%, 0 97%);
	-o-object-fit: cover;
	object-fit: cover;
	width: 100%;
	height: calc(100% + 35px);
}

.p-top-target {
	position: relative;
	background: #e8edf0;
	padding-top: 36px;
	padding-bottom: 22px;
}

.p-top-target__block {
	width: 100%;
	margin-inline: auto;
	padding: 16px 20px;
	background: #fff;
}

.p-top-target__item {
	position: relative;
	display: flex;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
	margin-bottom: 14px;
	padding-bottom: 10px;
	border-bottom: solid 1px #a4a0a0;
}

.p-top-target__item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border: none;
}

.p-top-target__item::before {
	flex: none;
	display: block;
	content: "";
	background-image: url("../images/icon_check.svg");
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	width: 24px;
	height: 24px;
	margin-right: 18px;
}

.p-top-target__item--bold {
	display: contents;
	font-weight: 700;
}

.l-intro {
	position: relative;
	background-color: #fff;
	text-align: center;
	padding-top: 40px;
	padding-bottom: 40px;
}

.l-intro__ttl {
	color: #3c3c3c;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.42;
	margin-bottom: 24px;
}

.l-intro__text {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.42;
}

.l-intro__text--blue {
	color: #003e8e;
	font-size: 18px;
	font-weight: 500;
}

.l-intro__text--red {
	display: inline-block;
	position: relative;
	background: linear-gradient(transparent 75%, #F8DA42 25%);
	color: #ca290b;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.2;
	margin-top: 14px;
	margin-bottom: 20px;
}

.l-intro__text--red::before,
.l-intro__text--red::after {
	position: absolute;
	top: auto;
	bottom: 0;
	display: block;
	background-color: #fff;
	content: "";
	height: 10px;
	width: 10px;
	margin: auto;
}

.l-intro__text--red::before {
	right: auto;
	left: 0;
}

.l-intro__text--red::after {
	right: 0;
	left: auto;
}

.l-intro__image {
	margin-top: 32px;
}

.l-intro__block {
	max-width: 720px;
	margin: 24px auto 0;
}

.l-intro__menu {
	position: relative;
	cursor: pointer;
	background: #e8edf0;
	display: flex;
	gap: 8px;
	color: #333;
	font-size: 16px;
	padding: 12px 16px;
	border-radius: 8px;
}

.l-intro__arrow {
	position: absolute;
	top: 50%;
	right: 2%;
	translate: -50% -50%;
}

.l-intro__wrap {
	display: none;
	margin-top: 16px;
}

.l-intro__item {
	text-align: justify;
}

.l-intro__item-text {
	color: #333;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
}

.l-intro__item-image {
	flex: none;
	margin-top: 10px;
}

.p-top-service {
	position: relative;
	background-color: #e8edf0;
	padding-top: 40px;
	padding-bottom: 42px;
}

.p-top-service__lead {
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 24px;
	text-align: center;
}

.p-top-service__block {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 40px;
}

.p-top-service__block:last-child {
	margin-bottom: 0;
}

.p-top-service__block--secondary {
	gap: 16px;
	margin-top: 16px;
}

.p-top-service__product {
	display: flex;
	flex-wrap: wrap;
	background-color: #dce2e5;
	text-align: center;
	width: 49%;
	margin-top: 16px;
}

.p-top-service__product:hover {
	cursor: pointer;
	opacity: .5;
	transition: .5s;
}

.p-top-service__product:first-child,
.p-top-service__product:nth-of-type(2) {
	margin-top: 0;
}

.p-top-service__product--image {
	display: flex;
	line-height: 1;
	max-height: 128px;
	padding: 10px;
	margin: auto;
}

.p-top-service__product--name {
	position: relative;
	display: block;
	background-color: #637a89;
	font-size: 16px;
	line-height: 1.375;
	color: #fff;
	width: 100%;
	padding: 8px 16px;
	margin-top: auto;
}

.p-top-service__product--name:before {
	content: "next";
	position: absolute;
	top: 30px;
	right: 10px;
	translate: -50% -50%;
	font-size: 14px;
	font-family: swiper-icons;
	color: #fff;
}

.p-top-service__list {
	margin-bottom: 28px;
}

.p-top-service__item {
	display: flex;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
}

.p-top-service__image {
	display: block;
	text-align: center;
	width: 100%;
}

.p-top-service__image img {
	width: 100%;
	max-width: 672px;
}

.p-top-service__knowhow--harf {
	padding: 33px 25px;
	background: #fff;
	margin: 0 auto 32px;
}

.p-top-service__knowhow--harf:last-child {
	margin-bottom: 0;
}

.p-top-service__knowhow-title {
	width: 100%;
	font-size: 16px;
	font-weight: bold;
	border-bottom: solid 1px #3c3c3c;
	padding-bottom: 16px;
}

.p-top-service__knowhow-title--blue {
	font-size: 20px;
	color: #41628b;
}

.p-top-service__knowhow-title--full {
	margin-top: 20px;
}

.p-top-service__knowhow-flex {
	display: flex;
	flex-direction: column-reverse;
	justify-content: space-between;
}

.p-top-service__knowhow-flex--left,
.p-top-service__knowhow-flex--right {
	width: 100%;
}

.p-top-service__knowhow-video {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin: 0 auto 20px;
}

.p-top-service__knowhow-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.p-top-service__knowhow-text {
	font-size: 14px;
	color: #3c3c3c;
	margin: 16px 0;
}

.p-top-service__knowhow-block--text {
	position: relative;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	color: #fff;
	background-color: #41628b;
	padding: 6px 10px 7px;
	border-radius: 8px 8px 0 0;
}

.p-top-service__knowhow-block--text::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 10px 0 10px;
	border-color: #41628b rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
}

.p-top-service__knowhow-item {
	background-color: #fff7db;
	padding: 10px 16px;
	border-radius: 0 0 8px 8px;
	font-size: 14px;
	font-weight: bold;
	color: #41628b;
}

.p-top-service__knowhow-item--list {
	display: flex;
	gap: 4px;
	margin-bottom: 14px;
}

.p-top-service__knowhow-item--list:last-child {
	margin-bottom: 0;
}

.p-top-service__knowhow-item--check {
	width: 18px;
	height: 18px;
	margin-top: 2px;
}

.p-top-about {
	margin-bottom: 47px;
}

.p-top-about__movie {
	width: 100%;
	margin-bottom: 20px;
	aspect-ratio: 16/9;
}

.p-top-about__movie iframe {
	width: 100%;
	height: 100%;
}

.p-top-about__box {
	width: 100%;
}

.p-top-about__text {
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 20px;
	padding: 0 27px;
}

.p-top-about__btn {
	cursor: pointer;
	font-size: 20px;
	font-weight: 700;
}

.p-top-about__btn--link {
	position: relative;
	display: block;
	text-align: center;
	padding: 18px 5px;
	line-height: 1;
	color: #e95513;
	background: #fff;
	border-radius: 8px;
	border: 2px solid #e95513;
}

.p-top-about__btn--link::after {
	position: absolute;
	right: 20px;
	content: "＞";
}

.p-about-modal {
	display: none;
	position: fixed;
	z-index: 100;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background-color: #000;
	background-color: rgba(0,0,0,.4);
	padding: 0 10px;
}

.p-about-modal__content {
	position: relative;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	background-color: #fefefe;
	text-align: center;
	padding: 32px 0;
	border-radius: 10px;
}

.p-about-modal__title {
	width: 86%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: #CA290B;
	font-size: 18px;
	font-weight: bold;
	margin: 0 auto 16px;
	padding: 10px;
	border-radius: 5px;
	border: 2px solid #CA290B;
}

.p-about-modal__title img {
	width: 24px;
	height: 24px;
}

.p-about-modal__text {
	text-align: left;
	font-size: 14px;
	font-weight: 500;
	margin: 4px auto 10px;
	padding: 0 14px;
	line-height: 1.8;
}

.p-about-modal__text--orange {
	display: inline-block;
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	color: #e95513;
	margin-bottom: 12px;
}

.p-about-modal__link {
	display: inline-block;
	width: 256px;
}

.p-about-modal__link:hover {
	opacity: .6;
	transition: .3s;
}

.p-about-modal__image {
	margin-top: 32px;
	padding-left: 10px;
}

.p-about-closeModal {
	position: absolute;
	top: 0;
	right: 10px;
	color: #aaa;
	font-size: 24px;
}

.p-about-closeModal:hover,
.p-about-closeModal:focus {
	color: #000;
	text-decoration: none;
	cursor: pointer;
}

.p-top-point {
	margin: 0 auto 56px;
}

.p-top-point__ttl {
	color: #333;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.1;
	margin-bottom: 40px;
}

.p-top-point__ttl span {
	color: #003a84;
}

.p-top-point__ttl--big {
	font-size: 30px;
}

.p-top-point__item {
	position: relative;
	background: #fff;
	margin-bottom: 41px;
	padding: 40px 26px 28px;
}

.p-top-point__item:last-child {
	margin-bottom: 0;
}

.p-top-point__item::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-top: 60px solid rgba(65,98,139,.3);
	border-right: 60px solid rgba(0,0,0,0);
}

.p-top-point__icon {
	max-width: 50px;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%;
}

.p-top-point__detail {
	color: #222;
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
}

.p-top-point__detail--small {
	font-size: 14px;
}

.p-top-point__detail--orange {
	color: #d63f22;
}

.p-top-point__image {
	flex: none;
	margin-bottom: 16px;
}

.p-top-point__text {
	color: #3c3c3c;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
}

.p-top-works {
	position: relative;
	background-color: #fff;
	padding-top: 40px;
	padding-bottom: 40px;
}

.p-top-works__block {
	position: relative;
	background-color: #003e8e;
	color: #fff;
	min-height: 202px;
	padding: 16px 16px 20px;
	margin-bottom: 24px;
}

.p-top-works__block:last-child {
	margin-bottom: 0;
}

.p-top-works__ttl {
	font-size: 20px;
	font-weight: 500;
	text-align: center;
	margin-bottom: 14px;
}

.p-top-works__ttl--accent {
	color: #ffd442;
}

.p-top-works__ttl--big {
	font-size: 26px;
}

.p-top-works__text {
	line-height: 1.5;
	font-weight: 400;
	font-size: 16px;
	padding-left: 104px;
}

.p-top-works__note {
	font-size: 10px;
	margin-top: 10px;
	width: calc(100% + 70px);
	margin-left: -36px;
}

.p-top-works__note p {
	transform: scale(0.8);
}

.p-top-works__img {
	position: absolute;
	top: 0;
	bottom: 0;
	right: auto;
	left: 16px;
	width: 88px;
	height: 88px;
	margin: auto;
}

.p-top-voice {
	position: relative;
	background-color: #e8edf0;
	padding-top: 64px;
	padding-bottom: 40px;
}

.p-top-voice::before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 24px 40px 0 40px;
	border-color: #fff rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
	margin: auto;
}

.p-top-voice__contents--hidden {
	position: relative;
	height: 240px;
	overflow: hidden;
	transition: height .3s ease;
}

.p-top-voice__contents--hidden.show {
	height: auto;
}

.p-top-voice__contents--hidden::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 50px;
	background-color: #fff7dc;
	border-radius: 5px;
	z-index: 0;
}

.p-top-voice__contents--hidden.bg::before {
	display: none;
}

.p-top-voice__block {
	position: relative;
	margin-bottom: 100px;
}

.p-top-voice__block:last-child {
	margin-bottom: 50px;
}

.p-top-voice__movie {
	width: 100%;
	max-width: 100%;
}

.p-top-voice__movie-wrap {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin: 0 auto;
}

.p-top-voice__movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.p-top-voice__title--text {
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 16px 20px;
	background: #41628b;
	line-height: normal;
}

.p-top-voice__title--yellow {
	font-size: 20px;
	font-weight: bold;
	color: #ffefb8;
}

.p-top-voice__profile {
	color: #000;
	background: #fff;
	padding: 20px 20px 44px 20px;
}

.p-top-voice__name {
	font-size: 16px;
	margin-bottom: 12px;
}

.p-top-voice__name--min {
	font-size: 14px;
}

.p-top-voice__label {
	max-width: 104px;
	font-size: 14px;
	text-align: center;
	color: #fff;
	background: #41628b;
}

.p-top-voice__journey {
	padding: 8px 0;
	border-top: solid 1px #41628b;
	border-bottom: solid 1px #41628b;
}

.p-top-voice__journey--text {
	font-size: 15px;
	margin-bottom: 6px;
}

.p-top-voice__journey--text:last-child {
	margin-bottom: 0;
}

.p-top-voice__btn {
	position: absolute;
	left: 50%;
	translate: -50% -50%;
	width: calc(100% - 20px);
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding: 8px 0;
	border-radius: 8px;
	border: 2px solid #41628b;
	background: #fff;
}

.p-top-voice__btn:hover {
	cursor: pointer;
}

.p-top-voice__btn--icon {
	margin-right: 8px;
}

.p-top-voice__btn--arrow {
	position: absolute;
	top: 50%;
	right: 6%;
	translate: -50% -50%;
}

.p-top-voice__detail {
	background: #fff7dc;
	padding: 22px;
}

.p-top-voice__detail-title {
	font-size: 20px;
	font-weight: bold;
	color: #41628b;
	margin-bottom: 16px;
}

.p-top-voice__detail-text {
	margin-bottom: 16px;
}

.p-top-voice__detail-text.show {
	height: auto;
}

.p-top-voice__detail-img {
	text-align: center;
}

.p-top-voice__point {
	padding: 40px 22px;
	background: #fff;
}

.p-top-voice__point--img {
	margin-bottom: 30px;
}

.p-top-voice__point-title {
	font-size: 20px;
	font-weight: bold;
	color: #41628b;
	margin-bottom: 16px;
}

.p-top-voice__point-block--img {
	text-align: center;
	margin: 24px 0 30px;
}

.p-top-voice__ttl {
	text-align: center;
	font-size: 24px;
	line-height: 1.33;
	font-weight: 500;
	color: #41628b;
	margin-bottom: 14px;
}

.p-top-voice__detail {
	font-size: 16px;
	line-height: 1.5;
}

.p-top-flow {
	background-color: #fff;
	padding-top: 40px;
	padding-bottom: 40px;
}

.p-top-flow__wrap {
	max-width: 720px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.p-top-flow__box-item {
	margin-bottom: 16px;
}

.p-top-flow__box-item:last-child {
	margin-bottom: 0;
}

.p-top-flow__side-box {
	position: relative;
	width: 100%;
	height: auto;
	text-align: center;
	background: #41628b;
	color: #fff;
	font-size: 24px;
	line-height: 1;
	font-weight: 500;
	margin-bottom: 16px;
	padding: 18px 10px 24px;
}

.p-top-flow__side-box--yellow {
	color: #ffd442;
}

.p-top-flow__side-box--number {
	-ms-writing-mode: initial;
	    writing-mode: initial;
	font-size: 32px;
}

.p-top-flow__side-box::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 12px 14px 12px;
	border-color: #41628b rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
	position: absolute;
	bottom: -30px;
	left: 50%;
	transform: translateX(-50%);
}

.p-top-flow__card {
	position: relative;
	padding: 12px 0;
	border: 1px solid #41628b;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 106px auto;
	grid-template-columns: 106px auto;
	background: #fff;
}

.p-top-flow__card--red {
	border: 1px solid #ca290b;
}

.p-top-flow__card--red:before {
	border-color: rgba(0,0,0,0) #ca290b rgba(0,0,0,0) rgba(0,0,0,0);
}

.p-top-flow__card--red-head {
	border-right: 1px solid #ca290b;
}

.p-top-flow__card-head {
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid #41628b;
}

.p-top-flow__card-head img {
	display: block;
}

.p-top-flow__card-main {
	padding: 0 20px;
}

.p-top-flow__card-text {
	margin-top: 10px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0;
}

.p-top-flow__card-text--small {
	font-size: 12px;
	line-height: 1.3333333333;
}

.p-top-flow__card-heading {
	display: flex;
	align-items: center;
}

.p-top-flow__card-heading--step {
	display: flex;
	align-items: center;
	font-size: 14px;
	line-height: 1;
	font-weight: 500;
	color: #3c3c3c;
	font-family: "Roboto",sans-serif;
}

.p-top-flow__card-heading--number {
	margin-left: 6px;
	font-size: 24px;
	line-height: 1;
	font-weight: 500;
	color: #41628b;
}

.p-top-flow__card-heading--number-red {
	color: #ca290b;
}

.p-top-flow__card-heading--text {
	position: relative;
	padding-left: 30px;
	font-size: 24px;
	line-height: 1.3333333333;
	font-weight: bold;
	color: #41628b;
}

.p-top-flow__card-heading--text-red {
	color: #ca290b;
}

.p-top-flow__card-heading--text:before {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 8px;
	content: "";
	background: #707070;
	width: 16px;
	height: 1px;
}

.p-top-faq {
	background-color: #e8edf0;
	padding-top: 40px;
}

.p-top-faq__inner {
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.p-top-faq__block {
	background-color: #fff;
	box-sizing: border-box;
}

.p-top-faq__ttl--question {
	position: relative;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	background-color: #41628b;
	transition: .3s;
	border-bottom: solid 1px #fff;
	cursor: pointer;
	color: #fff;
	font-size: 20px;
	min-height: 48px;
	padding: 9px 40px 9px 20px;
}

.p-top-faq__ttl--question::after {
	position: absolute;
	top: -5px;
	bottom: 0;
	right: 20px;
	display: block;
	content: "";
	width: 10px;
	height: 10px;
	border-style: solid;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	border-bottom: 0;
	transform: rotate(134deg);
	margin: auto;
}

.p-top-faq__ttl--question:hover {
	opacity: .7;
}

.p-top-faq__answer {
	display: none;
	line-height: 1.5;
	font-size: 16px;
}

.p-top-faq__answer--inner {
	padding: 20px 20px 24px;
}

.p-top-faq__answer--ttl {
	text-align: center;
	color: #41628b;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.44;
	margin-bottom: 12px;
}

.p-top-faq__answer--box {
	background-color: #e8edf0;
	padding: 16px 20px;
	margin-top: 20px;
}

.p-top-faq__answer--dl {
	margin-bottom: 16px;
}

.p-top-faq__answer--dl+.p-top-faq__answer--dl {
	margin-bottom: 0;
}

.p-top-faq__answer--dt {
	font-weight: 500;
	margin-bottom: 10px;
}

.p-top-faq__answer--dt::before {
	content: "【";
}

.p-top-faq__answer--dt::after {
	content: "】";
}

.p-top-faq__note {
	font-size: 14px;
	line-height: 1.71;
	margin-top: 16px;
}

.p-top-faq__cta {
	position: absolute;
	left: 50%;
	translate: -50% 0%;
	bottom: 0;
	width: 100%;
	text-align: center;
	padding: 20px 10px;
	background: rgba(255,255,255,.7);
}

.p-top-faq__cta--text {
	font-size: 16px;
	line-height: 1.5;
	font-weight: 500;
	margin-bottom: 16px;
}

.p-top-faq__cta .p-top-cta__btn {
	max-width: 100%;
}

.p-top-faq__cta .p-top-cta__btn--link:hover {
	cursor: pointer;
	transition: .5s;
}

.p-top-company {
	background-color: #fff;
	padding-top: 40px;
	padding-bottom: 50px;
}

.p-top-company__box-list {
	max-width: 720px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.p-top-company__box-list--dt {
	color: #3c3c3c;
	line-height: 2;
	font-weight: 700;
	padding-top: 16px;
}

.p-top-company__box-list--dd {
	line-height: 2;
	border-bottom: 1px solid #c9e1fc;
	padding-bottom: 16px;
}

.p-top-company__box-list--blue {
	color: #6e8eb2;
	margin-right: 6px;
}

.p-top-company__address {
	margin: 40px auto 0;
}

.p-top-company__address-ttl {
	color: #41628b;
	font-weight: 700;
	line-height: normal;
	font-size: 20px;
	margin-bottom: 20px;
}

.p-top-company__address-list {
	display: flex;
	gap: 16px;
	margin-bottom: 16px;
}

.p-top-company__address-list:last-child {
	margin-bottom: 0;
}

.p-top-company__address-image {
	flex: none;
	max-width: 100px;
}

.p-top-company__address-text {
	color: #242424;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: .7px;
}

.l-inside {
	width: 1140px;
	margin: 0 auto;
}

.sample-wrap {
	margin: 200px 0;
}

.c-sup {
	vertical-align: super;
}

.l-box {
	max-width: 1060px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.l-inner {
	max-width: 1140px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.l-compact {
	max-width: 880px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.l-in-box {
	max-width: 720px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.c-anchor00 {
	margin-top: -48px;
	padding-top: 48px;
}

.c-anchor {
	margin-top: -100px;
	padding-top: 100px;
}

.do * {
	box-sizing: border-box;
}

.do a.c-wq-btn01 {
	position: relative;
	padding-top: 12px;
	display: flex;
	justify-content: center;
	font-size: 20px;
	line-height: 1;
	font-weight: 500;
	width: 260px;
	height: 64px;
	color: #fff;
	background-image: url("../../assets/img/work_quality/bg_btn01.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: .4s;
}

.do a.c-wq-btn01:before {
	position: absolute;
	bottom: 14px;
	left: 50%;
	transform: translateX(-50%);
	width: 21px;
	height: 8px;
	content: "";
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-image: url("../../assets/img/work_quality/down_arrows01.svg");
	transition: .4s;
}

.do a.c-wq-btn01:hover {
	opacity: .8;
}

.do a.c-wq-btn01:hover:before {
	bottom: 12px;
}

.p-top-inner {
	max-width: 1180px;
	width: 100%;
	margin: auto;
	padding: 0 20px;
	box-sizing: border-box;
}

.p-top-compact {
	max-width: 880px;
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}

.p-top-service___block.-mb-light {
	margin-bottom: 20px;
}

.p-flow-box {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 54px 633px;
	grid-template-columns: 54px 633px;
	-ms-grid-rows: 668px 668px;
	grid-template-rows: 668px 668px;
	justify-content: space-between;
	height: 688px;
}

.p-flow-box>*:nth-child(1) {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
}

.p-flow-box>*:nth-child(2) {
	-ms-grid-row: 1;
	-ms-grid-column: 2;
}

.p-flow-box>*:nth-child(3) {
	-ms-grid-row: 2;
	-ms-grid-column: 1;
}

.p-flow-box>*:nth-child(4) {
	-ms-grid-row: 2;
	-ms-grid-column: 2;
}

.p-flow-box .p-flow-box__main .p-flow-box__item+.p-flow-box__item {
	margin-top: 16px;
}

.p-flow-box .c-ty-box01 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	background: #41628b;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: 500;
}

.p-flow-box .c-ty-box01 .yel {
	color: #ffd442;
}

.p-flow-box .c-ty-box01 .num {
	-ms-writing-mode: initial;
	writing-mode: initial;
}

.p-lineup-gray-box {
	margin-bottom: 32px;
	padding: 34px 78px 40px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-image: url("../../assets/images/flow/lineup-gray-box_bg.webp");
}

.p-lineup-gray-box .p-lineup-gray-box__main {
	margin-top: 26px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 32px 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 0 32px;
}

.p-lineup-card01 {
	display: -ms-grid;
	display: grid;
	    grid-template-areas: "image" "title";
}

.p-lineup-card01__title {
	-ms-grid-row: 2;
	-ms-grid-column: 1;
	position: relative;
	grid-area: title;
	height: 70px;
	border: 1px solid #fff;
	color: #fff;
	font-size: 22px;
	line-height: 1;
	font-weight: 500;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: #637a89;
}

.p-lineup-card01__title:before {
	content: "next";
	position: absolute;
	right: 30px;
	font-size: 14px;
	font-family: swiper-icons;
	color: #fff;
}

.p-lineup-card01__note {
	font-size: 10px;
	font-weight: 200;
	margin-top: 10px;
	color: #cbced2;
}

.p-lineup-card01__main {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
	position: relative;
	grid-area: image;
}

.p-lineup-card01__main img {
	width: 100%;
	height: auto;
	display: block;
}

.p-lineup-card01__icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 54px;
	height: 54px;
}

.c-check-heading {
	text-align: center;
	font-weight: 500;
	color: #fff;
	font-size: 28px;
	line-height: 1.1428571429;
}

.c-check-heading span {
	position: relative;
}

.c-check-heading span:before {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: -12px;
	width: 97px;
	height: 14px;
	background-image: url("../images/flow/icon_check.svg");
	content: "";
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.p-top__modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	padding: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity .3s;
	pointer-events: none;
	opacity: 0;
	z-index: 100;
	background-color: rgba(51,51,51,.5);
}

.p-top__modal.is-active {
	opacity: 1;
	pointer-events: auto;
}

.p-top__modal--overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	cursor: pointer;
}

.p-top__modal-content {
	position: relative;
	width: 100%;
}

.p-top__modal-inner {
	filter: drop-shadow(0px 0px 4px #ddd);
	background: #fff;
	margin: 0 auto;
	border-radius: 2px;
	padding: 25px 20px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	border-radius: 16px;
}

.p-top__modal--close-btn {
	position: absolute;
	top: 4px;
	right: -4px;
	width: 40px;
	height: 40px;
	cursor: pointer;
	z-index: 20;
}

.p-top__modal--close-btn:hover {
	opacity: .8;
}

.p-top__modal--close-btn:before {
	position: absolute;
	content: "";
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: #ececec;
}

.p-top__modal--lineClose {
	display: inline-block;
	vertical-align: middle;
	color: #313131;
	line-height: 1;
	width: 17px;
	height: .1rem;
	background: currentColor;
	border-radius: .1rem;
	position: absolute;
	top: 15px;
	right: 15.5px;
	transform: rotate(45deg);
}

.p-top__modal--lineClose::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: inherit;
	border-radius: inherit;
	transform: rotate(90deg);
}

.p-top__modal-image {
	flex: none;
	text-align: center;
	margin-bottom: 24px;
}

.p-top__modal-image-knowhow {
	margin: 0;
}

.p-top__modal-title {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 16px;
	padding-bottom: 10px;
	border-bottom: solid 1px #333;
}

.p-top__modal-title-knowhow {
	font-size: 16px;
	font-weight: 500;
}

.p-top__modal-title--blue {
	font-size: 20px;
	font-weight: 700;
	color: #003e8e;
}

.p-top__modal-detail--years {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 16px;
}

.p-top__modal-detail--years-bold {
	font-size: 16px;
	font-weight: 700;
	margin-left: 9px;
}

.p-top__modal-detail--category {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-bottom: 22px;
}

.p-top__modal-detail--category-color {
	font-size: 14px;
	line-height: 1.5;
	color: #fff;
	padding: 2.5px 12px;
	border-radius: 13px;
}

.p-top__modal-detail--category-ragikaru {
	background: #3c3c79;
}

.p-top__modal-detail--category-toshitsusei {
	background: #3f3fa0;
}

.p-top__modal-detail--category-teiosen {
	background: #2d6fb5;
}

.p-top__modal-detail--category-shanetsusei {
	background: #003e8e;
}

.p-top__modal-detail--category-taikosei {
	background: #5f5f89;
}

.p-top__modal-detail--category-taishoku {
	background: #0b60c4;
}

.p-top__modal-detail--category-muki {
	background: #3b3bda;
}

.p-top__modal-detail--category-suisei {
	background: #077bf5;
}

.p-top__modal-detail--category-bomosei {
	background: #486d94;
}

.p-top__modal-detail--category-bosuisei {
	background: #009bbd;
}

.p-top__modal-detail-text {
	font-size: 14px;
	line-height: 1.5;
}

.p-top__modal-detail-text--blue {
	display: inline-block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	color: #003e8e;
	margin-bottom: 12px;
}

.p-top__modal-detail-text--voice {
	display: inline-block;
	margin-top: 12px;
}

.p-top__modal-detail-text-knowhow {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 16px;
}

.p-top__modal-detail-text-knowhow--blue {
	display: inline;
	font-size: 14px;
	font-weight: 400;
}

.p-top__modalOpen1 {
	cursor: pointer;
}

.swiper {
	max-height: 578px;
	overflow-y: auto;
}

.swiper-button-prev:before {
	position: absolute;
	left: -36px;
	z-index: -1;
	content: "";
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #e7f1fd;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.swiper-button-next:before {
	position: absolute;
	right: -36px;
	z-index: -1;
	content: "";
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #e7f1fd;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.swiper-button-prev:after {
	position: absolute;
	left: -21px;
	font-size: 16px;
	color: #003e8e;
}

.swiper-button-next:after {
	position: absolute;
	right: -21px;
	font-size: 16px;
	color: #003e8e;
}

.swiper-button-prev.clicked:before,
.swiper-button-next.clicked:before {
	background-color: rgba(0,62,142,.5);
}

#id-lp04 .mrc_webform_modal .mrc_webform_modal_dialog {
	width: 100% !important;
}

#id-lp04 .mrc_webform_modal .mrc_webform_modal_body {
	padding: 16px 8px 32px !important;
}

#id-lp04 .mrc_webform_modal .mrc_webform_modal_header {
	border: none !important;
}

#id-lp04 #mrc_webform .mrc_webform_button button.mrc_webform_apply {
	border-radius: 40px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	width: 180px !important;
	padding: 12px 24px !important;
}

#id-lp04 #mrc_webform table.mrc_webform_questionnaire,
#id-lp04 #mrc_download table.mrc_webform_questionnaire {
	border-collapse: collapse !important;
}

#id-lp04 #mrc_webform .mrc_webform_row td {
	padding-bottom: 0 !important;
}

#id-lp04 #mrc_webform .mrc_webform_custtitle th,
#id-lp04 #mrc_webform .mrc_webform_custinfo th,
#id-lp04 #mrc_webform .mrc_webform_custinfo td,
#id-lp04 #mrc_download .mrc_webform_custtitle th,
#id-lp04 #mrc_download .mrc_webform_custinfo th,
#id-lp04 #mrc_download .mrc_webform_custinfo td,
#id-lp04 .mrc_webform_row .mrc_webform_q,
#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a label,
#id-lp04 #mrc_download .mrc_webform_row .mrc_webform_a label {
	display: block !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	padding: 8px !important;
}

#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a label,
#id-lp04 #mrc_download .mrc_webform_row .mrc_webform_a label {
	display: flex !important;
	justify-content: flex-start;
	align-items: center;
	font-size: 16px !important;
	height: 32px;
	padding: 0 !important;
}

#id-lp04 .mrc_webform_row .mrc_webform_q {
	background: #def4ff !important;
	border: none !important;
	padding: 8px 8px !important;
}

#id-lp04 .mrc_webform_row .mrc_webform_a {
	padding-left: 0 !important;
	padding-right: 0 !important;
	border: none !important;
}

#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a input[type=text],
#id-lp04 #mrc_download .mrc_webform_row .mrc_webform_a input[type=text],
#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a input[type=date],
#id-lp04 #mrc_download .mrc_webform_row .mrc_webform_a input[type=date],
#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a input[type=number],
#id-lp04 #mrc_download .mrc_webform_row .mrc_webform_a input[type=number],
#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a input[type=email],
#id-lp04 #mrc_download .mrc_webform_row .mrc_webform_a input[type=email],
#id-lp04 #mrc_webform .mrc_webform_row.mrc_webform_custinfo .mrc_webform_a input,
#id-lp04 #mrc_download .mrc_webform_row.mrc_webform_custinfo .mrc_webform_a input {
	font-size: 16px !important;
	padding: 8px 8px !important;
	width: calc(100% - 60px) !important;
	height: 42px !important;
	max-width: 100% !important;
	border: 2px solid #333 !important;
	border-radius: 4px !important;
}

#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a input[name=tel],
#id-lp04 #mrc_webform .mrc_webform_row .mrc_webform_a input[name=zipcode] {
	width: 160px !important;
	height: 42px !important;
	max-width: 100% !important;
}

#id-lp04 #mrc_webform .mrc_webform_custinfo td {
	border: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#id-lp04 #mrc_webform .mrc_webform_custtitle th {
	border: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	font-size: 20px !important;
}

#id-lp04 #mrc_webform .mrc_webform_custinfo th {
	border: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#id-lp04 #mrc_webform .mrc_webform_custinfo th {
	padding-bottom: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#id-lp04 #mrc_webform span.mrc_webform_req,
#id-lp04 #mrc_download span.mrc_webform_req {
	font-size: 12px !important;
	padding: 6px 8px !important;
	line-height: 1 !important;
	letter-spacing: .05em !important;
	border-radius: 4px !important;
}

.cf::after {
	clear: both;
	content: "";
	display: block;
}

.u-ellipsis {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.e-skr {
	font-family: "Noto Sans JP",sans-serif;
	font-size: 16px;
	line-height: 2;
	color: #121212;
}

.e-skr h1,
.e-skr h2,
.e-skr h3,
.e-skr h4,
.e-skr h5,
.e-skr h6 {
	line-height: 1.1;
	font-family: "Noto Sans JP",sans-serif;
	font-weight: 700;
	margin-top: 1em;
	margin-bottom: 1.5em;
	overflow-wrap: break-word;
	word-wrap: break-word;
	-ms-word-break: break-all;
	word-break: break-word;
}

.e-skr h1 {
	font-size: 1.5em;
}

.e-skr h2 {
	font-size: 1.375em;
	background-color: #ececec;
	padding: 18px 20px;
}

.e-skr h3 {
	font-size: 1.25em;
	background-color: #fff;
	padding: 5px 10px;
	border-left: 3px solid #121212;
}

.e-skr h4 {
	font-size: 1.125em;
}

.e-skr h5 {
	font-size: 1em;
}

.e-skr h6 {
	font-size: 1em;
}

.e-skr p {
	margin-top: 0px;
	margin-bottom: 2.5em;
}

.e-skr small,
.e-skr sub,
.e-skr sup {
	font-size: 75%;
}

.e-skr hr {
	border-color: #1d7484;
}

.e-skr a {
	text-decoration: none;
	color: #1d7484;
}

.e-skr a:hover {
	color: #982c61;
	border-bottom: 2px solid #121212;
}

.e-skr a:visited {
	color: #144f5a;
}

.e-skr ul,
.e-skr ol {
	padding-left: 1.4em;
	margin-top: 0px;
	margin-bottom: 2.5em;
}

.e-skr ul {
	list-style: disc;
}

.e-skr ol {
	list-style: auto;
}

.e-skr li {
	margin-bottom: .4em;
}

.e-skr blockquote {
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 1em;
	padding-top: .8em;
	padding-bottom: .8em;
	padding-right: .8em;
	border-left: 5px solid #1d7484;
	margin-bottom: 2.5em;
	background-color: #ececec;
}

.e-skr blockquote p {
	margin-bottom: 0;
}

.e-skr img,
.e-skr video {
	height: auto;
	max-width: 100%;
	margin-top: 0px;
	margin-bottom: 2.5em;
}

.e-skr pre {
	background-color: #ececec;
	display: block;
	padding: 1em;
	overflow-x: auto;
	margin-top: 0px;
	margin-bottom: 2.5em;
	font-size: .9em;
}

.e-skr code {
	font-size: .9em;
	padding: 0 .5em;
	background-color: #ececec;
	white-space: pre-wrap;
}

.e-skr pre>code {
	padding: 0;
	background-color: rgba(0,0,0,0);
	white-space: pre;
	font-size: 1em;
}

.e-skr table {
	text-align: justify;
	width: 100%;
	border-collapse: collapse;
}

.e-skr td,
.e-skr th {
	padding: .5em;
	border-bottom: 1px solid #ececec;
}

.e-skr input,
.e-skr textarea {
	border: 1px solid #121212;
}

.e-skr input:focus,
.e-skr textarea:focus {
	border: 1px solid #1d7484;
}

.e-skr textarea {
	width: 100%;
}

.e-skr .button,
.e-skr button,
.e-skr input[type=submit],
.e-skr input[type=reset],
.e-skr input[type=button] {
	display: inline-block;
	padding: 5px 10px;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	background-color: #1d7484;
	color: #f9f9f9;
	border-radius: 1px;
	border: 1px solid #1d7484;
	cursor: pointer;
	box-sizing: border-box;
}

.e-skr .button[disabled],
.e-skr button[disabled],
.e-skr input[type=submit][disabled],
.e-skr input[type=reset][disabled],
.e-skr input[type=button][disabled] {
	cursor: default;
	opacity: .5;
}

.e-skr .button:focus:enabled,
.e-skr .button:hover:enabled,
.e-skr button:focus:enabled,
.e-skr button:hover:enabled,
.e-skr input[type=submit]:focus:enabled,
.e-skr input[type=submit]:hover:enabled,
.e-skr input[type=reset]:focus:enabled,
.e-skr input[type=reset]:hover:enabled,
.e-skr input[type=button]:focus:enabled,
.e-skr input[type=button]:hover:enabled {
	background-color: #982c61;
	border-color: #982c61;
	color: #f9f9f9;
	outline: 0;
}

.e-skr textarea,
.e-skr select,
.e-skr input {
	color: #121212;
	padding: 6px 10px;
	margin-bottom: 10px;
	background-color: #ececec;
	border: 1px solid #ececec;
	border-radius: 4px;
	box-shadow: none;
	box-sizing: border-box;
}

.e-skr textarea:focus,
.e-skr select:focus,
.e-skr input:focus {
	border: 1px solid #1d7484;
	outline: 0;
}

.e-skr input[type=checkbox]:focus {
	outline: 1px dotted #1d7484;
}

.e-skr label,
.e-skr legend,
.e-skr fieldset {
	display: block;
	margin-bottom: .5em;
	font-weight: 600;
}

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

.u-hidden-pc {
	display: none;
}

}

@media (min-width: 840px) {

.l-cta {
	padding-bottom: 30px;
}

.l-cta__ttl {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
}

.l-cta__btn {
	width: 100%;
	max-width: 472px;
}

.l-cta__btn--link {
	font-size: 24px;
	min-height: 80px;
}

.l-cta__btn--text {
	padding-right: 0;
}

.p-top-cta {
	padding-bottom: 30px;
}

.p-top-cta__ttl {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
}

.p-top-cta__btn {
	width: 100%;
	max-width: 600px;
}

.p-top-cta__btn--small {
	max-width: 400px;
}

.p-top-cta__btn--link {
	font-size: 24px;
	min-height: 72px;
}

.p-top-cta__btn--link::after {
	right: 40px;
}

.p-top-cta__btn--link-secondary {
	font-size: 20px;
	min-height: 64px;
	padding: 17px;
}

.p-top-cta__btn--link-secondary::after {
	right: 27px;
}

.l-footer {
	padding-top: 12px;
	padding-bottom: 12px;
}

.l-footer__inner {
	display: flex;
	align-items: center;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.l-footer__logo {
	width: auto;
	height: 40px;
}

.l-footer__list {
	margin: 0 48px 0 64px;
}

.l-footer__copyright {
	font-size: 14px;
}

.l-header {
	margin-top: 30px;
	padding: 0 20px;
}

.l-header__inner {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 50px;
}

.c-ttl-h2 {
	font-size: 32px;
	margin-bottom: 64px;
}

.c-ttl-h2::before {
	bottom: -16px;
	width: 160px;
}

.c-ttl-h2::after {
	left: -81px;
	bottom: -16px;
	width: 80px;
}

.c-ttl-h3 {
	font-size: 28px;
}

.c-ttl-h3__text::after,
.c-ttl-h3__text::before {
	height: 32px;
	bottom: 4px;
}

.c-ttl-h3__text::before {
	transform: rotate(-40deg);
}

.c-ttl-h3__text::after {
	transform: rotate(40deg);
}

.c-top__ttl {
	font-size: 28px;
	margin-bottom: 32px;
	padding: 22px 16px;
}

.p-top-kv {
	background: url("../images/bgFv.jpg") no-repeat;
	background-size: cover;
	background-position: center;
	padding-top: 116px;
	padding-bottom: 7px;
}

.p-top-kv__inner {
	max-width: 1080px;
	padding-bottom: 37px;
	margin-left: auto;
	margin-right: auto;
}

.p-top-kv__contents {
	width: 57.41%;
	margin-left: 50px;
}

.p-top-kv__contents--logo {
	margin-left: 0;
}

.p-top-kv__ttl {
	font-size: 72px;
	margin-bottom: 48px;
	padding: 0;
}

.p-top-kv__ttl--small-text {
	display: none;
}

.p-top-kv__text {
	font-size: 24px;
	line-height: 1.68;
}

.p-top-kv__image {
	position: absolute;
	top: 0;
	right: -30px;
	width: 50%;
	margin: 0;
}

.p-top-kv__cta {
	position: relative;
	left: 50%;
	translate: -50% 0%;
	bottom: 0;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	color: #fff;
	margin-top: 0;
	padding: 0;
	background: none;
}

.p-top-kv__cta-text {
	top: initial;
	width: 374px;
	font-size: 18px;
	margin: 0 auto 28px;
	padding: 24px 16px 12px;
	border: none;
}

.p-top-kv__cta-text--big {
	font-size: 27px;
}

.p-top-kv__cta-text {
	border-width: 16px 12px 14px 12px;
}

.p-top-kv__cta-head {
	font-size: 18px;
	padding: 6px 8px 8px;
}

.p-top-kv__cta .p-top-cta__btn {
	width: 500px;
}

.p-top-kv__cta .p-top-cta__btn--link {
	font-size: 20px;
	height: 60px;
	min-height: 0;
	padding-right: 40px;
}

.p-top-kv__cta .p-top-cta__btn--link::after {
	font-size: 20px;
}

.p-top-target {
	padding-top: 64px;
	padding-bottom: 43px;
}

.p-top-target__block {
	position: relative;
	max-width: 700px;
	width: 100%;
	padding: 20px 40px;
	border-radius: 16px;
}

.p-top-target__item {
	align-items: center;
	font-size: 24px;
	margin-bottom: 20px;
	padding-bottom: 16px;
}

.l-intro {
	padding-top: 72px;
	padding-bottom: 80px;
}

.l-intro__ttl {
	font-size: 28px;
	margin-bottom: 40px;
}

.l-intro__text {
	font-size: 20px;
	line-height: 1.9;
}

.l-intro__text--red {
	background: linear-gradient(transparent 80%, #F8DA42 20%);
	font-size: 40px;
	margin-bottom: 28px;
}

.l-intro__text--red::before,
.l-intro__text--red::after {
	width: 20px;
}

.l-intro__block {
	margin: 32px auto 0;
}

.l-intro__menu {
	font-size: 18px;
	padding: 16px;
}

.l-intro__wrap {
	margin-top: 24px;
}

.l-intro__item {
	display: flex;
}

.l-intro__item-image {
	margin-top: 0;
	margin-left: 16px;
}

.p-top-service {
	padding-top: 64px;
	padding-bottom: 23px;
}

.p-top-service__lead {
	margin-bottom: 32px;
}

.p-top-service__block {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 56px;
}

.p-top-service__block.--flex {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	margin-top: 32px;
}

.p-top-service__block--secondary {
	max-width: 697px;
}

.p-top-service__text {
	max-width: 800px;
	margin-inline: auto;
	font-size: 18px;
}

.p-top-service__product {
	width: 31.6666666667%;
	max-width: 272px;
	margin-top: 32px;
}

.p-top-service__product:nth-of-type(3) {
	margin-top: 0;
}

.p-top-service__product--image {
	max-height: 184px;
}

.p-top-service__product--name:before {
	right: 30px;
}

.p-top-service__list {
	margin-right: 20px;
}

.p-top-service__item {
	font-size: 18px;
	line-height: 2;
}

.p-top-service__image {
	max-width: 336px;
}

.p-top-service__knowhow {
	max-width: 880px;
	margin: 0 auto;
}

.p-top-service__knowhow--harf {
	width: calc(50% - 16px);
	padding: 30px 36px;
	margin: 0;
}

.p-top-service__knowhow-title {
	width: calc(50% - 16px);
	font-size: 18px;
	padding-bottom: 12px;
}

.p-top-service__knowhow-title--blue {
	font-size: 28px;
}

.p-top-service__knowhow-title--full {
	width: 100%;
}

.p-top-service__knowhow-flex {
	flex-direction: row;
}

.p-top-service__knowhow-flex--left,
.p-top-service__knowhow-flex--right {
	width: calc(50% - 16px);
}

.p-top-service__knowhow-video {
	width: 100%;
	margin: 0 auto;
}

.p-top-service__knowhow-block--text {
	font-size: 16px;
}

.p-top-service__knowhow-item--list {
	align-items: center;
}

.p-top-service__knowhow-wrap {
	max-width: 880px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.p-top-about {
	margin-bottom: 64px;
}

.p-top-about__inner {
	max-width: 880px;
	margin: 0 auto;
}

.p-top-about__wrap {
	display: flex;
	gap: 40px;
}

.p-top-about__movie {
	max-width: 440px;
	flex: none;
	margin-bottom: 0;
}

.p-top-about__text {
	font-size: 18px;
	margin-bottom: 60px;
	padding: 0;
}

.p-top-about__btn--link::after {
	right: 40px;
	font-size: 20px;
}

.p-about-modal {
	padding: 0;
}

.p-about-modal__content {
	max-width: 640px;
	padding: 30px 15px;
}

.p-about-modal__title {
	width: 82%;
	gap: 20px;
	font-size: 24px;
	padding: 16px 20px;
	border: 3px solid #CA290B;
}

.p-about-modal__title img {
	width: 100%;
	height: 100%;
}

.p-about-modal__text {
	text-align: center;
	font-size: 16px;
	margin: 0 auto 16px;
}

.p-about-modal__text--orange {
	font-size: 20px;
	margin-bottom: 16px;
}

.p-about-modal__link {
	margin-bottom: 38px;
}

.p-about-modal__image {
	margin-top: 0;
}

.p-top-point {
	max-width: 880px;
	margin: 0 auto 64px;
}

.p-top-point__ttl {
	font-size: 35px;
	margin-bottom: 68px;
}

.p-top-point__ttl--big {
	font-size: 52px;
}

.p-top-point__item {
	margin-bottom: 67px;
	padding: 48px 49px 32px;
}

.p-top-point__item::before {
	border-top: 74px solid rgba(65,98,139,.3);
	border-right: 74px solid rgba(0,0,0,0);
}

.p-top-point__icon {
	max-width: 100%;
}

.p-top-point__detail {
	font-size: 28px;
	margin-bottom: 32px;
}

.p-top-point__detail--small {
	font-size: 20px;
}

.p-top-point__wrap {
	display: flex;
	gap: 32px;
}

.p-top-point__image {
	margin: 0;
}

.p-top-point__text {
	font-size: 18px;
}

.p-top-works {
	padding-top: 80px;
	padding-bottom: 84px;
}

.p-top-works__contents {
	display: flex;
	justify-content: space-between;
	margin-top: 120px;
}

.p-top-works__block {
	width: 31.6666666667%;
	max-width: 336px;
	padding: 16px 26px 36px;
	margin-bottom: 0;
}

.p-top-works__ttl {
	font-size: 24px;
	padding-top: 72px;
	margin-bottom: 0;
}

.p-top-works__ttl--big {
	font-size: 32px;
}

.p-top-works__text {
	padding: 18px 0 0;
}

.p-top-works__img {
	top: -64px;
	bottom: auto;
	right: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	border-radius: 64px;
	width: 128px;
	height: 128px;
}

.p-top-works__img img {
	width: 104px;
	height: 104px;
}

.p-top-voice {
	padding-top: 98px;
	padding-bottom: 72px;
}

.p-top-voice::before {
	border-width: 32px 60px 0 60px;
}

.p-top-voice__contents {
	max-width: 880px;
	margin-left: auto;
	margin-right: auto;
}

.p-top-voice__contents--hidden {
	height: 234px;
}

.p-top-voice__wrap {
	display: flex;
	gap: 36px;
	background: linear-gradient(180deg, #41628B 0%, #41628B 36%, #FFFFFF 36%, #FFFFFF 100%);
}

.p-top-voice__movie {
	max-width: 470px;
}

.p-top-voice__movie-wrap {
	width: 100%;
}

.p-top-voice__box {
	flex: none;
	margin-right: 25px;
}

.p-top-voice__title--text {
	max-width: 500px;
	font-size: 24px;
	margin-left: auto;
	padding: 12px 0;
	background: none;
}

.p-top-voice__title--yellow {
	font-size: 24px;
}

.p-top-voice__profile {
	max-width: 500px;
	margin-left: auto;
	padding: 14px 0 0 0;
	background: none;
}

.p-top-voice__name--min {
	font-size: 12px;
}

.p-top-voice__journey--text {
	font-size: 12px;
}

.p-top-voice__btn {
	width: 400px;
	padding: 12px 0;
}

.p-top-voice__detail {
	padding: 40px 0;
}

.p-top-voice__detail-inner {
	max-width: 726px;
	margin: 0 auto;
}

.p-top-voice__detail-title {
	font-size: 26px;
	margin-bottom: 28px;
}

.p-top-voice__detail-block {
	display: flex;
}

.p-top-voice__detail-text {
	max-width: 442px;
	overflow: hidden;
	margin-right: 40px;
	margin-bottom: 0;
}

.p-top-voice__point {
	padding: 40px 0 80px;
}

.p-top-voice__point-inner {
	max-width: 726px;
	margin: 0 auto;
}

.p-top-voice__point--img {
	margin-bottom: 40px;
}

.p-top-voice__point-title {
	font-size: 28px;
	margin-bottom: 28px;
}

.p-top-voice__point-block {
	display: flex;
	margin-bottom: 50px;
}

.p-top-voice__point-block--img {
	flex: none;
	margin: 0 0 0 26px;
}

.p-top-voice__ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
}

.p-top-voice__detail {
	letter-spacing: 0;
}

.p-top-flow {
	padding-top: 64px;
	padding-bottom: 80px;
}

.p-top-faq {
	padding-top: 64px;
	padding-bottom: 80px;
}

.p-top-faq__block {
	border-bottom: solid 1px #fff;
}

.p-top-faq__block.is-active {
	border-bottom: none;
}

.p-top-faq__block:last-child .p-top-faq__answer {
	border-bottom: solid 2px #41628b;
}

.p-top-faq__ttl--question {
	border-bottom: none;
	padding: 18px 32px;
}

.p-top-faq__answer {
	border-right: solid 2px #41628b;
	border-left: solid 2px #41628b;
}

.p-top-faq__answer--inner {
	padding: 20px 32px 24px;
}

.p-top-faq__answer--box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.p-top-faq__answer--dl {
	max-width: 50%;
}

.p-top-faq__cta {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	color: #fff;
	padding: 0;
	background: none;
}

.p-top-faq__cta--text {
	font-weight: 400;
}

.p-top-faq__cta .p-top-cta__btn {
	max-width: 354px;
}

.p-top-faq__cta .p-top-cta__btn--link {
	font-size: 20px;
	height: 60px;
	min-height: 0;
	padding-right: 40px;
}

.p-top-faq__cta .p-top-cta__btn--link::after {
	font-size: 20px;
}

.p-top-company {
	padding-top: 64px;
	padding-bottom: 26px;
}

.p-top-company__box-list--dt {
	float: left;
}

.p-top-company__box-list--dd {
	padding: 16px 0 16px 160px;
}

.p-top-company__address {
	max-width: 880px;
}

.p-top-company__address-ttl {
	font-size: 24px;
	margin-bottom: 40px;
}

.p-top-company__address-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.p-top-company__address-list {
	width: calc(50% - 30px);
	gap: 24px;
	margin-bottom: 32px;
}

.p-top-company__address-image {
	max-width: 100%;
}

.p-top-company__address-text {
	font-size: 16px;
	letter-spacing: .8px;
}

.p-top__modal-content {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}

.p-top__modal-inner {
	max-width: 736px;
	padding: 50px 60px;
}

.p-top__modal-title-knowhow {
	font-size: 18px;
}

.p-top__modal-title--blue {
	font-size: 24px;
}

.p-top__modal-detail-text-knowhow {
	font-size: 16px;
	margin-bottom: 20px;
}

.p-top__modal-detail-text-knowhow--blue {
	font-size: 16px;
}

.swiper-slide {
	display: flex;
	gap: 40px;
}

.swiper-button-prev:before {
	left: -30px;
}

.swiper-button-next:before {
	right: -30px;
}

.swiper-button-prev:after {
	left: -15px;
}

.swiper-button-next:after {
	right: -15px;
}

#id-lp04 .mrc_webform_modal .mrc_webform_modal_dialog {
	max-width: 780px !important;
}

#id-lp04 .mrc_webform_modal .mrc_webform_modal_body {
	padding: 16px 16px 32px !important;
}

}

@media (min-width: 1000px) {

.p-top-kv__text {
	font-size: 24px;
}

}

@media (min-width: 1340px) {

.p-top-kv__bg {
	top: 0;
	height: auto;
}

.p-top-kv__bg img {
	-webkit-clip-path: polygon(0 0, 100% 0%, 100% 83%, 50% 100%, 0 83%);
	clip-path: polygon(0 0, 100% 0%, 100% 83%, 50% 100%, 0 83%);
	height: calc(100% + 3vw);
}

}

@media (max-width: 980px) {

.e-skr {
	font-size: 13.6px;
}

}

@media (max-width: 839px) {

.p-top-service__product--image img {
	width: auto;
	height: 112px;
}

}

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

.p-top-flow__side-box {
	font-size: 18px;
	line-height: 1;
	padding: 20px 10px 24px;
}

.p-top-flow__side-box--yellow {
	white-space: nowrap;
	margin-bottom: 18px;
}

.p-top-flow__side-box--number {
	font-size: 24px;
}

.p-top-flow__card {
	padding: 16px 18px;
	display: block;
}

.p-top-flow__card-head {
	float: right;
	border: none;
}

.p-top-flow__card-main {
	padding: 0;
}

.p-top-flow__card-text {
	margin-top: 14px;
}

.p-top-flow__card-heading--step {
	flex-direction: column;
	font-size: 12px;
	line-height: 1;
}

.p-top-flow__card-heading--number {
	position: relative;
	margin-left: 0;
	font-size: 19px;
	line-height: 1;
}

.p-top-flow__card-heading--number:before {
	position: absolute;
	top: 25%;
	transform: translateY(-50%);
	right: -20px;
	content: "";
	background: #707070;
	width: 14px;
	height: 1px;
}

.p-top-flow__card-heading--text {
	padding-left: 24px;
	font-size: 20px;
	line-height: 1.3684210526;
}

.p-top-flow__card-heading--text:before {
	display: none;
}

.l-inside {
	width: 100%;
	padding: 0 5.8666666667vw;
}

.l-box {
	padding: 0 22px;
}

.l-inner {
	padding: 0 22px;
}

.c-anchor00 {
	margin-top: -80px;
	padding-top: 80px;
}

.do {
	text-align: left;
	font-size: 18px;
	line-height: 1.6666666667;
}

.p-top-inner {
	padding: 0 20px;
}

.p-flow-box {
	width: 331px;
	margin: 0 auto;
	-ms-grid-columns: 35px 18px 278px;
	grid-template-columns: 35px 278px;
	-ms-grid-rows: 892px 0 892px;
	grid-template-rows: 892px 892px;
	height: 892px;
	gap: 0 18px;
}

.p-flow-box>*:nth-child(1) {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
}

.p-flow-box>*:nth-child(2) {
	-ms-grid-row: 1;
	-ms-grid-column: 3;
}

.p-flow-box>*:nth-child(3) {
	-ms-grid-row: 3;
	-ms-grid-column: 1;
}

.p-flow-box>*:nth-child(4) {
	-ms-grid-row: 3;
	-ms-grid-column: 3;
}

.p-flow-box .c-ty-box01 {
	font-size: 18px;
	line-height: 1;
}

.p-flow-box .c-ty-box01 .yel {
	white-space: nowrap;
	margin-bottom: 18px;
}

.p-lineup-gray-box {
	margin-bottom: 16px;
	padding: 30px 22px 24px;
	background-image: url("../../assets/images/flow/lineup-gray-box_bg_sp.webp");
}

.p-lineup-gray-box .p-lineup-gray-box__main {
	gap: 18px 0;
	margin-top: 16px;
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
}

.p-lineup-card01__title {
	height: 16vw;
	font-size: 4.8vw;
	line-height: 1.6666666667;
}

.p-lineup-card01__note {
	margin-top: 0px;
}

.p-lineup-card01__icon {
	width: 16vw;
	height: 16vw;
}

.c-check-heading {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.45;
}

.c-check-heading span:before {
	width: 71px;
	height: 12px;
	background-image: url("../images/flow/icon_check_sp.svg");
}

}

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

.u-hidden-sp {
	display: none;
}

}

@media (max-width: 382px) {

.e-skr {
	font-size: 12px;
}

}

@media (max-width: 374px) {

.c-ttl-h2 {
	font-size: 20px;
}

.c-ttl-h3 {
	font-size: 16px;
}

.p-top-kv__ttl--small-text {
	font-size: 8px;
}

.p-top-kv__cta-text {
	font-size: 15px;
}

.p-top-kv__cta-text--big {
	font-size: 18px;
}

.p-top-kv__cta-head {
	font-size: 12px;
	white-space: wrap;
}

}


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