@charset "utf-8";
/* CSS Document
© ELEMENT MALL Inc. */



/* =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

	共　通　部　分

=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= */


html {
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "游ゴシック体", YuGothic, "Yu Gothic Medium", sans-serif;
	font-feature-settings: "pkna" 1;
	font-size: 18px;
}

body {
	line-height: 1.8em;
}

a:link {
	color: #9bb743;
}

a:visited {
	color: #9bb743;
}

a:hover {
	color: #f4b6cc;
}

a:active {
	color: #f4b6cc;
}


/* =*=*= ヘッダー・フッター =*=*=*=*=*=*=*=*=*=*=*=*= */

header {
	margin: auto;
	max-width: 960px;
	line-height: 1em;
}

header h1 {
	margin: 37px 0;
}

header h1 img {
	width: 200px;
}

footer {
	padding: 30px 0 10px;
	border-top: #e5e5e5 1px solid;
	text-align: center;
	font-size: 16px;
	line-height: 1.4em;
}

footer ul {
	margin-bottom: 1em;
}

footer ul li {
	display: inline-block;
}

footer ul li::before {
	margin: 0 10px;
	content: "|";
}

footer ul li:last-child::after {
	margin: 0 10px;
	content: "|";
}

footer p {
	margin-bottom: 1em;
}



/* =*=*= メインビジュアル =*=*=*=*=*=*=*=*=*=*=*=*= */

div.main_visual , div.sub_visual {
	background: url(../img/bg_dot.png),url(../img/bg_photo.jpg) center center;
	background-size: auto,cover;
	line-height: 1em;
}

div.main_visual p {
	margin: auto;
	padding: 80px 0;
	width: 350px;
}

div.sub_visual p {
	margin: auto;
	padding: 50px 0;
	max-width: 960px;
	color: #fff;
	font-size: 36px;
	letter-spacing: 0.3em;
	text-shadow: 4px 4px 2px rgb(0,0,0,0.8);
}



/* =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

	コンテンツエリア

=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= */

h2 {
	margin: 0 auto 40px;
	padding-bottom: 10px;
	font-size: 20px;
	letter-spacing: 0.1em;
	text-align: center;
	font-weight: bold;
}


/* =*=*= 会社概要 =*=*=*=*=*=*=*=*=*=*=*=*= */


.sec_company {
	margin: 80px auto 0;
	max-width: 960px;
}

.sec_company h2 {
	width: 160px;
	border-bottom: #9bb743 2px solid;
}

.sec_company table {
	width: 100%;
}

.sec_company table tr {
	border: 1px solid #e5e5e5; 
}

.sec_company table th {
	background: url(../img/bg_th.png);
	padding: 15px 20px;
	text-align: center;
	font-weight: normal;
}

.sec_company table td {
	padding: 15px 0 15px 30px;
}

.sec_company table.sp_on {
 	display: none;
}

.sec_map {
	margin: 100px auto 120px;
	max-width: 960px;
}

.sec_map h2 {
	width: 160px;
	border-bottom: #f4b6cc 2px solid;
}

.sec_map .map_frame {
	margin: auto;
	width: 960px;
	min-height: 500px;
	border: #cdcdcd 2px solid;
}

.sec_map .map_frame iframe {
	margin: 0;
	padding: 0;
	width: 100%;
	min-height: 500px;
	vertical-align: bottom;
}



/* =*=*= プライバシーポリシー =*=*=*=*=*=*=*=*=*=*=*=*= */

.sec_privacy {
	margin: 80px auto 120px;
	max-width: 960px;
    font-feature-settings: "palt" 1;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: 0.1em;
}

.sec_privacy h2 {
	max-width: 240px;
	border-bottom: #9bb743 2px solid;
}

.sec_privacy h2:nth-child(2n) {
	max-width: 350px;
	border-bottom: #f4b6cc 2px solid;
}

.sec_privacy ol {
	margin: 40px 20px;
	padding-left: 1.5em;
}

