@charset "UTF-8";

/*---import CSS-----------------------------------*/
@import "base_layout.css";
@import "common_parts.css";
@import "common_setting.css";
/*---import CSS-----------------------------------*/

/*
======== table of content. ===============

summary : 「ご利用ガイド」設定

- content
  - section about
  - section target
  - section payment
  - section flow

==========================================

/*----------------------------------------
content
------------------------------------------*/

/*--- section about -----------------------------------*/

section#about .inner.full {
	padding: 0;
}

.about_wrapper {
	width: calc(1280px + (100% - 1280px) / 2 - 20px);
	margin-top: 45px;
	position: relative;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
	-webkit-box-direction: reverse; /*Android4.3*/
	-moz-box-direction: reverse; /*Firefox21*/
	-ms-flex-direction: row-reverse; /*IE10*/
	-webkit-flex-direction: row-reverse; /*PC-Safari,iOS8.4*/
	flex-direction: row-reverse;
	-webkit-box-align: start; /*Android4.3*/
	-moz-box-align: start; /*Firefox21*/
	-ms-flex-align: start; /*IE10*/
	-webkit-align-items: flex-start; /*PC-Safari,iOS8.4*/
	align-items: flex-start;
}

.about_wrapper + .about_wrapper {
	margin-top: 40px;
}

section#about .inner .about_wrapper:nth-child(2n) {
	left: calc((100% - 1280px) / 2 + 20px);
	-webkit-box-direction: normal; /*Android4.3*/
	-moz-box-direction: normal; /*Firefox21*/
	-ms-flex-direction: row; /*IE10*/
	-webkit-flex-direction: row; /*PC-Safari,iOS8.4*/
	flex-direction: row;
}

.about_wrapper figure {
	width: calc(1280px * 0.4 + 50px);
	margin: 0 0 0 -50px;
	position: relative;
}

section#about .inner .about_wrapper:nth-child(2n) figure {
	margin: 30px -50px 0 0;
}

.about_wrapper figure::before {
	content: "";
	padding-top: 66.66%;
	display: block;
}

.about_wrapper figure::after {
	content: "";
	width: 50px;
	height: calc(100% - 50px);
	pointer-events: none;
	display: block;
	position: absolute;
	right: -20px;
	bottom: 0;
	background: url(../img/page/guide/bg_dot.png) repeat center top;
	background-size: 38px;
	mix-blend-mode: multiply;
	opacity: .7;
}

section#about .inner .about_wrapper:nth-child(2n) figure::after {
	left: -20px;
	right: 0;
}

.about_wrapper figure img {
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
}

.contents_wrapper {
	width: calc(100% - (1280px * 0.4));
	margin-top: 30px;
	padding: 40px 100px 40px calc(100% - 1280px + 40px);
	background: #fffabb;
	mix-blend-mode: multiply;
	z-index: -1;
}

section#about .inner .about_wrapper:nth-child(2n) .contents_wrapper {
	margin-top: 0;
	padding: 40px calc(100% - 1280px + 40px) 40px 100px;
}

.contents_wrapper h4.sub_ttl {
	margin: 0 0 30px 0;
}

.contents_wrapper p {
	text-align: justify;
	text-justify: inter-ideograph;
}

.contents_wrapper p + p,
.contents_wrapper p + ul,
.contents_wrapper ul + p,
.contents_wrapper ul + ul {
	margin: 25px 0 0 0;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	.about_wrapper {
		width: 100%;
	}
	
	section#about .inner .about_wrapper:nth-child(2n) {
		left: 0;
	}
	
	.about_wrapper figure {
		width: calc(100% * 0.4 + 40px);
		margin: 0 0 0 -40px;
	}
	
	section#about .inner .about_wrapper:nth-child(2n) figure {
		margin: 30px -40px 0 0;
	}
	
	.contents_wrapper {
		width: calc(100% * 0.6);
		padding: 30px 70px 30px 30px;
	}
	
	section#about .inner .about_wrapper:nth-child(2n) .contents_wrapper {
		padding: 30px 30px 30px 70px;
	}
}

@media only screen and (max-width: 959px) {
	.about_wrapper {
		width: 100%;
		margin-top: 40px;
	}
	
	.about_wrapper + .about_wrapper {
		margin-top: 35px;
	}
	
	.contents_wrapper {
		width: 60%;
		padding: 25px 60px 25px 20px;
	}
	
	section#about .inner .about_wrapper:nth-child(2n) .contents_wrapper {
		padding: 25px 20px 25px 60px;
	}
	
	.contents_wrapper h4.sub_ttl {
		margin: 0 0 25px 0;
	}
}

