@charset "utf-8";
/*====================================================================
	reset
====================================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,
abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,
small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,
article,aside,canvas,details,figcaption,figure,
footer,header,menu,nav,section,summary,time,mark,audio,video {
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	border: 0;
	outline: 0;
	background: transparent;
}


body {
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', meiryo, sans-serif;
	line-height: 1;
	font-size: 14px;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display:block;
}

ul {
	list-style:none;
}

blockquote,q {
	quotes:none;
}

blockquote:before,blockquote:after,q:before,q:after {
	content: '';
	content: none;
}

a {
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	text-decoration: none;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	text-decoration: none;
	color: #000;
	background-color: #ff9;
}

/* change colours to suit your needs */
mark {
	font-weight: bold;
	font-style: italic;
	color: #000;
	background-color: #ff9;
}

del {
	text-decoration: line-through;
}

abbr[title],dfn[title] {
	cursor: help;
	border-bottom: 1px dotted;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	margin: 1em 0;
	padding: 0;
	border: 0;
	border-top: 1px solid #ccc;
}

input, select {
	vertical-align:middle;
}

h2{
	margin-bottom: 25px;
}

img{
	display: block;
	width: 100%;
}

/*====================================================================
	common
====================================================================*/

#wrapper {
	width: 696px;
	margin: 0 auto;
}

.sect_contents {
	width: 590px;
	margin: 0 auto;
}

.contents_text {
	line-height: 24px;
	display: block;
	margin: 15px auto;
	text-align: center;
}

.list_wrap{ overflow: hidden; }
/*.left_side{
	float: left;
}

.right_side{
	float: right;
}*/

/*====================================================================
	key visual
====================================================================*/
#key_wrap {
	margin-bottom: 50px;
}

#key_wrap figure {
	width: 100%;
}

#key_wrap figure figcaption {
	font-size: 12px;
	text-align: right;
}

#key_wrap figure#triangle {
	display: block;
	width: 0;
	margin: 20px auto 0;
	border: 20px solid transparent;
	border-top-color: #dc1c34;
}

#adoption_wrap{
	margin-top: 50px;
}

#motive_wrap {
	box-sizing: border-box;
	width: 100%;
	padding: 20px 45px;
	border: 2px solid #dc1c34;
	background: #fff3f3;
}

#motive_wrap h3 {
	margin-bottom: 10px;
}

#motive_wrap ul li {
	line-height: 25px;
	display: block;
	margin-bottom: 5px;
	padding-left: 32px;
	background: url(../images/epdm/icon.svg) no-repeat left center;
}

#check_wrap {
	box-sizing: border-box;
	width: 100%;
	padding: 25px 95px;
	border: 2px solid #32b16c;
	background: #f1ffe4;
	margin-bottom: 30px;
}

#check_wrap ul li {
	font-weight: bold;
	line-height: 20px;
	display: block;
	margin-bottom: 10px;
	padding-left: 35px;
	background: url(../images/epdm/check.svg) no-repeat left top;
}

#check_wrap ul li:last-child {
	font-weight: bold;
	line-height: 30px;
	display: block;
	margin-bottom: 10px;
	padding-left: 35px;
	background: url(../images/epdm/check.svg) no-repeat left center;
}

#about_epdm_wrap{
	width: 100%;
	border: 2px solid #dc1c34;
	box-sizing: border-box;
	padding: 25px 50px;
}

#about_epdm_wrap h3{
	width: 334px;
	margin: 0 auto;
}

#about_epdm_wrap .contents_text{
	margin-bottom: 0;
}

/*====================================================================
	EPDM
====================================================================*/
#epdm_wrap {
	margin-bottom: 90px;
}

#epdm_wrap figure {
	display: flex;
	width: 100%;
	margin-bottom: 10px;

	justify-content: space-between;
}

#epdm_wrap .contents_text {
	margin: 15px auto 25px;
}

/*====================================================================
	example
====================================================================*/

#example_wrap {
	margin-bottom: 30px;
}
#example_wrap h3,#example_wrap .flex p{ 
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	border-radius: 10px;
	background-color: rgba(0,0,0,0.00);
	margin: 0 15px 10px; 
	padding: .5em 0 .5em 1em;
}
#example_wrap .flex{
	display: flex;
	justify-content: space-around;
	align-items: flex-end;
}
#example_wrap ul.left_side,
#example_wrap ul.right_side {
/*	width: 345px;*/
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

#example_wrap ul.left_side li,
#example_wrap ul.right_side li {
	width: 48%;
	margin-bottom: 15px;
