@charset "utf-8";

/*=================================================================================================================================*/
/** 個別指定 for スマートフォン
/*=================================================================================================================================*/

/*---------------------------------------------
 ** 900px
---------------------------------------------*/
@media screen and (max-width: 900px) {
	/*---------------------------------------------
	body
---------------------------------------------*/
	html {
		scroll-behavior: smooth;
	}

	body {
		font-size: 15px;
		line-height: 1.8;
		overflow: hidden;
	}

	.only_pc_none {
		display: block !important;
	}

	.only_sp_none {
		display: none !important;
	}

	.sp_br {
		display: inline;
	}

	/*画像*/
	img {
		max-width: 100%;
		height: auto;
	}

	h2 {
		font-size: 180%;
	}

	/*---------------------------------------------
 ** スマホメニュー
---------------------------------------------*/
	#header {
		background: #fff;
		box-shadow: 0 0 5px #999;
	}

	.hamburger {
		display: block;
		position: absolute;
		z-index: 3;
		right: 0px;
		top: 10px;
		width: 50px;
		height: 50px;
		cursor: pointer;
		text-align: center;
		background: #075799;
		z-index: 99999;
	}

	.hamburger span {
		display: block;
		position: absolute;
		width: 30px;
		height: 3px;
		left: 10px;
		background: #fff;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}

	.hamburger span:nth-child(1) {
		top: 14px;
	}

	.hamburger span:nth-child(2) {
		top: 24px;
	}

	.hamburger span:nth-child(3) {
		top: 35px;
	}

	.hamburger.active span:nth-child(1) {
		top: 25px;
		left: 10px;
		background: #fff;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 25px;
		background: #fff;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}

	.mm-panel {
		background: #075799 !important;
		text-align: center !important;
		padding: 15px 0 !important;
	}

	.mm-navbar {
		background: #007f41 !important;
	}

	.mm-listitem {
		width: 100% !important;
	}

	.mm-listitem:after {
		width: 100%;
		background: #0d64ac;
		left: 0 !important;
	}

	.mm-listitem::before {
		content: "";
		width: 100%;
		background: #669bc6;
		border-color: inherit;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		display: block;
		position: absolute;
		left: 0px;
		right: 0;
		bottom: -2px;
	}

	.mm-navbar {
		color: #fff !important;
	}

	.mm-slideout {
		cursor: pointer;
	}

	.mm-listview {
		width: 90% !important;
		margin: 0 auto !important;
		font-size: 120% !important;
		text-align: left !important;
	}
	.mm-listitem__btn:not(.mm-listitem__text) {
		border-color: #094678;
		width: 60px;
		position: relative;
		display: block;
	}

	.mm-btn_next:after {
		right: 20px !important;
	}
	:not(#mm-1) .mm-listitem a {
		padding: 20px 20px !important;
		box-sizing: border-box !important;
	}
	:not(#mm-1) .mm-listitem a span {
		font-size: 50% !important;
		display: inline-block;
		vertical-align: 3px;
		padding-right: 5px;
	}

	#global_nav {
		margin-top: 10px;
		padding-bottom: 80px;
	}

	#global_nav li a {
		padding: 15px 0 20px;
		text-align: center;
	}

	.globalMenuSp {
		display: none;
	}

	#global_nav_sp a.mm-listitem__text {
		padding: 20px 20px;
		box-sizing: border-box;
		display: block;
	}

	#sub_nav {
		width: auto;
		padding: 8px 3%;
		position: fixed;
		right: 0;
		left: 0;
		top: auto;
		bottom: 0;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		z-index: 2;
		background: #000000bf;
		transform: translateY(200px);
		transition: all 0.5s;
	}

	#sub_nav.fixed {
		transform: translateY(0);
	}

	#sub_nav li:nth-of-type(1) {
		width: 49%;
		writing-mode: unset;
		-webkit-writing-mode: unset;
		text-align: center;
		display: block;
		margin-bottom: 0px;
		font-size: 120%;
		transition: all 0.5s;
	}

	#sub_nav li:nth-of-type(2) {
		width: 49%;
		writing-mode: unset;
		-webkit-writing-mode: unset;
		text-align: center;
		display: block;
		font-size: 120%;
		transition: all 0.5s;
	}

	#sub_nav li:nth-of-type(1):hover,
	#sub_nav li:nth-of-type(2):hover {
		opacity: 1;
	}

	#sub_nav li a {
		width: 100%;
	}

	#header {
		height: 69px;
		position: fixed;
		z-index: 4;
	}
	.hover-header #header {
		height: 69px;
	}

	#header h1 {
		width: 80%;
		max-width: 220px;
		padding-top: 10px;
	}
	#header_in {
		display: none;
	}
	#header_in_sp {
		width: 97%;
		margin: 0 auto;
		display: block;
		position: relative;
	}

	#nav_sp {
		margin-top: 70px;
		z-index: 5;
		overflow: scroll;
	}

	#nav_sp .pc_none {
		display: block;
	}

	#pageTop a {
		width: 33px;
		height: 33px;
	}

	#main {
		height: 100vh;
	}

	#main .slide {
		height: 100vh;
	}

	.slide .item img {
		width: auto;
		height: 100vh;
	}

	#main_catch {
		width: 70%;
		max-width: 400px;
		position: absolute;
		top: 38%;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#main_catch .catch_pc {
		display: none;
	}

	#main_catch .catch_sp {
		display: block;
	}

	#main_valu {
		width: 80%;
	}

	#main_news {
		bottom: 90px;
	}

	#top_news .top_news_data {
		padding: 50px 5% 30px 5%;
		margin-bottom: 40px;
	}

	#top_news .top_news_data h2 {
		font-size: 200%;
	}

	#home h2 {
		font-size: 220%;
	}

	#top_business h2 + p {
		font-size: 110%;
	}

	#top_business {
		padding: 80px 0 0;
	}

	.top_business_data_img {
		margin-top: 40px;
	}

	#top_news {
		padding: 80px 0 40px;
	}

	#top_recruit {
		padding: 80px 0 40px;
	}

	#top_recruit .top_recruit_data {
		width: 100%;
	}

	#top_recruit .top_recruit_data p {
		padding: 10px 0;
	}

	#top_recruit .white_slide {
		width: 90%;
		max-width: 500px;
		margin: 10px auto;
		position: relative;
	}

	#top_history {
		padding-top: 70px;
	}

	#top_history > div {
		width: 90%;
		max-width: 650px;
		margin: 0 auto 200px;
		padding: 60px 5% 40px;
	}

	#foot_contact {
		padding: 80px 0 60px;
		background: url(../img/top_bg05.jpg) no-repeat center bottom;
		background-size: cover;
	}

	#footer {
		padding-bottom: 80px;
	}

	#foot02 {
		display: none;
	}

	#footer_fixed {
		width: 100%;
		display: block;
		position: fixed;
		bottom: 0;
		z-index: 5;
		/*
    transform: translateY(150px);
    transition: all 0.5s; */
	}

	/*
  #footer_fixed.fixed {
    transform: translateY(0);
  }*/

	#footer_fixed a {
		display: block;
		height: 60px;
		background: #fff;
		padding: 2px 10px 7px;
		text-align: center;
		font-weight: bold;
		font-size: 120%;
	}

	#footer_fixed a img {
		width: 170px;
		margin: 0 auto 5px;
	}

	#footer_fixed a span {
		font-size: 60%;
		display: block;
	}

	#pageTop {
		bottom: 60px;
	}

	#pageTop a {
		display: block;
		width: 45px !important;
		height: 45px !important;
	}

	#main_w {
		padding: 140px 0 70px;
	}
	#main_w h2 {
		font-size: 160%;
		letter-spacing: 1rem;
		padding-bottom: 20px;
		padding-left: 10px;
	}
	#main_w h2::after {
		width: 30%;
		max-width: 80px;
	}
	#main_img > img {
		height: 300px;
		margin-top: 69px;
	}
	#main_img > h2.business_p {
		font-size: 300%;
		letter-spacing: 0.6rem;
	}
	.business_ttl h2 {
		font-size: 180%;
		letter-spacing: 0.3rem;
		margin-bottom: 20px;
	}
	.business_ttl h2 span {
		font-size: 18px;
		margin-bottom: 10px;
	}
	.history_data::after,
	.company_data::after,
	#philosophy .icon_plus_on::after {
		display: none;
	}
	.history_data dl {
		padding: 0 0 0 0;
	}
	.history_data dl dt {
		width: 100%;
		padding: 10px 10px;
		background: #e8f3f8;
	}
	.history_data dl dd {
		width: 100%;
		padding: 10px 10px 20px;
	}
	.history_data dl dd p {
		margin-right: 15px;
	}
	.subpage_btn ul li a b {
		font-size: 150%;
		letter-spacing: 2rem;
		padding-left: 2rem;
		margin-bottom: 10px;
	}
	.subpage_btn ul li a span {
		font-size: 80%;
		padding: 7px 40px 7px 25px;
	}
	#solution .icon_plus_on::after {
		right: -10px;
		bottom: -80px;
	}
	#solution_data > div h3 {
		margin-bottom: 30px;
	}
	.data_img_col .col_data h4 {
		margin-bottom: 20px;
	}
	.data_img_col .col_data {
		width: 100%;
	}
	.data_img_col .col_img {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
	.data_img_col .col_img p {
		font-size: 90%;
	}
	.company_data dl dt {
		width: 140px;
	}
	.company_data dl dd {
		width: calc(100% - 140px);
	}
	#company_map iframe {
		height: 450px;
	}

	#coating .icon_plus_on::after {
		top: -170px;
		right: -20px;
	}
	#sec_coat01 {
		padding-top: 360px;
	}
	#sec_coat01::before,
	#sec_coat01::after {
		height: 260px;
	}
	#sec_coat01_01 {
		top: 360px;
	}
	#sec_coat01::after {
		top: 120px;
	}
	#sec_coat01_01 > div {
		padding: 5% 5% 5% 0;
	}
	#sec_coat01 > h3,
	#sec_coat01_01 h3 {
		font-size: 3.4vw;
		letter-spacing: 0.2rem;
	}
	#sec_coat01_02 > div {
		padding: 50vw 0 5% 5%;
	}
	#sec_coat01_02 h3 {
		font-size: 2.8vw;
		letter-spacing: 0.2rem;
	}
	#sec_coat03 > div.sans > div {
		width: 100%;
		padding-left:10%;
		padding-right:10%;
		max-width: 500px;
		position: relative;
		margin: 0 auto 5% !important;
	}
	#sec_coat03 > div.sans > div p {
		width: 100%;
		position: relative !important;
		bottom: auto !important;
		right: auto !important;
		left: auto !important;
		margin: 5px auto;
		text-align: center !important;
	}
	#base .icon_plus_on::after {
		right: -20px;
		top: -100px;
	}
	.base_slide {
		padding-left: 0;
	}
	.base_slide h3 {
		text-align: center;
		display: block;
		padding: 20px 0;
		font-size: 160%;
		letter-spacing: 0.3rem;
		writing-mode: unset;
		-webkit-writing-mode: unset;
		position: relative;
		top: auto;
		left: 0;
	}
	.base_equipment h3 {
		font-size: 150%;
		letter-spacing: 0.3rem;
		color: #008041;
		margin-top: 60px;
		margin-bottom: 10px;
	}
	#heat .icon_plus_on::after {
		bottom: -520px;
		right: 100px;
	}
	#heat_data01 h2 span {
		font-size: 120%;
	}
	#quality .icon_plus_on::after {
		right: -20px;
		top: -420px;
	}
	#quality .business_ttl h2 br {
		display: none;
	}
	#sec_quality01 {
		width: 90%;
		margin-bottom: 80px;
	}
	#sec_quality01 > div > p {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}
	#sec_quality01 > div > img {
		width: 90%;
		max-width: 500px;
		margin: 0 auto;
	}
	.quality_other > div > ul {
		width: 46%;
	}
	#sec_quality03 > div > div {
		text-align: center;
	}
	#sec_quality03 > div > div img {
		margin: 0 auto 10px;
	}
	#sec_quality03 > div > div li {
		text-align: left;
	}
	#main_img h2.main_h2 {
		padding-top: 50px;
		margin-bottom: 60px;
	}
	.recruit_ttl h2,
	#recruit02 h3 {
		padding-left: 20px;
	}
	#recruit01 {
		margin-bottom: 40px;
	}
	.recruit_ttl h3 {
		font-size: 160%;
		letter-spacing: 0.5rem;
	}
	#recruit01 > div > div {
		margin-bottom: 380px;
	}
	.rec_staff h4 + p {
		letter-spacing: 0.1rem;
	}
	.rec_staff h4 + p span {
		margin-right: 10px;
	}
	#recruit03 h3 {
		top: -30px;
	}
	#recruit03 > div > div > dl > dt {
		width: 130px;
	}
	#recruit03 > div > div > dl > dd {
		width: calc(95% - 120px);
	}
	#strength .icon_plus_on::after {
		width: 30%;
		bottom: -720px;
	}
	#sec_str h3 {
		margin: 0px auto 30px;
	}
	#sec_str h3 span {
		font-size: 300%;
	}
	#strength01,
	#strength03 {
		padding-left: 5%;
	}
	#strength02 > div {
		width: 90%;
	}
	#philosophy h2 + p {
		font-size: 160%;
		letter-spacing: 0.5rem;
		padding-left: 10px;
	}
	#sec_phil01 dl {
		margin-bottom: 20px;
		padding-top: 15px;
	}
	#sec_phil01 dl::before {
		width: 12px;
		height: 12px;
	}
	#sec_phil01 dl dt {
		font-size: 170%;
		letter-spacing: 0.5rem;
	}
	#sec_phil02 br.br_none {
		display: none;
	}

	@media screen and (max-width: 840px) {
		.recruit_ttl h2 {
			font-size: 120%;
		}
		#foot_contact > div ul > li {
			width: 100%;
			margin-top: 20px;
		}

		#top_value > div > div {
			width: 100%;
			padding-left: 0;
			padding-top: 160px;
		}

		.top_value_on::before {
			width: 240px;
			height: 320px;
			left: -50px;
			top: 0%;
		}

		#top_value > div > img {
			width: 100%;
			max-width: 500px;
			height: 400px;
			object-fit: cover;
			margin: 0 auto 30px;
		}
		#strength01 {
			background: url(../img/strength/str_img01.jpg?2026) no-repeat bottom left;
			background-size: 100% auto;
		}
		#strength02 {
			background: url(../img/strength/str_img02.jpg) no-repeat bottom right;
			background-size: 95% auto;
		}
		#strength03 {
			background: url(../img/strength/str_img03.jpg?2026) no-repeat bottom left;
			background-size: 100% auto;
		}
		#strength .icon_plus_on::after {
			bottom: -800px;
		}
		#strength02 .btn_g a {
			bottom: 20px;
		}
		#strength02 > div {
			width: 95%;
		}
		#strength02 > div > div {
			padding-left: 5% !important;
			margin-left: 0;
		}
		#strength02 .btn_g a {
			left: 5%;
		}
	}

	@media screen and (max-width: 760px) {
		#top_value > div > div {
			padding-top: 100px;
		}

		.top_value_on::before {
			width: 160px;
			height: 220px;
			left: -50px;
			top: 0%;
		}

		#top_value > div > img {
			max-width: 400px;
			height: 320px;
		}

		#top_news .top_news_data > div > dl a dt {
			width: 100%;
		}

		#top_news .top_news_data > div > dl a dd {
			width: 100%;
		}
		#coating .business_ttl p br.br_none {
			display: none;
		}
		#base .icon_plus_on::after {
			right: -20px;
			top: -100px;
		}
		#heat .icon_plus_on::after {
			bottom: -480px;
			right: 150px;
		}
		#heat_data01 h2 span {
			font-size: 90%;
		}
		#heat_data01 > div {
			margin-bottom: 70px;
		}
		#heat_data01 > div > div h3 {
			font-size: 140%;
			margin-bottom: 15px;
		}
		#heat_data01 > div > img {
			width: 95%;
			margin-left: 5%;
			border-radius: 30px 0 0 30px;
		}
		#heat_data01 > div:nth-of-type(2n) > img {
			border-radius: 0 30px 30px 0;
		}

		#heat_data02 > div {
			width: 100%;
			margin-bottom: 50px;
		}
		#heat_data02 > div > h3 {
			margin-bottom: 15px;
		}
		#heat_data02 > div > p {
			margin-bottom: 25px;
		}
		#heat_data02 > div img {
			width: 90%;
			margin-left: 5%;
		}
		#sec_phil01 {
			margin: -8% auto 5%;
		}
		#philosophy h2 + p {
			font-size: 150%;
			letter-spacing: 0.3rem;
		}
		#sec_phil01 dl dt {
			font-size: 160%;
			letter-spacing: 0.2rem;
			padding-left: 0;
		}

	}

	@media screen and (max-width: 680px) {
/*--追加--*/
.awd_wrap .awd{
text-align:center;
width:100%;
max-width:100%;
margin-bottom:40px;
}
/*--追加--*/
#sec_quality03 .awd_wrap{
	margin-bottom:40px;
}

