@charset "UTF-8";
/*****************************************
* 基本ファイル
*****************************************/
/*! sanitize.css v4.0.0 | CC0 License | github.com/10up/sanitize.css */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
	display: block;
}

template, [hidden] {
	display: none;
}

*, ::before, ::after {
	background-repeat: no-repeat;
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
}

::before, ::after {
	text-decoration: inherit;
	vertical-align: inherit;
}

html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: default;
	font-family: sans-serif;
	line-height: 1.5;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

nav ol, nav ul {
	list-style: none;
}

b, strong {
	font-weight: inherit;
}

small {
	font-size: 83.3333%;
}

img, svg {
	vertical-align: middle;
}

img {
	border-style: none;
}

a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}

button, input {
	overflow: visible;
}

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

a, area, button, input, label, select, textarea, [tabindex] {
	-ms-touch-action: manipulation;
	touch-action: manipulation;
}

* {
	padding: 0;
	margin: 0;
}

ul li, ol li {
	list-style: none;
}

button {
	cursor: pointer;
}

h1, h2, h3, h4, h5, h6, button, input, label, textarea, select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
}

/*================================
  SCSS Information
----------------------------------
  File name: _functions.scss
  Summary:   自作関数定義用ファイル
  Author:    coder-ao
================================*/
/*================================
  SCSS Information
----------------------------------
  File name: _variables.scss
  Summary:   変数定義用ファイル
  Author:    coder-ao
================================*/
/*================================
  SCSS Information
----------------------------------
  File name: _mixin.scss
  Summary:   汎用定義ファイル
  Author:    coder-ao
================================*/
/*================================
  SCSS Information
----------------------------------
  File name: _common.scss
  Summary:   全ページ共通定義用ファイル
  Author:    coder-ao
================================*/
:root {
	--leading-trim: calc((1em - 1lh) / 2);
}

* {
	overflow-wrap: break-word;
	word-wrap: break-word;
	overflow-wrap: anywhere;
}

html {
	scroll-behavior: smooth;
}

body {
	min-width: calc(375px - var(--js-scrollbarWidth));
	background: #ffffff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: calc(29 / 16);
	letter-spacing: calc(0 * .001em);
	color: #222222;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
	z-index: 1;
}

img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	image-rendering: crisp-edges;
}

a {
	cursor: pointer;
	text-decoration: none;
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
	opacity: opacity, color;
}
a:not([class]) {
	text-decoration: none;
}
a:not([class]):hover {
	text-decoration: underline;
}

img, a, button {
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: all;
	transition-property: all;
}

ul {
	list-style-type: none;
}

::-moz-selection {
	background: #052c97;
	color: #ffffff;
}

::selection {
	background: #052c97;
	color: #ffffff;
}

/*================================
  SCSS Information
----------------------------------
  File name: _header.scss
  Summary:   ヘッダー用ファイル
  Author:    coder-ao
================================*/
/*-------------------
	header
-------------------*/
.l-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 2em;
	height: 101px;
	padding: 0 20px;
	background: #ffffff;
	position: sticky;
	top: 0;
	z-index: 1000;
}
@media screen and (max-width:1210px) {
	.l-header {
		height: 70px;
	}
}
@media screen and (max-width:768px) {
	.l-header {
		padding-left: 14px;
	}
}
.l-header__left {
	width: min(100%, 286px);
	padding-bottom: 13px;
}
@media screen and (max-width:1210px) {
	.l-header__left {
		padding-bottom: 0;
	}
}
@media screen and (max-width:768px) {
	.l-header__left {
		width: min(100%, 190px);
	}
}
.l-header__right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 30px;
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}
@media screen and (max-width:1210px) {
	.l-header__right {
		display: none;
	}
}
.l-header__nav {
	height: 48px;
	border-top: 1px solid #f6f6f6;
	border-bottom: 1px solid #f6f6f6;
}
@media screen and (max-width:1210px) {
	.l-header__nav {
		display: none;
	}
}

/*================================
  SCSS Information
----------------------------------
  File name: _drawer.scss
  Summary:   ドロワーナビ用ファイル
  Author:    coder-ao
================================*/
/*-------------------
	drawer
-------------------*/
.c-drawerBtn {
	display: none;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border: none;
	border-radius: 4px;
	background: #052c97;
	font-size: 1rem;
	color: #ffffff;
	text-align: center;
	top: 15px;
	right: 20px;
	z-index: 10005;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: background;
	transition-property: background;
}
.c-drawerBtn__border {
	width: 13px;
	height: 1px;
	background: #ffffff;
	position: relative;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: background;
	transition-property: background;
}
.c-drawerBtn__border::before, .c-drawerBtn__border::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ffffff;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: margin, -webkit-transform;
	transition-property: margin, -webkit-transform;
	transition-property: margin, transform;
	transition-property: margin, transform, -webkit-transform;
}
.c-drawerBtn__border::before {
	margin-top: -4px;
}
.c-drawerBtn__border::after {
	margin-top: 8px;
}
.c-drawerBtn.is-open .c-drawerBtn__border {
	background: transparent;
}
.c-drawerBtn.is-open .c-drawerBtn__border::before {
	margin: 0;
	-webkit-transform: rotate(-30deg) translate(0, 0);
	transform: rotate(-30deg) translate(0, 0);
}
.c-drawerBtn.is-open .c-drawerBtn__border::after {
	margin: 0;
	-webkit-transform: rotate(30deg) translate(0, 0);
	transform: rotate(30deg) translate(0, 0);
}
body.is-loaded .c-drawerBtn {
	position: fixed;
}
@media screen and (max-width:1210px) {
	.c-drawerBtn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

.l-drawer {
	display: none;
	width: 100vw;
	height: min(var(--js-viewHeight), 100vh);
	height: 100dvh;
	background: rgba(255, 255, 255, .95);
	font-size: inherit;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10001;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: top right;
	transform-origin: top right;
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}
.l-drawer.is-closed {
	opacity: 0;
	pointer-events: none;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}
.l-drawer.is-open {
	opacity: 1;
	pointer-events: inherit;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}
@media screen and (max-width:1210px) {
	.l-drawer {
		display: block;
	}
}
.l-drawer__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 100px 20px 50px;
	opacity: 0;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
	-webkit-transition-delay: .2s;
	transition-delay: .2s;
}
.l-drawer.is-open .l-drawer__inner {
	overflow-y: scroll;
	opacity: 1;
}
.l-drawer__nav {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4444444444;
}
.l-drawer__btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 10px;
	width: min(100%, 340px);
	margin: 2em auto 0;
}

/*================================
  SCSS Information
----------------------------------
  File name: _nav.scss
  Summary:   グローバルナビ用ファイル
  Author:    coder-ao
================================*/
.l-nav {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	height: 100%;
}
@media screen and (max-width:1210px) {
	.l-header .l-nav {
		display: none;
	}
}
.l-nav__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 100%;
	gap: 30px;
	font-size: 15px;
}
@media screen and (max-width:1210px) {
	.l-nav__list {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		gap: 20px;
		font-size: inherit;
		font-weight: inherit;
	}
}
.l-nav__listItem {
	height: 100%;
}
.l-nav__listItem > a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	height: 100%;
	position: relative;
}
.l-nav__listItem > a::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	margin-top: 3px;
	background: #000000;
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: right center;
	transform-origin: right center;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}