@media only screen and (max-width: 768px) {
	.about_wrapper {
		margin-top: 30px;
		display: block;
	}
	
	.about_wrapper + .about_wrapper {
		margin-top: 30px;
	}
	
	.about_wrapper figure {
		width: calc(100% - 20px);
		margin: 0;
	}
	
	section#about .inner .about_wrapper:nth-child(2n) figure {
		margin: 0 0 0 20px;
	}
	
	.about_wrapper figure::after {
		width: 40px;
		height: calc(100% - 40px);
		right: -20px;
		background-size: 35px;
	}
	
	.contents_wrapper,
	section#about .inner .about_wrapper:nth-child(2n) .contents_wrapper {
		width: 100%;
		margin: 0;
		padding: 25px 15px;
	}
	
	.contents_wrapper p + p,
	.contents_wrapper p + ul,
	.contents_wrapper ul + p,
	.contents_wrapper ul + ul {
		margin: 20px 0 0 0;
	}
}

@media only screen and (max-width: 559px) {
	.about_wrapper,
	.about_wrapper + .about_wrapper {
		margin-top: 25px;
	}
	
	.about_wrapper figure {
		width: calc(100% - 15px);
	}
	
	.about_wrapper figure::after {
		width: 30px;
		height: calc(100% - 30px);
		right: -15px;
		background-size: 33px;
	}
	
	.contents_wrapper h4.sub_ttl {
		margin: 0 0 20px 0;
	}
}

/*--- section target -----------------------------------*/

#target_list {
	width: 100%;
	margin-top: 45px;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
}

#target_list li {
	width: calc(50% - 25px);
	display: block;
}

#target_list li dl,
#target_list li dl dt,
#target_list li dl dd {
	display: block;
}

#target_list li dl dd,
#target_list li dl dd p + p {
	margin: 25px 0 0 0;
}

#target_list li dl dt + dd {
	margin: 20px 0 0 0;
}

.acc.drum {
	top: -20px;
	left: 20px;
}

.acc.drum svg {
	fill: #fac8dc;
	width: 167px;
	height: auto;
	overflow: inherit;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.acc.drum svg {
		height: 150px;
	}
}

#target_drum .drum01 {
	-webkit-animation: drum01 3s linear infinite;
	-moz-animation: drum01 3s linear infinite;
	animation: drum01 3s linear infinite;
	-webkit-transform-origin: 37% 41%;
	-moz-transform-origin: 37% 41%;
	transform-origin: 37% 41%;
}

@-webkit-keyframes drum01 {
	50% {
		-webkit-transform: rotate(8deg);
	}
}

@-moz-keyframes drum01 {
	50% {
		-moz-transform: rotate(8deg);
	}
}

@keyframes drum01 {
	50% {
		transform: rotate(8deg);
	}
}

#target_drum .drum02{
	-webkit-animation: drum02 2.3s linear infinite;
	-moz-animation: drum02 2.3s linear infinite;
	animation: drum02 2.3s linear infinite;
	-webkit-transform-origin: 60% 84.7%;
	-moz-transform-origin: 60% 84.7%;
	transform-origin: 60% 84.7%;
}

@-webkit-keyframes drum02 {
	50% {
		-webkit-transform: rotate(-5deg);
	}
}

@-moz-keyframes drum02 {
	50% {
		-moz-transform: rotate(-5deg);
	}
}

@keyframes drum02 {
	50% {
		transform: rotate(-5deg);
	}
}

#target_drum .drum03 {
	-webkit-animation: drum03 2.8s linear infinite;
	-moz-animation: drum03 2.8s linear infinite;
	animation: drum03 2.8s linear infinite;
	-webkit-transform-origin: 90.5% 31.5%;
	-moz-transform-origin: 90.5% 31.5%;
	transform-origin: 90.5% 31.5%;
}

@-webkit-keyframes drum03 {
	25% {
		-webkit-transform: rotate(3deg);
	}
	
	75% {
		-webkit-transform: rotate(-3deg);
	}
}

@-moz-keyframes drum03 {
	25% {
		-moz-transform: rotate(3deg);
	}
	
	75% {
		-moz-transform: rotate(-3deg);
	}
}

@keyframes drum03 {
	25% {
		transform: rotate(3deg);
	}
	
	75% {
		transform: rotate(-3deg);
	}
}

