@charset "utf-8";
/* CSS Document */

/********************************************************************

reset

*********************************************************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
}

ol, ul{
    list-style:none;
}

table{
    border-collapse: collapse; 
    border-spacing:0;
}

/****************************************

          Clearfix

*****************************************/
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.clearfix {
	display: inline-block;
}
/* clearfix for ie7 */
.clearfix {
	display: block;
}

/****************************************

          General Setting

*****************************************/

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, "メイリオ", Meiryo;
	color: #000;
	letter-spacing: 0.1em;
	-webkit-text-size-adjust: 100%;
}

* {-webkit-box-sizing: border-box;
   -ms-box-sizing: border-box;
   -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
   box-sizing: border-box;
}

/****************************************

          全頁共通

*****************************************/
img.alignright { display: block; margin: 0 0 0 auto; }/* 配置位置 右 */
img.alignleft { display: block; margin: 0 auto 0 0; }/* 配置位置 左 */
img.aligncenter { display: block; margin: 0 auto; }/* 配置位置 中央 */

.bold {font-weight:bold;}

.center{margin:0 auto;
display:block;}
.auto{overflow:auto;}

.mt_05{margin-top:5px;}
.mt_10{margin-top:10px;}
.mt_15{margin-top:15px;}
.mt_20{margin-top:20px;}
.mt_30{margin-top:30px;}
.mt_35{margin-top:35px;}
.mt_40{margin-top:40px;}
.mt_45{margin-top:45px;}
.mt_50{margin-top:50px;}
.mt_60{margin-top:60px;}
.mt_70{margin-top:70px;}

.mb_none {margin-bottom:0;!important}
.mb_05{margin-bottom:5px;}
.mb_10{margin-bottom:10px;}
.mb_15{margin-bottom:15px;}
.mb_20{margin-bottom:20px;}
.mb_25{margin-bottom:25px;}
.mb_30{margin-bottom:30px;}
.mb_40{margin-bottom:40px;}

.mr_05{margin-right:5px;}
.mr_10{margin-right:10px;}
.mr_15{margin-right:15px;}
.mr_20{margin-right:20px;}
.mr_25{margin-right:25px;}
.mr_30{margin-right:30px;}
.mr_35{margin-right:35px;}
.mr_40{margin-right:40px;}

.ml_05{margin-left:5px;}
.ml_10{margin-left:10px;}
.ml_15{margin-left:15px;}
.ml_20{margin-left:20px;}
.ml_30{margin-left:30px;}
.ml_40{margin-left:40px;}

.flex-box {
	display: flex;
}

.flex-sb {
	justify-content: space-between;
}

.red {
	color: #F00;
}

/******************************************************************************************************

smartPhone

******************************************************************************************************/

.br-sp {
	display: block;
}

header {
	width: 100%;
	padding: 15px 0;
}

div.inner {
	width: 100%;
	margin: 0 auto;
	padding: 0 3%;
	overflow: hidden;
}

h1 img.logo {
	float: left;
	width: auto;
	height: 30px;
}

