@charset "UTF-8";

/* -----------------------------------------------------------
	profile_wrap
----------------------------------------------------------- */
.profile_wrap .main_image_wrap {
	position: relative;
	overflow: hidden;
}
.profile_wrap .main_image_wrap::before {
	display: block;
    content: '';
    width: 100%;
    height: 362px;
    position: absolute;
    top: 50%;
    left: 0;
	transform: translateY(-50%);
    background: #e6e6e6;
    z-index: -1;
}
.profile_wrap .main_image {
	max-width: 1920px;
	height: 604px;
	margin: 0 auto 120px;
	position: relative;
}

.profile_wrap .picbox {
	background-image: url("../img/profile_bg.jpg");
	background-position: center;
	background-size: cover;
	width: 55%;
	min-width: 950px;
	height: 604px;
	float: right;
	position: absolute;
	top: 0;
	right: 0;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.profile_wrap .main_image,
.profile_wrap .picbox {
	height: 400px;
	margin-bottom: 100px;
}
.profile_wrap .picbox {
	width: 80%;
	min-width: 0;
}
.profile_wrap .main_image_wrap::before {
	height: 300px;
}
}
@media screen and (max-width: 767px) {
.profile_wrap .main_image,
.profile_wrap .picbox {
	height: 220px;
	margin-bottom: 50px;
}
.profile_wrap .picbox {
	width: 80%;
	min-width: 0;
}
.profile_wrap .main_image_wrap::before {
	height: 160px;
}
}





/* -----------------------------------------------------------
	profile_grid_wrap
----------------------------------------------------------- */
.profilelist {
	margin-top: 40px;
	font-size: 16px;
}
.ishibashi {
	margin-bottom: 60px;
}
.group {
	background: #e6e6e6;
	padding: 60px 0;
	margin-bottom: 80px;
}
.profile_grid_wrap .profilelist li {
	width: 48%;
	float: left;
	margin-left: 4%;
	margin-bottom: 30px;
}
.profile_grid_wrap .profilelist li:nth-child(2n + 1){
	margin-left: 0;
	clear: left;
}
.profile_grid table {
	width: 100%;
}
.profile_grid table th,
.profile_grid table td {
	padding: 0 0 24px;
}
.profile_grid table th {
	width: 8em;
	font-weight: normal;
	border-bottom: 1px solid #ccc;
	vertical-align: top;
}
.profile_grid table td {
	border-bottom: 1px solid #808080;
	vertical-align: top;
}


@media screen and (min-width: 768px) and (max-width: 1200px) {
.profilelist {
	font-size: 15px;
}
.profile_grid table th {
	width: 6em;
}
}
@media screen and (max-width: 767px) {
.profilelist {
	margin-top: 30px;
	font-size: 14px;
}
.ishibashi {
	margin-bottom: 40px;
}
.group {
	padding: 40px 0;
	margin-bottom: 40px;
}
.profile_grid_wrap .profilelist li {
	width: 100%;
	float: none;
	margin-left: 0;
	margin-bottom: 16px;
}

.profile_grid table th {
	width: 6em;
}
.profile_grid table th,
.profile_grid table td {
	padding-bottom: 16px;
}
}



/* -----------------------------------------------------------
	access_wrap
----------------------------------------------------------- */
.access_wrap .ttl_general_1 {
	margin-bottom: 45px;
}
.access_wrap .access_item {
	font-size: 16px;
	margin-bottom: 100px;
}
.access_wrap .access_item:last-child {
	margin-bottom: 0;
}
.grid_wrap .grid_l {
	width: 48%;
	float: left;
}
.grid_wrap .grid_r {
	width: 48%;
	float: right;
}
.access_wrap h3 {
	font-size: 16px;
	font-weight: normal;
	padding-bottom: 8px;
	margin-bottom: 20px;
	border-bottom: 1px solid #808080;
	position: relative;
}
.access_wrap h3::after {
	display: block;
    content: '';
    position: absolute;
    width: 8em;
    height: 1px;
	bottom: -1px;
    left: 0;
	background: #ccc;
}
.access_wrap .transportation {
	letter-spacing: 0.05em;
}
.access_wrap .transportation dt {
	float: left;
}
.access_wrap .transportation dd {
	margin-left: 7em;
}

.access_map {
	height: 390px;
	border: 1px solid #ccc;
}
.gmap {
	position: relative;
	padding-bottom: 62.5%;
	padding-top: 30px;
	overflow: hidden;
}
.gmap iframe,
.gmap object,
.gmap embed {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
@media screen and (min-width: 901px) and (max-width: 1200px) {
.access_wrap .access_item {
	font-size: 15px;
}
.access_map {
	height: auto;
}
.gmap {
	padding-bottom: 80%;
}
}
@media screen and (min-width: 768px) and (max-width: 900px) {
.grid_wrap .grid_l,
.grid_wrap .grid_r {
	width: 100%;
	float: none;
}
.access_map {
	height: auto;
}
.access_wrap .access_item {
	font-size: 15px;
	margin-bottom: 70px;
}
.access_map {
	width: 100%;
	height: 100%;
	margin-top: 30px;
}
.gmap {
	padding-bottom: 40%;
}
}
@media screen and (max-width: 767px) {
.access_wrap .ttl_general_1 {
	margin-bottom: 30px;
}
.access_wrap .access_item {
	font-size: 14px;
	margin-bottom: 40px;
}
.grid_wrap .grid_l,
.grid_wrap .grid_r {
	width: 100%;
	float: none;
}
.access_wrap h3 {
	margin-bottom: 14px;
}
.access_map {
	width: 100%;
	height: auto;
	margin-top: 20px;
}
.gmap {
	padding-bottom: 60%;
}
.access_wrap .transportation dt {
	float: none;
}
.access_wrap .transportation dd {
	margin-left: 0;
	margin-bottom: 8px;
}
}