.l-nav__listItem > a:hover, .l-nav__listItem > a.is-current {
	text-decoration: none;
}
.l-nav__listItem > a:hover::after, .l-nav__listItem > a.is-current::after {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transform-origin: left center;
	transform-origin: left center;
}

/*================================
  SCSS Information
----------------------------------
  File name: _main.scss
  Summary:   メイン用ファイル
  Author:    coder-ao
================================*/
/*-------------------
	main
-------------------*/
.l-main {
	max-width: 100%;
	min-height: var(--js-viewHeight);
	position: relative;
	z-index: 1;
}

/*================================
  SCSS Information
----------------------------------
  File name: _footer.scss
  Summary:   フッター用ファイル
  Author:    coder-ao
================================*/
/*-------------------
	footer
-------------------*/
.l-footer {
	font-size: 14px;
	line-height: 1.4;
}

.l-footer .wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: min(100%, 1240px);
	padding: 4em 20px;
	margin: 0 auto;
}
@media screen and (max-width:768px) {
	.l-footer .wrap {
		width: min(100%, 600px);
		padding: 1em 20px;
		margin: 0 auto;
	}
}

.l-footer .wrap ul.footer_menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1em 1.5em;
	width: 100%;
	margin-bottom: 2em;
}
@media screen and (max-width:768px) {
	.l-footer .wrap ul.footer_menu {
		gap: 1em 0;
	}
}

.l-footer .wrap ul.footer_menu li {
	position: relative;
}
@media screen and (max-width:768px) {
	.l-footer .wrap ul.footer_menu li {
		width: 50%;
	}
}

.l-footer .wrap ul.footer_menu li a {
	font-size: 14px;
}
@media screen and (max-width:768px) {
	.l-footer .wrap ul.footer_menu li a {
		font-size: 11px;
	}
}

.l-footer .wrap ul.footer_menu li a[target=_blank] {
	padding-right: 1.25em;
	background: url(../img/common/icon_blank.png) center right no-repeat;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

.l-footer .wrap ul.footer_menu li a:hover {
	text-decoration: none;
	opacity: .65;
}

.l-footer a.logo {
	display: block;
	width: 230px;
}
@media screen and (max-width:768px) {
	.l-footer a.logo {
		width: 194px;
		margin: 0 auto;
	}
}

.l-footer a.logo:hover img {
	opacity: .65;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

.l-footer .copyright {
	display: block;
	font-size: 12px;
	text-align: right;
}
@media screen and (max-width:768px) {
	.l-footer .copyright {
		width: 100%;
		padding: 2.5em 0 0;
		font-size: 10px;
		font-weight: 500;
		-webkit-font-feature-settings: "palt";
		font-feature-settings: "palt";
		text-align: center;
	}
}

/*================================
  SCSS Information
----------------------------------
  File name: _button.scss
  Summary:   ボタン用ファイル
================================*/
.c-btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: min(100%, 200px);
	padding: 12px 32px;
	border: 1px solid #c43131;
	border-radius: 3em;
	background: #c43131;
	font-weight: 700;
	color: #ffffff;
	position: relative;
	z-index: 1;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: background;
	transition-property: background;
}
.c-btn:hover {
	background: #ffffff;
	color: #c43131;
}
.c-btn.--mail > span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 16px;
}
.c-btn.--mail > span::before {
	content: "";
	display: block;
	width: 1.1875em;
	aspect-ratio: 19/15;
	-webkit-mask: url(../img/common/icon_mail.svg) center no-repeat;
	mask: url(../img/common/icon_mail.svg) center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	background-color: #ffffff;
}
.c-btn.--mail:hover > span::before {
	background-color: #c43131;
}

/*================================
  SCSS Information
----------------------------------
  File name: _parts.scss
  Summary:   パーツ関連
================================*/
.ttl-submain {
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0;
}
.ttl-submain .ttl-sub {
	font-size: 22px;
	font-weight: 500;
}
@media (max-width: 767px) {
	.ttl-submain .ttl-sub {
		font-size: 18px;
	}
}
.ttl-submain .ttl-main {
	font-size: 36px;
	font-weight: 700;
	line-height: 1.5;
}
@media (max-width: 767px) {
	.ttl-submain .ttl-main {
		font-size: 24px;
	}
}
.ttl-submain .ttl-main strong {
	color: #1291eb;
}

.ttl-3rd {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 2em;
}
@media (max-width: 767px) {
	.ttl-3rd {
		gap: 0 1em;
	}
}
.ttl-3rd span {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: #ffffff;
	background: #1291eb;
	padding: .5em 1em;
	border-radius: 5px;
}
@media (max-width: 767px) {
	.ttl-3rd span {
		font-size: 14px;
	}
}
.ttl-3rd span.label {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}
.ttl-3rd strong {
	font-size: 28px;
	font-weight: 500;
	line-height: 1.5;
}
@media (max-width: 767px) {
	.ttl-3rd strong {
		font-size: 20px;
		line-height: 1.2;
	}
}

