﻿.sp {
	display: none
}
.pc {
	display: inherit
}
.titleSub h1 {
	margin: 6px auto 10px;
	padding: 10px 0;
	font-size: 2.2rem
}
h2.dashed {
	margin: 36px auto 10px;
	padding: 10px 0;
	font-size: 2.2rem;
	font-weight: 700;
	color: #00B900;
	border-bottom: dashed 2px #00B900
}
h3.sideline {
	font-size: 1.6rem;
	padding: .25em .5em;
	color: #494949;
	background: transparent;
	border-left: solid 5px #CCC;
	margin-bottom: 1.4rem
}
p {
	font-size: 1.6rem;
	margin-bottom: 3rem;
	margin-left: 5px
}
.menu-4 {
	/*margin: 0 auto 0 7em;*/
    text-align: center;
	width: 100%
}
.menu-4 li {
	display: inline;
	width: 25%
}
.menu-4 li a img {
	max-width: 100%
}
.menu-4 li a.active img {
	opacity: .5
}
ul {
	padding: 0
}
li {
	list-style-type: none
}
dd {
	margin-left: 0
}
.flow {
	border: 3px solid #00B900
}
.flow>li {
	padding: 30px
}
.flow>li:not(:last-child) {
	border-bottom: 3px solid #00B900;
	position: relative
}
.flow>li:not(:last-child)::before, .flow>li:not(:last-child)::after {
	content: "";
	border: solid transparent;
	position: absolute;
	top: 100%;
	left: 15%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%)
}
.flow>li:not(:last-child)::before {
	border-width: 22px;
	border-top-color: #00B900
}
.flow>li:not(:last-child)::after {
	border-width: 18px;
	border-top-color: #fff
}
.flow>li dl {
	margin: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}
.flow>li dl dt {
	font-size: 2rem;
	font-weight: 600;
	color: #00B900;
	-ms-flex-preferred-size: 20%;
	flex-basis: 20%;
	margin-right: 1vw;
	text-align: left
}
.flow>li dl dt .icon {
	font-size: 1.4rem;
	color: #fff;
	background: #00B900;
	background: -moz-linear-gradient(left, rgba(0, 185, 0, 1) 0%, rgba(0, 215, 0, 1) 100%);
	background: -webkit-linear-gradient(left, rgba(0, 185, 0, 1) 0%, rgba(0, 215, 0, 1) 100%);
	background: linear-gradient(to right, rgba(0, 185, 0, 1) 0%, rgba(0, 215, 0, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6b90db', endColorstr='#66d5e9', GradientType=1);
	padding: 5px 10px;
	margin-bottom: 10px;
	display: block;
	border-radius: 20px;
	text-align: center
}
.flow>li dl dd {
	text-align: left
}
.fadeinAnime {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1.5s;
	-ms-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-name: fadeinAnime;
	-ms-animation-name: fadeinAnime;
	animation-name: fadeinAnime;
	visibility: visible!important
}
@-webkit-keyframes fadeinAnime {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px)
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0)
	}
}
@keyframes fadeinAnime {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		-ms-transform: translateY(-20px);
		transform: translateY(-20px)
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0)
	}
}
.img-mashikaku {
	width: 100%;
	height: 360px;
	background-image: url(/service/line/images/img-line-mashikaku_y.jpg);
	background-repeat: no-repeat;
	background-size: contain
}
.box-mashikaku {
	width: 470px;
	border: 1px solid #ccc;
	background-color: #fff;
	padding: 20px;
	margin-top: 8%;
	margin-right: 2%;
	float: right;
	box-shadow: 2px 2px 5px 0 rgba(200, 200, 200, 1)
}
.box-mashikaku p {
	text-align: center;
	margin-bottom: 0;
	margin-left: 0
}
.box-mashikaku p span:first-child {
	font-size: 2rem
}
.box-mashikaku p span:last-child {
	font-size: 3.2rem;
	font-weight: 400;
	color: #0068b7
}
.flex {
	display: flex;
	align-items: flex-start;
	padding: 20px 0 0
}
.box-l {
	width: 40%
}
.box-r {
	width: 60%
}
.parent {
	position: relative
}
.child-bg {
	position: absolute;
	width: 400px;
	height: 240px;
	top: 80px;
	left: 50px;
	background-color: #e7ffe7;
	z-index: 1
}
.child-photo {
	position: absolute;
	width: 70%;
	top: 0;
	right: 0;
	z-index: 2
}
.flex p {
	margin-left: 0;
	margin-left: 0
}
h2.blk-line {
	margin: 0 0 10px;
	padding: 0 0 10px;
	font-size: 2.2rem;
	font-weight: 700;
	color: #000;
	border-bottom: solid 5px #000
}
.pad-btm-110 {
	padding-bottom: 110px
}
@media screen and (max-width: 896px) {
	h1, h2.dashed {
		margin: 18px 5px 10px
	}
	.flow>li dl {
		display: block
	}
	.pc {
		display: none
	}
	.sp {
		display: inherit
	}
	.box-mashikaku {
		width: 95%;
		margin: 36% 2.5% 0;
		clear: both
	}
	.flex {
		display: block;
		width: 100%;
		padding: 36px 0 0
	}
	.box-l, .box-r {
		width: 100%
	}
	section.fadein {
		width: 95%;
		margin: 36px auto 0
	}
	.parent {
		position: inherit
	}
	.child-bg {
		display: none
	}
	.child-photo {
		position: inherit;
		width: 50%;
		margin-left: 25%
	}
}
@media screen and (min-width: 897px) {
	ul {
		margin: 0;
		padding: 0
	}
}
@media screen and (max-width: 767px) {
	.menu-4 li {
        display: inline-block;
        width: 30%;
}