@charset "utf-8";


/**************************************************50
 * reason
 **************************************************/
#reason{
}
#reason.lazyloaded{
	background-image: url("https://ins-parasol.co.jp/images/user/reason/img_010.jpg");
	background-repeat: no-repeat;
}
#reason:after{
	content: "";
	display: block;
}
#reason h2{
	font-weight: normal;
	line-height: 1;
}
#reason h2 span{
	display: block;
	margin-bottom: 1em;
}
#reason h2 img{
	width: 100%;
}
#reason > a{
}
#reason > a img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: opacity 0.2s ease-out 0s;
}
#reason > a:hover img{
	opacity: 0.7
}
@media screen and (max-width:639px){
	#reason{
		text-align: center;
	}
	#reason.lazyloaded{
		background-position: center bottom;
		background-size: 100% auto;
	}
	#reason:after{
		padding-top: 113.75%;
	}
	#reason h2{
		padding: 3.125%;
	}
}
@media screen and (min-width:640px){
	#reason{
		position: relative;
	}
	#reason.lazyloaded{
		background-attachment: fixed;
	}
	_::-webkit-full-page-media, _:future, :root #reason.lazyloaded{
		background-attachment: scroll;
	}
	#reason:before{
		background-color: #CCCCCC;
		content: "";
		display: block;
		height: -webkit-calc(60% - 80px);
		height: calc(60% - 80px);
		position: absolute;
		bottom: 80px;
		width: 1px;
		z-index: 1;
	}
	#reason > a{
		position: absolute;
		bottom: 0;
	}
}
@media screen and (min-width:640px) and (max-width:1023px){
	#reason.lazyloaded{
		background-position: left 72px;
	}
	_::-webkit-full-page-media, _:future, :root #reason.lazyloaded{
		background-position: left top;
	}
}
@media screen and (min-width:640px) and (max-width:1559px){
	#reason.lazyloaded{
		background-size: 50% auto;
	}
	#reason:before{
		left: 57.5%;
	}
	#reason:after{
		padding-top: 56.875%;
	}
	#reason h2{
		position: absolute;
		top: 25%;
		left: 53.125%;
		width: 43.75%;
		max-width: 600px;
	}
	#reason > a{
		left: 55%;
	}
}
@media screen and (max-width:767px){
	#reason:after{
	}
	#reason h2{
	}
	#reason h2 span{
		padding: 0 3.125%;
		text-align: left;
	}
	#reason h2 img{
	}
}
@media screen and (min-width:768px){
	#reason{
	}
	#reason h2{
	}
	#reason h2 span{
	}
	#reason h2 img{
	}
}
@media screen and (min-width:1024px) and (max-width:1599px){
	#reason.lazyloaded{
		background-position: left 150px;
	}
	_::-webkit-full-page-media, _:future, :root #reason.lazyloaded{
		background-position: left top;
	}
}
@media screen and (min-width:1600px){
	#reason{
		height: 910px;
	}
	#reason.lazyloaded{
		background-position: -webkit-calc(50% - 400px) 150px;
		background-position: calc(50% - 400px) 150px;
	}
	_::-webkit-full-page-media, _:future, :root #reason.lazyloaded{
		background-position: -webkit-calc(50% - 400px) top;
		background-position: calc(50% - 400px) top;
	}
	#reason:before{
		left: -webkit-calc(50% + 94px);
		left: calc(50% + 94px);
	}
	#reason h2{
		padding-top: 25%;
		padding-left: 53.125%;
	}
	#reason > a{
		left: -webkit-calc(50% + 80px);
		left: calc(50% + 80px);
	}
}