.sec_privacy ol li {
	margin-bottom: 0.5em;
}

.sec_privacy p span {
	display: block;
	text-align: right;
}


.sec_privacy .box_contact dl {
	margin: 60px auto 100px;
	max-width: 840px;
	text-align: center;
}

.sec_privacy .box_contact dl dt {
	padding: 15px;
	background: url(../img/bg_th.png);
	border: 1px solid #e5e5e5;
	font-size: 20px;
	font-weight: bold;
}

.sec_privacy .box_contact dl dd {
	padding: 25px;
	border: 1px solid #e5e5e5;
	border-width: 0 1px 1px;
}

.sec_privacy .box_contact dl dd address {
	padding: 15px;
	font-weight: bold;
	font-style: normal;
}

.sec_privacy .box_contact dl dd small {
	font-size: 15px;
	color: #666;
}

.sec_privacy ol li ol {
	margin: 0.2em auto 0;
	padding-left: 0;
	list-style: none;
}

.sec_privacy ol li ol li {
	margin-bottom: 0.2em;
}


.sec_privacy .box_enact {
	text-align: right;
	font-size: 16px;
	line-height: 1.6em;
}



/* =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=

	ス　マ　ー　ト　フ　ォ　ン　設　定

=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= */


@media screen and (max-width: 640px) {
	
	body {
		line-height: 1.6em;
	}

	header h1 {
		margin: 20px 0;
		text-align: center;
	}

	header h1 img {
		width: 50%;
		text-align: center;
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}

	div.main_visual p {
		margin: auto;
		padding: 50px 0;
		max-width: 350px;
		text-align: center;
	}

	div.main_visual p img {
		width: 80%;
	}
	
	div.sub_visual p {
		margin: auto;
		padding: 40px 0;
		font-size: 26px;
		text-align: center;
		letter-spacing: 0.2em;
		text-shadow: 4px 4px 2px rgb(0,0,0,0.8);
	}

	.sec_company h2,.sec_map h2 {
		margin: 0 auto 20px;
	}

	h2 {
		margin: 0 auto 20px;
	}

	.sec_company {
		margin: 50px auto 0;
		padding: 0 10px;
		max-width: 960px;
	}

	.sec_company table {
		line-height: 1.4em;
	}

	.sec_company table th {
		padding: 20px;
		text-align: left;
		font-weight: bold;
	}

	.sec_company table td {
		padding: 20px;
	}

	.sec_company table.pc_on {
	  display: none;
	}

	.sec_company table.sp_on {
	  display: block;
	}

	.sec_map {
		margin: 80px auto;
		padding: 0 10px;
		max-width: 960px;
	}

	.sec_map .map_frame {
		margin: auto;
		max-width: 100%;
		min-height: 500px;
		border: #cdcdcd 2px solid;
	}

	.sec_map .map_frame iframe {
		max-width: 100%;
		min-height: 500px;
		vertical-align: bottom;
	}

	
	.sec_privacy {
		margin: 40px auto 70px;
		padding: 0 10px;
		max-width: 100%;
		letter-spacing: 0.1em;
	}

	.sec_privacy ol {
		margin: 40px 10px ;
		padding-left: 1.5em;
	}

	.sec_privacy p span {
		margin-top: 1em;
	}

	.sec_privacy .box_contact dl {
		margin: 40px auto 80px;
	}

	.sec_privacy .box_contact dl dd {
		padding: 15px;
		text-align: justify;
	}

	.sec_privacy .box_contact dl dd address {
	padding: 15px 0;
	font-weight: bold;
}

.sec_privacy .box_contact dl dd small {
	display: inline-block;
	font-size: 15px;
	line-height: 1.4em;
}

	
	footer {
		padding: 20px 0 10px;
		border-top: #e5e5e5 1px solid;
		text-align: center;
		font-size: 14px;
		line-height: 1.6em;
	}

	footer p span {
		display: block;
	}
}