.acc.brush {
	top: -10px;
	right: 20px;
}

.acc.brush svg {
	fill: #fac8dc;
	width: 151px;
	height: auto;
	overflow: inherit;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.acc.brush svg {
		height: 115px;
	}
}

#target_brush .brush01 {
	-webkit-animation: brush01 2.3s linear infinite;
	-moz-animation: brush01 2.3s linear infinite;
	animation: brush01 2.3s linear infinite;
	-webkit-transform-origin: 50% 50%;
	-moz-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

@-webkit-keyframes brush01 {
	25% {
		-webkit-transform: rotate(3deg);
	}
	
	75% {
		-webkit-transform: rotate(-3deg);
	}
}

@-moz-keyframes brush01 {
	25% {
		-moz-transform: rotate(3deg);
	}
	
	75% {
		-moz-transform: rotate(-3deg);
	}
}

@keyframes brush01 {
	25% {
		transform: rotate(3deg);
	}
	
	75% {
		transform: rotate(-3deg);
	}
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	.acc.drum {
		left: 10px;
	}
	
	.acc.brush {
		right: 10px;
	}
}

@media only screen and (max-width: 959px) {
	#target_list {
		margin-top: 35px;
	}
	
	#target_list li {
		width: calc(50% - 20px);
	}
	
	.acc.drum svg {
		width: 156px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.drum svg {
			height: 140px;
		}
	}
	
	.acc.brush svg {
		width: 138px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.brush svg {
			height: 105px;
		}
	}
}

@media only screen and (max-width: 768px) {
	#target_list {
		margin-top: 30px;
		display: block;
	}
	
	#target_list li {
		width: 100%;
	}
	
	#target_list li + li {
		width: 100%;
		margin: 30px 0 0 0;
	}
	
	#target_list li dl dd,
	#target_list li dl dd p + p {
		margin: 20px 0 0 0;
	}
	
	#target_list li dl dt + dd {
		margin: 15px 0 0 0;
	}
	
	.acc.drum {
		top: 45px;
		left: auto;
		right: 10px;
	}
	
	.acc.drum svg {
		width: 145px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.drum svg {
			height: 130px;
		}
	}
	
	.acc.brush {
		top: auto;
		bottom: -20px;
	}
	
	.acc.brush svg {
		width: 125px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.brush svg {
			height: 95px;
		}
	}
}

@media only screen and (max-width: 559px) {
	#target_list {
		margin-top: 25px;
	}
	
	#target_list li + li {
		margin: 25px 0 0 0;
	}
	
	#target_list li dl dd {
		margin: 15px 0 0 0;
	}
	
	#target_list li dl dt + dd {
		margin: 10px 0 0 0;
	}
	
	.acc.drum {
		top: 80px;
	}
	
	.acc.drum svg {
		width: 139px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.drum svg {
			height: 125px;
		}
	}
	
	.acc.brush svg {
		width: 118px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.brush svg {
			height: 90px;
		}
	}
}

/*--- section payment -----------------------------------*/

.payment_wrapper {
	margin-top: 45px;
}

.payment_list,
.payment_list dt,
.payment_list dd {
	width: 100%;
	display: block;
}

.payment_list dt + dd {
	margin-top: 10px;
}

.payment_list dd + dd {
	margin-top: 15px;
}

.payment_box {
	width: 100%;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify; /*Firefox21*/
	-ms-flex-pack: justify; /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
}

.payment_box + .notes {
	margin-top: 10px;
	text-align: right;
}

.payment_box .common_table {
	width: calc(50% - 20px);
}

.payment_box .common_table .price {
	text-align: right;
}

.acc.candy {
	top: -10px;
	left: 20px;
}

.acc.candy svg {
	fill: #fad7a0;
	width: 226px;
	height: auto;
	overflow: inherit;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.acc.candy svg {
		height: 120px;
	}
}

#payment_candy .star {
	-webkit-animation: star 1s linear infinite;
	-moz-animation: star 1s linear infinite;
	animation: star 1s linear infinite;
	-webkit-transform-origin: 8.5% 20%;
	-moz-transform-origin: 8.5% 20%;
	transform-origin: 8.5% 20%;
}

@-webkit-keyframes star {
	0% {
		-webkit-transform: scale(.85, .85);
	}
	50% {
		-webkit-transform: scale(1, 1);
	}
	100% {
		-webkit-transform: scale(.85, .85);
	}
}

