@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap&text=0123456789,');

/************************************************************************************
RESET
*************************************************************************************/
*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
	-moz-text-size-adjust: none;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
    margin: 0;
	text-wrap: auto;
}

ul,
ol {
    list-style: none;
	margin: 0;
	padding: 0;
}

body {
	min-height: 100vh;
	line-height: 1.6;
}

h1,
h2,
h3,
h4,
button,
input,
label {
    line-height: 1.6;
}

a {
	text-decoration: none;
	color: currentColor;
}

img,
picture {
    width: 100%;
	height: auto;
	vertical-align: bottom;
}

input,
button,
textarea,
select {
        font: inherit;
}

textarea {
    min-height: 5em;
}

/* :target {
    scroll-margin-block: 5rem;
}

@media screen and (min-width: 780px) {
	:target {
		scroll-margin-block: 25px;
	}
} */


/************************************************************************************
GENERAL STYLING
*************************************************************************************/
html {
	font-size: 2.6666667vw;
	-webkit-text-size-adjust:100%;
    scroll-behavior: smooth;
	scroll-padding-top: 7.7rem;
}

html.no-smooth {
	scroll-behavior: auto;
}

@media screen and (min-width: 780px) {
	html {
		font-size:62.5%;
	}
}

body{
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", serif;
	font-weight: 400;
	color: #1A1A1A;
	letter-spacing: 0;
}

/* ---------------------------
base
--------------------------- */
.l-inner{
	padding: 0 1.5rem;
	margin-left: auto;
	margin-right: auto;
}

.section{
	margin-bottom: 6rem;
}

input::placeholder {
	text-overflow: ellipsis;
}