.toggle-box-wrap {
	max-width: 1080px;
	background: #f6f6f6;
	border-radius: 10px;
	margin: 40px auto 0;
}
@media (max-width: 767px) {
	.toggle-box-wrap {
		margin: 30px auto 0;
	}
}
.toggle-box-wrap .toggle-box {
	padding: 30px 40px 0;
}
@media (max-width: 767px) {
	.toggle-box-wrap .toggle-box {
		padding: 30px 30px 0;
	}
}
.toggle-box-wrap .toggle-box .ttl-3rd {
	width: 100%;
	max-width: 960px;
	margin: auto;
}
.toggle-box-wrap .toggle-box .toggle-content-wrap {
	height: 0;
	overflow: hidden;
	display: grid;
	grid-auto-flow: column;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: height;
	transition-property: height;
}
.toggle-box-wrap .toggle-box .toggle-content-wrap.active {
	height: calc-size(auto, size);
}
.toggle-box-wrap .toggle-box .toggle-content-wrap .toggle-content {
	max-width: 960px;
	border-top: 1px solid #1291eb;
	margin: 30px auto 0;
	padding: 30px 0 0;
}
@media (max-width: 767px) {
	.toggle-box-wrap .toggle-box .toggle-content-wrap .toggle-content {
		margin: 24px auto 0;
		padding: 24px 0 0;
	}
}
.toggle-box-wrap .toggle-box .toggle-content-wrap .toggle-content .content-ttl {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5;
	color: #1291eb;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
@media (max-width: 767px) {
	.toggle-box-wrap .toggle-box .toggle-content-wrap .toggle-content .content-ttl {
		font-size: 18px;
	}
}
.toggle-box-wrap .toggle-box .toggle-content-wrap .toggle-content .content-ttl + p {
	margin-top: 10px;
}
.toggle-box-wrap .toggle-box .toggle-content-wrap .toggle-content p {
	line-height: 1.8;
}
.toggle-box-wrap .toggle-btn {
	max-width: 960px;
	border-top: 1px solid #1291eb;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 30px auto 0;
}
@media (max-width: 767px) {
	.toggle-box-wrap .toggle-btn {
		margin: 24px auto 0;
	}
}
.toggle-box-wrap .toggle-btn p {
	width: 100%;
	font-weight: 500;
	line-height: 1.5;
	color: #5e5c5b;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: .5em;
	padding: 20px 0;
	cursor: pointer;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
}
@media (max-width: 767px) {
	.toggle-box-wrap .toggle-btn p {
		font-size: 14px;
	}
}
.toggle-box-wrap .toggle-btn p:hover {
	opacity: .5;
}
.toggle-box-wrap .toggle-btn p::after {
	content: "";
	width: .5em;
	height: .5em;
	border-top: 2px solid #1291eb;
	border-right: 2px solid #1291eb;
	aspect-ratio: 1/1;
	rotate: 135deg;
	margin-bottom: 0;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: rotate, margin-bottom;
	transition-property: rotate, margin-bottom;
}
.toggle-box-wrap .toggle-btn.active p::after {
	rotate: -45deg;
	margin-bottom: -.25em;
}

.img-wrap {
	display: block;
	margin: auto;
}
.img-wrap img {
	width: auto;
	margin: auto;
	display: block;
}

@media (min-width: 768px) {
	.pc-hide {
		display: none;
	}
}

@media (max-width: 767px) {
	.sp-hide {
		display: none;
	}
}

/*================================
  SCSS Information
----------------------------------
  File name: _top.scss
  Summary:   TOPページ用ファイル
  Author:    coder-ao
================================*/
.kv {
	background: url(../img/common/kv_bg_img.png) no-repeat top center/cover;
	overflow: hidden;
}
@media (max-width: 767px) {
	.kv {
		background-image: url(../img/common/kv_bg_img_sp.png);
	}
}
.kv .wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: stretch;
	-ms-flex-pack: stretch;
	justify-content: stretch;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
.kv .wrapper .kv-main-ttl-wrap {
	width: 100%;
	min-height: 460px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	padding-top: 60px;
	position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap {
		min-height: 35.9375vw;
		padding-top: 4.6875vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap {
		padding-top: 17.3333333333vw;
	}
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap {
	width: 100%;
	max-width: 1120px;
	height: 100%;
	margin: auto;
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 0;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap {
		max-width: 87.5vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap {
		position: relative;
		inset: auto;
		translate: none;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap::before {
		content: "";
		position: absolute;
		background: #ffffff;
		bottom: -.2666666667vw;
		left: 0;
		width: 100%;
		height: 17.6vw;
	}
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual {
	width: 100%;
	max-width: 620px;
	height: 100%;
	position: absolute;
	bottom: 0;
	right: 0;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual {
		max-width: 48.4375vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual {
		width: calc(100% - 8.5333333333vw);
		max-width: 100%;
		margin: auto;
		position: relative;
		inset: auto;
		aspect-ratio: 375/290;
	}
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual img {
	width: 100%;
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-monitor {
	width: 147%;
	max-width: none;
	position: absolute;
	right: -272px;
	bottom: 0;
	display: block;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-monitor {
		right: -21.25vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-monitor {
		width: 150%;
		right: -33.3333333333vw;
	}
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-monitor img {
	width: 100%;
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon {
	width: 265px;
	height: 265px;
	background: #ffffff;
	border-radius: 100vw;
	-webkit-filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, .13));
	filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, .13));
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	left: 80px;
	top: 50%;
	translate: 0 calc(-50% + 55px);
	aspect-ratio: 1/1;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon {
		width: 20.703125vw;
		height: 20.703125vw;
		-webkit-filter: drop-shadow(.15625vw .3125vw .46875vw rgba(0, 0, 0, .13));
		filter: drop-shadow(.15625vw .3125vw .46875vw rgba(0, 0, 0, .13));
		left: 80px;
		translate: 0 calc(-50% + 4.296875vw);
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon {
		width: 45.3333333333vw;
		height: 45.3333333333vw;
		left: 0;
		translate: 0 calc(-50% + 4vw);
		gap: .5em;
	}
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon p {
	font-size: 16px;
	font-weight: 600;
	color: #1291eb;
	margin-top: -.5lh;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon p {
		font-size: 1.25vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon p {
		font-size: 3.4666666667vw;
	}
}
.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon::before {
	content: "";
	width: 93px;
	height: 37px;
	background: #ffffff;
	display: block;
	position: absolute;
	bottom: 55px;
	right: -40px;
	rotate: 25deg;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	z-index: -1;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon::before {
		width: 7.265625vw;
		height: 2.890625vw;
		bottom: 4.296875vw;
		right: -3.125vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-main-ttl-wrap .kv-visual-wrap .kv-visual .kv-balloon::before {
		bottom: 10.6666666667vw;
		right: -8vw;
	}
}
.kv .wrapper .kv-inner {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: stretch;
	-ms-flex-pack: stretch;
	justify-content: stretch;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 40px;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner {
		gap: 3.125vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner {
		gap: 0;
	}
}
.kv .wrapper .kv-inner .main-ttl-wrap {
	width: 100%;
	background: #ffffff;
	padding: 35px 0;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .main-ttl-wrap {
		padding: 2.734375vw 0;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .main-ttl-wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 2.6666666667vw 0;
	}
}
.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl {
	width: calc(100% - 2em);
	max-width: 1120px;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.5;
	margin: auto;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl {
		width: calc(100% - 2em);
		max-width: 87.5vw;
		font-size: 1.953125vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl {
		width: auto;
		font-size: 5.6vw;
	}
}
.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl span {
	font-size: 30px;
	color: #052c97;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl span {
		font-size: 2.34375vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl span {
		font-size: 6.9333333333vw;
	}
}
.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl strong {
	font-size: 31px;
	color: #1291eb;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl strong {
		font-size: 2.421875vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .main-ttl-wrap .main-ttl strong {
		font-size: 5.6vw;
	}
}
.kv .wrapper .kv-inner .kv-content {
	width: calc(100% - 2em);
	max-width: 1120px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 20px;
	margin: auto;
	position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .kv-content {
		max-width: 87.5vw;
		gap: 1.5625vw;
	}
}
.kv .wrapper .kv-inner .kv-content .kv-ms {
	width: 100%;
	max-width: 126px;
	position: absolute;
	top: -60px;
	right: 0;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .kv-content .kv-ms {
		max-width: 9.84375vw;
		top: -4.6875vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .kv-content .kv-ms {
		max-width: 33.3333333333vw;
		top: -17.3333333333vw;
		right: 0;
		translate: 0;
	}
}
.kv .wrapper .kv-inner .kv-content .kv-ms img {
	width: 100%;
}
.kv .wrapper .kv-inner .kv-content .kv-lead {
	font-size: 20px;
	font-weight: 600;
	line-height: 2.5;
	border-bottom: 1px solid #000000;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .kv-content .kv-lead {
		font-size: 1.5625vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .kv-content .kv-lead {
		font-size: 4.8vw;
		line-height: 1.5;
	}
}
.kv .wrapper .kv-inner .kv-content .kv-lead strong {
	color: #052c97;
}
.kv .wrapper .kv-inner .kv-content .kv-description {
	font-size: 50px;
	font-weight: 800;
	line-height: 1.4;
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.kv .wrapper .kv-inner .kv-content .kv-description {
		font-size: 3.90625vw;
	}
}
@media (max-width: 767px) {
	.kv .wrapper .kv-inner .kv-content .kv-description {
		font-size: 8.5333333333vw;
	}
}
.kv .wrapper .kv-inner .kv-content .kv-description span {
	color: #052c97;
}

.cv-area {
	padding: 50px 24px;
}
.cv-area__inner {
	width: min(100%, 920px);
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
	margin: 0 auto;
}
@media (max-width: 767px) {
	.cv-area {
		padding: 32px 18px;
	}
	.cv-area__inner {
		grid-template-columns: 1fr;
		gap: 18px;
	}
}

.cv-btn {
	min-height: 98px;
	background: #ffffff;
	border: 3px solid #254fc2;
	border-radius: 100vw;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 20px;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.4;
	letter-spacing: .04em;
	color: #254fc2;
	text-decoration: none;
	-webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, .08);
	box-shadow: 0 2px 0 rgba(0, 0, 0, .08);
}
.cv-btn:hover.cv-btn--seminar {
	color: #ffffff;
	background: #254fc2;
}
.cv-btn:hover.cv-btn--seminar .cv-btn__icon::before {
	background: #ffffff;
}
.cv-btn:hover.cv-btn--download {
	color: #ffffff;
	background: #002c50;
}
.cv-btn:hover.cv-btn--download .cv-btn__icon::before {
	background: #ffffff;
}
.cv-btn__icon {
	width: 44px;
	height: 44px;
	display: block;
	position: relative;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}
.cv-btn--seminar {
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: color, background;
	transition-property: color, background;
}
.cv-btn--seminar .cv-btn__icon::before {
	content: "";
	width: 100%;
	height: 100%;
	-webkit-mask: url(../img/common/icon_seminar.svg) no-repeat center/contain;
	mask: url(../img/common/icon_seminar.svg) no-repeat center/contain;
	background: #254fc2;
	display: block;
	aspect-ratio: 1/1;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: background;
	transition-property: background;
}
.cv-btn--download {
	border-color: #002c50;
	color: #002c50;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: color, background;
	transition-property: color, background;
}
.cv-btn--download .cv-btn__icon::before {
	content: "";
	width: 100%;
	height: 100%;
	-webkit-mask: url(../img/common/icon_download.svg) no-repeat center/contain;
	mask: url(../img/common/icon_download.svg) no-repeat center/contain;
	background: #002c50;
	display: block;
	aspect-ratio: 1/1;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: background;
	transition-property: background;
}
@media (max-width: 767px) {
	.cv-btn {
		min-height: 76px;
		font-size: 18px;
		border-width: 2px;
		gap: 12px;
	}
	.cv-btn__icon {
		width: 36px;
		height: 36px;
	}
}

.sec-block > .wrapper {
	width: calc(100% - 2em);
	max-width: 1200px;
	margin: auto;
	padding: 80px 0 60px;
}

.sec-challenges {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #f1f1f1), to(#ffffff));
	background: linear-gradient(180deg, #f1f1f1 0, #ffffff 100%);
}
@media (max-width: 767px) {
	.sec-challenges > .wrapper {
		padding: 30px 0;
	}
}
.sec-challenges > .wrapper .img-wrap {
	width: 100%;
	max-width: 390px;
	mix-blend-mode: multiply;
}

.sec-solution {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ebf7fd), to(#ffffff));
	background: linear-gradient(180deg, #ebf7fd 0, #ffffff 100%);
	position: relative;
}
.sec-solution::before {
	content: "";
	width: 80px;
	height: 70px;
	background: #ffffff;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -1px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.sec-solution > .wrapper {
	width: 100%;
	max-width: 1280px;
	padding-bottom: 0;
}
.sec-solution > .wrapper .inner {
	margin: 40px 0 auto auto;
	padding-left: 1em;
}
@media (max-width: 1199px) {
	.sec-solution > .wrapper .inner {
		margin: 30px auto 0;
		padding: 0;
	}
}
.sec-solution > .wrapper .inner .flex-right-fit {
	max-width: 1180px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: 0 0 0 auto;
}
@media (max-width: 1199px) {
	.sec-solution > .wrapper .inner .flex-right-fit {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		margin: auto;
	}
}
.sec-solution > .wrapper .inner .flex-right-fit .content-wrap {
	max-width: 490px;
	position: relative;
	z-index: 1;
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}
@media (max-width: 1199px) {
	.sec-solution > .wrapper .inner .flex-right-fit .content-wrap {
		max-width: 100%;
		padding: 0 1em;
	}
}
.sec-solution > .wrapper .inner .flex-right-fit .img-wrap {
	width: 100%;
	max-width: calc(490px + 1em);
	margin: 0;
	position: relative;
	padding-right: 1em;
	aspect-ratio: 506/291;
}
@media (max-width: 1199px) {
	.sec-solution > .wrapper .inner .flex-right-fit .img-wrap {
		width: max(375px, 50%);
		max-width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin: auto;
		padding: 0;
		overflow: hidden;
	}
}
.sec-solution > .wrapper .inner .flex-right-fit .img-wrap img {
	width: 800px;
	max-width: none;
	position: absolute;
	top: 0;
	right: 0;
	-o-object-fit: contain;
	object-fit: contain;
}
@media (max-width: 1199px) {
	.sec-solution > .wrapper .inner .flex-right-fit .img-wrap img {
		width: 130%;
		position: relative;
		inset: auto;
	}
}
.sec-solution > .wrapper .sub-sec-block {
	padding: 80px 1em 0;
}
@media (max-width: 767px) {
	.sec-solution > .wrapper .sub-sec-block {
		padding-top: 40px;
	}
}
.sec-solution > .wrapper .sub-sec-block .merit-card-list {
	width: min(100%, 1080px);
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	margin: 80px auto 0;
}
@media screen and (max-width: 1023px) {
	.sec-solution > .wrapper .sub-sec-block .merit-card-list {
		grid-template-columns: 1fr;
		gap: 56px;
		margin-top: 64px;
	}
}
.sec-solution > .wrapper .sub-sec-block .merit-card {
	min-height: 424px;
	border: 1px solid #1291eb;
	border-radius: 8px;
	background: #ffffff;
	text-align: center;
	padding: 68px 35px 32px;
	position: relative;
}
.sec-solution > .wrapper .sub-sec-block .merit-card__label {
	width: 180px;
	min-height: 83px;
	background: #1291eb;
	border-radius: 100vw;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 0;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%;
}
.sec-solution > .wrapper .sub-sec-block .merit-card__label::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 9px 0 9px;
	border-color: #1291eb transparent transparent transparent;
	position: absolute;
	left: 50%;
	bottom: -11px;
	translate: -50% 0;
}
.sec-solution > .wrapper .sub-sec-block .merit-card__icon {
	width: 86px;
	height: 86px;
	margin: 0 auto;
	aspect-ratio: 1/1;
}
@media (max-width: 767px) {
	.sec-solution > .wrapper .sub-sec-block .merit-card__icon {
		width: 110px;
		height: 110px;
	}
}
.sec-solution > .wrapper .sub-sec-block .merit-card__icon img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}
.sec-solution > .wrapper .sub-sec-block .merit-card__ttl {
	color: #1291eb;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.55;
	margin: 24px 0 0;
}
@media (max-width: 767px) {
	.sec-solution > .wrapper .sub-sec-block .merit-card__ttl {
		margin: 26px 0 0;
	}
}
.sec-solution > .wrapper .sub-sec-block .merit-card__txt {
	text-align: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.85;
	margin: 20px 0 0;
}
@media (max-width: 767px) {
	.sec-solution > .wrapper .sub-sec-block .merit-card__txt {
		margin: 18px 0 0;
	}
}
@media screen and (max-width: 1023px) {
	.sec-solution > .wrapper .sub-sec-block .merit-card {
		min-height: auto;
		padding: 64px 28px 30px;
	}
}
@media screen and (max-width: 767px) {
	.sec-solution > .wrapper .sub-sec-block .merit-card {
		padding-inline: 22px;
	}
	.sec-solution > .wrapper .sub-sec-block .merit-card__ttl {
		font-size: 20px;
	}
	.sec-solution > .wrapper .sub-sec-block .merit-card__txt {
		font-size: 15px;
	}
}

.sec-case > .wrapper {
	width: 100%;
	padding: 80px 0;
}
@media (max-width: 767px) {
	.sec-case > .wrapper {
		padding: 40px 0 0;
	}
}
.sec-case > .wrapper .round-box {
	max-width: 1080px;
	background: #ffffff;
	border-radius: 20px;
	margin: auto;
	padding: 60px 1em;
	position: relative;
	overflow: hidden;
}
@media (max-width: 767px) {
	.sec-case > .wrapper .round-box {
		padding: 40px 1em;
	}
}
.sec-case > .wrapper .round-box::before {
	content: "";
	width: 100%;
	height: 100%;
	background: url(../img/common/sec_case_bg.png) no-repeat center/cover;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	opacity: .8;
}
.sec-case > .wrapper .round-box::after {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(82, 183, 255, .8588235294);
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	opacity: .8;
}
.sec-case > .wrapper .round-box > * {
	position: relative;
	z-index: 1;
}
.sec-case > .wrapper .round-box .inner {
	max-width: 970px;
	margin: auto;
}
.sec-case > .wrapper .round-box .inner .ttl-submain {
	color: #ffffff;
}
.sec-case > .wrapper .round-box .inner .ttl-submain .ttl-sub {
	font-family: "Poppins", sans-serif;
}
.sec-case > .wrapper .round-box .inner .ttl-submain .ttl-main strong {
	color: #000000;
}
.sec-case > .wrapper .round-box .inner .card-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	gap: 40px 50px;
	margin-top: 40px;
}
@media (max-width: 767px) {
	.sec-case > .wrapper .round-box .inner .card-wrap {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin-top: 40px;
	}
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item {
	max-width: 290px;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	gap: 24px;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev .ttl {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	color: #ffffff;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap {
	width: 100%;
	min-height: 160px;
	border-radius: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 1em;
	position: relative;
	overflow: hidden;
	aspect-ratio: 290/160;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap::before {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .6);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap .catch {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	color: #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	z-index: 1;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap .catch small {
	font-family: "Poppins", sans-serif;
	font-size: 18px;
	font-weight: 500;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-o-object-fit: cover;
	object-fit: cover;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .txt-wrap {
	margin-top: 20px;
}
.sec-case > .wrapper .round-box .inner .card-wrap .card-item .txt-wrap p {
	font-weight: 500;
}

.sec-rental {
	padding-top: 90px;
}
@media (max-width: 767px) {
	.sec-rental {
		padding-top: 80px;
	}
}
.sec-rental > .wrapper {
	width: 100%;
	max-width: 100%;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #d1e6ff), to(#b8cbff));
	background: linear-gradient(180deg, #d1e6ff 0, #b8cbff 100%);
	padding: 0;
}
.sec-rental > .wrapper .inner {
	width: calc(100% - 2em);
	max-width: 1200px;
	margin: auto;
	padding: 80px 0;
	position: relative;
}
@media (max-width: 767px) {
	.sec-rental > .wrapper .inner {
		padding: 80px 0 40px;
	}
}
.sec-rental > .wrapper .inner .catch-balloon {
	width: 810px;
	max-width: 100%;
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	color: #002c50;
	background: #ffaf40;
	border-radius: 100vw;
	padding: .5em 1em;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%;
}
@media (max-width: 767px) {
	.sec-rental > .wrapper .inner .catch-balloon {
		font-size: 17px;
		line-height: 1.4;
		padding: 1.25em 1em;
	}
}
.sec-rental > .wrapper .inner .catch-balloon::before {
	content: "";
	width: 22px;
	height: 22px;
	background: #ffaf40;
	position: absolute;
	top: 100%;
	left: 50%;
	translate: -50% -2px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.sec-rental > .wrapper .inner .ttl-submain .ttl-main {
	color: #052c97;
}
.sec-rental > .wrapper .inner .lead-txt {
	margin-top: 40px;
}
@media (max-width: 767px) {
	.sec-rental > .wrapper .inner .lead-txt {
		margin-top: 30px;
	}
}
.sec-rental > .wrapper .inner .lead-txt p {
	text-align: center;
}
@media (max-width: 767px) {
	.sec-rental > .wrapper .inner .lead-txt p {
		text-align: left;
	}
}
.sec-rental > .wrapper .inner .round-box {
	max-width: 1200px;
	background: #ffffff;
	border-radius: 20px;
	margin: 40px auto 0;
	padding: 50px;
}
@media (max-width: 767px) {
	.sec-rental > .wrapper .inner .round-box {
		margin-top: 30px;
		padding: 30px 1em;
	}
}
.sec-rental > .wrapper .inner .round-box .card-wrap {
	max-width: 1070px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: auto;
	gap: 60px 100px;
}
@media (max-width: 1200px) {
	.sec-rental > .wrapper .inner .round-box .card-wrap {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
	}
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item {
	max-width: 290px;
}
@media (max-width: 1200px) {
	.sec-rental > .wrapper .inner .round-box .card-wrap .card-item {
		max-width: 100%;
	}
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item + .card-item {
	position: relative;
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item + .card-item::before {
	content: "";
	width: 0;
	height: 100%;
	border-left: 1px dashed #002c50;
	position: absolute;
	top: 0;
	left: -50px;
	translate: -50% 0;
}
@media (max-width: 1200px) {
	.sec-rental > .wrapper .inner .round-box .card-wrap .card-item + .card-item::before {
		width: 100%;
		height: 0;
		border-top: 1px dashed #002c50;
		border-left: none;
		top: -30px;
		left: 0;
		translate: 0 -50%;
	}
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item .img-ttl-col-rev {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 24px;
	padding-top: 35px;
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item .img-ttl-col-rev .ttl {
	font-size: 28px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	color: #052c97;
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap {
	width: 110px;
	height: 110px;
	background: #ebf7fd;
	border-radius: 100vw;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 1em;
	position: relative;
	aspect-ratio: 1/1;
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap .catch {
	min-width: -webkit-max-content;
	min-width: -moz-max-content;
	min-width: max-content;
	font-family: "Poppins", sans-serif;
	font-size: 48px;
	line-height: 1.5;
	color: #254fc2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 50%;
	translate: -50% -50%;
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item .img-ttl-col-rev .catch-img-wrap img {
	width: 100%;
	max-width: 70px;
	height: 100%;
	max-width: 70px;
	-o-object-fit: contain;
	object-fit: contain;
	aspect-ratio: 1/1;
}
.sec-rental > .wrapper .inner .round-box .card-wrap .card-item .txt-wrap {
	margin-top: 20px;
}

.sec-license {
	background: #b8cbff;
	padding: 80px 0;
}
@media (max-width: 767px) {
	.sec-license {
		padding: 40px 1em;
	}
}
.sec-license > .wrapper {
	max-width: 1200px;
	background: rgba(255, 255, 255, .5019607843);
	border-radius: 10px;
	padding: 60px 1em;
}
@media (max-width: 767px) {
	.sec-license > .wrapper {
		width: 100%;
		padding: 30px 1em;
	}
}
.sec-license > .wrapper .inner {
	max-width: 1080px;
	margin: auto;
}
.sec-license > .wrapper .inner .ttl-submain .ttl-main {
	color: #254fc2;
}
.sec-license > .wrapper .inner .lead-txt {
	margin-top: 30px;
}
.sec-license > .wrapper .inner .lead-txt p {
	text-align: center;
}
@media (max-width: 767px) {
	.sec-license > .wrapper .inner .lead-txt p {
		text-align: left;
	}
}
.sec-license > .wrapper .inner .card-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-template-rows: 1fr;
	gap: 60px 40px;
	margin-top: 80px;
}
@media all and (-ms-high-contrast: none) {
	.sec-license > .wrapper .inner .card-grid {
		display: -ms-grid;
		-ms-grid-columns: 1fr 1fr 1fr 1fr;
		-ms-grid-rows: 1fr;
		gap: 60px 40px;
	}
}
@media (max-width: 1023px) {
	.sec-license > .wrapper .inner .card-grid {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin-top: 50px;
	}
}
.sec-license > .wrapper .inner .card-grid .card-item {
	width: 100%;
	max-width: 240px;
	background: #ffffff;
	border-radius: 20px;
	-webkit-box-shadow: 0 2px 12px 0 rgba(37, 79, 194, .2);
	box-shadow: 0 2px 12px 0 rgba(37, 79, 194, .2);
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0;
	padding: 40px 20px;
	position: relative;
}
@media (max-width: 1023px) {
	.sec-license > .wrapper .inner .card-grid .card-item {
		max-width: calc(100% - 50px);
		padding: 40px 1em;
	}
}
.sec-license > .wrapper .inner .card-grid .card-item + .card-item::before {
	content: "";
	width: 30px;
	height: 30px;
	-webkit-mask: url(../img/common/plus.svg) no-repeat center/contain;
	mask: url(../img/common/plus.svg) no-repeat center/contain;
	background: #254fc2;
	aspect-ratio: 1/1;
	position: absolute;
	top: 50%;
	left: -20px;
	translate: -50% -50%;
}
@media (max-width: 1023px) {
	.sec-license > .wrapper .inner .card-grid .card-item + .card-item::before {
		top: calc(-20px - 1em);
		left: 50%;
		translate: -50% -50%;
	}
}
.sec-license > .wrapper .inner .card-grid .card-item .catch {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	max-width: 100%;
	font-weight: 700;
	color: #ffffff;
	background: #000000;
	border-radius: 100vw;
	padding: 0 1em;
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% -50%;
}
.sec-license > .wrapper .inner .card-grid .card-item .ttl {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	color: #254fc2;
}
.sec-license > .wrapper .inner .card-grid .card-item .img-wrap {
	width: 100%;
	max-width: 200px;
	aspect-ratio: 20/11;
	margin: 20px auto 0;
}
.sec-license > .wrapper .inner .card-grid .card-item .img-wrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}
.sec-license > .wrapper .inner .card-grid .card-item .list-content {
	margin-top: 0.1em;
	padding: 24px 9px 0;
}
.sec-license > .wrapper .inner .card-grid .card-item .list-content li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.sec-license > .wrapper .inner .card-grid .card-item .list-content li::before {
	content: "・";
}
.sec-license > .wrapper .inner .card-grid .card-item .list-content li.list-content-sub {
    width: 100%;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #d9d9d9;
}
.sec-license > .wrapper .inner .note-txt {
	margin-top: 30px;
}
.sec-license > .wrapper .inner .note-txt p {
	font-size: 14px;
	line-height: 1.6;
	padding-left: 1.2em;
	text-indent: -1.2em;
}
.sec-license > .wrapper .inner .flex-col2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 30px 40px;
	margin-top: 60px;
}
@media (max-width: 767px) {
	.sec-license > .wrapper .inner .flex-col2 {
		margin-top: 40px;
	}
}
.sec-license > .wrapper .inner .flex-col2 .toggle-box-wrap {
	max-width: 520px;
	margin: 0 auto;
}
@media (max-width: 767px) {
	.sec-license > .wrapper .inner .flex-col2 .toggle-box-wrap {
		max-width: 100%;
	}
}
.sec-license > .wrapper .inner .flex-col2 .toggle-box-wrap .toggle-box .ttl-3rd {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}
.sec-license > .wrapper .inner .flex-col2 .toggle-box-wrap .toggle-box .ttl-3rd strong {
	font-size: 24px;
}

.sec-flow {
	background: #b8cbff;
	padding: 0 0 80px;
}
@media (max-width: 767px) {
	.sec-flow {
		padding: 0 0 40px;
	}
}
.sec-flow > .wrapper {
	max-width: 1200px;
	padding: 0;
}
.sec-flow > .wrapper .inner {
	max-width: 1080px;
	margin: auto;
}
.sec-flow > .wrapper .inner .ttl-submain .ttl-sub {
	font-family: "Poppins", sans-serif;
}
.sec-flow > .wrapper .inner .ttl-submain .ttl-main {
	color: #254fc2;
}
.sec-flow > .wrapper .inner .flow-card-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
@media (max-width: 1023px) {
	.sec-flow > .wrapper .inner .flow-card-flex {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.sec-flow > .wrapper .inner .flow-card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
@media (max-width: 1023px) {
	.sec-flow > .wrapper .inner .flow-card-grid {
		grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
	}
}
.sec-flow > .wrapper .inner .flow-card-grid .card-item {
	display: grid;
	grid-template-rows: subgrid;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	grid-row: span 3;
	gap: 0;
}
.sec-flow > .wrapper .inner .flow-card-flex, .sec-flow > .wrapper .inner .flow-card-grid {
	gap: 30px;
	margin-top: 40px;
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item, .sec-flow > .wrapper .inner .flow-card-grid .card-item {
	width: 100%;
	background: #ffffff;
	border-radius: 10px;
	padding: 34px 1em;
}
@media (max-width: 1023px) {
	.sec-flow > .wrapper .inner .flow-card-flex .card-item, .sec-flow > .wrapper .inner .flow-card-grid .card-item {
		width: calc(100% - 2em);
		margin: auto;
		padding: 24px 1em;
	}
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item + .card-item, .sec-flow > .wrapper .inner .flow-card-grid .card-item + .card-item {
	position: relative;
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item + .card-item::before, .sec-flow > .wrapper .inner .flow-card-grid .card-item + .card-item::before {
	content: "";
	width: 15px;
	height: 15px;
	border-top: 4px solid #ffffff;
	border-right: 4px solid #ffffff;
	border-radius: 2px;
	position: absolute;
	top: 50%;
	left: -15px;
	translate: -75% -50%;
	rotate: 45deg;
}
@media (max-width: 1023px) {
	.sec-flow > .wrapper .inner .flow-card-flex .card-item + .card-item::before, .sec-flow > .wrapper .inner .flow-card-grid .card-item + .card-item::before {
		top: -15px;
		left: 50%;
		translate: -50% -75%;
		rotate: 135deg;
	}
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item .num, .sec-flow > .wrapper .inner .flow-card-grid .card-item .num {
	font-family: "Poppins", sans-serif;
	font-size: 32px;
	font-weight: 500;
	text-align: center;
	color: #254fc2;
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item .ttl, .sec-flow > .wrapper .inner .flow-card-grid .card-item .ttl {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item .img-wrap, .sec-flow > .wrapper .inner .flow-card-grid .card-item .img-wrap {
	width: 80px;
	height: 80px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 20px;
	aspect-ratio: 1/1;
}
.sec-flow > .wrapper .inner .flow-card-flex .card-item .img-wrap img, .sec-flow > .wrapper .inner .flow-card-grid .card-item .img-wrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}
.sec-flow > .wrapper .inner .flow-note-txt {
	margin-top: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
@media (max-width: 1023px) {
	.sec-flow > .wrapper .inner .flow-note-txt {
		margin-top: 30px;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
}
.sec-flow > .wrapper .inner .flow-note-txt p {
	line-height: 1.8;
}

.sec-faq {
	background: #b8cbff;
	padding: 0 0 80px;
}
@media (max-width: 767px) {
	.sec-faq {
		padding: 0 0 40px;
	}
}
.sec-faq > .wrapper {
	max-width: 1200px;
	background: rgba(255, 255, 255, .5019607843);
	border-radius: 10px;
	padding: 60px 1em;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper {
		padding: 30px 1em;
	}
}
.sec-faq > .wrapper .inner {
	max-width: 1080px;
	margin: auto;
}
.sec-faq > .wrapper .inner .ttl-submain .ttl-main {
	color: #254fc2;
}
.sec-faq > .wrapper .inner .faq-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	gap: 20px;
	margin-top: 40px;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-list {
		margin-top: 30px;
	}
}
.sec-faq > .wrapper .inner .faq-item {
	border-radius: 8px;
	overflow: hidden;
	background: #ffffff;
}
.sec-faq > .wrapper .inner .faq-q {
	width: 100%;
	font: inherit;
	color: #5e5c5b;
	background: #ffffff;
	border: 0;
	display: grid;
	grid-template-columns: auto 1fr 32px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 1em;
	text-align: left;
	padding: 18px 22px 18px 42px;
	cursor: pointer;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-q {
		padding: 20px;
	}
}
.sec-faq > .wrapper .inner .faq-q:hover {
	opacity: .5;
}
.sec-faq > .wrapper .inner .faq-q .faq-icon {
	font-family: "Poppins", sans-serif;
	font-size: 40px;
	font-weight: 500;
	line-height: 1;
	color: #254fc2;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-q .faq-icon {
		font-size: 36px;
	}
}
.sec-faq > .wrapper .inner .faq-q .faq-q-text {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-q .faq-q-text {
		font-size: 18px;
	}
}
.sec-faq > .wrapper .inner .faq-q .faq-toggle-icon {
	width: 24px;
	height: 24px;
	position: relative;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-q .faq-toggle-icon {
		width: 20px;
		height: 20px;
	}
}
.sec-faq > .wrapper .inner .faq-q .faq-toggle-icon::before, .sec-faq > .wrapper .inner .faq-q .faq-toggle-icon::after {
	content: "";
	width: 24px;
	height: 4px;
	background: #254fc2;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: rotate, opacity;
	transition-property: rotate, opacity;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-q .faq-toggle-icon::before, .sec-faq > .wrapper .inner .faq-q .faq-toggle-icon::after {
		width: 20px;
	}
}
.sec-faq > .wrapper .inner .faq-q .faq-toggle-icon::after {
	rotate: 90deg;
}
.sec-faq > .wrapper .inner .faq-q.active .faq-toggle-icon::after {
	opacity: 0;
	rotate: 0deg;
}
.sec-faq > .wrapper .inner .faq-a {
	height: 0;
	overflow: hidden;
	background: #254fc2;
	color: #ffffff;
	display: grid;
	grid-auto-flow: column;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: height;
	transition-property: height;
}
.sec-faq > .wrapper .inner .faq-a.active {
	height: calc-size(auto, size);
}
.sec-faq > .wrapper .inner .faq-a .faq-a-inner {
	padding: 18px 22px 18px 42px;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-a .faq-a-inner {
		padding: 20px;
	}
}
.sec-faq > .wrapper .inner .faq-a .faq-a-main {
	display: grid;
	grid-template-columns: auto 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0 1em;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-a .faq-a-main {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
}
.sec-faq > .wrapper .inner .faq-a .faq-a-main .faq-icon {
	font-family: "Poppins", sans-serif;
	font-size: 40px;
	font-weight: 500;
	line-height: 1;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-a .faq-a-main .faq-icon {
		font-size: 36px;
	}
}
.sec-faq > .wrapper .inner .faq-a .faq-a-main + p {
	margin-top: 1em;
}
.sec-faq > .wrapper .inner .faq-a .faq-a-main ~ p {
	padding-left: 45px;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-a .faq-a-main ~ p {
		padding-left: 45px;
	}
}
.sec-faq > .wrapper .inner .faq-a ul {
	padding-left: 45px;
}
@media (max-width: 767px) {
	.sec-faq > .wrapper .inner .faq-a ul {
		padding-left: 45px;
	}
}
.sec-faq > .wrapper .inner .faq-a ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: first baseline;
	-ms-flex-pack: first baseline;
	justify-content: first baseline;
}
.sec-faq > .wrapper .inner .faq-a ul li::before {
	content: "・";
}
.sec-faq > .wrapper .inner .faq-a p, .sec-faq > .wrapper .inner .faq-a ul, .sec-faq > .wrapper .inner .faq-a li {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
}
.sec-faq > .wrapper .inner .faq-a p + p, .sec-faq > .wrapper .inner .faq-a p + ul, .sec-faq > .wrapper .inner .faq-a ul + p, .sec-faq > .wrapper .inner .faq-a ul + ul, .sec-faq > .wrapper .inner .faq-a li + p, .sec-faq > .wrapper .inner .faq-a li + ul {
	margin-top: .5em;
}
.sec-faq > .wrapper .inner .faq-a a {
	color: #9ed0ff;
	text-decoration: underline;
	text-underline-offset: 4px;
	-webkit-transition: ease .3s;
	transition: ease .3s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
}
.sec-faq > .wrapper .inner .faq-a a:hover {
	text-decoration: none;
	opacity: .5;
}

.sec-cta {
	background: url(../img/common/cta_bg.png) no-repeat center/cover;
}
@media (max-width: 767px) {
	.sec-cta {
		background-image: url(../img/common/cta_bg_sp.png);
	}
}
.sec-cta > .wrapper {
	width: 100%;
	max-width: 1280px;
	padding-bottom: 0;
	padding-top: 35px;
}
@media (max-width: 1023px) {
	.sec-cta > .wrapper {
		padding: 40px 0;
	}
}
.sec-cta > .wrapper .inner {
	margin: auto 0 auto auto;
	padding-right: 1em;
}
@media (max-width: 1023px) {
	.sec-cta > .wrapper .inner {
		padding: 0;
	}
}
.sec-cta > .wrapper .inner .flex-left-fit {
	max-width: 1180px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0 auto 0 0;
}
@media (max-width: 1023px) {
	.sec-cta > .wrapper .inner .flex-left-fit {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-flow: column-reverse;
		flex-flow: column-reverse;
		margin: 0 auto;
	}
}
.sec-cta > .wrapper .inner .flex-left-fit .content-wrap {
	width: 100%;
	max-width: 440px;
	position: relative;
	z-index: 1;
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}
@media (max-width: 1023px) {
	.sec-cta > .wrapper .inner .flex-left-fit .content-wrap {
		max-width: 100%;
		margin-top: 30px;
		padding: 0 1em;
	}
}
.sec-cta > .wrapper .inner .flex-left-fit .content-wrap .ttl-submain .ttl-main {
	font-size: 27px;
	color: #254fc2;
}
@media (min-width: 1024px) {
	.sec-cta > .wrapper .inner .flex-left-fit .content-wrap .ttl-submain .ttl-main br.local-pc-hide {
		display: none;
	}
}
.sec-cta > .wrapper .inner .flex-left-fit .content-wrap .btn-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 1em;
	margin: 36px auto 0;
}
.sec-cta > .wrapper .inner .flex-left-fit .content-wrap .btn-wrap .c-btn {
	width: 100%;
	font-size: 20px;
	padding: 1.5em 1em;
}
.sec-cta > .wrapper .inner .flex-left-fit .img-wrap {
	width: 100%;
	max-width: calc(638px - 1em);
	margin: 0;
	position: relative;
	padding-left: 1em;
	min-height: 325px;
}
@media (max-width: 1023px) {
	.sec-cta > .wrapper .inner .flex-left-fit .img-wrap {
		padding: 0;
		overflow: hidden;
	}
}
.sec-cta > .wrapper .inner .flex-left-fit .img-wrap img {
	width: 687px;
	max-width: none;
	height: 100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 0;
	-o-object-fit: contain;
	object-fit: contain;
}

.sec-cta-other {
	background: #f6f6f6;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper {
		padding: 40px 0;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	gap: 80px 190px;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item {
	width: 100%;
	max-width: 445px;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item {
		max-width: 100%;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item + .flex-item {
	position: relative;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item + .flex-item::before {
	content: "";
	width: 0;
	height: 100%;
	border-left: 1px solid #bfbfbf;
	position: absolute;
	top: 0;
	left: -94px;
	translate: -50% 0;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item + .flex-item::before {
		width: 100%;
		height: 0;
		border-top: 1px solid #bfbfbf;
		border-left: none;
		top: -40px;
		left: 50%;
		translate: -50% 0;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cateogry {
	font-family: "Poppins", sans-serif;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	color: #254fc2;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 20px 24px;
	margin-top: 45px;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex {
		margin-top: 1em;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex.closest-img {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex.closest-img {
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-ms-flex-flow: column-reverse;
		flex-flow: column-reverse;
	}
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex.closest-img .content-inner {
		width: 100%;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex.closest-img .content-inner .ttl {
	text-align: left;
}
@media (max-width: 1023px) {
	.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex.closest-img .content-inner .ttl {
		text-align: center;
	}
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner .ttl {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	color: #002c50;
	text-align: center;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner .txt-wrap {
	margin-top: 1em;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner .txt-wrap p {
	line-height: 1.8;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner.img-wrap {
	width: 100%;
	max-width: 200px;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner.img-wrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner.img-wrap:not(:has(img)) {
	background: #d9d9d9;
	aspect-ratio: 200/135;
	position: relative;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .content-flex .content-inner.img-wrap:not(:has(img))::before {
	content: "No Image";
	color: #f1f1f1;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area {
	margin-top: 30px;
	padding: 0;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn:hover.cv-btn--seminar {
	color: #254fc2;
	background: #ffffff;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn:hover.cv-btn--seminar .cv-btn__icon::before {
	background: #254fc2;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn:hover.cv-btn--download {
	color: #002c50;
	background: #ffffff;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn:hover.cv-btn--download .cv-btn__icon::before {
	background: #002c50;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn--seminar {
	color: #ffffff;
	background: #254fc2;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn--seminar .cv-btn__icon::before {
	background: #ffffff;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn--download {
	color: #ffffff;
	background: #002c50;
	border-color: #002c50;
}
.sec-cta-other > .wrapper > .inner .flex-col2 .flex-item .cv-area .cv-btn--download .cv-btn__icon::before {
	background: #ffffff;
}

.worry-balloon-block {
	padding: calc(1lh + 40px) 0 0;
}
@media (max-width: 767px) {
	.worry-balloon-block {
		padding: 24px 0;
	}
}
.worry-balloon-block .worry-balloon-list {
	width: min(100%, 1200px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	flex-flow: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 1.5lh 2em;
	margin: 0 auto;
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list {
		gap: 2lh 2em;
	}
}
@media (max-width: 767px) {
	.worry-balloon-block .worry-balloon-list {
		gap: 1em;
	}
}
.worry-balloon-block .worry-balloon-list .worry-balloon {
	width: 100%;
	max-width: 336px;
	min-height: 105px;
	background: #ffffff;
	border-radius: 9px;
	-webkit-filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, .13));
	filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, .13));
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	position: relative;
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon {
		max-width: calc(50% - 2em);
	}
}
@media (max-width: 767px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon {
		max-width: 100%;
		min-height: 92px;
	}
}
@media (max-width: 767px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon:not(:last-child) .bubble {
		display: none;
	}
}
.worry-balloon-block .worry-balloon-list .worry-balloon .bubble {
	width: 60px;
	height: 60px;
	position: absolute;
	top: 100%;
	left: 50%;
	translate: -50% -20px;
}
.worry-balloon-block .worry-balloon-list .worry-balloon .bubble::before, .worry-balloon-block .worry-balloon-list .worry-balloon .bubble::after {
	content: "";
	background: #ffffff;
	border-radius: 100vw;
	position: absolute;
}
.worry-balloon-block .worry-balloon-list .worry-balloon .bubble::before {
	width: 40px;
	height: 40px;
	left: 0;
	top: 0;
}
.worry-balloon-block .worry-balloon-list .worry-balloon .bubble::after {
	width: 22px;
	height: 22px;
	right: 0;
	bottom: 0;
}
.worry-balloon-block .worry-balloon-list .worry-balloon p {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: .02em;
	color: #5e5c5b;
	margin: 0;
}
@media (max-width: 767px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon p {
		font-size: 15px;
	}
}
.worry-balloon-block .worry-balloon-list .worry-balloon p strong {
	font-weight: 700;
	color: #000000;
}
.worry-balloon-block .worry-balloon-list .worry-balloon--01 .bubble {
	left: 40px;
	translate: 0 -20px;
}
.worry-balloon-block .worry-balloon-list .worry-balloon--02 {
	margin-top: -20px;
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--02 {
		margin-top: auto;
	}
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--02 .bubble {
		left: auto;
		right: 40px;
		translate: 0 -20px;
		rotate: 90deg;
	}
}
.worry-balloon-block .worry-balloon-list .worry-balloon--03 .bubble {
	left: auto;
	right: 40px;
	translate: 0 -20px;
	rotate: 90deg;
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--03 .bubble {
		left: 50%;
		right: auto;
		translate: -50% -20px;
		rotate: 0deg;
	}
}
.worry-balloon-block .worry-balloon-list .worry-balloon--04 .bubble {
	left: 40px;
	translate: 0 -20px;
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--04 .bubble {
		left: 50%;
		translate: -50% -20px;
		rotate: 90deg;
	}
}
@media (max-width: 767px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--05 {
		width: 100%;
	}
}
.worry-balloon-block .worry-balloon-list .worry-balloon--05 .bubble {
	left: auto;
	right: 40px;
	translate: 0 -20px;
	rotate: 90deg;
}
@media (max-width: 1199px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--05 .bubble {
		left: 50%;
		right: auto;
		translate: -50% -20px;
		rotate: 0deg;
	}
}
@media (max-width: 767px) {
	.worry-balloon-block .worry-balloon-list .worry-balloon--05 .bubble {
		rotate: 90deg;
	}
}

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