@charset "utf-8";
/* CSS Document */
@media (max-width: 1480px) {
.header {
	padding: 20px 50px 20px 20px;
}
.gnav li {
	margin-left: 2em;
}
}
@media (max-width: 1150px) {
.logo img {
	width: 360px;
}
}
@media (max-width: 990px) {
.menuButton {
	position: fixed;
	z-index: 100;
	width: 70px;
	height: 70px;
	background: linear-gradient(90.24deg, #c69c6d 1.84%, #c69c6d 143.49%);
	cursor: pointer;
	top: 0;
	right: 0;
	z-index: 1000;
	display: block;
}
.menuButton span {
	display: block;
	position: absolute;
	top: calc(50% - 1px);
	left: 50%;
	width: 30px;
	height: 2px;
	background-color: #fff;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
.menuButton span:nth-of-type(1) {
	transform: translate(-50%, -10px);
}
.menuButton span:nth-of-type(2) {
	transform: translateX(-50%);
}
.menuButton span:nth-of-type(3) {
	transform: translate(-50%, 10px);
}
.isOpening {
}
.isOpening .menuButton {
}
.isOpening .menuButton span {
}
.isOpening .menuButton span:nth-of-type(1) {
	transform: translateX(-50%) rotate(45deg);
}
.isOpening .menuButton span:nth-of-type(2) {
	opacity: 0;
}
.isOpening .menuButton span:nth-of-type(3) {
	transform: translateX(-50%) rotate(-45deg);
}
.isOpening .nav_wrap {
}
#header {
	height: 70px;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	background: #fff;
	box-shadow: 0 0 1px #ccc;
	z-index: 10000;
	padding: 0;
}
#header .logo a {
	height: 70px;
	display: flex;
	align-items: center;
	padding-left: 5px;
}
#header .logo a img {
	width: 270px;
}
#header .logo a .txt {
	display: none;
}
#header .nav_wrap {
	display: none;
	position: fixed;
	left: 0;
	top: 70px;
	right: 0;
	bottom: 0;
	background: #fff;
	z-index: 1000;
}
#header .gnav {
	display: block;
	padding: 0 5% 0;
}
#header .gnav li {
	margin-left: 0;
}
#header .gnav a {
	padding: 18px 0;
	border-bottom: 1px #ddd solid;
	font-size: 18px;
	height: inherit;
	line-height: inherit;
	display: block;
}
#header .gnav a:hover::after, #header .gnav a.on::after {
	height: 0;
}
#header .gnav a:before {
	content: "";
	width: 16px;
	height: 12px;
	position: absolute;
	right: 20px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
}
.isOpening #header .nav_wrap {
	display: block;
	border-top: 1px solid #f5f5f5;
}
#header + div {
	margin-top: 70px;
}
}
@media (max-width: 768px) {
.section {
	max-width: inherit;
	min-width: inherit;
}
.bn_inner {
	padding: 70px 20px 60px;
}
.bn_inner dt {
	font-size: 14px;
}
.bn_inner dd {
	font-size: 34px;
}
.company_page {
	font-size: 16px;
	padding: 55px 20px 105px;
}
.company_page .sec_01 dl {
	line-height: inherit;
	padding: 15px 0;
}
.company_page .sec_01 dt {
	width: 100px;
	text-align: left;
	padding-left: 1em;
}
.company_page .sec_02 {
	margin-top: 60px;
}
.company_page .sec_02 dt {
	font-size: 18px;
	width: 100px;
	line-height: 36px;
}
.pt_list {
	display: grid;
	grid-gap: 20px;
	grid-template-columns: repeat(2, 45%);
}
.pt_list li{
	text-align:center;
}
.contact_page{
	font-size: 16px;
	padding: 55px 20px 105px;
}
.contact_page dl {
	line-height: inherit;
	padding: 15px 0;
}
.contact_page dt {
	width: 100px;
	text-align: left;
	padding-left: 1em;
}
.expand_page{
	padding:180px 20px;
	font-size:18px;
}

.news_page{
	padding:40px 20px 100px;
}
.news_list a{
	padding:15px 0 15px;
	font-size:16px;
	flex-wrap:wrap;
}
.news_list a .date{
	width:140px;
	text-align:left;
	color:#777;
}
.news_list a .cat{
	font-size:14px;
}
.news_list a .txt{
	flex:100%;
	margin-left:0;
	margin-top:8px;
}
.service_page{
	padding:20px 20px 100px;
}
.prod_list{
	grid-template-columns: 1fr;
	grid-gap: 40px;
}
.prod_list dl{
	font-size:16px;
	padding:40px 30px 75px;
}
.prod_list .more{
	right:30px;
	bottom:20px;
}
.prod_list .more a{
	font-size:18px;
}
.hm_page{
	padding:0 20px;
}
.hm_page .news_stl{
	padding:36px 0;
}
.hm_page .news_stl dt{
	font-size:14px;
}
.hm_page .news_stl dd{
	font-size:34px;
}
.hm_page .news_ft{
	padding:36px 0 40px;
}
.hm_page .news_ft a{
	font-size:18px;
	padding-bottom:8px;
}
.hm_page .news_ft a::after{
	content:'';
	height:3px;
}
.bn_hm{
	background:#f6f7f9 url(../img/ss.svg) center center no-repeat;
	background-size:90% auto;
}
.bn_hm .section{
	height:auto;
	padding:60px 20px;
}
.bn_hm .txt_01{
	max-width:inherit;
}
.bn_hm .txt_02{
	font-size:22px;
	margin-top:50px;
}
.bn_hm .txt_02 br{
	display:none;
}

.f_sp{
	display:block;
}
.footer{
	background-size:auto 100%;
}
.footer .sec_01{
	min-width:inherit;
	max-width:inherit;
	padding:50px 20px 30px;
}
.footer .sec_01 .flogo{
	text-align:center;
}
.footer .sec_01 .flogo img{
	max-width:320px;
}
.footer .sec_01 .address{
	padding:25px 20px 0 40px;
	font-size:16px;
}
.footer .sec_02{
	height:inherit;
	line-height:inherit;
	padding:20px;
}
.news_detail .article_stl{
	font-size:22px;
}
.news_detail .article_cnt{
	font-size:16px;
}
}
