@charset "utf-8";
/* CSS Document */

/* スマホ設定  768 以下*/
@media screen and (max-width:767px)
{
.pt{display: none;}
.pc{display: none;}
.ps{display: block;}
.tb{display: none;}
.ts{display: block;}
.sp{display: block;}	
	
/* ヘッダー */
#header {
	padding: 25px 0 15px;
}

#header .inbox .logo {
	width: 54%;
}

#header .inbox ul {
	padding: 0;
	text-align: center;
}
	
#header .inbox ul li {
	margin: 0;
	padding: 0;
	display: block;
}
	
#header .inbox ul li.none {
	display: block;
}
	
#header .inbox ul li:nth-child(7),
#header .inbox ul li:nth-child(2),
#header .inbox ul li:nth-child(3),
#header .inbox ul li:nth-child(4),
#header .inbox ul li:nth-child(5){
	background: none;
}
	
.hamburger {
  display : block;
  position: fixed;
  z-index : 300;
  right : 15px;
  top   : 15px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #555;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index : 200;
  top  : 0;
  left : 0;
  color: #000;
  background: #fff;
  text-align: center;
  transform: translateX(100%);
  transition: all 0.6s;
  width: 100%;
}

nav.globalMenuSp ul {
  background: #DDDDDD;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  border-bottom: 1px solid #fff;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #000;
  padding: 1em 0;
  text-decoration :none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  transform: translateX(0%);
}
	
/* トップページ */
#mainimage img {
	height: 55vw;
}
	
#block01 {
	background-size: 100%;
}

#block01 .inbox {
	padding: 5% 0 20px;
	position: static;
}

#block01 .inbox .leftbox {
	width: 94%;
	float: none;
	margin: 0 auto 15px;
}

#block01 .inbox .rightbox {
	width: 96%;
	margin: 0 auto;
	position:static;
}
	
#block02 {
	margin: 0 auto 40px;
}
	
#block02 ul li {
	margin: 0 6% 0 0;
	width: 44%;
}
	
#block02 ul li:nth-child(2) {
	margin: 0;
}
	
#block02 ul li p {
	margin-top: 10px;
	font-size: 85%;
}
	
#block02 .btn p {
	font-size: 110%;
}

#block03 {
	padding-top: 40px;
	padding-bottom: 60px;
	margin-bottom: 60px;
	position: static;
}
	
#block03 .inbox {
	background-image: none;
	min-height: auto;
	position: static;
	transform: none;
	display: block;
}

#block03 .block03_img {
	width: 100%;
	margin-bottom: 30px;
}
	
#block03 .block03_img img {
	width: 100%;
	height: auto;
}
	
#block03 p {
	width: 100%;
}
	
#block03 .flowbox {
	padding-top: 60px;
}
	
#block03 .flowbox ul {
	width: 86%;
	margin: 0 auto;
	padding-right: 10px;
	flex-wrap: wrap;
}
	
#block03 .flowbox li {
	width: 46%;
	margin-bottom: 15px;
}
	
#block03 .flowbox li:after {
	right: -19%;
}
	
#block04 h2 {
	margin-bottom: 20px;
}
	
#block04 ul {
    display: block;
}

#block04 li {
	width: 100%;
	min-height: auto;
	margin-bottom: 30px;
	padding: 40px 30px 30px;
}
	
#block04 li dt {
	margin-bottom: 20px;
}
	
#block05 h2 {
	margin-bottom: 20px;
}
	
#block05 ul {
    display: block;
}

#block05 li {
	width: 100%;
	margin-bottom: 30px;
}
	
#block05 li dl {
    display: block;
}

#block05 li dl dt {
	width: 100%;
}
	
#block05 li dl dt img {
	width: 100%;
	height: 200px;
	object-fit: cover;
}

#block05 li dl dd {
	width: 100%;
	padding: 20px;
}
	
#block06 h2 {
	margin-bottom: 20px;
}
	
#block07 .toc-title {
width:100%;
float: none;
}

