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

html {
	font-size: 11px;
}
a {
	color: #000000;
	text-decoration: none;
}
div.container {
	width: 100% !important;
	max-width: 100% !important;
	padding: 0;
}
ul {
	list-style-type: none;
}
div.container {
	padding: 0;
	width: 100% !important;
	max-width: 100% !important;
}
section {
	font-size: 1.2rem;
}
.section-title h1 img {
	max-width: 100%;
	height: 50px;
}

.section-title {
	margin: 4% 0;
}
* {
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
}
.mincho {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN";
}
/*************************************************************************************/
/*                                     ヘッダーエリア                                  */
/*************************************************************************************/
header div.logoarea {
	width: 100%;
	height: 75px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header div.logoarea > div {
	line-height: 75px;
}
header > div.row {
	margin-left: 0;
	margin-right: 0;
}
header #imgLogo {
	margin-left: 15px;
}
header #burgerMenu {
	margin-right: 15px;
	width: 70%;
	height: 70%;
}
header div.menuClosed {
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	display: flex;
	justify-content: center;
	align-items: center;
}
header div.menuClosed, div.menuOpened {
	position: relative;
	overflow: hidden;
	height: 70vw;
	max-height: 500px;
}
header .menuOpened {
	display: none;
	padding-left: 0;
	padding-right: 0;
}
header .menuOpened #nav-menu {
	display: flex;
	align-items: center;
	padding: 0;
}
header .menuOpened li {
	border-bottom: 1px solid #ffffff;
}
header .menuOpened li:last-child {
	border-bottom: none;
}
header .menuOpened li a {
	text-align: left;
	text-decoration: none;
	color: #000000;
	display: block;
	padding: 4px;
	font-size: 1.3rem;
}
header .menuOpened #companyInfoWrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 0 0 10px;
}
header .menuOpened .company-info-name {
	font-size: 1.8rem;
}
header .menuOpened .company-info-address {
	font-size: 1.02rem;
}
header .menuOpened .company-info-tel {
	font-size: 2.3rem;
	display: flex;
	align-items: center;
	padding-left: 10px;
}
header .menuOpened > div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
header .menuOpened p {
	margin-top: 0;
	margin-bottom: 0;
}

