@charset "UTF-8";

ol {
	list-style-type: none;
}

a {
	transition: opacity .3s;
}

a:hover {
	opacity: .7;
}

.hero {
	position: relative;
	background-image: url(/campaign/img/online/img-hero.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	width: 100%;
}

.hero:before {
	content: "";
	display: block;
	padding-top: 500px;
}

.hero_logo {
	position: absolute;
	top: 0;
	right: 15%;
}

.intro {
	padding: 80px 0;
}

.intro_ttl {
	font-size: 35px;
	font-weight: 500;
	color: #2E3192;
	text-align: center;
}

.intro_ttl:before,
.intro_ttl:after {
	content: "";
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 44px;
	height: 62px;
	vertical-align: middle;
}

.intro_ttl:before {
	background-image: url(/campaign/img/online/icon-deco01@2x.png);
	margin-right: 20px;
}

.intro_ttl:after {
	background-image: url(/campaign/img/online/icon-deco02@2x.png);
	margin-left: 20px;
}

.intro_list {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}

.intro_item {
	max-width: 240px;
	width: 100%;
}

.intro_item_img {
	text-align: center;
}

.intro_item_ttl {
	font-size: 25px;
	font-weight: 500;
	color: #D9426B;
	margin-top: 20px;
	text-align: center;
}

.intro_item_text {
	font-size: 15px;
	font-weight: 500;
	margin-top: 10px;
}

.intro_more {
	margin-top: 40px;
	display: flex;
	align-items: center;
	padding: 10px 25px;
	border: 3px solid #D9426B;
}

.intro_more_img {
}

.intro_more_cnt {
	margin-left: 30px;
}

.intro_more_ttl {
	font-size: 28px;
	font-weight: bold;
	color: #D9426B;
}

.intro_more_text {
	font-size: 15px;
	font-weight: bold;
}

.intro_more_note {
	margin-top: 10px;
}

.intro_more_note_txt {
	font-size: 15px;
	font-weight: bold;
}

.intro_more_detail {
	width: 210px;
	padding: 10px 0;
	font-size: 15px;
	font-weight: bold;
	color: #FFF;
	background-color: #D9426B;
	border-radius: 50px;
	text-align: center;
}

.flow {
	background-color: #F2F2F2;
}

.flow_ttl {
	font-size: 30px;
	font-weight: 400;
	color: #FFF;
	padding: 20px 0;
	background-color: #2E3192;
	text-align: center;
}

.flow_list {
	padding: 90px 0;
}

.flow_step {
	margin: 60px auto 0;
}

.flow_step:first-child {
	margin: 0 auto;
}

.flow_step_ttl {
	display: flex;
	align-items: center;
}

.flow_step.-step01 .flow_step_ttl {
	color: #2E3192;
}

.flow_step.-step02 .flow_step_ttl {
	color: #0A98B2;
}

.flow_step.-step03 .flow_step_ttl {
	color: #65B20A;
}

.flow_step.-step04 .flow_step_ttl {
	color: #B99E0B;
}

.flow_step_ttl > span {
	font-size: 33px;
	line-height: 1;
	display: flex;
	align-items: center;
}

.flow_step_ttl > span > span {
	font-size: 50px;
}

.flow_step_ttl > em {
	font-size: 25px;
	font-weight: 500;
	margin-left: 35px;
}

.flow_step_wrap {
	margin-top: 25px;
	background-color: #FFF;
	border-radius: 10px;
	padding: 60px;
}

.flow_step_cnt {
	padding: 40px 0;
	border-top: 1px solid #CCC;
}

.flow_step_cnt:first-child {
	padding: 0 0 40px;
	border-top: none;
}

.flow_step_cnt:last-child {
	padding: 40px 0 0;
}

.flow_step_catch {
	font-weight: 500;
}

.flow_step.-step01 .flow_step_catch {
	color: #2E3192;
}

.flow_step.-step02 .flow_step_catch {
	color: #0A98B2;
}

.flow_step.-step03 .flow_step_catch {
	color: #65B20A;
}

.flow_step.-step04 .flow_step_catch {
	color: #B99E0B;
}

.flow_step_catch > span {
	font-size: 22px;
	line-height: 1;
}

.flow_step_catch > em {
	font-size: 35px;
	font-weight: 500;
}

.flow_step_row {
	display: flex;
	justify-content: space-between;
}

.flow_step_col {
	flex: 1;
}

.flow_step_lead {
	font-size: 15px;
	margin-top: 10px;
}

.flow_step_img {
	margin-left: 90px;
}

.flow_step_note {
	margin-top: 20px;
	padding-left: 1em;
	text-indent: -1em;
}

.flow_step_reserv_cnt {
	display: flex;
	margin-top: 15px;
}

.flow_step_reserv {
	display: block;
	font-size: 17px;
	color: #FFF;
	max-width: 300px;
	width: 100%;
	padding: 20px 0;
	text-align: center;
	border-radius: 50px;
}

.flow_step_reserv:last-child {
	margin-left: 20px;
}

.flow_step.-step01 .flow_step_reserv {
	background-color: #2E3192;
}

.flow_step.-step03 .flow_step_reserv {
	background-color: #65B20A;
}

.flow_step_text {
}

.flow_step_chart {
	counter-reset: number 0;
	margin-top: 10px;
}

.flow_step_item {
	margin-top: 10px;
}

.flow_step_item:first-child {
	margin-top: 0;
}

.flow_step_item_ttl {
	font-size: 22px;
	font-weight: 500;
	color: #2E3192;
}

.flow_step_item_ttl:before {
	content: counter(number) ".";
	counter-increment: number 1;
}

.flow_step_item_text {
	margin-top: 10px;
}

.flow_step_list {
	margin-top: 10px;
}

.flow_step_list > li {
	font-size: 22px;
	font-weight: 500;
	color: #2E3192;
	padding-left: 0.5em;
	text-indent: -0.5em;
}

.flow_step_list > li:before {
	content: "・";
	display: inline-block;
}

.flow_step_notes {
	margin-top: 10px;
}

.flow_step_notes > li {
	padding-left: 1em;
	text-indent: -1em;
}

.any {
	padding: 95px 0 200px;
}

.any_ttl {
	font-weight: 500;
	color: #2E3192;
	text-align: center;
}

.any_ttl > span {
	display: block;
	font-size: 24px;
}

.any_ttl > em {
	display: block;
	font-size: 35px;
}

.any_ttl > em::before,
.any_ttl > em::after {
	content: "";
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 44px;
	height: 62px;
	vertical-align: middle;
}

.any_ttl > em::before {
	background-image: url(/campaign/img/online/icon-deco01@2x.png);
	margin-right: 20px;
}

.any_ttl > em::after {
	background-image: url(/campaign/img/online/icon-deco02@2x.png);
	margin-left: 20px;
}

.any_list {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}

.any_item {
	max-width: 300px;
	width: 100%;
	margin-left: 40px;
}

.any_item:first-child {
	margin-left: 0;
}

.any_item_img {
	text-align: center;
}

.any_item_ttl {
	font-weight: 500;
	color: #2E3192;
	text-align: center;
	margin-top: 40px;
}

.any_item_ttl > span {
	display: block;
	font-size: 18px;
}

.any_item_ttl > em {
	display: block;
	font-size: 26px;
}

.any_item_text {
	font-size: 15px;
	margin-top: 10px;
}

.any_item_more {
	display: block;
	font-size: 17px;
	color: #FFF;
	width: 100%;
	padding: 10px 0;
	text-align: center;
	border-radius: 50px;
	margin-top: 10px;
}

.any_item.-item01 .any_item_more {
	background-color: #ED6B00;
}

.any_item.-item02 .any_item_more {
	background-color: #2E3192;
}

.any_item.-item03 .any_item_more {
	background-color: #3DAEC9;
}

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

@media screen and (max-width:640px) {
	ol {
	}

	.hero {
		background-position: 30%;
	}

	.hero:before {
		padding-top: 100%;
	}

	.hero_logo {
		top: 40%;
		right: 0;		/*transform: translate(50%, -50%);*/
		width: 70%;
	}

	.intro {
		padding: 40px 0;
	}

	.intro_ttl {
		font-size: 20px;
	}

	.intro_ttl:before,
	.intro_ttl:after {
		content: none;
	}

	.intro_ttl:before {
	}

	.intro_ttl:after {
	}

	.intro_list {
		display: block;
	}

	.intro_item {
		margin: 20px auto 0;
		max-width: 360px;
		width: 100%;
	}

	.intro_item_img {
		width: 20%;
		display: inline-block;
	}

	.intro_item_ttl {
		font-size: 18px;
		display: inline-block;
		margin-left: 10px;
	}

	.intro_item_text {
	}

	.intro_more {
		display: block;
		text-align: center;
		padding: 20px 10px;
	}

	.intro_more_img {
		width: 30%;
		margin: 0 auto;
	}

	.intro_more_cnt {
		margin-left: 0;
	}

	.intro_more_ttl {
		font-size: 16px;
		margin-top: 10px;
	}

	.intro_more_text {
		font-size: 14px;
	}

	.intro_more_detail {
		margin: 20px auto 0;
	}

	.flow {
	}

	.flow_ttl {
		font-size: 20px;
	}

	.flow_list {
		padding: 40px 0;
	}

	.flow_step {
	}

	.flow_step:first-child {
	}

	.flow_step_ttl {
		display: block;
		text-align: center;
	}

	.flow_step.-step01 .flow_step_ttl {
	}

	.flow_step.-step02 .flow_step_ttl {
	}

	.flow_step.-step03 .flow_step_ttl {
	}

	.flow_step.-step04 .flow_step_ttl {
	}

	.flow_step_ttl > span {
		justify-content: center;
	}

	.flow_step_ttl > span > span {
	}

	.flow_step_ttl > em {
		font-size: 22px;
		margin-left: 0;
	}

	.flow_step_wrap {
		padding: 40px 20px;
	}

	.flow_step_cnt {
	}

	.flow_step_cnt:first-child {
	}

	.flow_step_cnt:last-child {
	}

	.flow_step_catch {
		text-align: center;
	}

	.flow_step.-step01 .flow_step_catch {
	}

	.flow_step.-step02 .flow_step_catch {
	}

	.flow_step.-step03 .flow_step_catch {
	}

	.flow_step.-step04 .flow_step_catch {
	}

	.flow_step_catch > span {
		font-size: 16px;
	}

	.flow_step_catch > em {
		font-size: 24px;
	}

	.flow_step_row {
		display: block;
	}

	.flow_step_lead {
	}

	.flow_step_img {
		text-align: center;
		margin: 35px auto 0;
	}

	.flow_step_note {
		text-align: center;
	}

	.flow_step_reserv_cnt {
		display: block;
	}

	.flow_step_reserv {
		margin: 20px auto 0;
	}

	.flow_step_reserv:last-child {
		margin: 15px auto 0;
	}

	.flow_step.-step01 .flow_step_reserv {
	}

	.flow_step.-step03 .flow_step_reserv {
	}

	.flow_step_text {
	}

	.flow_step_chart {
	}

	.flow_step_item {
	}

	.flow_step_item:first-child {
	}

	.flow_step_item_ttl {
		font-size: 18px;
	}

	.flow_step_item_ttl:before {
	}

	.flow_step_item_text {
	}

	.flow_step_list {
	}

	.flow_step_list > li {
		font-size: 18px;
	}

	.flow_step_list > li:before {
	}

	.flow_step_notes {
	}

	.flow_step_notes > li {
	}

	.any {
		padding: 40px 0;
	}

	.any_ttl {
	}

	.any_ttl > span {
		font-size: 16px;
	}

	.any_ttl > em {
		font-size: 22px;
	}

	.any_ttl > em::before,
	.any_ttl > em::after {
		content: none;
	}

	.any_ttl > em::before {
	}

	.any_ttl > em::after {
	}

	.any_list {
		display: block;
	}

	.any_item {
		margin: 40px auto 0;
	}

	.any_item:first-child {
		margin: 0 auto;
	}

	.any_item_img {
	}

	.any_item_ttl {
		margin-top: 20px;
	}

	.any_item_ttl > span {
		font-size: 16px;
	}

	.any_item_ttl > em {
		font-size: 20px;
	}

	.any_item_text {
	}

	.any_item_more {
	}

	.any_item.-item01 .any_item_more {
	}

	.any_item.-item02 .any_item_more {
	}

	.any_item.-item03 .any_item_more {
	}

}

@media print {
}