@-moz-keyframes star {
	0% {
		-moz-transform: scale(.85, .85);
	}
	50% {
		-moz-transform: scale(1, 1);
	}
	100% {
		-moz-transform: scale(.85, .85);
	}
}

@keyframes star {
	0% {
		transform: scale(.85, .85);
	}
	50% {
		transform: scale(1, 1);
	}
	100% {
		transform: scale(.85, .85);
	}
}

#payment_candy .candy01 {
	-webkit-animation: candy01 3s linear infinite;
	-moz-animation: candy01 3s linear infinite;
	animation: candy01 3s linear infinite;
	-webkit-transform-origin: 48% 75%;
	-moz-transform-origin: 48% 75%;
	transform-origin: 48% 75%;
}

@-webkit-keyframes candy01 {
	50% {
		-webkit-transform: rotate(7deg);
	}
}

@-moz-keyframes candy01 {
	50% {
		-moz-transform: rotate(7deg);
	}
}

@keyframes candy01 {
	50% {
		transform: rotate(7deg);
	}
}

#payment_candy .candy02 {
	-webkit-animation: candy02 2.3s linear infinite;
	-moz-animation: candy02 2.3s linear infinite;
	animation: candy02 2.3s linear infinite;
	-webkit-transform-origin: 83.5% 42.5%;
	-moz-transform-origin: 83.5% 42.5%;
	transform-origin: 83.5% 42.5%;
}

@-webkit-keyframes candy02 {
	50% {
		-webkit-transform: rotate(-6deg);
	}
}

@-moz-keyframes candy02 {
	50% {
		-moz-transform: rotate(-6deg);
	}
}

@keyframes candy02 {
	50% {
		transform: rotate(-6deg);
	}
}

.acc.ball {
	top: -15px;
	right: 20px;
}

.acc.ball svg {
	fill: #fad7a0;
	width: 159px;
	height: auto;
	overflow: inherit;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	.acc.ball svg {
		height: 120px;
	}
}

#payment_ball .ball01 {
	-webkit-animation: ball01 3s linear infinite;
	-moz-animation: ball01 3s linear infinite;
	animation: ball01 3s linear infinite;
	-webkit-transform-origin: 28% 62%;
	-moz-transform-origin: 28% 62%;
	transform-origin: 28% 62%;
}

@-webkit-keyframes ball01 {
	50% {
		-webkit-transform: rotate(15deg);
	}
}

@-moz-keyframes ball01 {
	50% {
		-moz-transform: rotate(15deg);
	}
}

@keyframes ball01 {
	50% {
		transform: rotate(15deg);
	}
}

#payment_ball .ball02 {
	-webkit-animation: ball02 2.3s linear infinite;
	-moz-animation: ball02 2.3s linear infinite;
	animation: ball02 2.3s linear infinite;
	-webkit-transform-origin: 85% 20.5%;
	-moz-transform-origin: 85% 20.5%;
	transform-origin: 85% 20.5%;
}

@-webkit-keyframes ball02 {
	50% {
		-webkit-transform: rotate(-20deg);
	}
}

@-moz-keyframes ball02 {
	50% {
		-moz-transform: rotate(-20deg);
	}
}

@keyframes ball02 {
	50% {
		transform: rotate(-20deg);
	}
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 1279px) {
	.acc.candy {
		left: 10px;
	}
	
	.acc.ball {
		right: 10px;
	}
}

@media only screen and (max-width: 959px) {
	.payment_wrapper {
		margin-top: 35px;
	}
	
	.payment_box + .notes {
		text-align: left;
	}
	
	.payment_box .common_table {
		width: calc(50% - 15px);
	}
	
	.acc.candy svg {
		width: 207px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.candy svg {
			height: 110px;
		}
	}
	
	.acc.ball svg {
		width: 146px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.ball svg {
			height: 110px;
		}
	}
}

@media only screen and (max-width: 768px) {
	.payment_wrapper {
		margin-top: 30px;
	}
	
	.payment_box {
		display: block;
	}
	
	.payment_box .common_table {
		width: 100%;
	}
	
	.payment_box .common_table + .common_table {
		margin-top: -1px;
	}
	
	.payment_box .common_table .sub_tr {
		display: none;
	}
	
	.acc.candy {
		top: 50px;
		left: auto;
		right: 10px;
	}
	
	.acc.candy svg {
		width: 188px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.candy svg {
			height: 100px;
		}
	}
	
	.acc.ball {
		top: auto;
		bottom: 15%;
	}
	
	.acc.ball svg {
		width: 133px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.ball svg {
			height: 100px;
		}
	}
}

