@charset "utf-8";
/*
Theme Name: Sugata shoji
Author: arnk
*/

:root {
	--font-color: #1a1a1a;
	--Russo-font: 'Russo One', sans-serif;
	--noto-font: 'Noto Sans JP', sans-serif;
	--m-plus-font: 'M PLUS 1p', sans-serif;
	--deep-green: #007a47;
	--green: #4e987b;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	line-height: 1.3;
}

p {
	margin: 0;
}

h2 {
	text-transform: uppercase;
}

img {
	max-width: 100%;
}

.inner {
	max-width: 1435px;
	padding: 0 17.5px;
	margin: 0 auto;
	box-sizing: border-box;
}

.heading_h2 {
	margin-bottom: 25px;
}

.heading_h2 h2 {
	font-family: var(--Russo-font);
	font-size: 2.1rem;
}

.heading_h2 h2::first-letter {
	color: var(--green);
}

.heading_h2 > span {
	color: var(--green);
	font-size: 1.4rem;
}

.heading_h2 > span::before {
	content: '－';
}

.top_section {
	padding: 40px 0;
}

.upper_case {
	text-transform: uppercase;
}

figure {
	margin: 0;
}

/*header*/
.header_wrap {
	position: relative;
}

header {
	position: fixed;
	/* background: #fff; */
	width: 100%;
	z-index: 15;
	top: 0;
	transition: 0.3s;
}

.header,
.header_subpage {
	height: 60px;
}

.header.active {
	background: rgba(255,255,255,0.95);
}

.header_subpage.active {
	background: rgba(255,255,255,0.95);
}

.header_inner {
	max-width: 1825px;
	margin: 0 auto;
	padding: 0 17.5px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100%;
	column-gap: 54px;
}

.header_inner h1 {
	line-height: 1;
}

.header_inner h1 img {
	width: 154px;
	display: block;
}

.header_inner h1 a:hover,
.gnav_pc_left li a:hover,
.nav_contact li a:hover,
.nav_common li a:hover {
	opacity: 0.8;
}

.gnav_pc_left > li {
	position: relative;
}

.sub-menu  {
	display: none;
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	
}

.menu-item a {
	display: block;
	transition: .3s;
	padding: 8px 5px;
	text-decoration: none;
	background: rgba(233,233,233,.8);
	color: var(--font-color);
	/* text-align: center; */
	width: 176px;
	font-size: 1.4rem;
}

.menu-item a::before {
	content: '―';
	margin-right: 3px;
}

.menu-item a:hover {
	background: rgba(68,68,68,.8);
	color: #fff;
}


/*ハンバーガーメニュー*/
.gnav_pc {
	display: none;
}

.gnav_pc_left {
	display: flex;
}

.lang_icon {
	display: none;
}

.Toggle_wrap {
	position: fixed;
	z-index: 40;
	width: 40px;
	height: 26px;
	top: 17px;
	right: 17.5px;
	font-size: 1rem;
	line-height: 1;
}

.Toggle_wrap p {
	text-align: center;
	text-transform: uppercase;
}

.toggle {
	width: 100%;
	height: 16px;
}

.toggle span {
	display: inline-block;
	width: 34px;
	height: 2px;
	background: var(--font-color);
	position: absolute;
	left: 3px;
	transition: .3s;
}

.toggle span:first-child {
	top: 0;
}

.toggle span:nth-child(2) {
	top: 6px;
}

.toggle.active span:first-child {
	top: 3px;
	transform: rotate(15deg);
}

.toggle.active span:nth-child(2) {
	top: 3px;
	transform: rotate(-15deg);
}

.gnav_sp {
	width: 100%;
	height: 100%;
	overflow-y: scroll;
	/* overscroll-behavior-y: none; */
	scrollbar-width: none; /*Firefox対応のスクロールバー非表示コード*/
    -ms-overflow-style: none;
	position: fixed;
	right: -100%;
	top: 0;
	background: rgba(255,255,255,0.8);
	z-index: 30;
	padding: 87px 17.5px 15px;
	box-sizing: border-box;
	transition: .3s;
}

.gnav_sp.open {
	transform: translateX(-100%);
}

.gnav_sp::-webkit-scrollbar {
	display: none;
}

.nav_common > li:first-child {
	border-top: 1px solid #c8c8c8;
}

.menu_parent {
	border-bottom: 1px solid #c8c8c8;
	position: relative;
}

.menu_parent a {
	display: block;
	padding: 13px 18px;
	box-sizing: border-box;
	text-decoration: none;
	color: var(--font-color);
}

.menu_child {
	display: none;
}

.menu_arrow_hb a {
	background: url(img/menu_arrow_hb.svg) no-repeat right 18px center/7px;
}

