@charset "utf-8";
/* CSS Document */

/* decoration */


.heading {
	padding: 7rem 0 0 0;
	text-align: center;
}

.heading__title {
	padding: 0;
	margin: 0;
	color:var(--second-color);
	font-size: 1.8rem;
	letter-spacing: 4px;
	text-indent: 4px;
	line-height: 1em;
}

.heading__title::before {
	display: block;
	content:"";
	margin: 0 auto 12px auto;
	width: 45px;
	height: 45px;
	background: url(../img/icon-company.png) no-repeat top center;
	background-size: cover;
}

.heading__title::after {
	content:"";
	display: block;
	margin: 2rem auto 0 auto;
	width: 80px;
	height: 1px;
	background: linear-gradient(90deg, var(--sub-color) 0%, var(--sub-color) 49.9%, var(--second-color) 50%, var(--second-color) 100%);
}

/* message-section */

.message {
	position: relative;
	text-align: center;
}

.message__wrapper {
	padding: 2rem 1.5rem;
}

.message__title {
	color: var(--main-text-color);
	font-size: 1.5rem;
	font-weight: normal;
	letter-spacing: 0.2rem;
	text-indent: 0.2rem;
}

.message__title span {
	display: block;
}

.message__lead {
	color: var(--main-text-color);
	font-size:0.975rem;
	text-align: left;
	line-height: 2em;
}

/* profile-section */

.profile {
	position: relative;
	text-align: center;
	color: var(--main-text-color);
}

.profile__wrapper {
	padding: 36px 18px;
}

.profile__title {
	font-size: 28px;
}

.profile__title::after {
	display: block;
	content:"company profile";
	font-size: 9px;
	letter-spacing: 0.4em;
	text-indent: 0.4em;
}

.profile__table {
	padding: 0;
}

.profile__table dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	border-top: 1px solid var(--sub-color);
	text-align: left;
}

.profile__table dt {
	flex-basis: 25%;
	padding: 12px 9px;
	margin: 0;
	border-bottom: 1px solid var(--sub-color);
}

.profile__table dd {
	flex-basis: 75%;
	padding: 12px 9px;
	margin: 0;
	border-bottom: 1px solid var(--sub-color);
}

.profile__table dd > div {

}


/* access-section */

.access {
	text-align: center;
}

.access__wrapper {
	padding: 36px 0;
}

.access__title {
	font-size: 28px;
}

.access__title::after {
	display: block;
	content:"access";
	font-size: 9px;
	letter-spacing: 0.4em;
	text-indent: 0.4em;
}

.access__map {
	padding: 0;
}

.gmap_iframe {
    aspect-ratio: 16 / 9;
    max-width: 1000px;
    width: 100%;
    height: auto;
}


/* contact-box */

.contact-box {
	padding: 60px 0 84px 0;
	text-align: center;
}

.contact-box__wrapper {
	padding: 0 18px;
}

.contact-box__form-link {
	margin: 0 auto;
	width: 90%;
	overflow: hidden;
	text-align: center;
}

a.link-button {
	display: block;
	background: var(--button-color);
	border:2px solid var(--button-color);
	color:var(--link-second-color);
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 3em;
}

a.link-button:hover {
	border:2px solid var(--button-color);
	background: var(--main-color);
	color: var(--button-color);
	text-decoration: none;
}


/*----------------------------------------------------------------------------
 ***                                                                width480
----------------------------------------------------------------------------*/

@media only screen and (min-width: 480px){
}

/*----------------------------------------------------------------------------
 ***                                                                width768
----------------------------------------------------------------------------*/

@media only screen and (min-width: 768px) {

.heading {
	padding: 9rem 0 0 0;
}

.message {
	padding: 2rem 0;
	margin: 0 auto;
	width: 90%;
}

.message__wrapper {
	padding: 2rem 0;
}

.message__title span {
	display: inline-block;
}

.profile__wrapper {
	padding: 2rem 0;
	margin: 0 auto;
	width: 90%;
}

.profile-section h2 {
	font-size:42px;
}

.photo {
	width:40%;
	float:left;
}

.info {
	padding:0 0 0 2%;
	margin:0;
	width:60%;
	float:left;
}

.info dl dt {
	padding:12px;
	width:22%;
}

.info dl dd {
	padding:12px;
	margin-left:22%;
}

.contact-box__form-link {
	margin: 0 auto;
	max-width: 30rem;
}


}

/*----------------------------------------------------------------------------
 ***                                                                width980
----------------------------------------------------------------------------*/

@media only screen and (min-width: 980px){

.message {
	width: 80%;
}

.profile__wrapper {
	width: 80%;
}

}

/*----------------------------------------------------------------------------
 ***                                                                width1024
----------------------------------------------------------------------------*/

@media only screen and (min-width: 1024px){


}


/*----------------------------------------------------------------------------
 ***                                                                width1280
----------------------------------------------------------------------------*/

@media only screen and (min-width: 1280px){



}