@media only screen and (max-width: 559px) {
	.payment_wrapper {
		margin-top: 25px;
	}
	
	.payment_list dd + dd {
		margin-top: 10px;
	}
	
	.acc.candy {
		top: 80px;
	}
	
	.acc.candy svg {
		width: 179px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.candy svg {
			height: 95px;
		}
	}
	
	.acc.ball svg {
		width: 126px;
	}
	
	/* IE10_11 hack */
	@media all and (-ms-high-contrast: none) {
		.acc.ball svg {
			height: 95px;
		}
	}
}

/*--- section flow -----------------------------------*/

#flow_list {
	width: 100%;
	margin-top: 45px;
}

#flow_list > li {
	width: 100%;
	margin: 0 0 25px 0;
	display: block;
	position: relative;
}

#flow_list > li::after {
	content: "";
	width: 100%;
	height: 45px;
	margin: 25px 0 0 0;
	display: block;
	position: relative;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2025%2045%22%20style%3D%22enable-background%3Anew%200%200%2025%2045%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.arrow%7Bfill%3A%23FFA0AA%3B%7D%3C%2Fstyle%3E%20%3Cpolygon%20class%3D%22arrow%20arrow_01%22%20points%3D%2225%2C6.7%2025%2C0%2012.5%2C8.3%200%2C0%200%2C6.7%2012.5%2C15%22%2F%3E%20%3Cpolygon%20class%3D%22arrow%20arrow_02%22%20points%3D%2225%2C21.7%2025%2C15%2012.5%2C23.3%200%2C15%200%2C21.7%2012.5%2C30%22%2F%3E%20%3Cpolygon%20class%3D%22arrow%20arrow_03%22%20points%3D%2225%2C36.7%2025%2C30%2012.5%2C38.3%200%2C30%200%2C36.7%2012.5%2C45%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 25px 45px;
}

#flow_list > li:last-child::after {
	content: none;
}

#flow_list > li figure {
	width: 100px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#flow_list > li figure img {
	width: auto;
	height: 100px;
	margin: 0 auto;
	display: block;
}

#flow_list > li:last-child figure img {
	height: 90px;
}

.flow_box {
	width: 100%;
	padding: 0 0 0 140px;
	display: block;
}

.flow_box dt h4 {
	width: 100%;
	margin: 0 0 25px 0;
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	font-size: 2.3rem;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: .05em;
	white-space: nowrap;
	text-overflow: ellipsis;
	color: #00a064;
	overflow: hidden;
}

.flow_box dt h4::after {
	content: "";
	width: 100%;
	height: 4px;
	margin: 5px 0 0 0;
	display: block;
	background: -webkit-radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background: -moz-radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background: -ms-radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background: radial-gradient(circle closest-side, #ffba00, #ffba00 2px, transparent 2px, transparent);
	background-size: 8px 4px;
}

.flow_box dd p + p,
.flow_box dd p + ul,
.flow_box dd ul + p,
.flow_box dd ul + ul {
	margin: 25px 0 0 0;
}

.flow_box dd ul dl dt,
.flow_box dd ul dl dd {
	display: inline;
}

.flow_box dd ul dl dt::after {
	content: "：";
}

#flow_contact {
	width: 100%;
	margin: 30px 0 0 0;
	display: block;
}

#flow_contact li {
	width: 100%;
	max-width: 600px;
	display: block;
	overflow: hidden;
	background: #fffabb;
	position: relative;
	border-radius: 5px;
}

#flow_contact li:nth-child(2) {
	margin-top: 20px;
}

#flow_contact li a {
	text-decoration: none;
}

#flow_contact li a {
	height: 100%;
	padding: 20px 10px;
	display: -webkit-box; /*Android4.3*/
	display: -moz-box; /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: center; /*Android4.3*/
	-moz-box-pack: center; /*Firefox21*/
	-ms-flex-pack: center; /*IE10*/
	-webkit-justify-content: center; /*PC-Safari,iOS8.4*/
	justify-content: center;
	-webkit-box-align: center; /*Android4.3*/
	-moz-box-align: center; /*Firefox21*/
	-ms-flex-align: center; /*IE10*/
	-webkit-align-items: center; /*PC-Safari,iOS8.4*/
	align-items: center;
	-ms-flex-wrap: wrap; /*IE10*/
	-webkit-flex-wrap: wrap; /*PC-Safari,iOS8.4*/
	flex-wrap: wrap;
}