/*************************************************************************************/
/*                                    メインエリア                                     */
/*************************************************************************************/
/* 共通 */
section {
	position: relative;
	max-width: 1400px;
	margin: auto;
	overflow: hidden;
}
.section-title {
	display: flex;
	align-items: center;
	flex-flow: column;
}
.section-title h1 {
	text-align: center;
}
p {
	text-align: center;
}
/** セクション１ **/
#main-sec1 {
	margin-top: 20px;
	margin-bottom: 30px;
}
/*************************************************************************************/
/*                                   フッターエリア                                    */
/*************************************************************************************/
footer {
	position: relative;
	margin-top: 50px;
	background-color: #DAEBEB;
	padding: 30px 25px 30px 25px;
}
footer #scroll-top {
	position: absolute;
	top: 0;
	right: 0;
	margin-top: -35px;
	margin-right: 10px;
	cursor: pointer;
}
footer #company-name {
	font-size: 2.0rem;
	padding-left: 10px;
	text-align: left;
}
footer #company-address {
	font-size: 1.02rem;
	padding-left: 10px;
	text-align: left;
}
footer .footer-menu {
	text-align: center;
	border-left: 1px solid rgba(100, 100, 100, 0.5);
	margin: 5px 0;
	height: 30px;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
footer #footer-menu3 {
	border-right: 1px solid rgba(100, 100, 100, 0.5);
}
footer .footer-menu-divider {
	width: 100%;
	height: 1px;
	background-color: rgba(100, 100, 100, 0.5);
	margin: 0 5px;
}
footer .footer-menu a {
	word-break: break-all;
}
footer .footer-link {
	text-align: center;
	padding: 3px 7px;
}
footer .footer-link img {
	width: 100%;
}
footer #footer-link-start {
	margin-top: 30px;
}
/*************************************************************************************/
/*                                    タブレット用                                     */
/*************************************************************************************/
@media (min-width: 768px){
	/** 共通 **/
	html {
		font-size: 13px;
	}
	.section-title h1 img {
		height: 100% !important;
	}
	/** ヘッダーエリア **/
	header #logo {
		margin-left: 40px;
		height: 100px;
		line-height: 100px;
	}
	header #companyTel {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		font-size: 1.7rem;
		margin-right: 40px;
	}
	header #imgHeader {
		width: 100%;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center bottom;
		height: 70vw;
		max-height: 600px;
	}
	header .header-image-area {
		position: relative;
		box-sizing: content-box;
		margin-left: 0;
		margin-right: 0;
	}
	header .header-image-area > div {
		padding-left: 0;
		padding-right: 0;
	}
	header #nav-menu {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		background-color: rgba(255,255,255,0.8);
		padding: 10px;
		z-index: 10;
		padding: 0;
		border-top: 1px solid #000000;
		border-bottom: 1px solid #000000;
	}
	header #nav-menu ul {
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 0;
	}
	header #nav-menu ul li.menu-item-dummy {
		flex-grow: 1;
	}
	header #nav-menu ul li#menu-item1 {
		flex-grow: 1;
	}
	header #nav-menu ul li#menu-item2 {
		flex-grow: 1;
	}
	header #nav-menu ul li#menu-item3 {
		flex-grow: 1;
	}
	header #nav-menu ul li#menu-item4 {
		flex-grow: 1;
	}
	header #nav-menu ul li#menu-item5 {
		flex-grow: 1;
	}
	header #nav-menu ul li {
		padding: 5px 0;
		cursor: pointer;
		text-align: center;
	}
	header #nav-menu ul li.menu-item-dummy {
		cursor: default;
	}
	header #nav-menu ul li a {
		font-size: 1.3rem;
		color: inherit;
	}
	/** フッターエリア **/
	footer > div.footer-menu {
		font-size: 1.2rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	footer #company-name {
		font-size: 1.5rem;
	}
	footer #scroll-top {
		margin-top: -35px;
		margin-left: 20px;
	}
	footer .footer-link {
		text-align: center;
		padding: 7px 15px;
	}
}
/*************************************************************************************/
/*                                   デスクトップ用                                  */
/*************************************************************************************/
@media (min-width: 992px){
	/** フッターエリア **/
	footer {
		padding: 30px 50px 30px 50px;
	}
	footer #company-address {
		font-size: 1.0rem;
	}
	footer #company-tel {
		font-size: 1.0rem;
	}
	footer div.footer-menu {
		height: auto !important;
		overflow: hidden;
		border: none !important;
		text-align: left;
		margin-left: 1.1vw;
	}
	footer div.footer-menu > div, nav {
		display: inline-block;
	}
	footer div.footer-menu > div {
			margin-right: 80px;
	}
	footer div.footer-menu p {
		text-align: left;
		padding: 0 !important;
	}
	footer div.footer-menu nav > ul {
		float: left;
		border-left: 1px solid #ffffff;
		margin-left: 50px;
		padding-left: 10px;
	}
	footer div.footer-menu nav li {
		height: auto !important;
		border: none;
		display: block !important;
		text-align: left;
		cursor: pointer;
	}
	footer div.footer-menu nav li a {
		font-size: 1.0rem;
	}
	footer .footer-link {
		text-align: center;
		padding: 4px 9px;
	}
}
@media (min-width: 1280px){
	/** 共通 **/
	html {
		font-size: 14px;
	}
	/** フッターエリア **/
	footer .footer-link {
		text-align: center;
		padding: 6px 13px;
	}
}
@media (min-width: 1600px){
	/** フッターエリア **/
	footer .footer-link {
		text-align: center;
		padding: 7px 20px;
	}
}
@media (min-width: 2048px){
	/** フッターエリア **/
	footer .footer-menu {
		max-height: 250px;
	}
}
@media (min-width: 2560px){
	/** フッターエリア **/
	footer .footer-link {
		text-align: center;
		padding: 10px 30px;
	}
}