input {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.base-box-shadow {
	box-shadow: 0 0 0.6rem #00000026;
}

.box-shadow-grey {
	box-shadow: 0 0 7px #00000029;
}

.hover-opacity:hover {
	opacity: 0.7;
}

.relative {
	position: relative;
}

.overflow-auto {
	overflow: auto;
}

.bold{
	font-weight: 700;
}

@media screen and (min-width: 780px) {
	.l-inner{
		max-width: 1010px;
		padding: 0 15px;
	}
	.section{
		margin-bottom: 100px;
	}
}

/* ---------------------------
line
--------------------------- */
.gray-line {
	display: block;
	width: 100%;
	height: 0.1rem;
	background-color: #D6D6D6;
	margin: 2rem 0;
}
.gray-line.is-none-margin {
	display: block;
	width: 100%;
	height: 0.1rem;
	background-color: #D6D6D6;
	margin: 0;
}

@media screen and (min-width:780px) {
	.gray-line.is-none-margin {
		display: none;
	}
}

/* ---------------------------
text-align
--------------------------- */
.is-text-center {
        text-align: center;
}
.is-text-left {
        text-align: left;
}
.sp-text-center {
	text-align: center;
}

@media screen and (min-width: 780px) {
	.sp-text-center {
		text-align: left;
	}
	.pc-text-center {
		text-align: center;
	}
}


/* ---------------------------
font size
--------------------------- */
.fnt-9 {
	font-size: 0.9rem;
}
.fnt-11 {
	font-size: 1.1rem;
}
.fnt-12 {
	font-size: 1.0rem;
}
.fnt-14 {
	font-size: 1.2rem;
}
.fnt-15 {
	font-size: 1.3rem;
}
.fnt-16 {
	font-size: 1.4rem;
}
.fnt-17 {
	font-size: 1.5rem;
}
.fnt-18 {
	font-size: 1.6rem;
}
.fnt-20 {
	font-size: 1.8rem;
}
.fnt-21 {
	font-size: 1.9rem;
}
.fnt-22 {
	font-size: 2.0rem;
}
.fnt-24 {
	font-size: 2.2rem;
}

@media screen and (min-width: 780px) {
	.fnt-12 {
		font-size: 12px;
	}
	.fnt-14 {
		font-size: 14px;
	}
	.fnt-15 {
		font-size: 15px;
	}
	.fnt-16 {
		font-size: 16px;
	}
	.fnt-17 {
		font-size: 17px;
	}
	.fnt-18 {
		font-size: 18px;
	}
	.fnt-20 {
		font-size: 20px;
	}
	.fnt-21 {
		font-size: 21px;
	}
	.fnt-22 {
		font-size: 22px;
	}
	.fnt-24 {
		font-size: 24px;
	}
    .pc-fnt-12 {
		font-size: 12px;
	}
	.pc-fnt-14 {
		font-size: 14px;
	}
	.pc-fnt-16 {
		font-size: 16px;
	}
	.pc-fnt-18 {
		font-size: 18px;
	}
	.pc-fnt-20 {
		font-size: 20px;
	}
	.pc-fnt-24 {
		font-size: 24px;
	}
}

/* ---------------------------
text-color
--------------------------- */
.clr-black {
	color: #1A1A1A;
}
.clr-red {
	color: #D60F0F;
}
.clr-green {
	color: #006F3F;
}
.clr-light-green {
	color: #35A637;
}
.clr-pink {
	color: #E76F51;
}
.clr-sub-green {
	color: #7Fb69E;
}
.clr-grey {
	color: #A0A0A0;
}
.clr-white {
	color: #FFFFFF;
}
.clr-pink {
	color: #C20E45;
}

.text-link{
	color: #006F3F;
	text-decoration: underline;
}
.text-link.is-corp{
	color: #1A1A1A;
}
.text-link:hover{
    color: #4C9A78;
}
.text-link.is-corp:hover{
	color: #5D5D5D
}

/* ---------------------------
display
--------------------------- */
.pc-inline {
	display: block;
}
.pc{
        display: none;
}
.sp{
        display: block;
}
.inline-block {
	display: inline-block;
}
.base-box {
	padding: 1.5rem;
	border: 1px solid #D6D6D6;
	border-radius: 0.3rem;
}

@media screen and (min-width: 780px) {
	.pc-inline {
		display: inline;
	}
	.pc{
			display: block;
	}
	.sp{
			display: none;
	}
	.base-box {
		padding: 15px 25px;
	}
}

/* ---------------------------
background-color
--------------------------- */
.bg-is-green {
	background-color: #7FB69E;
}
.bg-is-whitegreen {
	background-color: #F2F8F5;
}
.bg-is-cream{
	background-color: #FCFAF5;
}
.bg-is-darkgreen {
	background-color: #006F3F;
}
.bg-is-lightgreen {
	background-color: #35A637
}
.bg-is-white {
	background-color: #FFFFFF;
}
.bg-is-darkpink {
	background-color: #C20E45;
}
.bg-is-whitepink {
	background-color: #FFF7F7;
}

/* ---------------------------
width
--------------------------- */
.w-full,
.w-pc-is-half    {
	width: 100%;
	box-sizing: border-box;
}
.w-10per {
	width: 10%;
}
.w-15per {
	width: 15%;
}
.w-20per {
	width: 20%;
}
.w-25per {
	width: 25%;
}
.w-30per {
	width: 30%;
}
.w-35per {
	width: 35%;
}
.w-45per {
	width: 45%;
}
.w-50per {
	width: 50%;
}
.w-70per {
	width: 70%;
}
.w-25per-20per {
	width: 25%;
}
.w-73per {
	width: 73%;
}
.w-80per {
	width: 80%;
}
.w-90 {
	width: 9rem;
}
.w-232 {
	width: 23.2rem;
}
.w-204 {
	width: 20.4rem;
}
.w-100 {
	width: 10rem;
	box-sizing: border-box;
}
.w-fit {
	width: fit-content;
}
.w-1_3 {
	width: 33%;
}
.min-w-fit {
	min-width: fit-content;
}
.max-w-150 {
	max-width: 15rem;
}
.max-w-300 {
	max-width: 30rem;
}
.max-w-350 {
	max-width: 35rem;
}
.max-w-365 {
	max-width: 36.5rem;
}
.max-w-240 {
	max-width: 24rem;
}
.max-w-260 {
	max-width: 26rem;
}
.max-w-500 {
	max-width: 50rem;
}
.max-w-880 {
	max-width: 88rem;
}
.min-w-90 {
	min-width: 9rem;
}
.min-w-100 {
	min-width: 10rem;
}
.min-w-120 {
	min-width: 12rem;
}
.min-w-130 {
	min-width: 13rem;
}
.min-w-140 {
	min-width: 14rem;
}
.min-w-150 {
	min-width: 15rem;
}
.min-w-200 {
	min-width: 20rem;
}
.min-w-220 {
	min-width: 22rem;
}
.min-w-232 {
	min-width: 23.2rem;
}
.min-w-204 {
	min-width: 20.4rem;
}
.min-w-45 {
	min-width: 4.5rem;
}
.max-h-80 {
	max-height: 8rem;
}
.m-auto {
	margin: auto;
}
.w-pc-300{
	width: 100%;
}
.w-pc-400{
	width: 100%;
}
@media screen and (max-width: 779.99px) {
	.sp-w-full {
		width: 100%;
		box-sizing: border-box;
	}
}
@media screen and (min-width: 780px) {
	.w-pc-is-half    {
		width: calc(100% / 2 - 30px);
		box-sizing: border-box;
	}
	.w-25per-20per {
		width: 20%;
	}
	.w-pc-10per {
		width: 10%;
	}
	.w-pc-30per {
		width: 30.97%;
	}
	.w-pc-40per {
		width: 40%;
	}
	.w-pc-44per {
		width: 44.5%;
	}
	.w-pc-45per {
		width: 45.8%;
	}
	.w-pc-64per {
		width: 64.67%;
	}
	.w-pc-80per {
		width: 80%;
	}
	.w-pc-300{
		width: 300px;
	}
	.w-pc-400{
		width: 400px;
	}
}

/* ---------------------------
height
--------------------------- */
.h-auto {
	height: auto !important;
}

.h-full {
	height: 100%;
}

.h-01 {
	height: 0.1rem;
}

.h-02 {
	height: 0.2rem;
}

/* ---------------------------
margin
--------------------------- */
.mx-auto{
	margin-left: auto;
	margin-right: auto;
}
.m-0 {
	margin: 0;
}
.mt-0 {
	margin-top: 0 !important;
}
.mt-02 {
	margin-top: 0.2rem;
}
.mt-05 {
	margin-top: 0.5rem;
}
.mt-10 {
	margin-top: 1.0rem;
}
.mt-11 {
	margin-top: 1.1rem;
}
.mt-16 {
	margin-top: 1.6rem;
}
.mt-15 {
	margin-top: 1.5rem;
}
.mt-19 {
	margin-top: 1.9rem;
}
.mt-20 {
	margin-top: 2rem;
}
.mt-25 {
	margin-top: 2.5rem;
}
.mt-30 {
	margin-top: 3rem;
}
.mt-35 {
	margin-top: 3.5rem;
}
.mt-40 {
        margin-top: 4rem;
}
.mt-50 {
        margin-top: 5rem;
}
.mt-55 {
        margin-top: 5.5rem;
}
.mt-60 {
        margin-top: 6rem;
}
.mt-70 {
        margin-top: 7rem;
}
.mt-80 {
        margin-top: 8rem;
}
.mt-90 {
        margin-top: 9rem;
}
.mt-120 {
        margin-top: 12rem;
}
.mb-0 {
	margin-bottom: 0 !important;
}
.mb-05 {
	margin-bottom: 0.5rem;
}
.mb-10 {
	margin-bottom: 1rem;
}
.mb-14 {
	margin-bottom: 1.4rem;
}
.mb-15 {
	margin-bottom: 1.5rem;
}
.mb-18 {
	margin-bottom: 1.8rem;
}
.mb-20 {
	margin-bottom: 2rem;
}
.mb-25 {
	margin-bottom: 2.5rem;
}
.mb-30 {
	margin-bottom: 3rem;
}
.mb-35 {
	margin-bottom: 3.5rem;
}
.mb-38 {
	margin-bottom: 3.8rem;
}
.mb-40 {
	margin-bottom: 4rem;
}
.mb-50 {
	margin-bottom: 5rem;
}
.mb-60 {
	margin-bottom: 6rem;
}
.ml-10 {
	margin-left: 1rem;
}
.ml-20 {
	margin-left: 2rem;
}
.ml-auto {
	margin-left: auto;
}
.mr-auto {
	margin-right: auto;
}
.m-lr-0 {
	margin-right: 0 !important;
	margin-left: 0 !important;
}
.my-15 {
	margin-right: 1.5rem;
	margin-left: 1.5rem;
}
.sp-mt-10 {
	margin-top: 1rem;
}
.pt-0 {
	padding-top: 0 !important;
}
.pt-10 {
	padding-top: 1rem;
}
.pt-25 {
	padding-top: 2.5rem;
}
.pt-50 {
	padding-top: 5rem;
}
.pb-0 {
	padding-bottom: 0 !important;
}
.pb-15 {
	padding-bottom: 1.5rem;
}
.pb-60 {
	padding-bottom: 6rem;
}
.mb-15-0 {
	margin-bottom: 1.5rem;
}
.mb-18-0 {
	margin-bottom: 1.8rem;
}
.py-10 {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.py-15 {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}
.px-5 {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}
.px-10 {
	padding-left: 1rem;
	padding-right: 1rem;
}
.px-15 {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.px-30-15{
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.pd-10{
	padding: 1.0rem;
}
.pd-20{
	padding: 2.0rem;
}
.pd-25{
	padding: 2.5rem;
}
.sp-mt-2 {
	margin-top: 2rem;
}

@media screen and (min-width: 780px) {
	.sp-mt-2 {
		margin-top: 0;
	}
	.sp-mt-10 {
		margin-top: 0;
	}
	.mt-10 {
		margin-top: 10px;
	}
	.mb-10 {
		margin-bottom: 10px;
	}
	.mb-15-0 {
		margin-bottom: 0;
	}
	.mb-18-0 {
		margin-bottom: 0;
	}
	.mb-20 {
		margin-bottom: 20px;
	}
	.mb-30 {
		margin-bottom: 30px;
	}
	.my-15 {
		margin-right: 30px;
		margin-left: 30px;
	}
	/*--only pc margin bottom--*/
	.pc-mb-0 {
		margin-bottom: 0 !important;
	}
	.pc-mb-20 {
		margin-bottom: 20px;
	}
    .pc-mb-30 {
		margin-bottom: 30px;
	}
    .pc-mb-40 {
		margin-bottom: 40px;
	}
	.pc-mb-50 {
		margin-bottom: 50px;
	}
	.pc-mb-55 {
		margin-bottom: 55px;
	}
	.pc-mb-70 {
		margin-bottom: 70px;
	}
	/*--only pc margin top--*/
	.pc-mt-0 {
		margin-top: 0 !important;
	}
	.pc-mt-05 {
		margin-top: 5px;
	}
	.pc-mt-10 {
		margin-top: 10px;
	}
	.pc-mt-20 {
		margin-top: 20px;
	}
	.pc-mt-30 {
		margin-top: 30px;
	}
	.pc-mt-40 {
		margin-top: 40px;
	}
	.pc-mt-60 {
		margin-top: 60px;
	}
	.pc-mt-70 {
		margin-top: 70px;
	}
	.pc-mt-100 {
		margin-top: 100px;
	}
	/*--only pc padding--*/
	.pc-pr-100 {
		padding-right: 100px;
	}
	.pc-pl-100 {
		padding-left: 100px;
	}
	.px-30-15{
		padding-left: 30px;
		padding-right: 30px;
	}
	.pc-px-15 {
		padding-left: 15px;
		padding-right: 15px;
	}
}

/* ---------------------------
flex
--------------------------- */
.box-flex {
	display: flex;
}
.flex-wrap {
	flex-wrap: wrap;
}
.box-flex-x-between-y-center {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.box-flex-xy-center {
	display: flex;
	justify-content: center;
	align-items: center;
}
.box-flex-x-center-y-end {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.box-flex-x-between-y-end {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.box-flex-x-around-y-center {
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.box-flex-y-center {
	display: flex;
	align-items: center;
}
.box-flex-y-baseline {
	display: flex;
	align-items: baseline;
}
.box-flex-col {
	display: flex;
	flex-direction: column;
}
.flex-grow-1 {
	flex-grow: 1;
}
.flex-shrink-0 {
	flex-shrink: 0;
}
@media screen and (min-width: 780px) {
	.pc-flex-wrap {
		flex-wrap: wrap;
	}
	.pc-order-1 {
		order: 1;
	}

	.pc-box-flex {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 30px 0 0;
	}
}

/* ---------------------------
gap
--------------------------- */
.is-sp-gap-20 {
	gap: 2rem;
}
.is-sp-gap-50 {
	gap: 5rem;
}
.gap-05 {
	gap: 0.5rem;
}
.gap-10 {
	gap: 1rem;
}
.gap-15 {
	gap: 1.5rem;
}
.gap-20 {
	gap: 2rem;
}
@media screen and (min-width: 780px) {
	.is-sp-gap-20 {
		gap: 0;
	}
	.is-sp-gap-50 {
		gap: 0;
	}
}


/* ---------------------------
text-indent
--------------------------- */
.indent-1{
	padding-left: 1em;
	text-indent: -1em;
}

.indent-2{
	padding-left: 2em;
	text-indent: -2em;
}

.indent-3{
	padding-left: 3em;
	text-indent: -3em;
}


/* ---------------------------
breadcrumb
--------------------------- */
.breadcrumb {
	display: inline-block;
	font-size: 1rem;
	padding-top: 0.7rem;
	padding-bottom: 0.7rem;
}
.breadcrumb-link,
.breadcrumb-link-home {
	position: relative;
	color: #939393;
	text-decoration: none;
}
a.breadcrumb-link:hover,
.breadcrumb-link-home:hover {
	cursor: pointer;
	opacity: 0.7;
}
.breadcrumb-link::before {
	content: "❯";
	color: #939393;
	margin: 0 1rem;
}
.link-home {
	display: inline;
}
.link-separator {
	display: inline;
}
.breadcrumb-current {
	color: #222;
}
@media screen and (min-width: 780px) {
	.breadcrumb {
		font-size: 12px;
		padding: 20px 0;
	}
}

@media screen and (min-width: 980px) {
	.breadcrumb {
		padding-left: 0;
	}
}

/* ---------------------------
title
--------------------------- */

.page-title{
	font-size: 2.2rem;
	font-weight: 700;
	text-align: center;
	padding: 0 2rem;
	padding-top: 5rem;
	padding-bottom: 5.8rem;
	background-color: #F2F8F5;
	margin-bottom: 4rem;
}

.page-title.is-corp{
	background-color: #FCFAF5;
}

.page-title-border{
	position: relative;
}

.page-title-border::after{
	position: absolute;
	content: "";
	width: 4rem;
	height: 0.3rem;
	bottom: -1.0rem;
	left: 50%;
	transform: translateX(-50%);
	background-color: #006F3F;
}

.page-title-border.is-25per::after{
	position: absolute;
	content: "";
	width: 4rem;
	height: 0.3rem;
	bottom: -1.0rem;
	left: 25%;
	transform: translateX(-50%);
	background-color: #006F3F;
}

.is-corp .page-title-border::after{
	background-color: #C20E45
}

.section-title{
	font-size: 2rem;
	font-weight: 700;
	padding-left: 2.2rem;
	position: relative;
	margin-bottom: 1.5rem;
	margin-top: 6rem;
}

.section-title::before{
	position: absolute;
	content: "";
	width: 1.5rem;
	height: 0.4rem;
	left: 0;
	top: 1.5rem;
	background-color: #006F3F;
}

.section-title.is-tab{
	font-size: 2rem;
	font-weight: 700;
	padding-left: 2.2rem;
	position: relative;
	margin-bottom: 1.5rem;
	margin-top: 0;
}

.section-title.is-corp::before{
	background-color: #C20E45
}

.section-title.is-long{
    letter-spacing: -0.02em;
}

.section-sub-title{
	font-size: 1.6rem;
	font-weight: 600;
	border-bottom: 0.2rem solid #006F3F;
	padding: 0.4rem 0.5rem 0.4rem 0.2rem;
	display: block;
	box-sizing: border-box;
	margin-bottom: 1.5rem;
	margin-top: 4rem;
}

.section-sub-title.is-corp{
	border-bottom: 0.2rem solid #C20E45;
}

@media screen and (min-width: 780px) {
	.page-title {
		font-size: 36px;
		padding-top: 72px;
		padding-bottom: 86px;
		margin-bottom: 50px;
	}

	.page-title-deco::after{
		width: 50px;
		height: 4px;
		bottom: -14px;
	}

	.section-title{
		font-size: 32px;
		padding-left: 35px;
		margin-bottom: 20px;
		margin-top: 100px;
	}

	.section-title.is-tab{
		font-size: 32px;
		padding-left: 35px;
		margin-bottom: 20px;
		margin-top: 30px;
	}

	.section-title::before{
		width: 20px;
		height: 5px;
		top: 50%;
		transform: translateY(-50%);
	}

	.section-sub-title{
		font-size: 20px;
		margin-bottom: 20px;
	}

	.page-title-border.is-25per::after{
		position: absolute;
		content: "";
		width: 4rem;
		height: 0.3rem;
		bottom: -1.0rem;
		left: 50%;
		transform: translateX(-50%);
		background-color: #006F3F;
	}
}


/* ---------------------------
button
--------------------------- */
a.is-arrow,
a.is-arrow-pink {
	position: relative;
	padding-right: 2.0rem;
}

.is-arrow::after{
	position: absolute;
	content: "";
	border-top: 0.1rem solid #006F3F;
	border-right: 0.1rem solid #006F3F;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.2s;
	top: 52%;
	right: 1.1rem;
	width: 0.6rem;
	height: 0.6rem;
}

.is-arrow-pink::after{
	position: absolute;
	content: "";
	border-top: 0.1rem solid #C20E45;
	border-right: 0.1rem solid #C20E45;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.2s;
	top: 52%;
	right: 1.1rem;
	width: 0.6rem;
	height: 0.6rem;
}

.is-arrow:hover::after{
	right: 0.8rem;
}

.green-btn{
	display: block;
	width: 100%;
	font-size: 1.4rem;
	border-radius: 3rem;
	background: #006F3F;
	color: #fff;
	padding: 1.5rem;
	text-align: center;
	font-weight: 600;
	border: none;
}

.orange-btn{
	display: block;
	width: 100%;
	font-size: 1.4rem;
	border-radius: 3rem;
	background: #E76F51;
	color: #fff;
	padding: 1.5rem;
	text-align: center;
	font-weight: 600;
}

.green-white-btn{
	display: block;
	width: 100%;
	font-size: 1.4rem;
	border-radius: 3rem;
	background: #fff;
	color: #006F3F;
	border: 1px solid #006F3F;
	padding: 1.5rem;
	text-align: center;
	font-weight: 600;
}

.green-white-btn{
	display: block;
	width: 100%;
	font-size: 1.4rem;
	border-radius: 3rem;
	background: #fff;
	color: #006F3F;
	padding: 1.5rem;
	text-align: center;
	font-weight: 600;
	border:0.1rem solid #006F3F;
}

.pink-btn{
	display: block;
	width: 100%;
	font-size: 1.4rem;
	border-radius: 3rem;
	background: #C20E45;
	color: #fff;
	padding: 1.5rem;
	text-align: center;
	font-weight: 600;
}

.pink-white-btn{
	display: block;
	width: 100%;
	font-size: 1.4rem;
	border-radius: 3rem;
	background: #fff;
	border:0.1rem solid #C20E45;
	color: #C20E45;
	padding: 1.5rem;
	text-align: center;
	font-weight: 600;
}

.pink-white-btn.is-long{
	font-size: 1.2rem;
}

.green-btn:hover{
	background-color: #4C9A78;
	cursor: pointer;
}

.orange-btn:hover{
	background-color: #F2A591;
}

.green-white-btn:hover,
.pink-btn:hover,
.pink-white-btn:hover{
	opacity: 0.7;
}

.green-btn .is-arrow,
.orange-btn .is-arrow,
.green-white-btn .is-arrow,
.pink-btn .is-arrow,
.pink-white-btn .is-arrow,
.green-white-btn .is-arrow{
	position: relative;
	padding-right: 0;
}

.green-btn .is-arrow::after,
.orange-btn .is-arrow::after,
.pink-btn .is-arrow::after{
	position: absolute;
	display: inline-block;
	border-top: 0.2rem solid #fff;
	border-right: 0.2rem solid #fff;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.2s;
	top: 55%;
	right: -2rem;
	width: 0.8rem;
	height: 0.8rem;
}

.green-white-btn .is-arrow::after{
	position: absolute;
	display: inline-block;
	border-top: 0.2rem solid #006F3F;
	border-right: 0.2rem solid #006F3F;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.2s;
	top: 55%;
	right: -2rem;
	width: 0.8rem;
	height: 0.8rem;
}

.pink-white-btn .is-arrow::after{
	position: absolute;
	display: inline-block;
	border-top: 0.2rem solid #C20E45;
	border-right: 0.2rem solid #C20E45;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.2s;
	top: 55%;
	right: -2rem;
	width: 0.8rem;
	height: 0.8rem;
}

.green-white-btn .is-arrow::after{
	position: absolute;
	display: inline-block;
	border-top: 0.2rem solid #006F3F;
	border-right: 0.2rem solid #006F3F;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.2s;
	top: 55%;
	right: -2rem;
	width: 0.8rem;
	height: 0.8rem;
}

.green-btn:hover .is-arrow::after,
.orange-btn:hover .is-arrow::after,
.green-white-btn:hover .is-arrow::after,
.pink-btn:hover .is-arrow::after,
.pink-white-btn:hover .is-arrow::after{
	right: -2.5rem;
}

.is-kojin{
	background: #006F3F url(../img/common/icon_kojin_white.svg)no-repeat left 12rem center / contain;
	background-size: 1.6rem 1.6rem;
	padding: 1.5rem 1.5rem 1.5rem 3rem;
}

@media screen and (min-width: 780px) {
	.green-btn,
	.orange-btn,
	.pink-btn,
	.pink-white-btn{
		font-size: 16px;
	}

	.pink-white-btn.is-long{
		font-size: 14px;
	}

	.green-btn .is-arrow::after,
	.orange-btn .is-arrow::after,
	.pink-btn .is-arrow::after,
	.pink-white-btn .is-arrow::after{
		width: 10px;
		height: 10px;
	}

	.is-kojin{
		background: #006F3F url(../img/common/icon_kojin_white.svg)no-repeat left 95px center / contain;
		background-size: 18px 18px;
		padding: 15px 15px 15px 36px;
	}
}


/* ---------------------------
note
--------------------------- */
.note-list{
	padding-left: 2rem;
}

.note-item{
	list-style: disc;
	margin-bottom: 1rem;
}

.note-item.is-num{
	list-style: decimal;
}

.note-item.is-num::marker{
	font-weight: 700;
}

@media screen and (min-width: 780px) {
	.note-list{
		padding-left: 25px;
	}
}

/* ---------------------------
step-flow
--------------------------- */

.step-flow{
	margin: 2.4rem 0 0 0;
	position: relative;
	z-index: 0;
}

.step-flow::before{
	position: absolute;
	content: "";
	width: 3rem;
	height: 100%;
	background: #F2F8F5;
	z-index: -1;
	top: 0;
	left: 3rem;
}

.step-flow.is-pink{
	margin: 2.4rem 0 0 0;
	position: relative;
	z-index: 0;
}

.step-flow.is-pink::before{
	position: absolute;
	content: "";
	width: 3rem;
	height: 100%;
	background: #FCFAF5;
	z-index: -1;
	top: 0;
	left: 3rem;
}

.step-flow-list{
	background-color: #fff;
	border: 1px solid #D6D6D6;
	border-radius: 3px;
	width: 100%;
	margin-bottom: 3rem;
	padding: 1.5rem;
}

.step-flow-list.is-accordion{
	padding: 0;
}

.step-flow.no-line::before{
	display: none;
}

.step-flow::before{
	position: absolute;
	content: "";
	width: 3rem;
	height: 100%;
	background: #F2F8F5;
	z-index: -1;
	top: 0;
	left: 3rem;
}

.step-flow-list{
	background-color: #fff;
	border: 1px solid #D6D6D6;
	border-radius: 3px;
	width: 100%;
	margin-bottom: 3rem;
	padding: 1.5rem;
}

.step-flow-list-flex{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.step-flow-list-flex.is-py{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding: 0 1.5rem 0 !important;
}

.step-flow-list-flex.is-no-warp{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
}

.is-accordion .step-flow-list-flex{
	padding: 1.5rem;
}

.step-flow-list-full{
	display: block;
	width: 100%;
}

.step-flow-list-left{
	display: block;
	width: 81%;
}

.step-flow-list-left.is-2col {
	width: 100%;
}

.step-flow-list-left-left{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.step-flow-list-left-left.is-no-warp{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.step-flow-list-left-left img{
	width: 2rem;
	height: 3rem;
}

.step-flow-list-left-ttl{
	font-size: 1.6rem;
	font-weight: 700;
	color: #006F3F;
}
.step-flow-list-left-ttl.is-corp{
	font-size: 1.8rem;
	font-weight: 700;
	color: #C20E45;
}

.step-flow-list-left-ttl.is-text-sm{
	font-size: 1.4rem;
	font-weight: 700;
	color: #006F3F;
}

.middle-button-area{
	margin-top: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
}

.middle-button-area.is-plpb{
	margin-top: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
	padding-left: 1.5rem;
	padding-bottom: 2rem;
}

.middle-button{
	font-size: 1.2rem;
	border-radius: 2px;
	border: 1px solid #006F3F;
	color: #006F3F;
	padding: 0.5rem 1rem;
	display: inline-block;
}

.middle-button.is-corp{
	font-size: 1.2rem;
	border-radius: 2px;
	border: 1px solid #C20E45;
	color: #C20E45;
	display: inline-block;
}

.middle-button:hover{
	background-color: #F2F8F5;
}

.middle-button.is-corp:hover{
	background-color: #FCFAF5;
}

.step-flow-list-right{
	max-width: 19%;
}

@media screen and (min-width: 780px) {
	.step-flow{
		margin: 40px auto 0;
	}

	.tab-panel .step-flow{
		margin-top: 3rem;
		padding: 0 1.5rem;
	}

	.step-flow-list{
		padding: 30px 50px 30px 30px;
		margin-bottom: 4rem;
	}

	.is-accordion .step-flow-list-flex{
		padding: 30px;
	}

	.step-flow-list-flex.is-py{
		padding: 0 30px 0 !important;
	}

	.step-flow-list.is-accordion{
		padding: 0;
	}

	.step-flow-list-left{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-start;
		gap: 55px;
	}

	.step-flow-list-left-left{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		margin-bottom: 0;
	}

	.step-flow-list-left-ttl{
		margin-bottom: 10px;
		font-size: 20px;
	}

	.step-flow-list-left-ttl.is-corp{
		font-size: 20px;
		margin-bottom: 0;
	}

	.step-flow-list-left-ttl.is-mb-0{
		margin-bottom: 0;
		font-size: 20px;
	}

	.middle-button-area{
		margin-top: 20px;
		gap: 20px;
	}

	.middle-button-area.is-plpb{
		padding-left: 30px;
		padding-bottom: 30px;
		margin-top: 15px;
	}

	.middle-button{
		font-size: 14px;
	}

	.step-flow-list-left-left img{
		width: 42px;
		height: 62px;
	}

	.step-flow-list-left-right{
		width: calc(100% - 100px);
	}
	.step-flow-list-left-right.is-rigth{
		margin: 0 0 0 auto;
	}

	.middle-button.is-corp{
		font-size: 14px;
		border-radius: 2px;
		border: 1px solid #C20E45;
		color: #C20E45;
		display: inline-block;
	}
}


/* ---------------------------
step-flow-list-box
--------------------------- */
.step-flow-list-box{
	display: flex;
	flex-wrap: wrap;
}

.step-flow-list-box.is-border.is-center{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 1.5rem;
}

.step-flow-list-box-step{
	display: flex;
	align-items: center;
	gap: 1.7rem;
}

.step-flow-list-box-step img{
	width: 2rem;
	height: auto;
}

.step-flow-list-box-img{
	width: 100%;
}

@media screen and (min-width: 780px) {
	.step-flow-list-box{
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.step-flow-list-box.is-border{
		display: flex;
		align-items: center;
		justify-content: space-between;
		border: 1px solid #D6D6D6;
		padding: 30px;
		margin-top: 30px;
	}

	.step-flow-list-box.is-start{
		align-items: flex-start;
	}

	.step-flow-list-box.is-border.is-first{
		display: flex;
		align-items: center;
		justify-content: space-between;
		border: 1px solid #D6D6D6;
		padding: 30px;
		margin-top: 20px;
	}

	.step-flow-list-box.is-border.is-center{
		justify-content: space-between;
		padding: 30px;
	}

	.step-flow-list-box-step{
		width: 4.56%;
		gap: 0;
	}

	.step-flow-list-box-step img{
		width: 100%;
	}

	.step-flow-list-box-text.is-w-90{
		width: 90%;
	}

	.step-flow-list-box-text{
		width: 51.52%;
	}

	.step-flow-list-box-text.is-long{
		width: 60%;
	}

	.step-flow-list-box-text.is-long-64per{
		width: 64%;
	}

	.step-flow-list-box-text.is-long.w-full{
		width: 100%;
	}

	.step-flow-list-box-text.w-full{
		width: 100%;
	}

	.step-flow-list-box-img{
		width: 30.97%;
	}
}


/*-----spのみ------*/
@media screen and (max-width: 780.1px) {
	.step-flow-list-box-step{
		order: 1;
	}

	.step-flow-list-box-text{
		order: 3;
	}
	.step-flow-list-box-text.is-long{
		order: 3;
	}

	.step-flow-list-box-img{
		order: 2;
	}
}



/* ---------------------------
tab
--------------------------- */
.tab-item:focus,
.tab-item:focus-visible {
	outline: none;
}

/* green tab */
.tab-list {
	display: flex;
	justify-content: space-between;
	margin-top: 2rem;
}

.tab-item {
	border-radius: 0.5rem 0.5rem 0 0;
	background-color: #7FB69E;
	padding: 0.5em;
	cursor: pointer;
	color: #fff;
	text-align: center;
	font-size: 1.2rem;
	font-weight: 500;
	width: calc(50% - 0.1rem);
}

.tab-item.w-full {
	width: 100%;
}

.tab-item-large{
	font-size: 1.6rem;
	font-weight: 600;
}

.tab-content {
	background-color: #fff;
	border: 0.1rem solid #006F3F;
	border-radius: 0 0 0.3rem 0.3rem;
}

.tab-content.is-pink {
	background-color: #fff;
	border: 0.1rem solid #C20E45;
	border-radius: 0 0 0.3rem 0.3rem;
}

.tab-panel {
	display: none;
}

.tab-item.active {
	background-color: #006F3F;
}

.tab-panel.active {
	display: block;
}

@media screen and (min-width: 780px) {
	.tab-list {
		margin-top: 40px;
	}

	.tab-item {
		font-size: 16px;
		width: calc(50% - 5px);
	}

	.tab-item-large{
		font-size: 20px;
	}
}

/* pink tab */
.tab-item.is-pink {
	border-radius: 0.5rem 0.5rem 0 0;
	background-color: #F3D7D7;
	padding: 0.5em;
	cursor: pointer;
	color: #fff;
	text-align: center;
	align-content: center;
	font-size: 1.2rem;
	font-weight: 500;
	width: calc(50% - 0.1rem);
}

.tab-item-large{
	font-size: 1.6rem;
	font-weight: 600;
}

.tab-content {
	background-color: #fff;
	border: 0.1rem solid #006F3F;
	border-radius: 0 0 0.3rem 0.3rem;
}

.tab-panel.is-pink {
	display: none;
}

.tab-item.is-pink.active {
	background-color: #C20E45;
}

.tab-panel-pink.active {
	display: block;
}

@media screen and (min-width: 780px) {
	.tab-list {
		margin-top: 40px;
	}

	.tab-item.is-pink {
		font-size: 16px;
		width: calc(50% - 5px);
	}

	.tab-item-large{
		font-size: 20px;
	}
}

/* ---------------------------
caution
--------------------------- */
.caution-area{
	border-radius: 0.5rem;
	border: 0.1rem solid #D60F0F;
	margin-top: 2.5rem;
}

.caution-title{
	padding: 0.7rem 0;
	background-color: #D60F0F;
}

@media screen and (min-width: 780px) {
	.caution-area{
		margin-top: 30px;
		margin-left: 15px;
		margin-right: 15px;
	}
}


/* ---------------------------
pick up
--------------------------- */
.pick-area{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
}

.pick-left,
.pick-right{
	width: 1.5rem;
	height: auto;
}

.pick-center{
	font-size: 1.6rem;
	font-weight: 700;
	color: #006F3F;
}

@media screen and (min-width: 780px) {

	.pick-left,
	.pick-right{
		width: 22px;
		height: auto;
	}

	.pick-center{
		font-size: 24px;
	}
}

/* ---------------------------
in-page-links
--------------------------- */

.in-page-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 6rem;
    gap: 1rem;
}
@media screen and (min-width:780px) {
    .in-page-links {
        margin-bottom: 10rem;
        justify-content: left;
        gap: 3rem;
    }
}

.in-page-links-text {
    position: relative;
    font-size: 1.2rem;
    padding: 0.5rem 0.5rem 0.5rem 0.2rem;
    border-bottom: 1px solid #939393;
    min-width: 46%;
}

@media screen and (min-width: 780px) {
    .in-page-links-text {
        font-size: 1.4rem;
        padding: 1rem;
        gap: 50px;
        min-width: 30%;
    }
}

.in-page-links-text-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.is-links-arrow {
    width: 1rem;
    height: 1rem;
    position: relative;
	margin-left: 0.2rem;
}

.is-links-arrow::after{
	position: absolute;
	content: "";
	border-top: 0.1rem solid #000000;
	border-right: 0.1rem solid #000000;
	transform: translateY(-50%) rotate(135deg);
	transition: transform 0.2s ease;
	top: 39%;
	right: 4%;
	width: 0.6rem;
	height: 0.6rem;
}
.accordion-list-arrow {
	display: block;
    width: 100%;
    height: auto;
    position: relative;
	margin-left: 0.2rem;
}

.accordion-list-arrow::after{
	position: absolute;
	content: "";
	border-top: 0.1rem solid #006F3F;
	border-right: 0.1rem solid #006F3F;
	transform: translateY(-50%) rotate(135deg);
	transition: transform 0.2s ease;
	top: 39%;
	right: 47%;
	width: 2.5rem;
	height: 2.5rem;
}

@media screen and (min-width: 780px) {
	.is-links-arrow {
		width: 10px;
		height: 10px;
		margin-left: 5px;
	}

	.is-links-arrow::after {
		width: 8px;
		height: 8px;
	}

	.in-page-links-text:hover {
		opacity: 0.7;
	}

	.in-page-links-text:hover .is-links-arrow::after{
		transform: translateY(calc(-50% + 4px)) rotate(135deg);
	}
}

/* ---------------------------
dedicated-counter 
--------------------------- */

.dedicated-counter {
	background-color: #F2F8F5;
	border-radius: 3px;
	text-align: center;
	border: 1px solid #006F3F;
}

.dedicated-counter.is-w-60per {
	background-color: #F2F8F5;
	border-radius: 3px;
	text-align: center;
	border: 1px solid #006F3F;
}

.dedicated-counter-title {
	font-size: 1.2rem;
	text-align: center;
	color: #FFFFFF;
	background-color: #006F3F;
	/* height: 20%; */
	padding: 0.5rem;
	border-radius: 3px 3px 0 0;
}

.dedicated-counter-box {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	padding: 1.3rem 0;
	
}

.dedicated-counter-icon {
	width: 2rem;
	height: 2rem;
	padding-top: 3px;
}

.dedicated-counter-number {
	font-size: 2.4rem;
	font-weight: 600;
	color: #006F3F;
}

@media screen and (min-width:780px) {
	.dedicated-counter.is-w-60per {
		width: 60%;
	}
	.dedicated-counter-title {
		font-size: 14px;
		padding: 1rem;
	}
	.dedicated-counter-icon {
		width: 2.5rem;
		height: 2.5rem;
	}
	
	.dedicated-counter-number {
		font-size: 26px;
		font-weight: 600;
		color: #006F3F;
	}
	
}

/* ---------------------------
top message
--------------------------- */

.top-message {
	display: block;
	text-align: center;
	border: 1px solid #006F3F;
	border-radius: 3px;
	padding: 1rem;
	margin-bottom: 2rem;
}

@media screen and (min-width:780px) {
	.top-message {
		margin-bottom: 6rem;
		padding: 2rem;
		border: 2px solid #006F3F;
	}
}

/* ---------------------------
test-img
--------------------------- */
.sample-img {
	display: block;
	width: 100%;
	height: auto;
	margin-top: 2rem;
}

@media screen and (min-width:780px) {
	.sample-img {
		margin-top: 3rem;
	}
	
}


/* ---------------------------
table
--------------------------- */
.large-table {
	width: 100%;
	border: 1px solid #D6D6D6;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 3px;
	overflow: hidden;
	margin: 0 1.5rem;
}

.table-2col {
	width: 100%;
	border: 1px solid #D6D6D6;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 3px;
	overflow: hidden;
}

.th {
	background-color: #F2F8F5;
	color: #006F3F;
	border-bottom: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	padding: 0.5rem;
	font-size: 1.2rem;
	font-weight: 700;
}

.td {
	background-color: #ffffff;
	border-bottom: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	padding: 0.5rem;
}

.large-table-th {
	background-color: #F2F8F5;
	color: #006F3F;
	border-bottom: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	padding: 1rem;
	font-size: 1.2rem;
	font-weight: 700;
}

.large-table-td {
	background-color: #ffffff;
	border-bottom: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	padding: 1rem;
}

.th-2col {
	background-color: #F2F8F5;
	color: #006F3F;
	border-bottom: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	padding: 1rem;
	font-size: 1.2rem;
	font-weight: 700;
}

.td-2col {
	background-color: #ffffff;
	border-bottom: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	padding: 1.5rem;
}

.th-2col.is-black{
	background-color: #F5F5F5;
	color: #1A1A1A;
}

.td-2col.is-dashed {
	border-bottom: 1px dashed #D6D6D6;
}

.b-bottom-dashed {
	border-bottom: 1px dashed #D6D6D6 !important;
}


.is-text-nowrap {
	white-space: nowrap;
}

th:last-child,td:last-child {
	border-right: none;
}

tr:last-child th,tr:last-child td {
	border-bottom: none;
}

.highlight {
	display: block;
	font-weight: bold;
	/* font-size: 1.2rem; */
}

.note {
	display: block;
	font-size: 1.2rem;
}

.note-bold {
	font-size: 14px;
	font-weight: 700;
}

.note-sm {
	display: block;
	align-items: left;
	font-size: 1.0rem;
	margin-top: 1rem;
}

.th-green {
	background-color: #006F3F;
	color: #ffffff;
}

.table-area {
	overflow-x: scroll;
	width: 100%;
	height: 100%;
	scrollbar-width: none;
	margin-top: 2rem;
}

.large-table-area {
		overflow-x: auto;
	}

@media screen and (min-width:780px) {
	.large-table {
		min-width: auto;
        width: 100%;
        table-layout: fixed; /* 列の幅を安定させる */
		margin: 0;
    }
	.table-2col {
		min-width: auto;
        width: 100%;
        table-layout: fixed; /* 列の幅を安定させる */
    }

	.table-area {
		margin-top: 3rem;
		max-width: 1010px;
		padding: 0 15px;
	}

	.large-table-area {
		margin-top: 3rem;
		max-width: 1010px;
		padding: 0 15px;
		overflow: auto;
		margin-right: auto;
        margin-left: auto;
	}

	.pc-text-wrap {
		white-space: normal;
	}

	.th {
		font-size: 14px;
	}
	.large-table-th {
		font-size: 14px;
	}

	.large-table-td {
		padding: 1rem;
	}

	.note {
		font-size: 14px;
	}
	
	.note-bold {
		font-size: 16px;
	}

	.note-sm {
		font-size: 12px;
	}

	.th-2col {
		font-size: 14px;
	}

	.td-2col {
		padding: 20px;
	}
}

/* ---------------------------
case list
--------------------------- */

.case-list {
	border: 1px solid #D6D6D6;
	border-radius: 3px;
	padding: 1.5rem;
	margin-top: 1.5rem;
}

.case-item {
	border-bottom: 1px solid #D6D6D6;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}

.case-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.case-item:first-child {
	padding-top: 0;
}

.case-text-group {
	margin-top: 3rem;
	margin-bottom: 6rem;
}

@media screen and (min-width:780px) {
	.case-text-group {
		margin-top: 4rem;
		margin-bottom: 10rem;
	}
	
	.case-list {
		margin-top: 2rem;
	}

	.case-text-group {
		margin-top: 4rem;
		margin-bottom:10rem;
	}
}


/* ---------------------------
accordion
--------------------------- */
.js-accordion--close{
	display: none;
}
.accordion-box{
	height:0;
	overflow:hidden;
	transition:.3s ease;
}
.js-accordion{
	position: relative;
	padding: 0 3.5rem 0 0;
	background: url(../img/common/circle.svg)no-repeat right 1.5rem center / contain;
	background-size: 2.8rem;
}
.js-accordion:hover{
	cursor: pointer;
}
.js-accordion::before{
	content: "";
	width: 0.2rem;
	height: 1.2rem;
	background: #fff;
	position: absolute;
	right: 2.8rem;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .3s ease;
}
.js-accordion::after{
	content: "";
	width: 1.2rem;
	height: 0.2rem;
	background: #fff;
	position: absolute;
	right: 2.3rem;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: .3s ease;
}
.js-accordion.is-accordion--open::before{
	transform: rotate(270deg);
}
.js-accordion.is-accordion--open + .accordion-box{
	height: auto;
	opacity: 1;
}

.js-accordion .step-flow-list-left{
	width: 95%;
}

.js-accordion .step-flow-list-left-left{
	margin-bottom: 0;
	flex-wrap: nowrap;
}

.js-accordion .step-flow-list-left-ttl{
	padding-top: 0.5rem;
	margin-bottom: 0;
}

.accordion-list-1-item{
	padding: 2rem 0 0.5rem;
	margin-left: 1.5rem;
	margin-right: 1.5rem;
	border-bottom: 1px solid #D6D6D6;
}

.accordion-list-1-item.is-row.is-none-border{
	flex-direction: row-reverse;
	border-bottom: none;
}

.accordion-list-1-item.is-none-border {
	padding: 2rem 0 1.5rem;
	border-bottom: none;
}

.accordion-list-1-item:first-child{
	padding-top: 0;
}

.accordion-list-1-imgarea{
	width: 100%;
}

.accordion-list-1-textarea{
	width: 100%;
}

.accordion-note-area{
	padding: 1.5rem;
}

.accordion-list-2{
	padding: 0 1.5rem;
}

.accordion-list-2.is-ev{
	padding: 0;
	margin-top: 2rem;
}

.accordion-list-2.is-row{
	padding: 0 1.5rem;
}

.accordion-list-2.is-top-border{
	padding: 2rem 1.5rem 0;
	border-top: 1px solid #D6D6D6;
}

.accordion-list-2-box{
	padding: 2rem;
}

.accordion-list-2-item{
	margin-bottom: 2rem;
	border-radius: 0.3rem;
}

.accordion-list-2-item.is-none-flexarrow{
	margin-bottom: 2rem;
	border-radius: 0.3rem;
}

.accordion-list-2-item:last-child{
	margin-bottom: 0.5rem;
}

.accordion-list-2-item.is-flexarrow{
	margin-bottom: 5.5rem;
	position: relative;
}

.accordion-list-2-item.is-flexarrow::after{
	content: "";
	position: absolute;
	width: 4rem;
	height: 1.5rem;
	background: url(../img/common/arrow.svg) no-repeat center / contain;
	bottom: -3.8rem;
	left: 50%;
	transform: translateX(-50%);
}
.accordion-list-2-item.is-flexarrow-2row{
	margin-bottom: 5.5rem;
	position: relative;
}

.accordion-list-2-item.is-flexarrow-2row::after{
	content: "";
	position: absolute;
	width: 4rem;
	height: 1.5rem;
	background: url(../img/common/arrow.svg) no-repeat center / contain;
	bottom: -3.8rem;
	left: 50%;
	transform: translateX(-50%);
}

.accordion-list-2-item.is-flexarrow:last-child{
	margin-bottom: 2rem;
}

.accordion-list-2-item.is-flexarrow:last-child::after{
	background: none;
	bottom: 0;
}

@media screen and (min-width: 780px) {
	.js-accordion{
		padding: 0 45px 0 0;
		background: url(../img/common/circle.svg) no-repeat right 30px center / contain;
		background-size: 40px;
	}
	.js-accordion::before{
		height: 2.0rem;
		right: 4.9rem;
	}
	.js-accordion::after{
		width: 2.0rem;
        right: 4.0rem;
	}
	.step-flow-list-left-left{
		gap: 40px;
		margin-bottom: 10px;
	}

	.accordion-list-1-item{
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: space-between;
		padding: 30px 0;
		margin-left: 30px;
		margin-right: 30px;
		border-bottom: 1px solid #D6D6D6;
	}

	.accordion-list-1-item.is-none-border.is-end {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: end;
		padding: 30px 0;
		margin-left: 30px;
		margin-right: 30px;
		border-bottom: none;
	}

	.accordion-list-1-item:first-child{
		padding-top: 0;
	}

	.accordion-list-1-imgarea{
		width: 30.97%;
	}

	.accordion-list-1-textarea{
		width: 64.67%;
	}

	.accordion-note-area{
		padding: 30px;
	}

	.accordion-list-2{
		display: flex;
		justify-content: space-between;
		padding: 0 30px;
	}

	.accordion-list-2.is-ev{
		padding: 0;
		margin-top: 40px;
	}

	.accordion-list-2.is-start{
		display: flex;
		justify-content: flex-start;
		padding: 0 30px;
	}

	.accordion-list-2.is-row{
		display: block;
		padding: 0 30px;
	}

	.accordion-list-2.is-top-border{
		padding: 3rem 3rem 0;
		border-top: 1px solid #D6D6D6;
	}

	.accordion-list-2-item{
		margin-bottom: 0;
		width: 48.91%;
	}

	.accordion-list-2-item.is-w-full{
		width: 100%;
	}
	.accordion-list-2-item.is-auto{
		width: auto;
	}

	.accordion-list-2-item.is-none-flexarrow{
		/* margin-bottom: 5.5rem; */
		width: 45%;
	}

	.accordion-list-2-item.is-flexarrow{
		width: 30.43%;
	}

	.accordion-list-2-item.is-flexarrow-2row{
		margin-bottom: 0.5rem;
		width: 45%;
	}

	.accordion-list-2-item.is-flexarrow{
		margin-bottom: 30px;
	}

	.accordion-list-2-item.is-flexarrow::after{
		width: 15px;
		height: 32px;
		background: url(../img/common/arrow2.svg) no-repeat center / contain;
		bottom: auto;
		top: 50%;
		left: auto;
		right: -10%;
		transform: translateY(-50%);
	}

	.accordion-list-2-item.is-flexarrow-2row::after{
		width: 15px;
		height: 32px;
		background: url(../img/common/arrow2.svg) no-repeat center / contain;
		bottom: auto;
		top: 50%;
		left: auto;
		right: -13%;
		transform: translateY(-50%);
	}

	.accordion-list-2-item.is-flexarrow:last-child{
		margin-bottom: 30px;
	}

	.accordion-list-2-item.is-flexarrow:last-child::after{
		background: none;
		bottom: 0;
	}

	.accordion-list-2-box.is-flex{
		padding: 2rem;
		display: flex;
		flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        padding: 30px 0;
        margin-left: 30px;
        margin-right: 30px;
	}

}
/* ---------------------------
images case
--------------------------- */
@media screen and (min-width: 780px) {
	.pc-image-case{
	border: 1px solid #D6D6D6;
    border-radius: 3px;
    padding: 1.5rem;
}

}