#flow_contact li p,
#flow_contact li a p {
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	color: #69412d;
	font-weight: bold;
	vertical-align: middle;
	margin: 0 10px;
	display: inline-block;
}

#flow_contact li > p:first-child,
#flow_contact li > a p:first-child {
	font-family: 'tsukushi-maruA', "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
	color: #e64678;
	font-size: 2.8rem;
	margin: 0 10px;
}

#flow_contact li:nth-child(2) > a p {
	margin: 0 10px;
}

#flow_contact li:nth-child(2) > a p:first-child {
	margin: -4px 10px 0;
}

#flow_contact li img {
	width: auto;
	display: inline-block;
}

#flow_contact li:nth-child(1) img {
	height: 30px;
	margin: 0 0 -4px 0;
}

/* IE10_11 hack */
@media all and (-ms-high-contrast: none) {
	#flow_contact li:nth-child(1) p:first-child {
		width: 247.5px;
	}
}

#flow_contact li:nth-child(2) img {
	height: .8em;
	margin: 0 .3em -0.05em 0;
}

/* レスポンシブ設定 ----------------------------*/

@media only screen and (max-width: 959px) {
	#flow_list {
		margin-top: 35px;
	}
	
	#flow_list > li figure {
		width: 90px;
	}
	
	.flow_box {
		padding: 0 0 0 125px;
	}
	
	.flow_box dt h4 {
		font-size: 2.1rem;
	}
	
	#flow_contact {
		margin: 25px 0 0 0;
	}
	
	#flow_contact li:nth-child a {
		padding: 10px;
	}
}

@media only screen and (max-width: 768px) {
	#flow_list {
		margin-top: 30px;
	}
	
	#flow_list > li {
		margin: 0 0 20px 0;
	}
	
	#flow_list > li::after {
		height: 40px;
		margin: 20px 0 0 0;
		background-size: auto 40px;
	}
	
	#flow_list > li figure {
		width: 80px;
	}
	
	#flow_list > li figure img {
		height: 90px;
	}
	
	#flow_list > li:last-child figure img {
		height: 80px;
	}
	
	.flow_box {
		padding: 0 0 0 110px;
	}
	
	.flow_box dt h4 {
		margin: 0 0 20px 0;
		font-size: 1.9rem;
	}
	
	.flow_box dd p + p,
	.flow_box dd p + ul,
	.flow_box dd ul + p,
	.flow_box dd ul + ul {
		margin: 20px 0 0 0;
	}
	
	#flow_contact {
		margin: 20px 0 0 0;
	}
	
	#flow_contact li > p:first-child,
	#flow_contact li > a p:first-child {
		font-size: 2.6rem;
	}
}

@media only screen and (max-width: 559px) {
	#flow_list {
		margin-top: 25px;
	}
	
	#flow_list > li {
		margin: 0 0 15px 0;
	}
	
	#flow_list > li::after {
		height: 35px;
		margin: 15px 0 0 0;
		background-size: auto 35px;
	}
	
	#flow_list > li figure {
		width: 70px;
	}
	
	#flow_list > li figure img {
		height: 80px;
	}
	
	#flow_list > li:last-child figure img {
		height: 70px;
	}
	
	.flow_box {
		padding: 0;
	}
	
	.flow_box > dt {
		height: 100px;
		padding: 0 0 0 90px;
		display: -webkit-box; /*Android4.3*/
		display: -moz-box; /*Firefox21*/
		display: -ms-flexbox; /*IE10*/
		display: -webkit-flex; /*PC-Safari,iOS8.4*/
		display: flex;
		-webkit-box-align: center; /*Android4.3*/
		-moz-box-align: center; /*Firefox21*/
		-ms-flex-align: center; /*IE10*/
		-webkit-align-items: center; /*PC-Safari,iOS8.4*/
		align-items: center;
	}
	
	#flow_list > li:last-child .flow_box > dt {
		height: 90px;
	}
	
	.flow_box > dt h4 {
		font-size: 1.7rem;
	}
	
	#flow_contact li:nth-child(2) {
		margin-top: 15px;
	}
	
	#flow_contact li > p:first-child,
	#flow_contact li > a p:first-child {
		font-size: 2.4rem;
	}
	
	#flow_contact li:nth-child(2) > a p:first-child {
		line-height: 1.2;
		text-align: center;
		margin: 0 10px;
	}
	
	#flow_contact li:nth-child(2) img {
		height: 25px;
	}
}