.reason_box{
}
.reason_box > div{
	position: relative;
}
.reason_box > div > span{
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
	color: #FFFFFF;
	display: block;
	height: 50em;
	position: absolute;
	top: 0;
	left: 0;
	text-align: left;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.reason_box > div > span:before{
	background-color: #FFFFFF;
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	width: 1px;
}
.reason_box > div h3{
	color: #004174;
}
.reason_box > div > p{
}
.reason_box > div figure{
	background-color: #FFFFFF;
	border-radius: 10px;
}
.reason_box > div figure picture{
}
.reason_box > div figure picture img{
	vertical-align: top;
}
.reason_box > div figure figcaption{
}
.reason_box > div figure h4{
}
.reason_box > div figure h4:before,
.reason_box > div figure h4:after{
	background-color: #FFAF48;
	content: "";
	display: block;
	position: absolute;
}
.reason_box > div figure h4:after{
	border-radius: 50%;
}
.reason_box > div figure figcaption p{
	font-size: 75%;
}
@media screen and (max-width:479px){
	.reason_box > div{
		padding-left: -webkit-calc(3.125% + 3em);
		padding-left: calc(3.125% + 3em);
	}
	.reason_box > div > span{
		line-height: 6em;
		padding-top: 10.8em;
		width: 6em;
	}
	.reason_box > div > span:before{
		height: 3.375em;
		top: 6.825em;
	}
}
@media screen and (min-width:480px){
	.reason_box > div{
		padding-left: -webkit-calc(3.125% + 5em);
		padding-left: calc(3.125% + 5em);
	}
	.reason_box > div > span{
		line-height: 10em;
		padding-top: 18em;
		width: 10em;
	}
	.reason_box > div > span:before{
		height: 5.625em;
		top: 11.375em;
	}
}
@media screen and (max-width:767px){
	.reason_box{
		padding-top: 6.25%;
		padding-bottom: 6.25%;
	}
	.reason_box > div{
		margin-left: auto;
		margin-right: auto;
		width: 93.75%;
	}
	.reason_box > div > span{
		font-size: 50%;
	}
	.reason_box > div h3{
		font-size: 125%;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	.reason_box > div > p{
	}
	.reason_box > div figure{
		margin-top: 20px;
	}
	.reason_box > div figure h4{
	}
	.reason_box > div figure picture{
		padding: 0 0.8em;
		text-align: center;
	}
	.reason_box > div figure picture img{
		margin-bottom: 0.5em;
	}
	.reason_box > div figure picture img[src$="voice_010.jpg"],
	.reason_box > div figure picture img[src$="voice_020.jpg"],
	.reason_box > div figure picture img[src$="voice_030.jpg"]{
		width: 100%;
	}
	.reason_box > div figure picture img[src$="voice_011.png"],
	.reason_box > div figure picture img[src$="voice_021.png"],
	.reason_box > div figure picture img[src$="voice_031.png"]{
		width: 50%;
		max-width: 200px;
	}
	.reason_box > div figure figcaption{
	}
	.reason_box > div figure h4{
		font-size: 150%;
		padding-left: 3em;
		position: relative;
	}
	.reason_box > div figure h4:before,
	.reason_box > div figure h4:after{
		-ms-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.reason_box > div figure h4:before{
		height: 1px;
		top: 50%;
		left: 0;
		width: 2em;
	}
	.reason_box > div figure h4:after{
		height: 6px;
		top: 50%;
		left: 2em;
		width: 6px;
	}
	.reason_box > div figure figcaption p{
		padding: 0 0.8em;
	}
}
@media screen and (min-width:768px){
	.reason_box{
		min-height: 900px;
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.reason_box > div{
	}
	.reason_box > div > span{
	}
	.reason_box > div h3{
		line-height: 1.2;
		margin-bottom: 50px;
	}
	.reason_box > div > p{
	}
	.reason_box > div figure{
		min-height: 22em;
		margin-top: 50px;
		position: relative;
	}
	.reason_box > div figure h4{
		font-size: 200%;
		padding-top: 4em;
		position: absolute;
		top: 0;
		left: 0;
		text-align: left;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	.reason_box > div figure h4:before,
	.reason_box > div figure h4:after{
		-ms-transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	.reason_box > div figure h4:before{
		height: 3em;
		top: 0;
		width: 1px;
	}
	.reason_box > div figure h4:after{
		height: 8px;
		top: 3em;
		width: 8px;
	}
	.reason_box > div figure picture{
		margin-bottom: 30px;
	}
	.reason_box > div figure picture img{
	}
	.reason_box > div figure figcaption{
	}
	.reason_box > div figure figcaption p{
	}
}
@media screen and (min-width:768px) and (max-width:1023px){
	.reason_box > div{
		padding-left: 210px;
	}
	.reason_box > div h3{
		font-size: 250%;
	}
	.reason_box > div figure{
		padding: 30px 30px 30px 6em;
	}
	.reason_box > div figure h4{
		line-height: 3em;
		width: 3em;
	}
	.reason_box > div figure h4:before,
	.reason_box > div figure h4:after{
		left: 1.5em;
	}
	.reason_box > div figure picture img[src$="voice_010.jpg"],
	.reason_box > div figure picture img[src$="voice_020.jpg"],
	.reason_box > div figure picture img[src$="voice_030.jpg"]{
		margin-right: 10px;
		width: 75%;
	}
	.reason_box > div figure picture img[src$="voice_011.png"],
	.reason_box > div figure picture img[src$="voice_021.png"],
	.reason_box > div figure picture img[src$="voice_031.png"]{
		width: -webkit-calc(25% - 10px);
		width: calc(25% - 10px);
	}
}
@media screen and (min-width:1024px){
	.reason_box > div{
		padding-left: 230px;
	}
	.reason_box > div h3{
		font-size: 325%;
	}
	.reason_box > div figure{
		padding: 50px 50px 50px 8em;
	}
	.reason_box > div figure h4{
		line-height: 4em;
		width: 4em;
	}
	.reason_box > div figure h4:before,
	.reason_box > div figure h4:after{
		left: 2em;
	}
	.reason_box > div figure picture img[src$="voice_010.jpg"],
	.reason_box > div figure picture img[src$="voice_020.jpg"],
	.reason_box > div figure picture img[src$="voice_030.jpg"]{
		margin-right: 20px;
		width: -webkit-calc(100% - 100px - 30px);
		width: calc(100% - 100px - 30px);
		max-width: 460px
	}
	.reason_box > div figure picture img[src$="voice_011.png"],
	.reason_box > div figure picture img[src$="voice_021.png"],
	.reason_box > div figure picture img[src$="voice_031.png"]{
		width: 100px;
	}
}


/**************************************************50
 * reason1
 **************************************************/
#reason1{
	background: -webkit-linear-gradient(300deg, #FBFDCC, #92D2DC);
	background: linear-gradient(150deg, #FBFDCC, #92D2DC);
}
#reason1.reason_box > div > span.lazyloaded{
	background-image: url("https://ins-parasol.co.jp/images/user/reason/reason_no01.png");
}
#reason1.reason_box > div h3{
}
@media screen and (max-width:767px){
	#reason1{
	}
}
@media screen and (min-width:768px){
	#reason1{
	}
}
@media screen and (min-width:1600px){
	#reason1.lazyloaded{
		background-attachment: fixed, scroll;
		background-image: url("https://ins-parasol.co.jp/images/user/reason/img_020.jpg"), -webkit-linear-gradient(300deg, #FBFDCC, #92D2DC);
		background-image: url("https://ins-parasol.co.jp/images/user/reason/img_020.jpg"), linear-gradient(150deg, #FBFDCC, #92D2DC);
		background-position: -webkit-calc(50% - 600px) 150px, center center;
		background-position: calc(50% - 600px) 150px, center center;
		background-repeat: no-repeat, no-repeat;
		background-size: 400px auto, cover;
	}
	#reason1.lazyloaded{
	}
	_::-webkit-full-page-media, _:future, :root #reason1.lazyloaded{
		background-attachment: scroll, scroll;
		background-position: -webkit-calc(50% - 600px) top, center center;
		background-position: calc(50% - 600px) top, center center;
	}
	#reason1 > div{
		margin-left: auto;
		width: -webkit-calc(100% - 390px);
		width: calc(100% - 390px);
	}
}


/**************************************************50
 * reason2
 **************************************************/
#reason2{
}
#reason2.reason_box > div > span{
	color: #CCCCCC;
}
#reason2.reason_box > div > span.lazyloaded{
	background-image: url("https://ins-parasol.co.jp/images/user/reason/reason_no02.png");
}
#reason2.reason_box > div > span:before{
	background-color: #CCCCCC;
}
#reason2.reason_box > div h3{
}
@media screen and (max-width:767px){
	#reason2{
	}
}
@media screen and (min-width:768px){
	#reason2{
	}
}
@media screen and (min-width:1600px){
	#reason2.lazyloaded{
		background-attachment: fixed, scroll;
		background-image: url("https://ins-parasol.co.jp/images/user/reason/img_030.jpg");
		background-image: url("https://ins-parasol.co.jp/images/user/reason/img_030.jpg");
		background-position: -webkit-calc(50% - 535px) 150px;
		background-position: calc(50% - 535px) 150px;
		background-repeat: no-repeat;
		background-size: 530px auto;
	}
	_::-webkit-full-page-media, _:future, :root #reason2.lazyloaded{
		background-attachment: scroll;
		background-position: -webkit-calc(50% - 535px) top;
		background-position: calc(50% - 535px) top;
	}
	#reason2 > div{
		margin-left: auto;
		width: -webkit-calc(100% - 390px);
		width: calc(100% - 390px);
	}
}