/*	position: relative;
	display: flex;
	box-sizing: border-box;
	width: 312px;
	height: 180px;
	margin: 0 auto 30px;
	border: 1px solid #999;

	align-items: center;
	justify-content: center;*/
}
#example_wrap ul.left_side li:last-child,
#example_wrap ul.right_side li:last-child{
	margin-bottom: 0;
}
#example_wrap ul.right_side li img{
	width: 100%;
}
#example_wrap .ribbon {
	font-size: 16px;
	position: absolute;
	top: 12px;
	left: -6px;
	box-sizing: border-box;
	width: auto;
	height: 35px;
	padding: 10px;
	color: #fff;
	background: #f7941d;
	box-shadow: 1px 1px 2px rgba(0,0,0,.3);
}


#example_wrap .ribbon::before {
	position: absolute;
	z-index: -1;
	top: 100%;
	left: 0;
	content: '';
	border-width: 0 6px 4px 0;
	border-style: solid;
	border-color: transparent;
	border-right-color: #c4710c;
}

#example_wrap .ribbon::after {
	position: absolute;
	top: 0;
	right: -20px;
	content: '';
	transform: scale(-1, 1);
	border-width: 0 20px 35px 0;
	border-style: solid;
	border-color: transparent;
	border-right-color: #f7941d;
}

#example_wrap .ribbon small {
	font-size: 12px;
}

#example_wrap::after {
	font-size: 0;
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: '.';
}

/* 新規追加  ページ内リンク */
#page_link{
	display: flex;
    justify-content: space-between;
    width: 660px;
    margin: 0 auto 25px;
    
}
#page_link li{
    position: relative;
	width: 33%;
    /*border-top: 6px solid #efeff2;
    background: -webkit-linear-gradient(left, #eeeef2, #fff);
    background: -o-linear-gradient(left, #eeeef2, #fff);
    background: linear-gradient(to right, #eeeef2, #fff);
    
    height: 60px;
    
    padding: 0 0 0 97px;
    font-size: 13px;*/
}
#page_link li:before{
    /*content: "";
    position: absolute;
    right: 4px;
    bottom: 4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 13px 13px;
    border-color: transparent transparent #f7951d transparent;*/
}
#page_link li:last-child{ margin-right: 0; }
#page_link li a{
	display: flex;
	align-items: center;
    color: #444;
    text-decoration: none;
    height: 100%;
}

#page_link li .imgBorder{
    /*position: absolute;
    top: -9px;
    left: -9px;
    box-shadow: 5px 5px 5px rgba(231,231,231,0.4);
    border: 1px solid #e7e7e7;
    border-radius: 4px;
    background-color: #fff;
    padding: 4px;*/
}
#page_link li .imgBorder img{ width: 100%; }



/*====================================================================
	flow
====================================================================*/

#flow_wrap {
	margin-bottom: 65px;
}

#flow_wrap section:first-child{ margin-bottom: 50px; }
#flow_wrap section:nth-of-type(2) h2{ margin-bottom: 0; }
#flow_wrap figure {
	display: flex;
	flex-wrap: wrap;
	width: 100%;

	justify-content: space-between;
}

#flow_wrap figure p {
	font-size: 12px;
	display: block;
	width: 144px;
	text-align: center;
	letter-spacing: -.75px;
}

#flow_wrap figure p span {
	font-weight: bold;
	line-height: 30px;
	position: relative;
	display: block;
}

#flow_wrap figure p span::after {
	position: absolute;
	right: -7px;
	content: '→';
	color: #71a62d;
}

#flow_wrap figure p:last-child span::after {
	font-size: 0;
	content: ' ';
	color: transparent;
}

#flow_wrap ruby > rt {
	font-size: 10px;
	font-weight: normal;
	display: inline-block;
	text-align: start;
}

#flow_wrap ruby > rp {
	font-size: 10px;
	font-weight: normal;
	display: inline-block;
	text-align: start;
}

/* 新規追加 */
#flow_wrap .case{ 
	flex-wrap: wrap; 
	margin-bottom: 60px; 
}
#flow_wrap .case img{
	width: 590px;
	height: 390px;
	margin-bottom: 10px;
}
#flow_wrap .case figcaption{ 
	display: block;
	font-size: 13px;
	text-align: right; 
	letter-spacing: 0.05em;
	width: 100%;
}

/*====================================================================
	ref
====================================================================*/

#ref_wrap {
	margin-bottom: 70px;
}

#ref_wrap ul {
	width: 295px;
}

#ref_wrap ul li {
	line-height: 35px;
	display: block;
	margin-bottom: 15px;
}

#ref_wrap ul li img {
	display: inline-block;
	padding-right: 15px;
	vertical-align: middle;
}