.menu_open {
	position: absolute;
	width: 50px;
	height: 50px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.menu_open span {
	width: 11px;
	height: 11px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
}

.menu_open span::before {
	content: '';
	width: 100%;
	height: 2px;
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.menu_open.open span::after {
	transform: translateX(-50%) scale(0);
}

.menu_open span::after {
	content: '';
	width: 2px;
	height: 100%;
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	transition: .3s;
}

.menu_open_hb span::before,
.menu_open_hb span::after {
	background: var(--green);
}

.menu_child {
	padding: 13px 0 ;
}

.menu_child li a {
	display: block;
	padding: 7px 18px;
	box-sizing: border-box;
	text-decoration: none;
	color: var(--font-color);
}

.menu_child li a::before {
	content: '－';
}

.menu_child_hb li a::before {
	color: var(--deep-green);
}

/*メインビジュアル*/
.top_hero {
	position: relative;
	padding-bottom: 10.4vw;
}

.hero_left {
	margin-top: 60px;
	padding: 8% 0;
	background: url(img/main_bg_sp.svg) center top/cover;
	position: relative;
}

.hero_left::before {
	content: '';
	display: block;
	width: 15.5vw;
	height: 28vw;
	/* background: url(img/main_bg01.svg) no-repeat; */
	background-size: contain;
	position: absolute;
	top: 8vw;
	left: 0;
}

.hero_eyecatch {
	margin-left: 20%;
}

.hero_eyecatch img {
	width: 47%;
}

.hero_eyecatch p {
	display: none;
}

.scroll {
	width: 16px;
	position: absolute;
	bottom: 4vw;
	left: 5.3vw;
	padding-top: 40px;
}

.scroll_bar {
	width: 2px;
	height: 25px;
	display: block;
	position: absolute;
	background: var(--font-color);
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	margin-bottom: 15px;
	transform-origin: top;
	animation: scrollAnime 2s ease-out infinite both normal;
}

@keyframes scrollAnime {
	0% {
		scale: 0;
		transform-origin: top;
	}
	50% {
		scale: 1;
		transform-origin: top;
	}
	50.1% {
		scale: 1;
		transform-origin: bottom;
	}
	100% {
		scale: 0;
		transform-origin: bottom;
	}
}

/*top　取扱品目*/
.top_product {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	row-gap: 35px;
}

.top_product li {
	text-align: center;
}

.top_product li a {
	text-decoration: none;
}

.top_product li a:hover {
	opacity: 0.8;
}

.top_product_thumb {
	margin-bottom: 20px;
}

.top_product h3 {
	color: var(--green);
	font-size: 2rem;
	font-weight: normal;
}

.top_product p {
	text-transform: uppercase;
	font-size: 1.1rem;
	color: var(--font-color);
}

/*top 取扱メーカー一覧*/
.top_maker_list {
	margin-top: 40px;
}

.top_maker_list_bg {
	background: url(img/top_maker_bg_sp.svg) no-repeat center/cover;
	padding: 11.73vw 0 9vw;
	text-align: center;
	border-radius: 10px;
}

.top_maker_list_bg p {
	font-size: 2rem;
	color: #fff;
}

.top_maker_list_bg span {
	color: #fff;
	display: block;
	margin-bottom: 30px;
	font-size: 1.1rem;
	text-transform: uppercase;
}

.more_btn {
	display: grid;
	justify-content: center;
	align-items: center;
	max-width: 160px;
	width: 100%;
	height: 40px;
	text-decoration: none;
	color: #fff;
	margin: 0 auto;
	background: var(--font-color);
	border-radius: 4px;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}

.more_btn:hover {
	opacity: .8;
}

/*top 施工実績*/
.top_works {
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 20px;
	row-gap: 35px;
	margin-bottom: 30px;
}

.top_works li {
	display: grid;
	justify-content: center;
}

.top_works li a {
	text-decoration: none;
}

.top_works li a:hover {
	opacity: .8;
}

.top_works_img {
	margin-bottom: 18px;
}

.top_link_txt .more_btn {
	margin-left: 0;
}

.top_works_h3 {
	margin-bottom: 15px;
}

.top_works_h3 h3 {
	color: var(--green);
	font-size: 22px;
}

.top_works_h3 span {
	text-transform: uppercase;
	font-size: 11px;
	color: var(--font-color);
}

.more_btn.top_wroks {
	margin-left: 0;
	margin-right: 0;

}

/*top リンク*/
.top_link {
	display: grid;
	row-gap: 45px;
}

.top_link li {
	display: grid;
	row-gap: 20px;
}

.top_link li:first-child .heading_h2,
.top_link li:nth-child(2) .heading_h2 {
	margin-bottom: 30px;
}

.top_link li:nth-child(3) .heading_h2,
.top_link li:last-child .heading_h2 {
	margin-bottom: 15px;
}

.top_link li p {
	margin-bottom: 15px;
}

.top_link_tel {
	display: inline-block;
	margin-bottom: 20px;
	color: var(--green);
}

.top_link_tel:hover {
	text-decoration: none;
}

.top_link_img {
	filter: drop-shadow(7px 6px 6px rgba(0,0,0,0.3));
}

/*top グローバル*/
.top_grobal {
	background: url(img/top_grobal.png) no-repeat center/contain;
	text-align: center;
	padding-top: 7.79vw;
	margin-top: 40px;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.top_grobal_eyecatch {
	font-size: 1.8rem;
	margin-bottom: 30px;
}

/*top SDGsの取り組み*/
.top_sdgs_bg {
	background: url(img/top_sdgs_sp.jpg) no-repeat center/cover;
	border-radius: 10px;
	padding: 13.5% 0;
	text-align: center;
}

.sdgs_heading {
	margin-bottom: 30px;
}

.sdgs_heading p {
	font-size: 2.1rem;
	font-family: var(--Russo-font);
	text-transform: uppercase;
	line-height: 1.3;
}

.sdgs_heading span {
	/* text-transform: uppercase; */
	color: var(--green);
}

.sdgs_heading p::first-letter {
	color: var(--green);
}

.lower_case {
	text-transform: lowercase;
}

/*slider*/
.hero_right {
	width: 80%;
	margin-left: auto;
}

.swiper-container.slider {
	position: relative;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: -30px !important;
	text-align: right;
	padding-right: 17.5px;
	box-sizing: border-box;
}

/* .slider_wrap::after {
	content: '';
	display: block;
	margin-bottom: 10.4vw;
} */

/* ページネーションのサイズと色 */
.swiper-pagination-bullet {
	border-radius: inherit;
	margin: 0 5px!important;
	width: 10px;
	height: 10px;
	background: var(--font-color) !important;
	opacity: 0.19;
}
.swiper-pagination-bullet-active {
	background: var(--font-color) !important;
	opacity: 1;
}

/*お知らせ*/
.top_news .heading_h2 {
	margin-bottom: 30px;
}

.news_list {
	border-top: 2px solid var(--font-color);
	border-bottom: 2px solid var(--font-color);
	margin-bottom: 30px;
}

.news_list li {
	padding: 25px 0;
}

.news_list li:not(:last-child) {
	border-bottom: 1px solid #8d8d8d;
}

.news_list li a {
	text-decoration: none;
}

.news_list li a:hover div {
	opacity: 0.8;
	
}

.news_list li a:hover p {
	color: var(--green);
}

.news_list li a time {
	color: var(--deep-green);
	letter-spacing: 0.15rem;
	margin-bottom: 5px;
	font-weight:bold;
}

.news_list li a p {
	color: var(--font-color);
}

.news_list li a div {
	display: flex;
	align-items: center;
}

.news_cat {
	display: inline-block;
	font-size: 14px;
	line-height: 1.4;
	border-radius: 10px;
	padding: 0 10px;
	box-sizing: border-box;
	margin-left: 1rem;
}

.cat-id-1 {
	color: #fff;
	background: var(--green);
}

.top_section5 {
	margin-bottom: 20px;
}

.news_list_wrap {
	margin-bottom: 80px;
}

/*footer*/
footer {
	background: #f8f8f8;
	padding-top: 60px;
	padding-bottom: 20px;
	margin-bottom: 60px;
}

.footer_inner {
	max-width: 1200px;
	margin: 0 auto;
}

.footer_top {
	display: flex;
	flex-direction: column-reverse;
	row-gap: 60px;
	padding-bottom: 60px;
}

.f_border {
	border-bottom: 1px solid #c8c8c8;
	margin-bottom: 25px;
}


.menu_arrow_footer {
	background: url(img/menu_arrow_footer.svg) no-repeat right 18px center/7px;
}

.menu_open_footer span::before,
.menu_open_footer span::after {
	background: var(--font-color);
}

.sp_fixed_menu {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background: rgba(0,0,0,0.3);
	height: 60px;
	z-index: 1;
}

.nav_contact {
	display: flex;
	column-gap: 2.9%;
	height: 100%;
	align-items: center;
	justify-content: center;
	max-width: 445px;
	margin: 0 auto;
}

.nav_contact li a {
	display: block;
	text-decoration: none;
	text-align: center;
	font-size: 1.2rem;
}

.nav_contact li:first-child a {
	/* background: #ffe75c; */
	background: var(--deep-green);
	/* color: var(--font-color); */
	color: #fff;
	padding: 8px 18px;
	box-sizing: border-box;
	border-radius: 50px;
	max-width: 140px;
	width: 100%;
}

/* .nav_contact li:nth-child(2) a {
	background: var(--deep-green);
	color: #fff;
	padding: 8px 18px;
	box-sizing: border-box;
	border-radius: 50px;
	max-width: 140px;
	width: 100%;
} */

.nav_contact li:last-child a img,
.lang_icon a img {
	width: 40px;
}

.footer_info {
	font-style: normal;
}

.f_company {
	font-weight: bold;
}

.f_tel {
	text-decoration: none;
	color: var(--font-color);
}

.f_tel:hover {
	opacity: 0.8;
}

.footer_bottom {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.f_logo img {
	width: 154px;
}

.copy small {
	font-size: 1rem;
	text-transform: uppercase;
}

.footer_sns li:first-child img {
	width: 40px;
	margin-top: 35px15:00;
}

/*ページトップ*/
.pageTop {
	position: fixed;
	bottom:  70px;
	right: 15px;
	width: 50px;
}

.pageTop a:hover {
	opacity: 0.8;
}

.pageTop img {
	width: 100%;
}


/*下層ページ*/
.subpage_main {
	/* margin-top: 155px; */
	margin-top: 80px;
}

.subpage_h2_wrap {
	/* padding-left: max(17.5px, calc((100% - 1400px) / 2)); */
	max-width: 1435px;
	margin: 0 auto;
	padding: 0 17.5px;
	/* display: flex;
	justify-content: space-between;
	align-items: center; */
	overflow: hidden;
	position: relative;
}

.subpage_h2 h2 {
	margin-bottom: 0;
}

.pnkz ol li {
	display: inline-block;
}

.pnkz ol li a {
	color: #808080;
	text-decoration: none;
}

.pnkz ol li a:hover {
	text-decoration: underline;
}

.pnkz ol li:not(:first-child)::before {
	content: '―';
	margin: 0 1rem;
}

.pnkz_top {
	/* margin-bottom: 80px; */
	margin-bottom: 40px;
}
.pnkz_footer {
	background: #f5f5f5;
	padding: 10px 0;
}

/*スガタ商事について*/
.about_sgata {
	background: #f3faf3;
	/* padding: 60px 0; */
	padding: 30px 0;
	display: grid;
	justify-content: center;
	/* margin-bottom: 100px; */
	margin-bottom: 50px;
}

.about_sgata p:first-child {
	font-size: 1.8rem;
	font-family: var(--m-plus-font);
	transform: rotate(0.05deg);
	/* margin-bottom: 60px; */
	margin-bottom: 30px;
}

.about_sgata p span {
	display: inline-block;
}

.heading_h3 {
	/* margin-bottom: 80px; */
	margin-bottom: 40px;
}

.heading_h3 h3 {
	font-family: var(--Russo-font);
	/* font-size: 30px; */
	font-size: 2.4rem;
	text-transform: uppercase;
}

.heading_h3 span {
	/* font-size: 16px; */
	font-size: 1.4rem;
	color: var(--green);
}

.about_col2 {
	display: grid;
	grid-template-columns: 1fr;
	justify-content: center;
	row-gap: 30px;
}

.about_col2_left {
	text-align: center;
}

.about_wrap {
	/* margin-bottom: 160px; */
	margin-bottom: 80px;
}

.about_message .about_col2 {
	/* margin-bottom: 80px; */
	margin-bottom: 40px;
}

/*mission*/
.mission1 {
	text-align: center;
	/* background: #f3faf3; */
	background: #f5f5f5;
	border-radius: 10px;
	padding: 30px 15px;
	box-sizing: border-box;
	/* margin-bottom: 80px; */
	margin-bottom: 40px;
}

.mission1_eyecatch,
.mission1_eyecatch + p + p,
.mission1 ul {
	font-family: var(--m-plus-font);
	transform: rotate(0.05deg);
}

.mission1_eyecatch {
	/* font-size: 2.6rem; */
	font-size: 2.2rem;
	margin-bottom: 15px;
	line-height: 1.6;
	/* color: var(--deep-green); */
}

.mission1_eyecatch + p {
	margin-bottom: 20px;
	padding-bottom: 25px;
	border-bottom: 2px dotted #c6c6c6;
}

.mission1_eyecatch + p + p {
	/* font-size: 2rem; */
	font-size: 1.8rem;
	margin-bottom: 5px;
	font-weight: bold;
}

.mission1_eyecatch span {
	display: inline-block;
}

.mission1 ul {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

.mission1 ul li {
	max-width: 170px;
	height: 170px;
	width: 100%;
	margin: 0 auto;
	color: #fff;
	display: grid;
	place-items: center;
	border-radius: 15px;
	line-height: 1.6;
}

.mission1 ul li:first-child {
	/* background: #efd96f; */
	background: #f77b97;
	/* color: #062228; */
	color: #fff;
}

.mission1 ul li:nth-child(2) {
	/* background: #f28e56; */
	background: #78d2b7;
	color: #fff;
}

.mission1 ul li:last-child {
	/* background: #5cbdbf; */
	background: #8084d1;
	color: #fff;
}

.suggest {
	display: block;
}

.mission2 {
	text-align: center;
	/* color: var(--deep-green); */
	color: #144351;
	border-bottom: 2px solid #144351;
	/* padding-bottom: 80px; */
	padding-bottom: 40px;
	/* margin-bottom: 80px; */
	margin-bottom: 40px;
}

.mission2 p:first-child {
	font-family: var(--Russo-font);
	font-weight: bold;
	/* font-size: 4rem; */
	font-size: 2.6rem;
	padding: 0 1.6rem;
	box-sizing: border-box;
	background: #fff;
	z-index: 1;
	display: inline-block;
}

.mission2 p span {
	display: inline-block;
}

.mission2 p:nth-child(2) {
	line-height: 1.6;
	/* margin-bottom: 60px; */
	margin-bottom: 30px;
}
.mission2_eyecatch {
	position: relative;
}

.mission2_eyecatch::after {
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	/* background: var(--deep-green); */
	background: #144351;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}

.mission3_eyechatch {
	display: grid;
	place-items: center;
	text-align: center;
	margin-bottom: 40px;
}

.mission3_eyechatch p {
	font-family: var(--m-plus-font);
	color: #fff;
	background: #144351;
	padding: 1rem 2.5rem;
	box-sizing: border-box;
	border-radius: 50px;
	/* font-size: 2.4rem; */
	font-size: 1.8rem;
}

.mission3 {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 40px;
}

.mission3 figure {
	text-align: center;
}

.mission3 img {
	width: 80%;
}

.mission3 ol {
	display: grid;
	grid-template-columns: 1fr;
	/* row-gap: 60px; */
	row-gap: 30px;
}

.mission3 ol li {
	/* padding-bottom: 34px; */
	padding-bottom: 20px;
	border-bottom: 2px dotted #c6c6c6;
}

.mission3 ol li h4 {
	/* color: var(--deep-green); */
	line-height: 1.2;
	/* font-size: 2.4rem; */
	font-size: 2rem;
	margin-bottom: 10px;
}

.mission3 ol li:first-child h4 {
	color: #ffaa00;
}

.mission3 ol li:nth-child(2) h4 {
	color: #1581e7;
}

.mission3 ol li:last-child h4 {
	color: #42b36d;
}

.mission3 ol li:first-child h4::before {
	content:'01 |';
	margin-right: 0.5rem;
}

.mission3 ol li:nth-child(2) h4::before {
	content:'02 |';
	margin-right: 0.5rem;
}

.mission3 ol li:last-child h4::before {
	content:'03 |';
	margin-right: 0.5rem;
}

/*mission ここまで*/

.policy_ttl,
.office_ttl {
	position: relative;
}

.policy_ttl .ttl_inner,
.office_ttl .ttl_inner {
	background: var(--font-color);
	text-align: center;
	max-width: 404px;
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
}

.policy_ttl::after,
.office_ttl::after {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: var(--font-color);
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}

.policy_ttl .ttl_inner p,
.office_ttl .ttl_inner p {
	color: #fff;
	/* font-family: var(--m-plus-font); */
	font-family: var(--Russo-font);
	/* font-size: 2.4rem; */
	font-size: 2.2rem;
	line-height: 1.1;
	text-transform: uppercase;
}

.policy_ttl .ttl_inner span,
.office_ttl .ttl_inner span {
	color: #4e967b;
	font-family: var(--Russo-font);
	/* font-size: 1.6rem; */
	font-size: 1.4rem;
	display: inline-block;
	text-transform: uppercase;
}

.about_policy ul li {
	padding: 40px 15px;
	box-sizing: border-box;
	border-bottom: 1px solid #c6c6c6;
}

.about_policy ul li p {
	position: relative;
	padding-left: 6.5rem;
}

.about_policy ul li p::before {
	color: var(--deep-green);
	font-weight: bold;
	margin-right: 1rem;
	position: absolute;
	left: 0;
	top: 0;
}

.about_policy ul li:first-child p::before {
	content: '01 |';
}

.about_policy ul li:nth-child(2) p::before {
	content: '02 |';
}

.about_policy ul li:nth-child(3) p::before {
	content: '03 |';
}

.about_policy ul li:nth-child(4) p::before {
	content: '04 |';
}

.about_policy ul li:nth-child(5) p::before {
	content: '05 |';
}

.about_policy ul li:nth-child(6) p::before {
	content: '06 |';
}

.about_policy ul li:nth-child(7) p::before {
	content: '07 |';
}

.about_policy ul li:nth-child(8) p::before {
	content: '08 |';
}

.about_policy ul li:nth-child(9) p::before {
	content: '09 |';
}

.about_policy ul li:last-child p::before {
	content: '10 |';
}

.about_history {
	/* margin-bottom: 220px; */
	margin-bottom: 140px;
}

.table_wrap {
	/* border-top: #c6c6c6; */
}

.table_wrap dl {
	margin: 0;
}

.table_wrap > dl > dt {
	background: #eee;
	text-align: center;
	color: var(--deep-green);
	font-weight: bold;
	padding: 10px 15px;
	box-sizing: border-box;
}

.table_wrap > dl > dd {
	display: grid;
	justify-content: center;
	margin-left: 0;
	padding: 20px 15px;
	row-gap: 8px;
}

.about_profile_tel {
	display: grid;
	grid-template-columns: 5.5rem auto;
	row-gap: 8px;
}

.about_profile_tel a {
	color: var(--font-color);
	text-decoration: none;
}

.about_profile_tel a:hover {
	opacity: 0.8;
}

.about_profile_tel dd {
	margin-left: 0;
}

.business_list {
	display: grid;
	row-gap: 8px;
}

.porfile_office_list {
	display: grid;
	row-gap: 8px;
}

.green_btn {
	display: grid;
	height: 32px;
	justify-content: center;
	align-items: center;
	color: #81b99f;
	border: 1px solid #81b99f;
	box-sizing: border-box;
	transition: .3s;
	text-decoration: none;
	max-width: 186px;
	width: 100%;
	border-radius: 4px;
}

.detail_btn {
	margin-top: 17px;
}

.detail_btn.green_btn {
	height: auto;
	padding: 5px 0;
	text-align: center;
}

.green_btn:hover {
	background: #81b99f;
	color: #fff;
}

/*コンテンツ一部隠す*/
.expand {/*全体*/
	max-height: 160px;
	overflow: hidden;
	position: relative;
	/* border-bottom: 1px solid #aaa; */
	transition: .5s;
}

.expand::before {/*グラデーション部分*/
	content: "";
	position: absolute;
	width: 100%;
	height: 50%;
	bottom: 0;
	background-image: linear-gradient(rgba(255, 255, 255, 0), #ffffff);
	pointer-events: none;
	transition: 1s;
}

.contenedor {
	position: relative;
	margin-bottom: 60px;
}

.contenedor input {/*input要素は隠しておく*/
	visibility: hidden;
	display: none;
}

.open_btn {/*ボタン部分のスタイル*/
	display: block;
	font-size: 1.6rem;
	cursor: pointer;
	text-transform: uppercase;
	color: #81b99f;
	background: #fff;
	border: 1px solid #81b99f;
	box-sizing: border-box;
	border-radius: 4px;
	max-width: 186px;
	width: 100%;
	text-align: center;
	transition: .3s;
	position: absolute;
	bottom: -60px;
	left: 50%;
	transform: translateX(-50%);
}

.open_btn:hover {
	color: #fff;
	background: #81b99f;
}

.open_btn:before {/*閉じている際のボタンのテキスト*/
	content: "Read more";
}

/* .contenedor input:checked + label {
	display: none;
} */

.contenedor input:checked + .open_btn:before {/*開いているときは:checked状態なので、その際はボタンテキストを変える*/
	content: 'Close';
}

input[type=checkbox]:checked ~ .expand {
	max-height: 3200px;
}

input[type=checkbox]:checked ~ .expand:before {
	opacity: 0
}

.anchor {
	/* margin-top: -85px; */
	/* padding-top: 85px; */
	margin-top: -60px;
	padding-top: 60px;
}

.about_offices nav {
	margin-bottom: 100px;
	margin-bottom: 50px;
}

.anchor_link_btn ul {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	column-gap: 15px;
	row-gap: 15px;
	max-width: 980px;
	margin: 0 auto;
}

.anchor_link_btn ul li a {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	/* max-width: 180px; */
	width: 100%;
	padding: 5px 10px;
	box-sizing: border-box;
	text-align: center;
	text-decoration: none;
	color: #81b99f;
	border: 1px solid #81b99f;
	border-radius: 4px;
	font-size: 1;
	transition: .3s;
	column-gap: 1rem;
}

.anchor_link_btn ul li a span {
	display: inline-block;
}

.anchor_link_btn ul li a:hover {
	color: #fff;
	background: #81b99f;
}

.office_list {
	/* display: grid; */
	justify-content: center;
}

.ja_office {
	/* margin-bottom: 160px; */
	margin-bottom: 80px;
}

.ja_office li:last-child .office_list_inner,
.ja_office li:nth-last-child(2) .office_list_inner {
	text-align: center;
	padding: 20px 0;
	color: var(--deep-green);
	font-weight: bold;
}

.office_list li {
	max-width: 660px;
	margin: 0 auto;
}

.office_list > li + li {
	/* margin-top: 100px; */
	margin-top: 50px;
}

.office_list li dl {
	margin: 0;
}

.office_list li dl dt {
	text-align: center;
	color: darkgreen;
	font-weight: bold;
	background: #eee;
	padding: 10px 15px;
	box-sizing: border-box;
}

.office_list li dl dd {
	display: grid;
	row-gap: 8px;
	padding: 20px 15px;
	box-sizing: border-box;
	margin-left: 0;
	justify-content: center;
}

.office_list li dl dd a.tel {
	text-decoration: none;
	color: var(--font-color);
}

.office_list li dl dd a.tel:hover {
	opacity: 0.8;
}

.office_ttl {
	/* margin-bottom: 100px; */
	margin-bottom: 50px;
}

.office_img {
	text-align: center;
	/* margin-bottom: 40px; */
	margin-bottom: 20px;
}

.office_thumb {
	margin-bottom: 12px;
	position: relative;
}

.office_align_center {
	text-align: center;
}

.company_name {
	position: absolute;
	bottom: 0;
	right: 0;
	color: #fff;
	background: var(--deep-green);
	min-width: 120px;
	/* padding: 20px 30px; */
	padding: 10px 20px;
	box-sizing: border-box;
	/* font-size: 2.4rem; */
	font-size: 1.3rem;
	display: grid;
	justify-content: center;
	text-transform: uppercase;
	text-align: left;
}

.company_name span {
	display: none;
	font-size: 1.6rem;
}

.thumb-item-nav {
	display: grid;
	grid-template-columns: repeat(3,1fr);
}

.thumb-item-nav li {
	background: rgba(68,68,68,1);
	cursor: pointer;
}

.thumb-item-nav li img {
	opacity: 0.3;
}

.thumb-item-nav li.active {
	pointer-events: none;
}

.thumb-item-nav li.active img {
	opacity: 1;
}

/* .office_list_inner {
	border-bottom: 1px solid #c6c6c6;
} */

.office_address_wrap {
	border-bottom: 1px solid #c6c6c6;
}

.wedg_page,
.itatsu_page {
	width: 218px;
	margin: 0 auto 8px;
}

.itatsu_page {
	pointer-events: none;
}

.map_btn,
.video_link {
	margin: 0 auto;
}

.video_link{
	margin: 0 auto;
	pointer-events: none;
	margin-bottom: 8px;
	margin-top: 8px;
}

.green_btn.video_link {
	height: auto;
	padding: 5px 0;
	text-align: center;
}

.alignment {
	border-top: 2px dotted #c6c6c6;
}

.video_access span,
.alignment_page_wrap span {
	color: var(--deep-green);
}

.map_btn.vietnam_office_map {
	margin-top: 8px;
}

/*インフォメーション詳細*/
.news_post {
	margin-bottom: 50px;
}

.post_ttl h3 {
	font-size: 2.6rem;
	margin-bottom: 30px;
}

.post_ttl time {
	display: block;
	margin-bottom: 10px;
}

.news_cat_wrap {
	margin-bottom: 5px;
}

.post_content p {
	margin-bottom: 40px;
}

.back_btn {
	display: grid;
	width: 218px;
	height: 32px;
	border-radius: 4px;
	border: 1px solid #81b99f;
	color: #81b99f;
	box-sizing: border-box;
	margin: 0 auto 80px;
	text-align: center;
	text-decoration: none;
	transition: .3s;
}

.back_btn:hover {
	color: #fff;
	background: #81b99f;
}

/*お問い合わせ
------------------------*/
.tel_contact {
	border-top: 1px solid #a0d3b4;
	border-bottom: 1px solid #a0d3b4;
	max-width: 1200px;
	margin: 0 auto;
	background: #f3faf3;
	/* padding: 50px 15px; */
	padding: 30px 15px;
	box-sizing: border-box;
	/* margin-bottom: 100px; */
	margin-bottom: 50px;
	margin-top: 50px;
}

.tel_contact > p:first-child {
	color: var(--deep-green);
	text-align: center;
	font-weight: bold;
	/* font-size: 4rem; */
	font-size: 3rem;
	margin-bottom: 10px;
}

.tel_contact > p:nth-child(2) {
	display: grid;
	justify-content: center;
	font-weight: bold;
	/* font-size: 1.8rem; */
	/* margin-bottom: 50px; */
	margin-bottom: 30px;
}

.tel_number {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	/* font-size: 1.8rem; */
	font-weight: bold;
	justify-content: space-around;
	row-gap: 30px;
}

.tel_number a {
	color: var(--font-color);
	text-decoration: none;
	display: inline-block;
	padding-left: 50px;
	position: relative;
}

.tel_number a::before {
	content: '';
	display: inline-block;
	width: 24px;
	height: 40px;
	background: url(img/contact/icon_tel.svg) no-repeat;
	background-size: contain;
	position: absolute;
	left: 8px;
	top: 50%;
	transform: translateY(-50%);
}

.tel_number a:hover {
	opacity: 0.8;
}

.fax_number {
	padding-left: 50px;
	position: relative;	
}

.fax_number::before {
	content: '';
	display: inline-block;
	width: 40px;
	height: 40px;
	background: url(img/contact/icon_fax.svg) no-repeat;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.coutacu_guide {
	display: grid;
	justify-content: center;
	margin-bottom: 30px;
	/* margin-bottom: 60px; */
}

.form_wrap {
	max-width: 1000px;
	margin: 0 auto;
}

.form_wrap dl {
	margin: 0;
	display: grid;
	row-gap: 10px;
}

.form_wrap dl+dl {
	/* margin-top: 50px; */
	margin-top: 30px;
}

.form_wrap dl dt {
	font-weight: bold;
	color: var(--deep-green);
}

.form_wrap dl dd {
	margin-left: 0;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
	width: 100%;
	border: none;
	box-shadow: none;
	outline: none;
	background: #f5f5f5;
	border-radius: 0;
	-webkit-appearance: none;
	padding: 15px;
	box-sizing: border-box;
	line-height: 1.6;
}

textarea {
	height: 23rem;
	resize: vertical;
}

::placeholder {
	color: #a9a9a9;
}

.confirm_txt {
	/* margin-top: 100px; */
	margin-top: 50px;
	/* margin-bottom: 50px; */
	margin-bottom: 30px;
}

.confirm_txt a {
	color: var(--green);
	text-decoration: none;
}

.accept label {
	cursor: pointer;
}

.submit {
	text-transform: uppercase;
	margin-bottom: 2rem;
}

.submit button {
	border: none;
	box-shadow: none;
	text-shadow: none;
	outline: none;
	background: var(--font-color);
	color: #fff;
	display: grid;
	justify-content: center;
	align-items: center;
	width: 240px;
	height: 60px;
	border-radius: 5px;
	margin: 0 auto;
	cursor: pointer;
	text-transform: uppercase;
}


.submit button:hover {
	opacity: .8;
}

.accept {
	margin-top: 30px;
	text-align: center;
}

/*チェックボックス*/
.form_wrap [type="checkbox"] {
	margin: 0 10px;
	display: none;
}

.form_wrap [type="checkbox"] + .wpcf7-list-item-label {
	position: relative;
	padding-left: 20px;
	/*チェックボックス分の隙間を作る*/
}

.form_wrap [type="checkbox"]+ .wpcf7-list-item-label::before {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	/*中央ぞろえにする*/
	border: 1px solid #4e987b;
	/*お好きな太さで。*/
	/* border-radius: 3px; */
	cursor: pointer;
	/*ポインターを表示する*/
}

.form_wrap [type="checkbox"]:checked+ .wpcf7-list-item-label::before {
	/*チェックしたときの箱の色を変える*/
	background: #4e987b;
}

.form_wrap [type=checkbox]:checked+ .wpcf7-list-item-label::after {
	/*チェックの✓をつくる*/
	content: "";
	display: block;
	width: 10px;
	height: 6px;
	box-sizing: border-box;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	position: absolute;
	/*ここから下は位置を調整する*/
	top: 40%;
	left: 5px;
	/*箱を斜めに傾けてチェック表示にする*/
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg) translateY(-50%);
}

/*取扱品目
-----------------------------*/
.page_description {
	margin-bottom: 50px;
}

.page_description .inner {
	display: grid;
	justify-content: center;
}

.product_anchor_btn {
	margin-bottom: 50px;
}

.orange_book {
	background: #f5fcf5;
	padding: 30px 15px;
	border-top: 1px solid #a0d3b4;
	border-bottom: 1px solid #a0d3b4;
	margin-bottom: 50px;

}

.orange_book div {
	display: flex;
	flex-direction: column;
	row-gap: 20px;
	justify-content: center;
	align-items: center;
}

.orange_book div a {
	max-width: 300px;
	width: 100%;
}

.orange_book div a:hover {
	opacity: 0.8;
}

.orange_book div a img {
	width: 100%;
}

.sub_page_section.products_section {
	margin-bottom: 80px;
}

.sub_page_section {
	margin-bottom: 60px;
}

.products_section .inner > ul {
	display: grid;
	row-gap: 50px;
}

.products_section .inner > ul h3 {
	margin-bottom: 20px;
}

.products_section .inner > ul >li {
	border-bottom: 1px solid #c8c8c8;
	padding-bottom: 20px;
}

.product_list_wrap {
	display: grid;
	row-gap: 10px;
	grid-template-columns: repeat(2,1fr);
}

.products_list {
	display: grid;
	row-gap: 10px;
}

.products_list li {
	position: relative;
	padding-left: 2rem;
}

.products_list li::before {
	content:'\025a0';
	position: absolute;
	top: 0;
	left: 0;
	color: #a0d3b4;
}

.maker_category {
	display: grid;
	row-gap: 30px;
}

.maker_category h4 {
	background: #f5fcf5;
	padding: 15px;
	box-sizing: border-box;
	text-align: center;
	border-radius: 10px 10px 0 0;
	border-bottom: 1px solid #a0d3b4;
	color: var(--deep-green);
	font-size: 2rem;
	margin-bottom: 25px;
	font-weight: normal;
}

.maker_list {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(335px,1fr));
	row-gap: 10px;
	padding: 0 max(15px,min(40px,3%));
}

.maker_list li a {
	color: var(--font-color);
	text-decoration: none;
}

.maker_list li a:hover {
	color: var(--green);
}

/*海外事業*/
.global_txt_wrap {
	max-width: 1000px;
	margin: 0 auto 40px;
}

.global_txt_wrap h3 {
	font-family: var(--m-plus-font);
	font-size: 1.8rem;
	text-align: center;
	padding-top: 10px;
	margin-bottom: 30px;
	font-weight: normal;
}

.global_txt_wrap h3 span {
	display: inline-block;
}

.global_txt_wrap p {
	line-height: 2.4;
}

.global_img {
	margin-bottom: 60px;
}

/*ページネーション*/
.page_nav {
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
	margin-bottom: 60px;
	column-gap: 5px;
	line-height: 1;
}

.page_nav a {
	text-decoration: none;
	color: var(--deep-green);
	/* border: 2px solid #74a850; */
	border-radius: 50%;
	box-sizing: border-box;
	transition: .3s;
	/* background: url(img/page_nav_circle.svg) no-repeat center/contain; */
	background: #cfcfcf;
}

.page_nav a:not(.prev,.next):hover {
	/* color: #000; */
	opacity: 0.8;
	/* background: #74a850; */
	border-radius: 50%;
}

.page-numbers {
	width: 28px;
	height: 28px;
	display: grid;
	justify-content: center;
	align-items: center;
}

.page-numbers.current {
	background: var(--deep-green);
	color: #fff;
	border-radius: 50%;
	pointer-events: none;
}
/*ワードプレス時変更の可能性あり*/
.prev.page-numbers,
.next.page-numbers {
	position: relative;
	color: var(--deep-green);
	border: none;
	background: none;
}

.prev.page-numbers {
	margin-right: 1rem;
}

.next.page-numbers {
	margin-left: 1rem;
}

.prev.page-numbers::before {
	content: '〈';
}

.next.page-numbers::after {
	content: '〉';
}

.page_nav a.next:hover,
.page_nav a.prev:hover {
	/* background: none; */
	/* color: #74a850; */
	/* color: #fff; */
	opacity: 0.8;
}


/*WORKS*/
.works_nav_top {
	margin-bottom: 50px;
}

.works_section ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 15px;
	row-gap: 35px;
}

.works_section ul li figure {
	text-align: center;
}

.works_section ul li figcaption {
	text-align: center;
	color: var(--green);
	font-size: 1.4rem;
	margin-top: 5px;
	font-weight: bold;
}

.works_section1 {
	margin-bottom: 80px;
}

.works_section2 {
	margin-bottom: 50px;
}

.works_nav_bottom {
	margin-bottom: 60px;
}

/*SDGsの取り組み*/
.sdgs_wrap {
	margin-bottom: 60px;
}

.about_sdgs {
	background: #f3faf3;
	/* padding: 60px 0; */
	padding: 30px 0;
	display: grid;
	justify-content: center;
	/* margin-bottom: 100px; */
	margin-bottom: 50px;
}

.about_sdgs p:first-child {
	text-align: center;
	font-size: 2.2rem;
	color: darkgreen;
	/* margin-bottom: 30px; */
	margin-bottom: 20px;
	font-family: var(--m-plus-font);
	font-weight: bold;
}

.sdgs_img_wrap img {
	object-fit: cover;
	overflow: hidden;
	height: 100%;
}

.sdgs_img_wrap {
	display: grid;
	column-gap: 15px;
	row-gap: 20px;
	/* margin-bottom: 40px; */
	margin-bottom: 20px;
}

.sdgs_wrap ol {
	display: grid;
	grid-template-columns: 1fr;
	/* row-gap: 100px; */
	row-gap: 50px;
	/* column-gap: 80px; */
	column-gap: 40px;
}

.sdgs_wrap ol > li {
	padding-bottom: 20px;
	border-bottom: 1px solid #81b99f;
}

.sdgs_img_wrap li:first-child {
	grid-column: 1/2;
	grid-row: 1/3;
}

.sdgs_img_wrap li:nth-child(2) {
	grid-column: 2/3;
	grid-row: 1/2;
}

.sdgs_img_wrap li:last-child {
	grid-column: 2/3;
	grid-row: 2/3;
}

.sdgs_wrap h4 {
	color: var(--deep-green);
	/* font-size: 2.4rem; */
	font-size: 1.8rem;
	/* margin-bottom: 40px; */
	margin-bottom: 20px;
}

.sdgs_wrap ol > li:first-child h4::before {
	content: '01 |';
	margin-right: 0.5rem;
}

.sdgs_wrap ol > li:nth-child(2) h4::before {
	content: '02 |';
	margin-right: 0.5rem;
}

.sdgs_wrap ol > li:nth-child(3) h4::before {
	content: '03 |';
	margin-right: 0.5rem;
}

.sdgs_wrap ol > li:nth-child(4) h4::before {
	content: '04 |';
	margin-right: 0.5rem;
}

.sdgs_icon {
	display: flex;
	column-gap: 10px;
	margin-top: 15px;
}

.sdgs_icon li {
	width: min(100px, calc((100% - 20px) / 3));
}

/*プライバシーポリシー*/
.privacy_declearation {
	background: #f3faf3;
	/* padding: 60px 0; */
	padding: 30px 0;
	display: grid;
	justify-content: center;
	/* margin-bottom: 100px; */
	margin-bottom: 50px;
}

.privacy_declearation p {
	max-width: 1000px;
	margin: 0 auto;
}

.privacy_section {
	max-width: 1000px;
	margin: 0 auto 40px;
}

.privacy_section h3 {
	/* font-size: 2.6rem; */
	font-size: 2.2rem;
	margin-bottom: 20px;
}

.privacy_section ul {
	margin-top: 30px;
}

.privacy_section ul li {
	position: relative;
	padding-left: 1.6rem;
}

.privacy_section ul li::before {
	content: '\2022';
	position: absolute;
	left: 0;
	top: 0;
}

.privacy_section_last {
	margin-bottom: 60px;
}

.contact_btn {
	margin-top: 20px;
	/* font-size: 2.1rem; */
	font-size: 1.8rem;
	color: #fff;
	background: var(--font-color);
	width: 100%;
	max-width: 240px;
	height: 60px;
	display: grid;
	place-items: center;
	border-radius: 5px;
	text-decoration: none;
	border: 1px solid var(--font-color);
	box-sizing: border-box;
	transition: .3s;
}

.contact_btn:hover {
	color: var(--font-color);
	background: #fff;
}

/*リキャプチャ設定*/
.grecaptcha-badge { visibility: hidden; }

.recaptcha_description {
	text-align: center;
}

@media screen and (min-width: 375px) {
	.only_small_device {
		display: none;
	}

	/*top リンク*/
	.top_link li {
		display: grid;
		align-items: flex-end;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 20px;
	}

	.reverse_grid .top_link_img {
		order: 2;
	}
	
	.reverse_grid .top_link_txt {
		order: 1;
	}

	/*footer*/
	.nav_contact li a {
		font-size: 1.6rem;
	}

	.nav_contact  {
		column-gap: 10px;
	}

	.footer_bottom {
		justify-content: space-between;
	}


}

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

@media screen and (min-width: 600px) {
	/*top 取扱品目*/
	.top_product {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		column-gap: 40px;
		row-gap: 60px;
		max-width: 1130px;
		margin: 0 auto;
	}

	.top_product li {
		flex-basis: calc((100% - 80px) / 3);
	}

	/*top 施工実績*/
	.top_works {
		grid-template-columns: repeat(2,1fr);
		column-gap: 35px;
	}

	/*mission*/
	.mission1 ul {
		flex-direction: row;
		justify-content: center;
		column-gap: 25px;
	}

	.mission1 ul li {
		margin: 0;
	}

	/*お問い合わせ*/
	.tel_number {
		position: relative;
	}

/*	.tel_number::before {
		content: '';
		width: 1px;
		height: 50px;
		background: var(--green);
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
	}*/

	/*WORKS*/
	.works_section ul {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media screen and (min-width: 601px) {
	/*SDGsの取り組み*/
	.about_sdgs p:first-child {
		margin-bottom: 30px;
	}

	.sdgs_img_wrap {
		margin-bottom: 40px;
		column-gap: 20px;
	}

	.sdgs_wrap ol {
		row-gap: 100px;
		/* column-gap: 80px; */
		column-gap: 20px;
		grid-template-columns: repeat(2, 1fr);
	}


	/* .sdgs_wrap ol > li >div {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	} */

	.sdgs_wrap h4 {
		font-size: 2.4rem;
		margin-bottom: 40px;
	}

}

@media screen and (min-width: 768px) {
	.top_section {
		padding: 80px 0;
	}

	.subpage_h2_wrap {
		margin-bottom: 80px;
	}

	.heading_h2 {
		/* margin-bottom: 0; */
		margin-bottom: 60px;
	}

	.heading_h2.subpage_h2 {
		margin-bottom: 0;
	}

	.heading_h2 h2 {
		/* font-size: 4.8rem; */
		font-size: 3rem;
	}

	.h2_border {
		position: relative;
	}

	.h2_border::after {
		content: '';
		width: 370px;
		display: block;
		height: 50px;
		/* background: url(img/h2_border.svg) no-repeat; */
		background: url(img/h2_bg.png) no-repeat;
		background-size: cover;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}

	.heading_h2 > span {
		/* font-size: 2.4rem; */
		font-size: 1.8rem;
		position: relative;
		padding-left: 70px;
		display: inline-block;
	}

	.heading_h2 > span::before {
		content: '';
		display: block;
		width: 50px;
		height: 1px;
		background: var(--green);
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}

	.pnkz_top {
		margin-bottom: 100px;
	}

	/*header*/
	.header {
		height: 160px;
	}

	.header_subpage,
	.header.active {
		height: 85px;
	}

	.top_hero {
		margin-top: 0;
		display: flex;
		padding-top: 160px;
		justify-content: flex-end;
		align-items: center;
		column-gap: 5.41%;
		padding-bottom: 6.25vw;
	}

	.hero_left {
		background: none;
		margin-top: 0;
		width: 31.875%;
		padding: 0;
	}

	.hero_left::before {
		display: none;
	}

	.hero_right {
		width: 50%;
		margin: 0;
	}

	.header_wrap {
		background: url(img/main_bg02.svg) no-repeat;
	}

	.header_wrap {
		position: relative;
		overflow: hidden;
	}

	.header_wrap::before {
		content: '';
		display: block;
		width: 12.7vw;
		height: 24.27vw;
		position: absolute;
		top: -0.73vw;
		left: -10px;
		/* background: url(img/main_bg01.svg) no-repeat; */
		background-size: contain;
	}

	.hero_eyecatch {
		margin-left: 0;
	}

	/* .hero_eyecatch p {
		display: block;
		margin-top: 3.8vw;
	} */

	.hero_eyecatch img {
		width: 100%;
	}

	.scroll {
		width: 21px;
		bottom: 3.125vw;
		left: 6.51vw;
		padding-top: 60px;
	}

	.scroll_bar {
		height: 40px;
	}

	.Toggle_wrap {
		display: none;
	}

	.gnav_pc {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 20px;
		/* column-gap: 30px; */
		column-gap: 20px;
		align-items: flex-end;
		/* max-width: 1020px; */
		max-width: 1030px;
		flex-direction: column-reverse;
	}

	.nav_bg_gray {
		display: flex;
		justify-content: center;
		align-items: center;
		column-gap: 30px;
		background: rgba(233,233,233,0.9);
		padding: 10px 20px;
		border-radius: 15px;
	}

	.gnav_pc_left {
		/* column-gap: 43px; */
		column-gap: 5px;
		max-width: 544px;
		justify-content: space-between;
		font-size: 14px;
	}

	.gnav_pc_right.nav_contact {
		margin: 0;
		display: none;
	}

	.gnav_pc_left > li > a {
		text-decoration: none;
		color: var(--font-color);
		display: block;
		padding: 5px 15px;
		border-radius: 20px;
	}

	.gnav_pc_left > li  > a:hover,
	.gnav_pc_left > li > a.current:hover {
		background: #bababa;
	}

	.gnav_pc_left > li  > a.current {
		background: #ffd95c;
	}

	.gnav_pc_left > li:first-child > a {
		font-weight: bold;
	}

	.nav_contact {
		column-gap: 30px;
	}

	.nav_contact li:first-child a {
		width: 150px;
		max-width: 100%;
	}

	/* .nav_contact li:nth-child(2) a {
		width: 190px;
		max-width: 100%;
	} */

	.nav_contact li:last-child a img,
	.lang_icon li a img {
		width: 45px;
	}

	.header_inner h1 img {
		max-width: 220px;
		width: 220px;
	}

	/*スライダー*/
	.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
		bottom: -77px !important;
	}
	/*top 取扱品目*/
	.top_section1 {
		padding-top: 50px;
	}

	/*top 取扱メーカー一覧*/
	.top_maker_list {
		margin-top: 100px;
	}

	.top_maker_list_bg {
		height: 300px;
		display: grid;
		align-items: center;
		padding: 0;
	}

	.top_maker_list_bg p {
		/* font-size: 4.4rem; */
		font-size: 3rem;
	}

	.top_maker_list_bg span {
		font-size: 16px;
		margin-bottom: 20px;
	}

	/*top WORKS*/
	.top_works_txt {
		display: flex;
		justify-content: space-between;
	}

	.top_section2 {
		/* overflow: hidden; */
		background: url(img/top_works_bg2.png) no-repeat center/cover;
	}

	.top_section2 .heading_h2 {
		position: relative;
	}

	.top_works_h3 {
		margin-bottom: 0;
	}


	/*top リンク*/
	.top_section3 {
		margin-bottom: 80px;
		background: url(img/top_link_bg.png) no-repeat center/cover;
	}

	.top_link {
		/* grid-template-columns: repeat(2, 1fr); */
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		column-gap: 70px;
		row-gap: 105px;
	}

	.top_link li {
		width: calc((100% - 70px) / 2);
	}

	.top_link_h2 h2 {
		/* font-size: 4rem; */
		font-size: 2.4rem;
	}

	.top_link_h2 span {
		/* font-size: 1.6rem; */
		padding-left: 40px;
	}

	.top_link_h2 span::before {
		width: 30px;
	}

	/*top グローバル*/
	.top_grobal {
		margin-bottom: 40px;
		padding: 14.5% 0 14.78%;
	}

	.top_grobal_eyecatch {
		/* font-size: 3.6rem; */
		font-size: 2.8rem;
		margin-bottom: 55px;
	}

	/*sdgs*/
	.sdgs_heading p {
		font-size: 2.8rem;
	}

	.top_sdgs_bg {
		height: 300px;
		display: grid;
		align-items: center;
		padding: 0;
		background: url(img/top_sdgs.png);
		background-position: right 15% center;
	}

	.sdgs_heading {
		margin-bottom: 20px;
	}

	/*お知らせ*/
	.top_section5 {
		margin-bottom: 80px;
	}

	.news_list {
		margin-bottom: 60px;
	}

	.news_list li a {
		display: grid;
		padding-left: min(90px,7.3%);
		padding-right: min(90px,7.3%);
		grid-template-columns: 24rem auto;
		column-gap: 50px;
	}

	.news_list li a time {
		margin-bottom: 0;
	}

	.news_list_wrap {
		margin-bottom: 160px;
	}

	/* .top_news .btn_wrap {
		margin-top: 60px;
	} */

	/*footer*/
	footer {
		padding: 70px 0 40px;
		/* margin: 0; */
	}

	.f_border {
		margin-bottom: 40px;
	}

	.nav_common.footer {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		column-gap: 5.3%;
		margin-bottom: 30px;
	}

	.nav_common.footer li:first-child {
		border: none;
	}

	.nav_common.footer >li:first-child,
	.nav_common.footer >li:nth-child(5),
	.nav_common.footer >li:last-child {
		display: none;
	}

	.nav_common.footer li .menu_parent {
		border: none;
		font-weight: bold;
	}

	.nav_common.footer > li > .menu_parent a {
		padding: 0;
	}

	.menu_arrow_footer {
		background: none;
	}

	.menu_open_footer {
		display: none;
	}

	.menu_child_footer {
		display: block;
		padding: 0;
	}

	.menu_child_footer li a {
		padding: 0;
	}

	/*スガタ商事について*/
	.subpage_main {
		margin-top: 155px;
	}

	.about_sgata {
		padding: 60px 0;
		margin-bottom: 100px;
	}

	.about_sgata p:first-child {
		margin-bottom: 60px;
		font-size: clamp(2.2rem,1.5vw,2.8rem);
		text-align: center;
	}

	.heading_h3 {
		margin-bottom: 80px;
	}

	.heading_h3 h3 {
		font-size: 3rem;
	}

	.heading_h3 span {
		font-size: 1.6rem;
	}

	.about_col2_left img {
		width: 60%;
	}

	.about_col2_right {
		width: 80%;
		margin: 0 auto;
	}

	.about_col2_right p {
		line-height: 2.2;
	}

	/* .about_wrap {
		margin-bottom: 160px;
	} */

	.about_message .about_col2 {
		margin-bottom: 80px;
	}

	/*mission*/
	.mission1 {
		padding: 60px min(100px,7.2%);
		margin-bottom: 80px;
	}

	.mission1_eyecatch {
		font-size: 2.6rem;
		margin-bottom: 30px;

	}

	.mission1_eyecatch + p {
		margin-bottom: 40px;
		padding-bottom: 50px;
	}

	.mission1_eyecatch + p + p {
		font-size: 2rem;
		margin-bottom: 15px;
	}

	.mission2 {
		padding-bottom: 80px;
		margin-bottom: 80px;
	}

	.mission2 p:first-child {
		font-size: 4rem;
	}

	.mission2 p:nth-child(2) {
		margin-bottom: 60px;
		font-size: 2rem;
	}

	.mission3 {
		row-gap: 80px;
	}

	.mission3 ol {
		row-gap: 60px;
	}

	.mission3 ol li {
		padding-bottom: 34px;
	}

	.mission3 ol li h4 {
		font-size: 2.4rem;
	}

	.mission3 {
		grid-template-columns: min(600px,42.9%) auto;
		column-gap: 4.28%;
	}


	.mission1 ul li {
		font-size: 2rem;
	}


	/* .about_mission ul {
		flex-direction: row;
		max-width: 980px;
		margin: 0 auto;
		justify-content: center;
	}

	.about_mission ul li {
		width: 220px;
	}

	.about_mission ul li:not(:last-child) {
		margin-right: 30px;
	}


	.about_mission ul li img {
		width: 100%;
	}

	.about_mission ul li:not(:last-child)::after {
		display: block;
		width: 20px;
		height: 1px;
		position: absolute;
		right: -25px;
		top: 50%;
		transform: translateY(-50%);
		margin: 0;
	} */

	.policy_ttl .ttl_inner p,
	.office_ttl .ttl_inner p {
		font-size: 2.4rem;
	}

	.policy_ttl .ttl_inner span,
	.office_ttl .ttl_inner span {
		font-size: 1.6rem;
	}

	.about_policy ul {
		margin-top: 20px;
	}

	.about_policy ul li {
		padding: 20px max(15px,18.3%);
	}

	.about_policy ul li p::before {
		margin-right: 3rem;
	}

	
	.about_history {
		margin-bottom: 220px;
	}

	.table_wrap {
		border-top: 1px solid #c6c6c6;
	}

	.table_wrap dl:not(.about_profile_tel) {
		display: grid;
		padding: 0 max(15px, 13.3%);
	}

	.about_profile .table_wrap dl:not(.about_profile_tel),
	.about_history .table_wrap dl {
		grid-template-columns: 200px auto;
	}

	.about_permit .table_wrap dl {
		/* grid-template-columns: 290px auto; */
		grid-template-columns: 220px auto;
	}

	.table_wrap.about_history1 >dl:last-child {
		border: none;
	}

	.table_wrap > dl {
		border-bottom: 1px solid #c6c6c6;
	}


	.table_wrap > dl > dt {
		background: transparent;
		padding: 20px 15px;
		text-align: left;
	}

	.table_wrap > dl > dd {
		justify-content: flex-start;
		padding: 20px 15px;
		box-sizing: border-box;
	}

	/*コンテンツ一部隠す*/
	.expand {/*全体*/
		max-height: 180px;
	}

	.contenedor {
		position: relative;
		margin-bottom: 60px;
	}

	.anchor {
		margin-top: -85px;
		padding-top: 85px;
	}

	.porfile_office_list {
		display: flex;
		flex-wrap: wrap;
		column-gap: 5.4%;
	}

	.about_offices nav {
		margin-bottom: 100px;
	}

	.anchor_link_btn ul {
		display: grid;
		grid-template-columns: repeat(3,1fr);
		column-gap: 15px;
		row-gap: 15px;
	}

	.anchor_link_btn.col2 ul {
		grid-template-columns: repeat(2, 1fr);
		max-width: 380px;
	}


	.anchor_link_btn ul li a {
		/* max-width: 180px; */
	}

	.office_list {
		display: flex;
		flex-wrap: wrap;
		/* column-gap: 80px; */
		column-gap: 40px;
		justify-content: center;
	}

	.ja_office {
		margin-bottom: 160px;
	}

	.ja_office li {
		width: 100%;
		margin: 0;
	}

	.ja_office > li:last-child,
	.ja_office > li:nth-last-child(2) {
		width: calc(50% - 20px);
	}

	.ja_office li:last-child .office_list_inner,
	.ja_office li:nth-last-child(2) .office_list_inner {
		padding: 35px 0;
		text-align: left;
	}

	.office_list > li + li {
		margin-top: 100px;
	}

	.office_list li dl {
		margin: 0;
		display: grid;
		grid-template-columns: 90px auto;
	}

	.office_list li dl dt {
		text-align: left;
		background: transparent;
		padding: 20px 0;
	}

	.office_list li dl dd {
		justify-content: flex-start;
	}

	.office_ttl {
		margin-bottom: 100px;
	}

	.office_img {
		margin-bottom: 40px;
	}

	.company_name {
		padding: 5px 30px;
		font-size: 2.4rem;
		min-width: 180px;
	}

	.company_name span {
		display: block;
	}

	.thumb-item-nav {
		display: grid;
		grid-template-columns: repeat(6,1fr);
	}

	.map_btn,
	.video_link {
		margin: 0;
	}

	.wedg_page,
	.itatsu_page {
		margin: 0 0 8px;
	}

	.office_list li dl.office_video dd {
		display: block;
	}

	.video_access {
		margin-top: 8px;
	}

	/*インフォメーション詳細*/
	.news_post {
		margin-bottom: 120px;
	}

	.post_ttl h3 {
		font-size: 3rem;
		margin-bottom: 40px;
	}

	.back_btn {
		margin-bottom: 160px;
	}

	/*お問い合わせ
	------------------------*/
	.tel_contact {
		padding: 50px 15px;
		margin-bottom: 100px;
		margin-top: 100px;
	}

	.tel_contact > p:first-child {
		font-size: 4rem;
	}

	.tel_contact > p:nth-child(2) {
		font-size: 1.8rem;
		margin-bottom: 50px;
	}

	.tel_number {
		font-size: 1.8rem;
	}

	.tel_number a {
		padding-left: 50px;
	}

	.tel_number a::before {
		width: 30px;
		height: 50px;
		left: 0;
	}

	.fax_number {
		padding-left: 70px;
		position: relative;	
	}

	.fax_number::before {
		width: 50px;
		height: 50px;
	}

	.coutacu_guide {
		margin-bottom: 60px;
	}

	
	.form_wrap dl + dl {
		margin-top: 50px;
	}

	input[type="text"],
	input[type="email"],
	input[type="tel"],
	textarea {
		padding: 20px max(20px,min(50px,5%));
	}

	.confirm_txt {
		margin-top: 100px;
		margin-bottom: 50px;
		text-align: center;
	}

	.accept {
		margin-top: 50px;
	}

	/*取扱品目
	-----------------------------*/
	.page_description {
		margin-bottom: 100px;
	}

	.product_anchor_btn {
		margin-bottom: 100px;
	}

	.orange_book {
		padding: 40px 30px;
		margin-bottom: 100px;
	}

	.orange_book div {
		max-width: 720px;
		margin: 0 auto;
		flex-direction: row;
		column-gap: 4.4%;
		justify-content: center;
		align-items: center;
	}

	.orange_book div p {
		width: 51.2%;
		max-width: 368px;
	}

	.orange_book div p span {
		display: inline-block;
	}

	.orange_book div a {
		width: 42%;
	}

	/* .sub_page_section.products_section {
		margin-bottom: 160px;
	} */

	.sub_page_section {
		margin-bottom: 120px;
	}

	.products_section .inner > ul {
		row-gap: 100px;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 40px;
	}

	.products_section .inner > ul h3 {
		margin-bottom: 40px;
	}

	.products_section .inner > ul >li {
		padding-bottom: 40px;
	}

	.product_list_wrap,
	.products_list {
		row-gap: 20px;
	}

	.products_list li {
		padding-left: 3rem;
	}

	.maker_category {
		row-gap: 60px;
	}

	.maker_category h4 {
		padding: 20px 40px;
		font-size: 2.6rem;
		text-align: left;
	}

	.maker_list {
		grid-template-columns: repeat(2, 1fr);
	}

	/*海外事業*/
	.global_txt_wrap {
		margin: 0 auto 80px;
	}

	.global_txt_wrap h3 {
		padding-top: 20px;
		margin-bottom: 60px;
		font-size: clamp(2.2rem,1.5vw,2.8rem);
	}

	.global_img {
		margin-bottom: 120px;
	}

	/*WORKS*/
	.works_nav_top {
		margin-bottom: 100px;
	}

	.works_section ul li figcaption {
		font-size: 1.6rem;
	}

	/* .works_section1 {
		margin-bottom: 160px;
	} */

	.works_section2 {
		margin-bottom: 100px;
	}

	.works_nav_bottom {
		margin-bottom: 120px;
	}

	/*SDGsの取り組み*/
	.about_sdgs p:first-child {
		font-size: 2.8rem;
	}

	.about_sdgs {
		padding: 60px 0;
		margin-bottom: 100px;
	}

	.sdgs_wrap {
		margin-bottom: 120px;
	}

	.sdgs_wrap ol {
		column-gap: 40px;
	}

	.sdgs_wrap ol > li {
		padding-bottom: 40px;
	}

	.sdgs_icon {
		margin-top: 25px;
	}

	/*プライバシーポリシー*/
	.privacy_declearation {
		padding: 60px 0;
		margin-bottom: 100px;
	}

	.privacy_section {
		margin: 0 auto 80px;
	}
	
	.privacy_section h3 {
		font-size: 2.6rem;
	}
	

	.privacy_section_last {
		margin-bottom: 120px;
	}
	
	.contact_btn {
		font-size: 2.1rem;
	}
}

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

@media screen and (min-width: 1024px) {
	.heading_h2 h2 {
		font-size: 4.8rem;
	}

	.heading_h2 > span {
		font-size: 2.4rem;
	}

	/*header*/
	.gnav_pc_left {
		font-size: 16px;
	}

	/*メインビジュアル*/
	.top_hero {
		align-items: flex-end;
	}

	.hero_eyecatch p {
		display: block;
		margin-top: 3.64vw;
	}

	/*top 取扱品目*/
	.top_product h3 {
		/* font-size: 4.4rem; */
		font-size: 3.6rem;
	}

	.top_product p {
		font-size: 1.6rem;
	}

	.top_maker_list_bg p {
		font-size: 4.4rem;
	}

	.more_btn {
		font-size: 2.1rem;
		max-width: 240px;
		height: 60px;
		border-radius: 5px;
	}

	/*top WORKS*/
	.top_works {
		column-gap: 70px;
	}

	.top_works_h3 h3 {
		font-size: 2.6rem;
	}

	.top_works_h3 span {
		font-size: 1.6rem;
	}

	/*top リンク*/
	.top_link_h2 h2 {
		font-size: 4rem;
	}

	.top_link_h2 span {
		font-size: 1.6rem;
	}

	/*top グローバル*/
	.top_grobal_eyecatch {
		font-size: 3.6rem;
	}

	/*top SDGsの取り組み*/
	.sdgs_heading p {
		font-size: 4.4rem;
	}

	/*footer*/
	.footer_top {
		padding-bottom: 80px;
		flex-direction: row;
		justify-content: space-between;
	}

	.footer_nav {
		width: 65%;
		max-width: 665px;
	}

	.copy small {
		font-size: 1.6rem;
	}

	.f_logo img {
		width: 214px;
	}

	/*スガタ商事について*/
	.about_col2 {
		grid-template-columns: min(600px, 42.9%) auto;
		column-gap: 50px;
	}

	.about_col2_left img {
		width: 100%;
	}

	.about_col2_right {
		width: 100%;
	}

	.about_permit .table_wrap dl {
		grid-template-columns: 290px auto;
	}

	.anchor_link_btn ul {
		grid-template-columns: repeat(5, 1fr);
	}

	.anchor_link_btn ul li a {
		display: block;
	}

	.anchor_link_btn ul li a span {
		display: block;
	}

	.office_list {
		justify-content: space-between;
		column-gap: 80px;
		row-gap: 100px;
	}

	.ja_office > li:last-child,
	.ja_office > li:nth-last-child(2),
	.office_list >li {
		width: calc(50% - 40px);
	}

	.office_list li {
		margin: 0;
		max-width: none;
	}

	.office_list li:first-child {
		width: 100%;
	}

	.office_list li:first-child .office_img {
		margin-bottom: 0;
	}

	.vietnam_office {
		display: grid;
		grid-template-columns: min(56.5%, 792px) 37.3%;
		column-gap: 5.7%;
		align-items: flex-end;
	}

	.office_list > li + li {
		margin-top: 0;
	}

	.alignment_page_wrap,
	.video_access {
		display: flex;
		flex-wrap: wrap;
		column-gap: 1.6rem;
		width: 100%;
	}

	.table_wrap > dl dd.about_profile_offices {
		display: block;
	}

	.porfile_office_list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
	}


	/* .about_mission ul li {
		width: 250px;
	}

	.about_mission ul li:not(:last-child) {
		margin-right: 115px;
	} */

	/* .about_mission ul li:not(:last-child)::after {
		width: 60px;
		right: -85.5px;
	} */

	

	/*取扱品目*/
	.maker_list {
		grid-template-columns: repeat(3, 1fr);
	}

	/*ページネーション*/
	.page-numbers {
		width: 50px;
		height: 50px;
	}

	/*WORKS*/
	.works_section ul {
		grid-template-columns: repeat(4, 1fr);
		column-gap: 25px;
		row-gap: 100px;
	}

	/*SDGsの取り組み*/
	.sdgs_wrap ol {
		column-gap: 80px;
	}

}

@media screen and (min-width: 1280px) {
	.gnav_pc {
		justify-content: flex-end;
		align-items: center;
		flex-direction: row;
	}
	.gnav_pc_right.nav_contact {
		display: flex;
	}

	.lang_icon {
		display: block;
	}

	.nav_contact li:first-child a,
	.nav_contact li:nth-child(2) a {
		padding: 5px 20px;
		width: auto;
		max-width: none;
	}

	.gnav_pc .nav_contact li:first-child a,
	.gnav_pc .nav_contact li:nth-child(2) a {
		background: none;
	}

	.gnav_pc .nav_contact li:first-child a {
		color: var(--font-color);
	}

	.nav_contact li:first-child a:hover,
	.nav_contact li:first-child a.current:hover {
		background: #bababa;
	}

	.nav_contact li:first-child a.current {
		background: #ffd95c;
	}

	.nav_bg_gray {
		column-gap: 5px;
	}
	
	.nav_contact {
		column-gap: 5px;
	}
	
	/*top 取扱品目*/
	.top_product h3 {
		font-size: 4.4rem;
	}

	/*footer*/
	footer {
		margin: 0;
	}

	.sp_fixed_menu {
		position: relative;
		background: none;
		margin-left: auto;
	}

	.sp_fixed_menu .nav_contact {
		justify-content: flex-end;
		margin: 0 0 0 auto;
	}

	/*ページトップ*/
	.pageTop {
		bottom: 15px;
		width: 90px;
		z-index: 5;
	}

	/*取扱品目
	---------------------*/

	.products_section .inner > ul {
		column-gap: 80px;
	}
}

@media screen and (min-width: 1366px) {
	.gnav_pc {
		column-gap: 30px;
	}

	.nav_bg_gray {
		padding: 10px 40px;
	}

	/*取扱品目*/
	.maker_list {
		grid-template-columns: repeat(4, 1fr);
	}
}

@media screen and (min-width: 1540px) {
	.header_inner h1 img {
		max-width: 308px;
		width: 308px;
	}
}