/*--追加--*/
#sec_quality03 .awd_div dt{
max-width:200px;
}



/*--追加--*/
#heat_data03 .tech_wrap li{
letter-spacing:0 !important;
font-size:90%;
}

/*--追加--*/
#heat_data04 .shikaku_wrap dl{
	font-size:95%;
}

		#sec_coat01 {
			padding-top: 50vw;
		}
		#sec_coat01::before,
		#sec_coat01::after {
			height: 200px;
		}
		#sec_coat01_01 {
			top: 290px;
		}
		#sec_coat01::after {
			top: 120px;
		}
		#sec_coat01_01 > div {
			padding: 5% 5% 5% 0;
		}
		#sec_coat01 > h3 {
			top: 20px;
		}
		#sec_coat01_02 > div {
			padding: 50vw 0 5% 5%;
		}
		#main_img h2.main_h2 {
			font-size: 200%;
			padding-top: 10px;
			padding-bottom: 20px;
		}
		#main_img h2.main_h2::after {
			width: 60px;
		}
		#base .business_ttl p br.br_none {
			display: none;
		}
		.base_equipment > div > ul {
			width: 100%;
			display: block;
			margin-right: 0;
		}
		#quality .business_ttl h2 br {
			display: inline;
		}
		#quality .icon_plus_on::after {
			right: -20px;
			top: -280px;
		}
		#sec_quality02 > div > h3::before,
		#sec_quality03 > div > h3::before {
			height: 110px;
		}
		.quality_device {
			width: 100%;
			margin: 50px auto 3%;
		}
		.quality_device > dl {
			width: 31%;
		}
		.quality_device > dl dd {
			font-size: 2.2vw;
		}
		.quality_other > div > ul {
			width: 100%;
		}
		.quality_other > div > ul li {
			padding-left: 5px;
		}
		#strength01,
		#strength02,
		#strength03 {
			padding-bottom: 320px;
		}
		#strength .icon_plus_on::after {
			bottom: -730px;
		}
	}
	@media screen and (max-width: 610px) {
		.company_data dl {
			padding: 0 0 0 0;
		}
		.company_data dl dt {
			width: 100%;
			padding: 10px 10px;
			background: #e8f3f8;
		}
		.company_data dl dd {
			width: 100%;
			padding: 10px 10px 20px;
		}
		.company_data dl dd p {
			margin-right: 0;
			margin-bottom: 5px;
		}
		#sec_coat01_02 > div {
			padding: 55vw 0 5% 5%;
		}
		.recruit_ttl h2,
		#recruit02 h3 {
			font-size: 100%;
			padding-left: 12px;
			margin-bottom: 30px;
		}
		.recruit_ttl h3 {
			font-size: 140%;
			letter-spacing: 0.3rem;
		}
		#recruit01 > div h4 {
			letter-spacing: 0.2rem;
		}
		#recruit01 > div h4 span {
			margin-left: 0rem;
		}
		#recruit01 > div > div {
			margin-bottom: 280px;
		}
		#recruit .icon_plus_on::after {
			right: -10px;
			bottom: -700px;
		}
		#recruit02 {
			margin-bottom: 100px;
		}
		.rec_staff {
			margin-bottom: 40px;
		}
		.rec_staff h4,
		.rec_model h4 {
			margin-bottom: 10px;
		}
		.rec_staff h4 + p {
			margin-bottom: 15px;
		}
		#recruit03 {
			padding: 50px 0 40px;
		}
		#recruit03 > div > div > dl > dt {
			width: 70px;
			font-size: 400%;
		}
		#recruit03 > div > div > dl > dd {
			width: calc(95% - 60px);
		}
		#recruit03 > div > div > dl > dd span {
			font-size: 160%;
			margin-bottom: 10px;
		}
	}
	@media screen and (max-width: 580px) {

/*--追加--*/
#heat_data03 .tech_wrap li{
letter-spacing:0 !important;
font-size:85%;
}
/*--追加--*/
#heat_data02 {
	margin: 0 auto 0;
}

		#main_img > img {
			height: 200px;
		}
		#main_img > h2.business_p {
			font-size: 240%;
		}
		.business_ttl h2 {
			font-size: 170%;
			letter-spacing: 0.2rem;
		}
		.business_ttl br.br_none {
			display: none;
		}
		#sec_coat01 {
			padding-top: 55vw;
		}
		#sec_coat01::before,
		#sec_coat01::after {
			height: 200px;
		}
		#sec_coat01_01 {
			top: 290px;
		}
		#sec_coat01::after {
			top: 120px;
		}
		#sec_coat01_01 > div {
			padding: 5% 5% 5% 0;
		}
		#sec_coat01 > h3 {
			top: 20px;
		}
		#sec_coat01_01 ul li {
			margin-bottom: 3px;
		}
		#sec_coat01_02 > div {
			padding: 58vw 0 5% 5%;
		}
		#heat .icon_plus_on::after {
			bottom: -520px;
			right: 90px;
		}
		#heat #main_img > h2.business_p {
			font-size: 200%;
		}
		#strength01,
		#strength02,
		#strength03 {
			padding-bottom: 280px;
		}
		#strength .icon_plus_on::after {
			bottom: -700px;
		}
	}
	@media screen and (max-width: 520px) {
		#sec_coat01_02 > div {
			padding: 65vw 0 5% 5%;
		}
		#sec_phil01 dl dd {
			text-align: left;
		}
		#sec_phil01 dl dd br {
			display: none;
		}
	}
	@media screen and (max-width: 480px) {

		body {
			font-size: 13px;
			line-height: 1.8;
		}

/*--追加--*/
#no_slide{
display:none !important;
}