#ref_wrap::after {
	font-size: 0;
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: '.';
}

/*====================================================================
	color variation
====================================================================*/

#variation_wrap {
	margin-bottom: 50px;
}

#variation_wrap figure {
	display: flex;
	width: 590px;
	justify-content: space-around;
	flex-wrap: wrap;
	margin: 0 auto;
}

#variation_wrap figure > p {
	font-size: 12px;
	line-height: 20px;
	display: flex;
	flex-direction: column;
	width: 75px;
	margin: 0 auto 20px;
	text-align: center;
	align-items: center;
}
#variation_wrap figure > p img:first-child{ height: 58px; }
.color_name {
	margin-top: 10px;
	height: 10px;
}
/* 新規追加 */
#variation_wrap figure .black_tip{
	box-sizing: border-box;
	padding: 0 0 0 4.641px;
}

#variation_wrap figure .black_tip dl{
	display: flex;
	align-items: center;
}
#variation_wrap figure .black_tip dt{
	width: 150px;
	margin-right: 10px;
}
#variation_wrap figure .black_tip dt img{ width: 100%; }
#variation_wrap figure .black_tip dd{ color: #000; }
#variation_wrap figure p img{ width: 100%; }
#variation_wrap figure .black_tip p{ margin-bottom: 12px; }
#variation_wrap figure .black_tip .name{
	color: #3366CC;
	font-size: 18px;
	font-weight: bold;
}
#variation_wrap figure .black_tip strong{
	color: #3366CC;
	font-weight: bold;
}
#variation_wrap figure .black_tip .link_btn a{
	color: #333;
	font-size: 13px;
	text-decoration: underline;
}
#variation_wrap figure .black_tip .link_btn a:hover{ text-decoration: none; }




/*====================================================================
	other
====================================================================*/

#buy_button{
	width: 450px;
	height: 55px;
	margin: 0 auto 20px;
	box-sizing: border-box;
	background: linear-gradient(#d32929, #bc2323);
	border-radius: 5px;
	border: 2px solid #a40000;
	display: flex;
	justify-content: center;
	align-items: center;
}

#buy_button:hover{
	background: linear-gradient(#bc2323, #d32929);
}

#buy_button a{
	display: block;
}

.buy_text{
	color: #df3031;
	font-size: 16px;
	text-align: center;
	line-height: 24px;
	display: block;
	margin-bottom: 15px;
}

#other_wrap figure {
	display: flex;
	width: 390px;
	margin: 0 auto 30px;

	justify-content: space-between;
}

#other_wrap figure p {
	font-size: 12px;
	line-height: 25px;
	text-align: left;
}

#address_wrap{
	height: 110px;
	width: 500px;
	margin: 0 auto;
	/* display: flex; */
	/* justify-content: space-between; */
}

#message_wrap{
	position: relative;
	height: 110px;
	width: 186px;
}

#message_wrap figure{
	position: absolute;
	bottom: 0;
	display: flex;
	justify-content: space-between;
	height: 32px;
	width: 186px;
	z-index: 10;
	margin: 0;
}

#message_board {
	position: absolute;
	z-index: 8;
	top: 0;
	right: 0;
	left: 0;
	width: 168px;
	margin: 0 auto;
	border-radius: 5px;
	background: #81511c;
}

#message_board p {
	position: relative;
	z-index: 9;
	top: 0;
	right: 0;
	left: 0;
	width: 160px;
	margin: 5px auto;
	background: #0a7832;
	color: #fff;
	padding: 10px 0 25px;
	line-height: 18px;
}

#address_wrap address{
	font-style: normal;
	color: #81511c;
	font-size: 20px;
	line-height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.item_name{
	display: inline-block;
	width: 70px;
}

.item_address::before{
	content: ":";
	margin: 0 10px;
}

.item_address a{
	color: #81511c;
}
@media screen and (max-width:520px){
	

	.item_name{
		display: inline-block;
		width: 55px;
	}
}

/*====================================================================
	relation
====================================================================*/
#relation_wrap{
	margin-bottom: 50px;
}

#relation_wrap img{
	transition: .5s;
	display: block;
}

#relation_wrap a:hover img{
	opacity: .75;
}

#sec01{
	background-color: #DDD;
	border-radius: 15px;
	padding: 20px 10px;
	margin-bottom: 30px;
}
#sec02{
	background-color: #DDD;
	border-radius: 15px;
	padding: 20px 10px;
	margin-bottom: 30px;
}
#sec03{
	background-color: #DDD;
	border-radius: 15px;
	padding: 20px 10px;
}