/**************************************************50
 * reason3
 **************************************************/
#reason3{
	background: -webkit-linear-gradient(300deg, #92D2DC, #FBFDCC);
	background: linear-gradient(150deg, #92D2DC, #FBFDCC);
}
#reason3.reason_box > div > span.lazyloaded{
	background-image: url("https://ins-parasol.co.jp/images/user/reason/reason_no03.png");
}
#reason3.reason_box > div h3{
}
@media screen and (max-width:767px){
	#reason3{
	}
}
@media screen and (min-width:768px){
	#reason3{
	}
}
@media screen and (min-width:1600px){
	#reason3.lazyloaded{
		background-attachment: fixed, fixed, scroll;
		background-image: url("https://ins-parasol.co.jp/images/user/reason/img_040.jpg"), url("https://ins-parasol.co.jp/images/user/reason/img_050.jpg"), -webkit-linear-gradient(300deg, #92D2DC, #FBFDCC);
		background-image: url("https://ins-parasol.co.jp/images/user/reason/img_040.jpg"), url("https://ins-parasol.co.jp/images/user/reason/img_050.jpg"), linear-gradient(150deg, #92D2DC, #FBFDCC);
		background-position: -webkit-calc(50% + 505px) 150px, -webkit-calc(50% + 505px) 450px, center center;
		background-position: calc(50% + 505px) 150px, calc(50% + 505px) 450px, center center;
		background-repeat: no-repeat, no-repeat, no-repeat;
		background-size: 590px auto, 590px auto, cover;
	}
	_::-webkit-full-page-media, _:future, :root #reason3.lazyloaded{
		background-attachment: scroll, scroll, scroll;
		background-position: -webkit-calc(50% + 505px) top, -webkit-calc(50% + 505px) 300px, center center;
		background-position: calc(50% + 505px) top, calc(50% + 505px) 300px, center center;
	}
	_::-webkit-full-page-media, _:future, :root #reason3 > div figure{
		margin-right: auto;
		width: -webkit-calc(100% - 390px);
		width: calc(100% - 390px);
	}
}