div.main-visual {
	width: 100%;
	background-image: url(../img/main-visual-pc.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

h2 p.copy {
	font-size: 22px;
	color: #fff;
	font-weight: bold;
	line-height: 180%;
	text-align: center;
	padding: 100px 0;
}

section {
	width: 100%;
	padding: 60px 0;
}

section.gray {
	background-color: #f8f8f8;
}

h3 {
	font-size: 28px;
	line-height: 150%;
	text-align: center;
	margin-bottom: 30px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

ul.business {
}

ul.business li {
	width: 100%;
	margin-top: 60px;
}

ul.business li:first-child {
	margin-top: 0;
}

ul.business li img {
	width: 100%;
	max-width: 360px;
	height: auto;
	display: block;
	margin: 0 auto;
}

ul.business li p {
	font-size: 16px;
	line-height: 180%;
	margin-top: 30px;
}

div.gmap {
	width: 100%;
	height: 400px;
}

p.copyright {
	text-align: center;
}

p.copyright a {
	font-size: 11px;
	line-height: 60px;
	color: #000;
	text-decoration: none;
}

/******************************************************************************************************

スマホ縦（補足）

******************************************************************************************************/

@media screen and (max-width:480px) {
	
table.default {
	width: 100%;
	border-top: 1px solid #ddd;
	font-size: 14px;
	line-height: 200%;
	text-align: left;
	color: #000;
}

table.default th {
	width: 100%;
	border: none;
	font-weight: bold;
	padding: 20px 0 0 0;
	display: block;
}

table.default td {
	border-bottom: 1px solid #ddd;
	padding: 20px 0;
	display: block;
}

}

/******************************************************************************************************

スマホ横

******************************************************************************************************/

@media screen and (min-width:480px) and ( max-width:600px) {

table.default {
	width: 100%;
	border-top: 1px solid #ddd;
	font-size: 14px;
	line-height: 200%;
	text-align: left;
	color: #000;
}

table.default th {
	width: 100%;
	border: none;
	font-weight: bold;
	padding: 20px 0 0 0;
	display: block;
}

table.default td {
	border-bottom: 1px solid #ddd;
	padding: 20px 0;
	display: block;
}

}

/******************************************************************************************************

タブレット

******************************************************************************************************/

@media screen and (min-width:600px) and ( max-width:960px) {

.br-sp {
	display: none;
}

h2 p.copy {
	font-size: 22px;
	color: #fff;
	font-weight: bold;
	line-height: 180%;
	text-align: center;
	padding: 180px 0;
}

table.default {
	width: 100%;
	border-top: 1px solid #ddd;
	font-size: 16px;
	line-height: 200%;
	text-align: left;
	color: #000;
}

table.default th {
	width: 100%;
	border: none;
	font-weight: bold;
	padding: 40px 0 0 0;
	display: block;
}

table.default td {
	border-bottom: 1px solid #ddd;
	padding: 40px 0;
	display: block;
}

div.gmap {
	width: 100%;
	height: 600px;
}

p.copyright a {
	font-size: 12px;
}

}

/******************************************************************************************************

PC補足

******************************************************************************************************/

@media screen and (min-width:960px) and ( max-width:1200px) {

.br-sp {
	display: none;
}

a:hover, a:hover img, a:hover li {
	opacity:0.8;
	filter: alpha(opacity=80);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=80)";  /* ie 8 */
	-moz-opacity:0.8;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.8;              /* Safari 1.x */
	zoom:1;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

header {
	width: 100%;
	padding: 15px 0;
}

div.inner {
	width: 100%;
	margin: 0 auto;
	padding: 0 3%;
	overflow: hidden;
}

h1 img.logo {
	float: left;
	width: auto;
	height: 60px;
}

div.main-visual {
	width: 100%;
	background-image: url(../img/main-visual-pc.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

h2 p.copy {
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	line-height: 180%;
	text-align: center;
	padding: 240px 0;
}

section {
	width: 100%;
	padding: 100px 0;
}

section.gray {
	background-color: #f8f8f8;
}

h3 {
	font-size: 36px;
	line-height: 150%;
	text-align: center;
	margin-bottom: 60px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

ul.business {
	display: flex;
	justify-content: space-between;
}

ul.business li {
	width: 30%;
	margin: 0;
}

ul.business li img {
	width: 100%;
	height: auto;
	margin: 0;
}

ul.business li p {
	font-size: 16px;
	line-height: 180%;
	margin-top: 30px;
}

div.gmap {
	width: 100%;
	height: 600px;
}

table.default {
	width: 100%;
	border-top: 1px solid #ddd;
	font-size: 18px;
	line-height: 200%;
	text-align: left;
	color: #000;
}

table.default th {
	width: 20%;
	border-bottom: 1px solid #ddd;
	font-weight: bold;
	padding: 40px;
	background-color: #f8f8f8;
	vertical-align: middle;
}

table.default td {
	border-bottom: 1px solid #ddd;
	padding: 40px;
}

p.copyright a {
	font-size: 14px;
}

}

/******************************************************************************************************

PC

******************************************************************************************************/

@media screen and (min-width:1200px) {

.br-sp {
	display: none;
}

a:hover, a:hover img, a:hover li {
	opacity:0.8;
	filter: alpha(opacity=80);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=80)";  /* ie 8 */
	-moz-opacity:0.8;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.8;              /* Safari 1.x */
	zoom:1;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

header {
	width: 100%;
	padding: 15px 0;
}

div.inner {
	width: 1200px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}

h1 img.logo {
	float: left;
	width: auto;
	height: 60px;
}

div.main-visual {
	width: 100%;
	background-image: url(../img/main-visual-pc.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

h2 p.copy {
	font-size: 36px;
	color: #fff;
	font-weight: bold;
	line-height: 180%;
	text-align: center;
	padding: 240px 0;
}

section {
	width: 100%;
	padding: 100px 0;
}

section.gray {
	background-color: #f8f8f8;
}

h3 {
	font-size: 36px;
	line-height: 150%;
	text-align: center;
	margin-bottom: 60px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

ul.business {
	display: flex;
	justify-content: space-between;
}

ul.business li {
	width: 30%;
	margin: 0;
}

ul.business li img {
	width: 100%;
	height: auto;
	margin: 0;
}

ul.business li p {
	font-size: 16px;
	line-height: 180%;
	margin-top: 30px;
}

div.gmap {
	width: 100%;
	height: 600px;
}

table.default {
	width: 100%;
	border-top: 1px solid #ddd;
	font-size: 18px;
	line-height: 200%;
	text-align: left;
	color: #000;
}

table.default th {
	width: 20%;
	border-bottom: 1px solid #ddd;
	font-weight: bold;
	padding: 40px;
	background-color: #f8f8f8;
	vertical-align: middle;
}

table.default td {
	border-bottom: 1px solid #ddd;
	padding: 40px;
}

p.copyright a {
	font-size: 14px;
}

}