@charset "utf-8";
/* CSS Document */

/* header =====================================================*/
#header {
	padding-top: 120px;
	width: 100%;
	background-color: var(--main-color1);
}

@media screen and (max-width: 640px) {
	#header {
		padding-top: calc(18.4vw * 18.179 / 71.753 + 5.867vw + 5.333vw + 1px);
	}
}

/* ---------------------------------------------------------------
	reset
--------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: inherit;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-print-color-adjust: exact;
	-webkit-text-size-adjust: 100%;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

img {
	vertical-align: top;
	max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
th,
input,
textarea,
select {
	font-family: inherit;
	font-size: 100%;
	font-weight: normal;
	outline: none;
}

input,
select {
	line-height: 1;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #999;
	padding-top: 0.2em;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
	color: #999;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
	color: #999;
}

@media screen and (max-width: 640px) {

	input::-webkit-input-placeholder,
	textarea::-webkit-input-placeholder {
		font-size: 1.2rem;
	}

	input::-ms-input-placeholder,
	textarea::-ms-input-placeholder {
		font-size: 1.2rem;
	}

	input::-moz-placeholder,
	textarea::-moz-placeholder {
		font-size: 1.2rem;
	}
}

@keyframes onAutoFillStart {
	from {}

	to {}
}

input:-webkit-autofill {
	animation-name: onAutoFillStart;
	transition: background-color 50000s ease-in-out 0s;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing=&quot;0&quot;' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

a {
	color: inherit;
	text-decoration: none;
	/*-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; user-select: none;*/
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}

a:hover {
	text-decoration: none;
}

html {
	overflow-y: scroll;
}

sub {
	vertical-align: 0;
	line-height: 1.0em;
}