/**************************************************50
 * line
 **************************************************/
#line{
	text-align: center;
}
#lines{
	margin-left: auto;
	margin-right: auto;
}
#lines .lines{
	position: relative;
}
#lines .lines img[src*="img_"],
#lines .lines img[data-src*="img_"]{
	width: 100%;
}
#lines .lines img[src^="data:image"],
#lines .lines img[data-src^="data:image"]{
	position: absolute;
	top: 69.25%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 20%
}
#line #line_btn{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background-color: #54BE38;
	border-radius: 1000px;
	color: #FFFFFF;
	display: inline-block;
	height: 2.5em;
	line-height: 2.5;
	position: relative;
	text-decoration: none;
	transition: opacity 0.2s ease-out 0s;
	width: 16.5625em;
}
#line #line_btn:hover{
	opacity: 0.7;
}
#line #line_btn:before{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 1.5em;
	position: absolute;
	top: 50%;
	right: -webkit-calc(50% + 5.25em);
	right: calc(50% + 5.25em);
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 1.5em;
}
#line.lazyloaded #line_btn:before{
	background-image: url("https://ins-parasol.co.jp/images/user/icon/line.svg");
}
#line .slick-dots{
	position: static;
}
#line .slick-prev{
	left: 0;
	-ms-transform: translate(-100%, -50%);
	-webkit-transform: translate(-100%, -50%);
	transform: translate(-100%, -50%);
}
#line .slick-next{
	right: 0;
	-ms-transform: translate(100%, -50%);
	-webkit-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
}
#line .slick-prev:before,
#line .slick-next:before{
	font-family: "Material Design Icons";
	color: #666666;
}
#line .slick-prev:before{
	content: '\F0141';
}
#line .slick-next:before{
	content: '\F0142';
}
@media screen and (max-width:319px){
	#line #line_btn{
		font-size: 87.5%;
	}
}
@media screen and (min-width:360px) and (max-width:413px){
	#line #line_btn{
		font-size: 112.5%;
	}
}
@media screen and (min-width:414px) and (max-width:479px){
	#line #line_btn{
		font-size: 125%;
	}
}
@media screen and (min-width:480px) and (max-width:639px){
	#line #line_btn{
		font-size: 150%;
	}
}
@media screen and (min-width:640px) and (max-width:767px){
	#line #line_btn{
		font-size: 175%;
	}
}
@media screen and (max-width:767px){
	#line{
	}
	#lines{
		margin-bottom: 3.125%;
	}
}
@media screen and (min-width:768px){
	#line{
	}
	#lines{
		margin-bottom: 50px;
	}
	#line #line_btn{
		font-size: 200%;
	}
}
@media screen and (max-width:1199px){
	#lines{
		width: 100%;
	}
}
@media screen and (min-width:1200px){
	#line{
		margin-left: auto;
		margin-right: auto;
		width: 1200px;
	}
	#lines{
		width: 84.5%;
	}
	#line .slick-prev,
	#line .slick-next{
		height: 80px;
		width: 80px;
	}
	#line .slick-prev:before,
	#line .slick-next:before{
		font-size: 80px;
	}
}