/*--追加--*/
#heat_data03 .tech_wrap ul{
width:100%;
}
/*--追加--*/
#heat_data03 .tech_wrap li{
font-size:100%;
}


		#main_news {
			width: 90%;
			position: relative;
			padding: 5px 10px 7px;
		}

		#main_news dt {
			width: 80px;
			position: absolute;
			top: -32px;
			left: 0;
		}

		#main_news dd {
			width: 100%;
		}

		#main_news dd a span {
			display: block;
			margin-right: 0;
		}

		#top_value > div > div {
			padding-top: 80px;
		}

		.top_value_on::before {
			width: 140px;
			height: 180px;
			left: -50px;
			top: 0%;
		}

		#top_value > div > div p {
			width: 90%;
			margin-bottom: 20px;
		}

		#top_value > div > img {
			max-width: 300px;
			height: 250px;
			margin-top: 20px;
		}
		#top_history > div h2 {
			letter-spacing: 0.4rem;
		}

		#foot_ban ul {
			width: 90%;
			max-width: 380px;
			margin: 0 auto;
		}

		#foot_ban ul li {
			width: 100%;
			margin: 6px 0;
		}

		#pageTop {
			bottom: 58px;
		}
		#main_w {
			padding: 110px 0 40px;
		}
		#main_w h2 {
			font-size: 140%;
			letter-spacing: 1rem;
			padding-bottom: 15px;
			padding-left: 10px;
		}
		#main_w h2::after {
			width: 30%;
			max-width: 50px;
		}
		#company_map iframe {
			height: 350px;
		}
		.subpage_btn ul {
			max-width: 360px;
			margin: 0 auto;
		}
		.subpage_btn ul li {
			width: 100%;
			margin-bottom: 15px;
		}
		.subpage_btn ul li a {
			padding: 23px 5% 23px;
		}
		.subpage_btn ul li a span {
			padding: 7px 40px 9px 25px;
		}
		#solution .icon_plus_on::after {
			right: -5px;
			bottom: -140px;
		}
		#coating .icon_plus_on::after {
			top: -120px;
		}
		#sec_coat01 {
			padding-top: 66vw;
		}
		#sec_coat01 > h3,
		#sec_coat01_01 h3 {
			font-size: 3.8vw;
		}
		#sec_coat01 > h3 {
			top: 30px;
		}
		#sec_coat01_01 ul li {
			font-size: 3.2vw;
			letter-spacing: 0;
		}
		#sec_coat01_02 > div {
			padding: 62vw 0 5% 5%;
		}
		#sec_coat02 h3,
		#sec_coat03 h3 {
			margin-top: 70px;
			margin-bottom: 15px;
			font-size: 4.2vw;
			letter-spacing: 0.1rem;
		}
		#sec_coat01_02 h3 br.br_none {
			display: none;
		}
		#sec_coat01_02 h3 {
			font-size: 3.2vw;
		}
		#sec_coat01_02 dl dt span {
			font-size: 105%;
		}
		#sec_coat01_02 dl dd {
			font-size: 100%;
			letter-spacing: 0.1rem;
			padding: 5px 15px 10px 0;
			margin-bottom: 20px;
		}
		#base .icon_plus_on::after {
			right: -10px;
			top: -80px;
		}
		#quality #main_img h2.main_h2 {
			letter-spacing: 0.5rem;
			padding-left: 0.5rem;
			margin-bottom: 40px;
		}
		#quality .icon_plus_on::after {
			right: -10px;
			top: -250px;
		}
		#sec_quality03 > div > div li span {
			display: block;
			margin-right: 0;
		}
		#sec_quality04 > div ol {
			padding-left: 7%;
		}
		.quality_device {
			justify-content: center;
		}
		.quality_device > dl {
			width: 46%;
			margin: 0 2%;
		}
		.quality_device > dl dd {
			font-size: 2.8vw;
		}
		#recruit01 {
			padding-bottom: 1%;
		}
		#recruit01 > div > div {
			margin-bottom: 260px;
		}
		#recruit #main_img h2.main_h2 {
			letter-spacing: 0.5rem;
			padding-left: 0.5rem;
			margin-bottom: 40px;
		}
		#recruit .icon_plus_on::after {
			bottom: -660px;
		}
		.rec_staff h4,
		.rec_model h4 {
			font-size: 4.5vw;
		}
		#recruit03 h3 {
			top: -25px;
		}
		#strength #main_img h2.main_h2 {
			letter-spacing: 0.5rem;
			padding-left: 0.5rem;
			margin-bottom: 30px;
		}
		#sec_str h3 {
			margin: 0px auto 20px;
			letter-spacing: 0.3rem;
		}
		#sec_str h3 span {
			font-size: 260%;
			margin-right: 15px;
			vertical-align: -3px;
		}
		#sec_str > div > div h4 {
			font-size: 140%;
			letter-spacing: 0.2rem;
			margin-bottom: 20px;
		}
		#sec_str > div > div {
			min-height: unset;
		}
		#strength01,
		#strength02,
		#strength03 {
			padding-bottom: 240px;
		}
		#strength .icon_plus_on::after {
			width: 35%;
			bottom: -630px;
			right: -10px;
		}
		#sec_phil02 > div {
			margin-bottom: 40px;
		}
		#sec_phil02 > div > h3 {
			padding-left: 10px;
			margin-bottom: 10px;
		}
		#sec_phil02 > div > div h4 {
			margin-bottom: 10px;
		}

		#sec_phil02 > div > div {
			margin-bottom: 50px;
		}
	}
	@media screen and (max-width: 430px) {
		#sec_coat01 {
			padding-top: 75vw;
		}
		#sec_coat01 > h3 {
			top: 30px;
		}
		#sec_coat01_02 > div {
			padding: 62vw 0 5% 5%;
		}
		#foot_contact p {
			font-size: 95%;
		}
		#base .icon_plus_on::after {
			right: -10px;
			top: -60px;
		}
		#recruit .icon_plus_on::after {
			bottom: -640px;
		}
		.recruit_ttl h3 {
			font-size: 3.8vw;
		}
		#strength .icon_plus_on::after {
			bottom: -600px;
		}
	}
	@media screen and (max-width: 420px) {
		.history_data dl dd p {
			margin-right: 0;
		}
		#solution .icon_plus_on::after {
			right: -5px;
			bottom: -150px;
		}
		#main_img > h2.business_p {
			letter-spacing: 0.3rem;
		}

		.business_ttl h2 span {
			font-size: 14px;
		}
		.business_ttl h2 {
			font-size: 5.6vw;
			letter-spacing: 0.1rem;
		}

		#solution_data > div {
			margin-bottom: 50px;
		}
		#solution_data > div h3 {
			letter-spacing: 0.2rem;
			margin-bottom: 20px;
			padding-top: 10px;
			font-size: 110%;
		}
		#solution_data > div h3::before {
			width: 50px;
			height: 5px;
		}
		.data_img_col .col_data h4 {
			font-size: 5vw;
			letter-spacing: 0.2rem;
		}
		.company_data dl dd p br.br_none {
			display: none;
		}
		#sec_coat01_02 > div {
			padding: 67vw 0 5% 5%;
		}
		#heat_data01 > div > div {
			padding-top: 20px;
		}
		#heat_data01 > div > div h3 br {
			display: inline;
		}
		#sec_quality04 > div ol {
			padding-left: 30px;
		}
		.recruit_ttl h2,
		#recruit02 h3 {
			font-size: 3.2vw;
		}
		#recruit01 > div > div {
			margin-bottom: 230px;
		}

		#recruit03 > div > div > dl {
			padding: 30px 0;
		}
		#recruit03 > div > div > dl > dt {
			width: 100%;
			margin-bottom: 10px;
		}
		#recruit03 > div > div > dl > dd {
			width: 100%;
		}
		#recruit03 > div > div > dl > dd p {
			width: 100%;
		}
		#recruit03 > div > div > dl > dd span {
			font-size: 5vw;
		}
		#strength .icon_plus_on::after {
			width: 30%;
			bottom: -580px;
		}
		#strength01,
		#strength02,
		#strength03 {
			padding-bottom: 200px;
		}
	}
	@media screen and (max-width: 380px) {
		.top_value_on::before {
			width: 130px;
			height: 160px;
			top: 10px;
		}
		#solution .icon_plus_on::after {
			right: -5px;
			bottom: auto;
			top: -7%;
		}
		#sec_coat01_02 > div {
			padding: 70vw 0 5% 5%;
		}

		#base .icon_plus_on::after {
			right: -10px;
			top: -60px;
		}
		#heat .icon_plus_on::after {
			bottom: -500px;
			right: 50px;
		}
		#heat_data01 h2 span {
			font-size: 80%;
		}
		#quality .icon_plus_on::after {
			right: -10px;
			top: -200px;
		}
		#recruit .icon_plus_on::after {
			bottom: -630px;
		}
		#strength01,
		#strength02,
		#strength03 {
			padding-bottom: 200px;
		}
		#sec_str h3 {
			font-size: 160%;
			letter-spacing: 0.1rem;
		}
		#sec_str h3 span {
			font-size: 220%;
			margin-left: 10px;
			margin-right: 10px;
		}
		#strength02 .btn_g a {
			width: 180px;
		}
		#strength02 .btn_g a {
			bottom: 27px;
		}
		#strength02 > div > div > img {
			width: 60px;
		}
		#strength .icon_plus_on::after {
			bottom: -600px;
		}
		#sec_str > div > div ul li br {
			display: none;
		}
	}
	@media screen and (max-width: 360px) {
		#sec_coat01_02 > div {
			padding: 75vw 0 5% 5%;
		}
	}
	@media screen and (max-width: 340px) {
		#sec_coat01_02 > div {
			padding: 88vw 0 5% 5%;
		}
		#recruit01 > div > div {
			margin-bottom: 200px;
		}
	}
}

/* スマホのときのみ電話をかける */
@media (min-width: 900px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}