sup {
	vertical-align: 0.3em;
	line-height: 1.0em;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* ---------------------------------------------------------------
	set
--------------------------------------------------------------- */
html {
	font-size: 62.5%;
}



/*
@font-face {
	font-family: 'SourceHanSansJP';
	font-style: normal;
	font-weight: normal;
	src: url(font/SourceHanSansJP-Regular.otf) format('opentype');
}


@font-face {
	font-family: 'SourceHanSansJP';
	font-style: normal;
	font-weight: bold;
	src: url('/common/font/SourceHanSansJP-Bold.otf') format('opentype');
}

@font-face {
	font-family: 'SourceHanSansJP';
	font-style: normal;
	font-weight: 900;
	src: url('/common/font/SourceHanSansJP-Heavy.otf') format('opentype');
}*/





body {
	/*font-family: 'Noto Sans Japanese', sans-serif;*/
	/*font-family: Arial,Helvetica,Verdana,'Noto Sans Japanese',sans-serif;*/
	font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: "palt" 1;
	font-size: 140%;
	color: #191919;
	line-height: 1.625;
	min-width: 320px;
}

@media screen and (min-width: 641px),
print {
	body {
		font-size: 160%;
	}
}

.f_noScriptWarning {
	padding: 10px 10px 8px;
	text-align: center;
	color: #fff;
	background-color: #666;
	line-height: 1.2;
}

/* ---------------------------------------------------------------
	汎用クラス common
--------------------------------------------------------------- */
/* margin ----- */
.c_mt00 {
	margin-top: 0px !important;
}

.c_mt03 {
	margin-top: 3px !important;
}

.c_mt05 {
	margin-top: 5px !important;
}

.c_mt10 {
	margin-top: 10px !important;
}

.c_mt15 {
	margin-top: 15px !important;
}

.c_mt20 {
	margin-top: 20px !important;
}

.c_mt25 {
	margin-top: 25px !important;
}

.c_mt30 {
	margin-top: 30px !important;
}

.c_mt35 {
	margin-top: 35px !important;
}

.c_mt40 {
	margin-top: 40px !important;
}

.c_mt45 {
	margin-top: 45px !important;
}

.c_mt50 {
	margin-top: 50px !important;
}

.c_mt60 {
	margin-top: 60px !important;
}

.c_mt70 {
	margin-top: 70px !important;
}

.c_mr00 {
	margin-right: 0px !important;
}

.c_mr03 {
	margin-right: 3px !important;
}

.c_mr05 {
	margin-right: 5px !important;
}

.c_mr10 {
	margin-right: 10px !important;
}

.c_mr15 {
	margin-right: 15px !important;
}

.c_mr20 {
	margin-right: 20px !important;
}

.c_mr25 {
	margin-right: 25px !important;
}

.c_mr30 {
	margin-right: 30px !important;
}

.c_mr35 {
	margin-right: 35px !important;
}

.c_mr40 {
	margin-right: 40px !important;
}

.c_mr45 {
	margin-right: 45px !important;
}

.c_mr50 {
	margin-right: 50px !important;
}

.c_mr60 {
	margin-right: 60px !important;
}

.c_mr70 {
	margin-right: 70px !important;
}

.c_ml00 {
	margin-left: 0px !important;
}

.c_ml03 {
	margin-left: 3px !important;
}

.c_ml05 {
	margin-left: 5px !important;
}

.c_ml10 {
	margin-left: 10px !important;
}

.c_ml15 {
	margin-left: 15px !important;
}

.c_ml20 {
	margin-left: 20px !important;
}

.c_ml25 {
	margin-left: 25px !important;
}

.c_ml30 {
	margin-left: 30px !important;
}

.c_ml35 {
	margin-left: 35px !important;
}

.c_ml40 {
	margin-left: 40px !important;
}

.c_ml45 {
	margin-left: 45px !important;
}

.c_ml50 {
	margin-left: 50px !important;
}

.c_ml60 {
	margin-left: 60px !important;
}

.c_ml70 {
	margin-left: 70px !important;
}

.c_mb00 {
	margin-bottom: 0px !important;
}

.c_mb03 {
	margin-bottom: 3px !important;
}

.c_mb05 {
	margin-bottom: 5px !important;
}

.c_mb10 {
	margin-bottom: 10px !important;
}

.c_mb15 {
	margin-bottom: 15px !important;
}

.c_mb20 {
	margin-bottom: 20px !important;
}

.c_mb25 {
	margin-bottom: 25px !important;
}

.c_mb30 {
	margin-bottom: 30px !important;
}

.c_mb35 {
	margin-bottom: 35px !important;
}

.c_mb40 {
	margin-bottom: 40px !important;
}

.c_mb45 {
	margin-bottom: 45px !important;
}

.c_mb50 {
	margin-bottom: 50px !important;
}

.c_mb60 {
	margin-bottom: 60px !important;
}

.c_mb70 {
	margin-bottom: 70px !important;
}

/* padding ----- */
.c_pt00 {
	padding-top: 0px !important;
}

.c_pr00 {
	padding-right: 0px !important;
}

.c_pl00 {
	padding-left: 0px !important;
}

.c_pb00 {
	padding-bottom: 0px !important;
}

/* clearfix -----  */
.c_clearfix {
	zoom: 1;
}

.c_clearfix:after {
	content: "";
	display: block;
	clear: both;
	height: 0.01px;
}

/* flot ----- */
.c_floL {
	float: left !important;
}

.c_floR {
	float: right !important;
}

.c_ofH {
	overflow: hidden !important;
}

/* text-align ----- */
.c_taL {
	text-align: left !important;
}

.c_taR {
	text-align: right !important;
}

.c_taC {
	text-align: center !important;
}

@media screen and (min-width: 641px),
print {
	.c_pcTaL {
		text-align: left !important;
	}

	.c_pcTaR {
		text-align: right !important;
	}

	.c_pcTaC {
		text-align: center !important;
	}
}

/* vertical-align ----- */
.c_vaT {
	vertical-align: top !important;
}

.c_vaM {
	vertical-align: middle !important;
}

.c_vaB {
	vertical-align: bottom !important;
}

/* position ----- */
.c_posR {
	position: relative;
}

.c_posA {
	position: absolute;
}

.c_posS {
	position: static;
}

.c_posF {
	position: fixed;
}

.c_z10 {
	z-index: 10;
}

/* display ----- */
.c_block {
	display: block !important;
}

.c_iBlock {
	display: inline-block !important;
}

.c_hide {
	display: none !important;
}

.c_flex {
	display: flex !important;
}

.c_flex.s_spBlock {
	display: block !important;
}

.c_flex.s_between {
	justify-content: space-between;
}

.c_flex.s_around {
	justify-content: space-around;
}

.c_flex.s_center {
	justify-content: center;
}

.c_flex.s_alignStart {
	align-items: flex-start;
}

.c_flex.s_alignCenter {
	align-items: center;
}

.c_flex.s_alignEnd {
	align-items: flex-end;
}

.c_flex.s_alignBase {
	align-items: baseline;
}

.c_flex.s_wrap {
	flex-wrap: wrap;
}

@media screen and (min-width: 641px),
print {
	.c_flex.s_spBlock {
		display: flex !important;
	}
}

/* responsive ----- */
@media screen and (max-width: 640px) {
	.c_onlyL {
		display: none !important;
	}
}

@media screen and (min-width: 641px),
print {
	.c_onlyS {
		display: none !important;
	}
}

/* center ----- */
.c_center {
	margin-left: auto !important;
	margin-right: auto !important;
	display: block !important;
}

/* width -----  */
.c_liquid {
	width: 100% !important;
}

/* font -----  */
.c_font20 {
	font-size: 2.0rem !important;
}

/* 20px */
.c_font19 {
	font-size: 1.9rem !important;
}

/* 19px */
.c_font18 {
	font-size: 1.8rem !important;
}

/* 18px */
.c_font17 {
	font-size: 1.7rem !important;
}

/* 17px */
.c_font15 {
	font-size: 1.5rem !important;
}

/* 15px */
.c_font14 {
	font-size: 1.4rem !important;
}

/* 14px */
.c_font13 {
	font-size: 1.3rem !important;
}

/* 13px */
.c_font12 {
	font-size: 1.2rem !important;
}

/* 12px */
.c_font11 {
	font-size: 1.1rem !important;
}

/* 11px */
.c_font10 {
	font-size: 1.0rem !important;
}

/* 10px */

.c_fontH {
	font-weight: 900 !important;
}

.c_fontB {
	font-weight: bold !important;
}

.c_fontN {
	font-weight: normal !important;
}

.c_colorRed {
	color: #f00 !important;
}

.c_colorWhite {
	color: #fff !important;
}

.c_lists01>* {
	position: relative;
	padding-left: 1em;
}

.c_lists01>*::before {
	content: "・";
	position: absolute;
	top: 1em;
	left: 0;
	transform: translateY(-50%);
}

.c_number01>* {
	position: relative;
	padding-left: 1.3em;
}

.c_number01>*::before {
	position: absolute;
	top: 1em;
	left: 0;
	transform: translateY(-50%);
}

.c_number01>*:nth-child(1):before {
	content: "①";
}

.c_number01>*:nth-child(2):before {
	content: "②";
}

.c_number01>*:nth-child(3):before {
	content: "③";
}

.c_number01>*:nth-child(4):before {
	content: "④";
}

.c_notes01 {
	text-indent: -1.3em;
	padding-left: 1.3em;
}

.c_notes01::before {
	content: "※ ";
}

.c_notes02 {
	text-indent: -1.3em;
	padding-left: 1.3em;
}

.c_notes02::before {
	content: "▼ ";
}

.c_textHasIcon01 {
	/*
	「※」等のあとに半角スペースを入れる
	（例）
	<p class="co_textHasIcon01">● ダミーテキストダミーテキストダミーテキストダミーテキストダミーテキスト</p>
	*/
	text-indent: -1.3em;
	padding-left: 1.3em;
}

.c_lineLL {
	line-height: 2 !important;
}

.c_lineL {
	line-height: 1.8 !important;
}

.c_lineS {
	line-height: 1.3 !important;
}

.c_lineSS {
	line-height: 1 !important;
}

.c_breakall {
	word-break: break-all !important;
}

.c_nowrap {
	white-space: nowrap !important;
}

.c_underline {
	text-decoration: underline;
}

/* link -----  */
.c_textLink {
	text-decoration: underline;
	cursor: pointer;
}

.c_textLink:hover {
	text-decoration: none;
}

.c_textLink02 {
	text-decoration: none;
	cursor: pointer;
}

.c_textLink02:hover {
	text-decoration: underline;
}

@media screen and (min-width: 641px) {
	.c_fadeOver {
		-webkit-transition: 0.3s opacity;
		transition: 0.3s opacity;
		backface-visibility: hidden;
		cursor: pointer;
	}

	.c_fadeOver:hover {
		opacity: 0.6;
	}
}


/* ------------------------------------------------------------ */


/* ---------------------------------------------------------------
	page
--------------------------------------------------------------- */

.page_wrap {
	max-width: 1360px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 640px) {
	.page_wrap {
		width: 100%;
	}
}


.page_kv {
	position: relative;
	background-color: #b60081;
	text-align: center;
}

.page_kv__btn {
	position: absolute;
	top: 66%;
	left: 50%;
	width: 970px;
	transform: translateX(-50%);
}

.page_kv__btn02 {
	position: absolute;
	bottom: 4%;
	left: 50%;
	width: 970px;
	transform: translateX(-50%);
}

@media screen and (min-width: 641px) {
	.page_kv {
		height: 937px;
	}

	.page_kv__btn,
	.page_kv__btn02 {
		height: 14%;
	}
}

@media screen and (max-width: 640px) {
	.page_kv__btn {
		top: calc(296 * 100% / 437);
		width: calc(650 * 100% / 750);
	}

	.page_kv__btn02 {
		bottom: calc(27 * 100% / 437);
		width: calc(650 * 100% / 750);
	}
}

.page_main {
	background-color: #f1f5f5;
	padding: 70px 20px 100px;
}

@media screen and (max-width: 640px) {
	.page_main {
		padding: 40px 20px 50px;
	}
}

.page_leadArea {
	padding-bottom: 60px;
}

.page_leadArea-content {
	max-width: 670px;
	margin-left: auto;
	margin-right: auto;
}

.page_leadArea-title {
	text-align: center;
}

.page_leadArea-title-icon {
	display: inline-block;
	width: 80px;
}

.page_leadArea-title-text {
	color: #E10017;
	font-size: 2.9rem;
	font-weight: bold;
	display: block;
	margin-top: 25px;
}

.page_leadArea-btnArea {
	max-width: 970px;
	margin-top: 70px;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (max-width: 640px) {
	.page_leadArea {
		padding-bottom: 40px;
	}

	.page_leadArea-title-icon {
		width: 60px;
	}

	.page_leadArea-title-text {
		font-size: 2.5rem;
		margin-top: 10px;
	}

	.page_leadArea-btnArea {
		margin-top: 35px;
	}
}

.page_section {
	max-width: 970px;
	margin-left: auto;
	margin-right: auto;
}

.page_section+.page_section {
	margin-top: 50px;
}

.page_section--01+.page_section--01 {
	position: relative;
	margin-top: 0;
}

.page_section--01+.page_section--01::before {
	content: "";
	position: absolute;
	top: -1px;
	left: -55px;
	width: calc(100% + 110px);
	height: 2px;
	background-color: #ffffff;
	z-index: 1;
}

.page_section--01.s_odd+.page_section--01.s_odd::before {
	left: 0 !important;
	width: 100% !important;
}

@media screen and (max-width: 640px) {
	.page_section+.page_section {
		margin-top: 25px;
	}

	.page_section--01+.page_section--01 {
		margin-top: 0;
	}
}

.page_section-inn--01 {
	padding: 50px 55px 0;
}

.page_section-inn--02 {
	padding: 0 55px;
	background-color: #dcdeec;
}

.page_section-inn--02.s_odd {
	margin-right: -55px;
	margin-left: -55px;
}

.page_section-inn--03 {
	position: relative;
	padding-bottom: 90px;
}

.page_section-inn-con {
	position: relative;
	padding: 30px 0;
	background-color: #ffffff;
	border-radius: 10px;
	z-index: 1;
}

.page_section-inn-con--04 {
	position: relative;
}

.page_section-inn-con-link {
	position: absolute;
	/* background-color: rgba(255, 0, 0, 0.5); */
}

.page_section-inn-con-link--04 {
	top: 77%;
	left: 42%;
	width: 6%;
	height: 1%;
}

.page_section-title01--odd {
	position: relative;
	padding: 0;
}

.page_section-title01--odd::before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: -55px;
	width: calc(100% + 110px);
	height: 2px;
	background-color: #ffffff;
	z-index: 1;
}

.page_section-title01 {
	font-size: 3.3rem;
	color: #fff;
	font-weight: bold;
	background-color: #b60081;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 125px;
}

.page_section-title01.s_square {
	height: 54px;
}

.page_section-title01--color01 {
	font-size: 2.1rem;
	background-color: #505aa2;
	text-align: left;
}

.page_section-title01--color02 {
	color: #505aa2;
	font-size: 2.1rem;
	background-color: #dcdeec;
	text-align: left;
}

.page_section-title01--color03 {
	font-size: 1.6rem;
}

.page_section-title01-inn {
	position: relative;
	display: block;
	width: 495px;
	padding: 0 20px;
}

.page_section-title01-inn.s_square>span {
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	background-color: #505aa2;
	margin-right: 5px;
}

.page_section-title01-inn::before {
	content: "";
	display: block;
	width: 17px;
	height: 17px;
	border-left: 3px solid #fff;
	border-bottom: 3px solid #fff;
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

.page_section-title01--color02 .page_section-title01-inn::before {
	border-left-color: #505aa2;
	border-bottom-color: #505aa2;
}

.s_close>*>.page_section-title01-inn::before {
	top: -10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.s_link.page_section-title01-inn::before {
	top: 0;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.page_section01-lead {
	max-width: 650px;
	margin: 40px auto;
}

.page_section-box01 {
	background-color: #f8e5f2;
	border-radius: 15px;
	padding: 45px 20px;
}

.page_section-box01-title01 {
	font-size: 3.5rem;
	color: #B60081;
	font-weight: bold;
	text-align: center;
}

.page_section-box01-item {
	background-color: #fff;
	border-radius: 10px;
	margin-top: 50px;
	padding: 20px 30px;
	max-width: 660px;
	margin-left: auto;
	margin-right: auto;
}

.page_section-box02 {
	background-color: #e5e6f1;
	border-radius: 8px;
	padding: 20px 25px;
	margin-top: 35px;
}

.page_section-box02-title01 {
	font-size: 2.9rem;
	text-align: center;
	font-weight: bold;
	color: #505AA2;
	margin-bottom: 15px;
}

@media screen and (max-width: 640px) {
	.page_section {
		margin-left: -20px;
		margin-right: -20px;
	}

	.page_section--01 {
		margin-left: 0;
		margin-right: 0;
	}

	.page_section-inn {
		padding: 0 25px;
	}

	.page_section01-lead {
		margin: 25px auto;
	}

	.page_section-title01 {
		font-size: 2.1rem;
		height: 120px;
	}

	.page_section-title01.s_square {
		height: 40px;
	}

	.page_section-title01-inn {
		width: calc(100% - 60px);
	}

	.page_section-title01-inn::before {
		width: 11px;
		height: 11px;
	}

	.page_section-box01-title01 {
		font-size: 2.2rem;
	}

	.page_section-box01-item {
		margin-top: 25px;
		padding: 25px 12px;
	}

	.page_section-box02 {
		margin-top: 20px;
		padding: 15px 12px;
	}

	.page_section-box02-title01 {
		font-size: 1.7rem;
	}

	.page_section-title01--odd::before {
		left: -20px;
		width: calc(100% + 40px);
	}

	.page_section-inn-con-link--04 {
		top: 76%;
		left: 70%;
		width: 16%;
		height: 1.2%;
	}
}

@media screen and (max-width: 640px) {
	.page_section--01+.page_section--01::before {
		left: -20px;
		width: calc(100% + 40px);
	}

	.page_section-inn--01 {
		padding: 25px;
	}

	.page_section-inn--02 {
		padding: 0 20px;
	}

	.page_section-inn--02.s_odd {
		margin-right: -20px;
		margin-left: -20px;
	}

	.page_section-inn--03 {
		padding: 0 0 45px;
	}

	.page_section-title01--odd {
		padding: 0;
	}

	.page_section-inn-con {
		padding: 15px 0;
	}

	.page_section-title01--color01 {
		font-size: 1.6rem;
	}

	.page_section-title01--color01 .page_section-title01-inn {
		width: calc(100% - 40px);
		padding-left: 0;
	}

	.page_section-title01--color02 {
		font-size: 1.6rem;
	}

	.page_section-title01--color02 .page_section-title01-inn {
		width: 100%;
		padding-left: 0;
	}
}

.page_footer {
	background-color: #b60081;
	color: #fff;
	padding: 60px 0 90px;
}

.page_footer-inn {
	max-width: 490px;
	padding: 0 20px;
	margin-left: auto;
	margin-right: auto;
}

.page_footer-inn-btn-list {
	margin-top: 30px;
	display: flex;
}

.page_footer-inn-btn-list-btn01 {
	width: 103px;
	display: block;
}

.page_footer-inn-btn-list-btn02 {
	width: 126px;
	margin-left: 18px;
	display: block;
}

.page_footer-inn-list {
	margin-top: 15px;
	font-size: 1.4rem;
	line-height: 1.83;
}

@media screen and (max-width: 640px) {
	.page_footer {
		padding: 35px 0 30px;
	}

	.page_footer-inn {
		padding: 0 25px;
	}

	.page_footer-inn-title {
		padding: 10px;
	}

	.page_footer-inn-btn-list {
		justify-content: center;
	}

	.page_footer-inn-btn-list-btn01 {
		width: 41.5384%;
	}

	.page_footer-inn-btn-list-btn02 {
		width: 51.0769%;
	}

	.page_footer-inn-list {
		font-size: 1.2rem;
	}
}

/* ---------------------------------------------------------------
	module
--------------------------------------------------------------- */

.page_list01-item+.page_list01-item {
	margin-top: 3px;
}

.s_itemMtM .page_list01-item+.page_list01-item {
	margin-top: 10px;
}

.page_list01-item-head {
	float: left;
}

.page_list01.s_iconWidth01 .page_list01-item-head {
	width: 1em;
}

.page_list01.s_iconWidth02 .page_list01-item-head {
	width: 2em;
}

.page_list01.s_iconWidth03 .page_list01-item-head {
	width: 3em;
}

.page_list01.s_iconWidth04 .page_list01-item-head {
	width: 4em;
}

.page_list01.s_iconWidth05 .page_list01-item-head {
	width: 5em;
}

.page_list01-item-body {
	overflow: hidden;
	display: block;
}

.page_color01 {
	color: #E10017;
}

.page_color02 {
	color: #656667;
}

.page_color03 {
	font-size: 2.1rem;
	line-height: 1.9;
	color: #E10017;
}

.page_textL {
	font-size: 2.1rem;
	line-height: 1.9;
	color: #656667;
}

@media screen and (max-width: 640px) {

	.page_textL,
	.page_color03 {
		font-size: 1.7rem;
	}
}

.page_textM {
	font-size: 1.8rem;
}

@media screen and (max-width: 640px) {
	.page_textM {
		font-size: 1.4rem;
	}
}

.s_iphone .s_googleplayBtn {
	/* display: none; */
}

.s_android .s_appstoreBtn {
	display: none;
}

.js_tglArea.s_close>.js_tglContents {
	display: none;
}


.page_section-title02-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #B60081;
	color: #fff;
	height: 115px;
	padding: 0 50px;
	border-top: solid #fff 2px;
	text-align: center;
}

.page_section-title02-wrap.s_first {
	margin-top: 50px;
	border-top: none;
}

.page_section-title02-main {
	font-size: 2.3rem;
	display: inline-block;
	width: 60%;
	text-align: left;
	font-weight: bold;
	position: relative;
}

.page_section-title02-main::before {
	content: "";
	display: block;
	width: 17px;
	height: 17px;
	border-left: 3px solid #fff;
	border-bottom: 3px solid #fff;
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

.s_close .page_section-title02-main::before {
	top: -10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.page_section-title02-sub {
	font-size: 1.8rem;
	border-top: 2px solid #fff;
	margin-top: 25px;
	padding-top: 12px;
}

.page_faq {
	position: relative;
	margin-bottom: 90px;
	background-color: #fff;
	border-radius: 0 0 10px 10px
}

.page_faq-item {
	padding: 45px 45px 30px;
}

.page_faq-item+.page_faq-item {
	border-top: 5px solid #EDF3F3;
}

.page_faq-q {
	color: #B60081;
	font-size: 2.4rem;
	font-weight: bold;
}

.page_faq-a {
	color: #656667;
	font-size: 1.8rem;
	margin-top: 15px;
	line-height: 2;
}

@media screen and (max-width: 640px) {
	.page_section-title02-wrap {
		height: 80px;
		padding: 0 25px;
	}

	.page_section-title02-wrap.s_first {
		margin-top: 25px;
	}

	.page_section-title02-main {
		font-size: 1.7rem;
		width: 100%;
		padding-right: 20px;
	}

	.page_section-title02-main::before {
		width: 11px;
		height: 11px;
		right: -10px;
	}

	.s_close .page_section-title02-main::before {
		right: -10px;
	}

	.page_section-title02-sub {
		font-size: 1.2rem;
		margin-top: 15px;
		padding-top: 7px;
	}

	.page_faq {
		margin-bottom: 45px;
	}

	.page_faq-item {
		padding: 25px;
	}

	.page_faq-item+.page_faq-item {
		border-top-width: 3px;
	}

	.page_faq-q {
		font-size: 1.7rem;
	}

	.page_faq-a {
		font-size: 1.4rem;
		margin-top: 10px;
	}
}

.page_linkText {
	color: #505AA2 !important;
	text-decoration: underline !important;
}

.page_linkText:hover {
	text-decoration: none !important;
}

.page_section-target_service {
	position: relative;
}

.page_section-target_service-link {
	position: absolute;
}

.page_section-target_service-link:nth-of-type(1) {
	top: 0;
	left: 0;
	width: 100%;
	height: 23%;
}

.page_section-target_service-link:nth-of-type(2) {
	top: 25%;
	left: 0;
	width: 48%;
	height: 23%;
}

.page_section-target_service-link:nth-of-type(3) {
	top: 25%;
	left: 52%;
	width: 48%;
	height: 23%;
}

.page_section-target_service-link:nth-of-type(4) {
	top: 51%;
	left: 0;
	width: 48%;
	height: 23%;
}

.page_section-target_service-link:nth-of-type(5) {
	top: 51%;
	left: 52%;
	width: 48%;
	height: 23%;
}

.page_section-target_service-link:nth-of-type(6) {
	top: 77%;
	left: 0;
	width: 48%;
	height: 23%;
}

.page_section-target_service-link:nth-of-type(7) {
	top: 77%;
	left: 52%;
	width: 48%;
	height: 23%;
}

.page_section-precautions {
	margin-top: 50px;
	border-radius: 15px;
	overflow: hidden;
}

.page_section-precautions-title {
	font-size: 3.3rem;
	color: #b60081;
	font-weight: bold;
	background-color: #fff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 116px;
}

.page_section-precautions-title-inn {
	position: relative;
	display: block;
	width: 490px;
	padding: 0 20px;
}

.page_section-precautions-title-inn::before {
	content: "";
	display: block;
	width: 17px;
	height: 17px;
	border-left: 3px solid #b60081;
	border-bottom: 3px solid #b60081;
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

.s_close .page_section-precautions-title-inn::before {
	top: -10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.s_link.page_section-precautions-title-inn::before {
	top: 0;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.page_section-precautions-inn {
	position: relative;
	margin-bottom: 70px;
	background-color: #fff;
}

.page_section-precautions-list {
	max-width: 650px;
	margin-right: auto;
	margin-left: auto;
	padding: 20px;
	line-height: 1.875;
}

.page_section-precautions-list-item {
	padding-top: 10px;
	padding-bottom: 60px;
	border-top: solid #b60081 2px;
}

.page_section-precautions-list-title {
	color: #b60081;
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.page_section-precautions-list-text {
	color: #656667;
	font-size: 1.8rem;
}

.page_section-precautions-list-text+.page_section-precautions-list-text {
	margin-top: 1.0em;
}

.page_section-precautions-closeBtn {
	position: absolute;
	right: 0;
	bottom: -70px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #b60081;
	font-size: 2.6rem;
	font-weight: bold;
	height: 50px;
	padding-right: 50px;
	padding-left: 30px;
	background-color: #fff;
	border-radius: 25px;
}

.page_section-precautions-closeBtn.s_color01 {
	bottom: 20px;
	color: #848bbe;
	background-color: #edf3f3;
}

.page_section-precautions-closeBtn::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 16px;
	height: 16px;
	border-top: solid #b60081 2px;
	border-left: solid #b60081 2px;
	transform: translateY(-30%) rotate(45deg);
}

.page_section-precautions-closeBtn.s_color01::after {
	border-top: solid #848bbe 2px;
	border-left: solid #848bbe 2px;
}

@media screen and (max-width: 640px) {
	.page_section-precautions {
		margin-top: 25px;
	}

	.page_section-precautions-title {
		font-size: 2.1rem;
		height: 70px;
	}

	.page_section-precautions-title-inn {
		width: calc(100% - 60px);
	}

	.page_section-precautions-title-inn::before {
		width: 11px;
		height: 11px;
	}

	.page_section-precautions-inn {
		margin-bottom: 35px;
	}

	.page_section-precautions-list {
		padding: 10px 20px;
	}

	.page_section-precautions-list-item {
		padding-top: 5px;
		padding-bottom: 40px;
	}

	.page_section-precautions-list-title {
		font-size: 1.6rem;
	}

	.page_section-precautions-list-text {
		font-size: 1.4rem;
	}

	.page_section-precautions-closeBtn {
		bottom: -35px;
		font-size: 1.3rem;
		height: 25px;
		padding-right: 30px;
		padding-left: 15px;
		border-radius: 12.5px;
	}

	.page_section-precautions-closeBtn.s_color01 {
		bottom: 10px;
	}

	.page_section-precautions-closeBtn::after {
		right: 10px;
		width: 10px;
		height: 10px;
	}
}

.page_faq-icon {
	margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
	.page_faq-icon {
		width: 50px;
	}
}

.c_color01 a {
	color: #b60081 !important;
}

.page_faq-a__title {
	font-size: 2.0rem;
	font-weight: bold;
	margin-top: 10px;
	margin-bottom: 5px;
}

.page_faq-a__title:first-child {
	margin-top: 0;
}

@media screen and (max-width: 640px) {
	.page_faq-a__title {
		font-size: 1.5rem;
	}
}

.notion {
	border: 1px solid #b60081;
	color: #656667;
	font-size: 1.8rem;
	margin-top: 15px;
	line-height: 2;
}

.notion_title {
	color: #656667;
	font-weight: bold;
	margin-top: 10px;
	line-height: 2;
}

.notion_content {
	color: #656667;
	margin-top: 10px;
	font-size: 1.8rem;
	line-height: 2;
}


.page_section-inn-flow {
	display: block;
	counter-reset: number 0;
	text-align: left;
}

.page_section-inn-flow--outside {
	max-width: 650px;
	margin-right: auto;
	margin-left: auto;
}

.page_section-inn-flow__item {
	display: list-item;
	font-weight: bold;
	font-size: 1.2em;
	position: relative;
	line-height: 1.8em;
	margin: 4.5rem 7rem;
	counter-increment: number 1;
}

.page_section-inn-flow__item::before {
	content: counter(number);
	position: absolute;
	width: 3.5rem;
	height: 3.5rem;
	font-size: 2.6rem;
	line-height: 3.5rem;
	font-weight: bold;
	text-align: center;
	left: 0;
	top: -.5rem;
	border-radius: 50px;
	background: rgb(84, 91, 159);
	color: #fff;
}

.page_section-inn-flow__item-howto {
	padding-left: 4rem;
}

.page_section-inn-flow__item-img {
	text-align: center;
	margin: 1em auto;
	max-width: 350px;
}

@media screen and (max-width: 640px) {
	.page_section-inn-flow__item {
		font-size: 1.6em;
		line-height: 1.8em;
		margin: 4.5rem 2rem;
	}

	.page_section-inn-flow__item::before {
		top: 0;
	}
}


/* parts -------------------------------- */
.common_appli-inn .common_appli-inn-btn-list {
	display: flex;
	column-gap: 5%;
}



/* 事業会社切り替えページ */

.page_main02 .service_box01 .service_applilist01 {
	display: block;
}

.service_box01{
	display: flex;
	justify-content: space-between;
	margin: 2%;
}


.page_main02 .service_box01 .target_box {
	width: 48%;
}
.page_main02 .service_box01 .service_applilist01>li.clm2 {
	width: 100%;
	margin-bottom: 1em;
}

.page_main02 .service_box01 {
	background: none;
	padding: 0;
}

@media screen and (max-width: 640px) {
    .page_main02 .common_sec {
		margin:20px auto 30px;
	}
	.page_main02 .common_body{
		margin-bottom: 0;
	}
}