/**************************************************50
 * partnerships
 **************************************************/
#partnerships{
	text-align: center;
}
@media screen and (max-width:767px){
	#partnerships{
		padding-top: 6.25%;
	}
	#partnerships picture{
		margin: 0 auto 3.125%;
		width: 93.75%;
	}
}
@media screen and (min-width:768px){
	#partnerships{
		padding-top: 100px;
	}
	#partnerships picture{
		margin-bottom: 50px;
	}
}


/**************************************************50
 * news
 **************************************************/
#news{
}
#news > b{
	display: block;
	line-height: 1.4;
}
#news #news_list > a{
}
@media screen and (max-width:767px){
	#news{
		margin-bottom: 6.25%;
		padding-top: 6.25%;
	}
	#news > b{
		font-size: 125%;
		padding: 0 6.25%;
	}
	#news #news_list > a{
	}
}
@media screen and (min-width:768px){
	#news{
		margin-bottom: 100px;
		padding-top: 100px;
	}
	#news > b{
		font-size: 150%;
		margin: -20px 0 20px;
		padding-left: calc(17% + 1.5em);
	}
}
@media screen and (min-width:1024px){
	#news #news_list > a{
		margin-right: 0;
	}
}


/**************************************************50
 * menu
 **************************************************/
#menu{
	text-align: center;
}
#menu > div{
	background-color: #F2F2F2;
}
#menu > div a{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background-color: transparent;
	border-color: transparent;
	border-style: solid;
	border-width: 1px;
	color: #666666;
	display: inline-block;
	position: relative;
	text-decoration: none;
	transition: background-color,border-color 0.2s ease-out 0s;
	vertical-align: top;
}
#menu > div a:hover{
	background-color: #FFFFFF;
	border-color: #999999;
}
#menu > div a:before{
	content: "";
	display: block;
	padding-top: 100%;
}
#menu > div a:after{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background-position: left top, right top, left bottom, right bottom;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-size: 10% 10%, 10% 10%, 10% 10%, 10% 10%;
	content: "";
	display: block;
	height: -webkit-calc(100% + (2px * 2));
	height: calc(100% + (2px * 2));
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	transition: background-image 0.2s ease-out 0s;
	width: -webkit-calc(100% + (2px * 2));
	width: calc(100% + (2px * 2));
	z-index: 1;
}
#menu > div a:hover:after{
	background-image: -webkit-linear-gradient(0deg, #FFFFFF, #FFFFFF), -webkit-linear-gradient(0deg, #FFFFFF, #FFFFFF), -webkit-linear-gradient(0deg, #FFFFFF, #FFFFFF), -webkit-linear-gradient(0deg, #FFFFFF, #FFFFFF);
	background-image: linear-gradient(0deg, #FFFFFF, #FFFFFF), linear-gradient(0deg, #FFFFFF, #FFFFFF), linear-gradient(0deg, #FFFFFF, #FFFFFF), linear-gradient(0deg, #FFFFFF, #FFFFFF);
}
#menu > div a img{
	position: absolute;
	top: 30%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 2;
}
#menu > div a span{
	position: absolute;
	top: 65%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: 2;
}
@media screen and (max-width:767px){
	#menu{
		margin-bottom: 6.25%;
	}
	#menu > div{
		margin-top: -3.125%;
		padding-top: 6.25%;
		padding-bottom: 3.125%;
	}
	#menu > div a{
		font-size: 87.5%;
		margin: 0 1.5625% 3.125%;
		width: 120px;
	}
}
@media screen and (min-width:768px){
	#menu{
		margin-bottom: 100px;
	}
	#menu > div{
		margin-top: -50px;
		padding-top: 50px;
		padding-bottom: 1px;
	}
	#menu > div a{
		margin-bottom: 50px;
	}
}
@media screen and (min-width:768px) and (max-width:939px){
	#menu > div a{
		margin-left: 20px;
		margin-right: 20px;
		width: 202px;
	}
}
@media screen and (min-width:940px) and (max-width:1023px){
	#menu > div a{
		margin-left: 25px;
		margin-right: 25px;
		width: 216px;
	}
}
@media screen and (min-width:1024px){
	#menu > div a{
		margin-left: 4.5%;
		margin-right: 4.5%;
		width: 216px;
	}
}


