/* =================================================================== */

.a-bg {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
}

.a-bg[data-bg='1'] {
	background: url('../images/about/bg_support_pc.jpg') no-repeat center center;
	background-size: cover;
}

/* =================================================================== */

.c-mv {
	position: relative;
	z-index: 3;
}

.c-mv .c-mv__title {
	-webkit-transform: translateX(-12px);
	transform: translateX(-12px);
}

.c-mv .c-mv__title .ff-en {
	-webkit-transform: translateX(12px);
	transform: translateX(12px);
}

/* =================================================================== */

.a-message {
	position: relative;
	z-index: 2;
	padding: 88px 0 80px;
	background: #fff;
}

.a-message .c-headline {
	margin-bottom: 48px;
}

.a-message .c-headline > .ff-en {
	margin-bottom: 7px;
}

.a-message__container {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.a-message__container .a-message__title {
	position: absolute;
	top: -7px;
	left: 0;
}

.a-message__container > img {
	position: absolute;
	bottom: 114px;
	left: -85px;
}

.a-message__title {
	font-size: 6rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: normal;
	letter-spacing: .04em;
}

.a-message__title em {
	font-size: 7rem;
	line-height: 1.4;
	display: block;
	letter-spacing: .1em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}

.a-message__texts {
	width: 100%;
	max-width: 615px;
	margin-left: auto;
	-webkit-transform: translate(-7px, 0px);
	transform: translate(-7px, 0px);
}

.a-message__texts .text {
	font-size: 1.6rem;
	line-height: 2.25;
	letter-spacing: .04em;
}

.a-message__texts .text + .text {
	margin-top: 20px;
}

.a-message__texts .name {
	font-size: 1.6rem;
	line-height: 1;
	margin-top: 30px;
	-webkit-transform: translateX(6px);
	transform: translateX(6px);
	text-align: right;
	letter-spacing: normal;
	letter-spacing: .04em;
}

.a-message__texts .name span {
	display: inline-block;
	text-align: left;
}

.a-message__texts .name span span {
	font-size: 2.4rem;
	margin-top: 10px;
}

/* =================================================================== */

.a-support {
	position: relative;
	z-index: 2;
	padding: 73px 0 65px;
}

.a-support .c-l-column {
	max-width: 1040px;
}

.a-support .c-headline {
	margin-bottom: 2px;
	color: #fff;
}

.a-support .c-headline em {
	margin: 0 10px;
	text-decoration: underline;
	color: #fffb00;
	text-decoration-thickness: 4px;
	text-underline-offset: 10px;
}

.a-support .c-headline em span {
	font-size: 3.8rem;
}

.a-support aside {
	font-size: 2rem;
	font-weight: bold;
	line-height: 2;
	margin-top: 60px;
	text-align: center;
	letter-spacing: .04em;
	color: #fff;
}

.a-support aside p {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.a-support aside p::before,
.a-support aside p::after {
	display: inline-block;
	width: 36px;
	height: 65px;
	content: '';
	background: url('../images/about/deco_support.png') no-repeat;
	background-size: 100% 100%;
}

.a-support aside p::before {
	-webkit-transform: translate(-15px, 3px);
	transform: translate(-15px, 3px);
}

.a-support aside p::after {
	-webkit-transform: scale(-1, 1) translate(-10px, 3px);
	transform: scale(-1, 1) translate(-10px, 3px);
}

.a-support__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.a-support__list > li {
	position: relative;
	width: 100%;
	margin-top: 136px;
	counter-increment: number;
}

.a-support__list > li::before {
	font-family: 'Lato', sans-serif;
	font-size: 3.4rem;
	font-weight: bold;
	font-style: italic;
	line-height: 1;
	position: absolute;
	z-index: 10;
	top: -79px;
	right: 0;
	left: 0;
	display: block;
	width: 111px;
	height: 142px;
	margin: auto;
	padding: 65px 0 0;
	content: counter(number, decimal-leading-zero);
	text-align: center;
	text-decoration: underline;
	color: #fff;
	background: url('../images/common/deco_support.png');
	background-size: 100% 100%;
	text-decoration-thickness: 2px;
	text-underline-offset: 7px;
}

.a-support__list > li + li {
	margin-left: 3.5%;
}

.a-support__list .a-support__element {
	height: 100%;
}

.a-support__list .a-support__element .body {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
}

.a-support__list .a-support__element .body .c-btn__wrapper {
	margin-top: auto;
}

.a-support__element {
	position: relative;
	z-index: 3;
	display: block;
	width: 100%;
	background: #fff;
}

.a-support__element:hover {
	opacity: 1;
}

.a-support__element .head {
	overflow: hidden;
}

.a-support__element .head img {
	width: 100%;
	-webkit-transition: .5s;
	transition: .5s;
}

.a-support__element .body {
	padding: 71px 30px 30px;
}

.a-support__element .title {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 9px;
	text-align: center;
	letter-spacing: .1em;
	color: #01b3cd;
}

.a-support__element .desc {
	font-size: 1.6rem;
	line-height: 1.875;
	margin-bottom: 28px;
	letter-spacing: .04em;
}

.a-support__element:hover .c-btn {
	opacity: 1;
	color: #fff;
}

.a-support__element:hover .c-btn::before {
	opacity: 0;
}

.a-support__element:hover .c-btn .c-arrow::before {
	-webkit-animation: line .6s cubic-bezier(.25, .46, .45, .94) 0s;
	animation: line .6s cubic-bezier(.25, .46, .45, .94) 0s;
	background: #fff;
}

.a-support__element:hover .c-btn .c-arrow::after {
	border-color: transparent transparent transparent #fff;
}

.a-support__element .c-btn span {
	-webkit-transform: translateX(15px);
	transform: translateX(15px);
}

/* =================================================================== */

.a-steps {
	position: relative;
	z-index: 2;
	padding: 73px 0 56px;
	background: #fff;
}

.a-steps .c-headline {
	margin-bottom: 51px;
}

.a-steps .c-headline > .ff-en {
	margin-bottom: 5px;
}

.a-steps p.a-steps__dl {
	font-size: 1.6rem;
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	padding-left: 105px;
	color: #e60012;
}

.a-steps__container {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	padding: 0 0 32px;
	background: url('../images/about/img_steps_arrow_pc.png') no-repeat 15px top;
	background-size: 28px 100%;
}

.a-steps__container > dl:first-child dd {
	border-top: 1px solid #e5e5e5;
}

.a-steps__dl {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.a-steps__dl dt {
	font-size: 1.6rem;
	font-weight: 500;
	min-width: 114px;
	margin-top: 17px;
	padding: 4px 0;
	letter-spacing: .04em;
	background: #fff;
}

.a-steps__dl dt time {
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: .1em;
}

.a-steps__dl dd {
	width: 100%;
	padding: 18.5px 0;
	color: #333;
	border-bottom: 1px solid #e5e5e5;
}

.a-steps__dl dd > ul {
	-webkit-transform: translate(-9px, -1px);
	transform: translate(-9px, -1px);
}

.a-steps__dl dd > ul > li {
	font-size: 1.6rem;
	line-height: 1.625;
	padding-left: 1em;
	text-indent: -1em;
	letter-spacing: .04em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}

.a-steps__dl dd > ul > li::before {
	content: '・';
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
}

.a-steps__dl dd > ul > li + li {
	margin-top: 5px;
}

/* =================================================================== */

.a-group {
	position: relative;
	z-index: 2;
	padding: 70px 0 80px;
	background: #e9f6f5;
}

.a-group .c-headline {
	margin-bottom: 51px;
}

.a-group .c-headline > .ff-en {
	margin-bottom: 10px;
}

.a-group .c-table {
	max-width: 800px;
	margin: 0 auto;
}

.a-group__contact {
	font-size: 15px;
	display: block;
	width: 200px;
	margin-top: 10px;
	padding: 4px 10px 5px;
	text-align: center;
	color: #fff;
	border-radius: 5px;
	background: #01b3cd;
}

/* =================================================================== */

/* animation styles */

.a-message__container img {
	opacity: 0;
}

.a-message__texts p {
	opacity: 0;
}

.a-support__list > li {
	opacity: 0;
}

.a-steps__container {
	opacity: 0;
}

.a-steps__dl {
	opacity: 0;
}

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

.a-bg[data-bg='1'] {
	background: url('../images/about/bg_support_sp.jpg') no-repeat center center;
	background-size: cover;
}

.c-mv .c-mv__title {
	-webkit-transform: none;
	transform: none;
}

.c-mv .c-mv__title .ff-en {
	-webkit-transform: none;
	transform: none;
}

.a-message {
	overflow: hidden;
	padding: 24px 0 94.4vw;
}

.a-message .c-headline {
	margin-bottom: 21px;
}

.a-message .c-headline > .ff-en {
	margin-bottom: 10px;
}

.a-message__container .a-message__title {
	position: static;
}

.a-message__container > img {
	right: 0;
	bottom: -110.93333vw;
	left: 1.06667vw;
	width: 89.33333vw;
}

.a-message__title {
	font-size: 5rem;
	line-height: 1.2;
	margin-bottom: 25px;
	text-align: center;
}

.a-message__title em {
	font-size: 5.5rem;
	line-height: 1.2;
}

.a-message__texts {
	max-width: none;
	-webkit-transform: none;
	transform: none;
}

.a-message__texts .text {
	line-height: 1.9375;
}

.a-message__texts .text + .text {
	margin-top: 16px;
}

.a-message__texts .name {
	font-size: 1.4rem;
	-webkit-transform: none;
	transform: none;
}

.a-message__texts .name span span {
	font-size: 2rem;
	margin-top: 5px;
}

.a-support {
	padding: 37px 0 49px;
}

.a-support .c-headline em {
	font-size: 3.5rem;
	display: inline-block;
	margin: 0 3px;
	margin-top: 5px;
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
}

.a-support .c-headline em span {
	font-size: 2.5rem;
}

.a-support .c-headline > .ff-en {
	margin-bottom: 12px;
}

.a-support aside {
	display: none;
}

.a-support__list {
	display: block;
}

.a-support__list > li {
	margin-top: 113px;
}

.a-support__list > li::before {
	font-size: 3.3rem;
	top: -75px;
	width: 105.5px;
	height: 135px;
	padding: 53px 0 0;
	background: url('../images/common/deco_support_sp.png');
	background-size: 100% 100%;
	text-underline-offset: 6px;
}

.a-support__list > li + li {
	margin-top: 105px;
	margin-left: 0;
}

.a-support__element .head {
	height: 61.33333vw;
}

.a-support__element .body {
	padding: 71px 20px 31px;
}

.a-support__element .title {
	margin-bottom: 6px;
}

.a-support__element .desc {
	line-height: 1.7;
	margin-bottom: 14px;
}

.a-steps {
	padding: 36px 0 50px;
}

.a-steps .c-headline {
	margin-bottom: 30px;
}

.a-steps .c-headline > .ff-en {
	margin-bottom: 11px;
}

.a-steps p.a-steps__dl {
	font-size: 1.4rem;
	padding-left: 65px;
}

.a-steps__container {
	padding: 0 0 24px;
	background: url('../images/about/img_steps_arrow_sp.png') no-repeat 7.5px top;
	background-size: 28px 100%;
}

.a-steps__dl dt {
	font-size: 1.2rem;
	line-height: 1;
	min-width: 65px;
	margin-top: 15px;
	padding: 3px 0;
}

.a-steps__dl dt time {
	font-size: 1.6rem;
}

.a-steps__dl dd {
	padding: 14px 0;
}

.a-steps__dl dd > ul {
	-webkit-transform: none;
	transform: none;
}

.a-steps__dl dd > ul > li {
	font-size: 1.4rem;
}

.a-group {
	padding: 38px 0 0;
}

.a-group .c-headline {
	margin-bottom: 32px;
}

.a-group__contact {
	font-size: 13px;
}

.st-footer {
	background: #e9f6f5;
}

}

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

.a-message__title {
	font-size: 4rem;
}

.a-message__title em {
	font-size: 4.5rem;
}

.a-message__texts .text {
	font-size: 1.4rem;
}

.a-steps__dl dd > ul > li {
	font-size: 1.2rem;
}

}

@-webkit-keyframes delay-overflow {

to {
	overflow: visible !important;
}

}

@keyframes delay-overflow {

to {
	overflow: visible !important;
}

}