#block07 .toc-icon_pic {
	width: 100%;
	float: none;
	margin-bottom: 10px;
}
	


#block07 .floatlist {
list-style: none;
margin: 0;
padding: 0;
font-size: 0;
}

#block07 .floatlist li {
vertical-align: top;
}

#block07 .toc-icon-item img{ 
width:26%;
height: auto;
float: left;	
margin-top: 5px;
margin-right: 5px;
}

	
/* フッター */
footer .inbox .leftbox {
	font-size: 86%;
}
	
footer .inbox .rightbox ul.menu {
	display: none;
}
	
footer .inbox .rightbox p {
	font-size: 86%;
}
	
footer .inbox .rightbox p .copy {
	font-size: 86%;
}

/* 下層共通 */
#page_main {
	margin-bottom: 30px;
}

#page_main img {
	height: 120px;
}

#contents h2 {
	margin-bottom: 0;
	font-size: 150%;
}

/* 会社概要 */
#company_contents h2 {
	margin-bottom: 0;
	font-size: 150%;
}

#company_contents h3 {
	margin-bottom: 40px;
	font-size: 130%;
}

#company_contents .sub_main img {
	width: 100%;
	height: 260px;
	object-fit: cover;
}
	
#company_contents .lead {
	font-size: 110%;
}
	
#company_contents .inner {
	padding-left: 0;
}

#company_contents dl {
	width: 100%;
  border-bottom: 1px solid #DDDDDD;
}
#company_contents dt {
  width: 100%;
  float: none;
	border-top: 1px solid #DDDDDD;
}
#company_contents dd {
  margin-left: 0;
	border-top: none;
	padding: 0 15px 15px 15px;
}

#company_contents .map .left {
	width: 100%;
	float: none;
	margin-bottom: 30px;
}

#company_contents .map .right {
	width: 100%;
	float: none;
}
	
#company_contents .map iframe {
	height: 300px;
}
	
#company_contents .history div {
	width: 100%;
	float: none;
	margin-bottom: 30px;
}

#company_contents .history p {
	width: 100%;
	float: none;
}

/* 塗装メニュー */
.paint_menu ul {
    display: block;
}

.paint_menu li {
	width: 100%;
	min-height: auto;
	background-size: auto 260px!important;
}
	
.paint_menu dl {
	min-height: 260px;
}

	
/* 作業の流れ */
.flow dt {
	width: 100%;
	float: none;
}
	
.flow dd {
	width: 100%;
	float: none;
}	

.flow li:last-child dd:last-of-type {
	top: 130px;
	right: inherit;
	left: 110px;
}
	
/* 施工実績 */
.results ul {
	width: 96%;
	margin: 0 auto;
    display: block;
}

.results li {
	width: 100%;
	margin-right: 0;
	margin-bottom: 30px;
	padding: 20px;
}
	
.results li h4 {
	font-size: 110%;
}
	
.results li .after img {
	width: 100%;
	height: 260px;
	object-fit: cover;
}
	
.results li .icon_after {
	width: 156px!important;
	height: auto!important;
	object-fit: none;
}

.results li dt {
	width: 70%;
	float: none;
	margin-bottom: 15px;
}

.results li dd {
	margin-left: 0;
	padding-left: 0;
}

.results li .voice {
	padding: 15px;
}


/* 個人情報の取り扱い方針 */
.privacy_policy .lead {
	text-align: left;
}


/* お問い合わせ */
.contact .inbox {
	margin-bottom: 30px;
	padding: 10px 15px;
	text-align: left;
}

.contact dl {
  border-bottom: 1px solid #DDDDDD;
}
.contact dt {
  width: 100%;
  float: none;
	border-top: 1px solid #DDDDDD;
}
.contact dd {
  margin-left: 0;
	border-top: none;
	padding: 0 15px 15px 15px;
}

.contact .w300 {
	width: 100%;
}

.contact textarea {
	margin-top: 10px;
}


.sdgs_btn ul li.l{
width: 100%;
	float: none;
}
.sdgs_btn ul li.r{
width: 100%;
	float: none;
}

	
}