/**************************************************50
 * products
 **************************************************/
#products{
}
#products .title_section{
	border-color: #999999;
}
#products .title_section:after{
	background-color: #999999;
}
#products > div{
}
#products > div:after{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
}
#products > div a{
	border-left: 1px solid #999999;
	color: #333333;
	display: inline-block;
	padding-left: 1em;
	position: relative;
	text-align: left;
	text-decoration: none;
	vertical-align: top;
}
#products > div a:before,
#products > div a:after{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	content: "";
	display: block;
	position: absolute;
	transition: width 0.2s ease-out 0s;
	width: 0;
}
#products > div a:before{
	height: 100%;
	top: 50%;
	left: -1px;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#products > div a:hover:before{
	width: 8px;
}
#products > div a:after{
	background-color: #999999;
	height: 1px;
	bottom: 0;
	left: 50%;
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	transition: width 0.2s ease-out 0s;
}
#products > div a:hover:after{
	width: -webkit-calc(100% - 2em);
	width: calc(100% - 2em);
}
#products > div a span{
	display: block;
	font-size: 50%;
	margin-top: -1em;
}
#products > p{
}
#products > hr{
	background-color: #CCCCCC;
}
@media screen and (max-width:480px){
	#products > div a{
		font-size: 87.5%;
	}
}
@media screen and (max-width:767px){
	#products{
		margin-bottom: 6.25%;
		text-align: center;
	}
	#products .title_section{
	}
	#products * + .title_section{
		margin-top: 3.125%;
	}
	#products > div{
		margin-bottom: 3.125%;
	}
	#products > div:after{
		padding-top: 58.91179540709812%;
	}
	#products > div a{
		margin: 0 1.5625% 3.125%;
		width: 15em;
	}
	#products > p{
	}
	#products > hr{
		display: none;
	}
}
@media screen and (min-width:768px){
	#products{
		margin-bottom: 100px;
	}
	#products .title_section{
		margin: 50px -50% 50px 50%;
	}
	#products > div{
		min-height: 200px;
		padding-left: 50%;
		position: relative;
	}
	#products > div.lazyloaded{
	}
	#products > div:after{
		height: 500px;
		margin-top: -20px;
		position: absolute;
		top: 50%;
		left: 25%;
		-ms-transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		width: 46%;
		max-width: 480px;
	}
	#products > div a{
		margin-bottom: 30px;
		margin-right: 1em;
	}
	#products > p{
		text-align: right;
	}
	#products > hr{
		margin: 50px 50% 50px -50%;
	}
}
@media screen and (min-width:768px) and (max-width:1199px){
	#products > div a{
		width: 14em;
	}
}
@media screen and (min-width:1200px){
	#products > div a{
		width: 16em;
	}
}

/* -- individuals -- */
#individuals{
}
#individuals.lazyloaded:after{
	background-image: url("https://ins-parasol.co.jp/images/user/products/individuals.jpg");
}
#individuals a:hover:before{
	background-color: #F7D2B0;
}

/* -- corporations -- */
#corporations{
}
#corporations.lazyloaded:after{
	background-image: url("https://ins-parasol.co.jp/images/user/products/corporations.jpg");
}
#corporations a:hover:before{
	background-color: #92D2DC;
}


