@charset "UTF-8";

/* 必須指定 */
#contWrap {
    margin: 0 auto;
    width: 100%;
    color: #333;
    font-size: 16px;
}
#contWrap p{
	line-height: 1.7;
}
#contWrap figure,
#contWrap p,
#contWrap ul {
    border:0;
    margin:0;
    padding:0;
}
@media screen and (max-width: 750px) {
	#contWrap {
		width: 100%;
		max-width: 100%;
		min-width: 100%;
	}
}

/* 共通 */
#contWrap figure>img{
	width: 100%;
}
#contWrap section{
	margin-bottom: 120px;
}
#contWrap .inner{
	padding: 0 30px;
}
#contWrap .flex-pc{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media screen and (max-width: 750px){
	#contWrap section{
		margin-bottom: 80px;
	}
	#contWrap .inner{
		padding: 0 10px;
	}
	#contWrap .flex-pc{
		display: block;
	}
	#contWrap .flex-pc>div{
		width: 100%;
	}
}
/* タイトル */
#contWrap .ttl {
	text-align: center;
	font-weight: 600;
	margin: 50px 0 28px 0;
}
#contWrap .ttl h3{
	font-size: 4.25em;
	font-weight: 600;
	line-height: 1.1;
}
#contWrap .ttl h3 span{
	color: #AF0404;
}
#contWrap .sub-text{
	text-align: center;
	margin-bottom: 50px;
}
@media screen and (max-width: 750px){
	#contWrap .ttl h3{
		font-size: 2.5em;
	}
	#contWrap .sub-text{
		padding: 0 10px;
		text-align: left;
	}
}
/* ボタン */
#contWrap .link-btn{
	margin: 0 auto;
	text-align: center;
}
#contWrap .link-btn a{
	display: inline-block;
	position: relative;
	padding: 26px 7%;
	box-sizing: border-box;
	background:#FFF url(../images/icon_arrow_01.svg) no-repeat 93% center / 22px auto;
	background-color: #AF0404;
	border-radius: 100vh;
	text-align:center;
	color: #FFF;
	font-weight: 600;
	font-size: 1.25em;
}
#contWrap .link-btn a:hover{
	opacity: .7;
}

@media screen and (max-width: 750px){
	#contWrap .link-btn a{
		width: 92%;
	}
}
/* pcだけ表示・spだけ表示 */
#contWrap .only-pc {
  display: block;
}
#contWrap .only-sp {
  display: none;
}
@media screen and (max-width: 750px){
	#contWrap .only-sp {
		display: block;
	}
	#contWrap .only-pc {
		display: none;
	}
}
#contWrap a:hover {
	opacity: 0.7;
	text-decoration: none!important;
}

/* メインイメージ
---------------------------------------*/
#mv .mv-sub ul{
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	margin: -120px auto 0 auto;
	padding: 0 60px;
}
#mv .mv-sub ul li{
	width: 23.5%;
	padding: 14px 14px 10px 14px;
	border: #252525 2px solid;
	background-color: #FFF;
	text-align: center;
}
#mv .mv-sub p{
	color: #252525;
	font-weight: 600;
	margin-top: 6px;
	font-size: 1.25em;
}

@media screen and (max-width: 750px){
	#mv .mv-sub ul{
		flex-wrap: wrap;
		margin: -40px auto 0 auto;
		padding: 0 14px;
	}
	#mv .mv-sub ul li{
		width: 49%;
		margin-bottom: 10px;
	}
	#mv .mv-sub p{
		font-size: 1em;
	}
}
/*製作実績
---------------------------------------*/
#works h4{
	display: flex;
	font-weight: 600;
	align-items: center;
	margin-bottom: 30px;
}
#works h4::before,
#works h4::after {
	content: "";
	flex-grow: 1;
	border-top: 1px dashed #414141;
	display: block;
}
#works h4::before{
	margin-right: 1em;
}
#works h4::after{
	margin-left: 1em;
}
#works ul li{
	width: 45%;
	margin-bottom: 10px;
}
#works ul li>span{
	float: right;
	width: 88px;
	padding: 3px;
	font-size: 0.875em;
	text-align: center;
	color: #FFF;
}
#works ul li>.tag_01{
	background-color: #AF0404;
}
#works ul li>.tag_02{
	background-color: #414141;
}
@media screen and (max-width: 750px){
	#works ul li{
		width: 100%;
		border-bottom: #eee 1px solid;
		padding-bottom: 10px;
		font-size:  0.8em;
	}
}
/*看板製作・設置工事は全てお任せください
---------------------------------------*/
#area {
	position: relative;
	background:url(../images/img_green-cross.jpg) center/cover no-repeat;
	padding: 60px 0;
	color: #FFF;
}
#area::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color:rgb(125 5 5 / 70%);
}
#area .flex-pc{
	position: relative;
	z-index: 2;
	align-items: center;
}
#area .flex-pc>figure{
	width: 34.82%;
}
#area .flex-pc>div{
	width: 60.68%;
}
#area h3{
	font-size: 1.875em;
	font-weight: 600;
	line-height: 1.7em;
}
#area .sub-ttl{
	font-size: 1.5em;
	margin: 20px 0;
}
@media screen and (max-width: 750px){
	#area .flex-pc>figure{
		width: 80%;
		margin: 0 auto;
	}
	#area .flex-pc>div{
		width: 100%;
	}
	#area h3{
		margin-top: 20px;
	}
}
/*施工事例
---------------------------------------*/
#case .ttl h3{
	font-size: 3.125em;
	margin-bottom: 10px;
}
#case .case-wrap{
	position: relative;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px #AF0404 dashed;
	margin-top: 100px;
	padding-bottom: 70px;
}
#case .case-wrap>figure{
	width: 54%;
}
#case .case-wrap>div{
	width: 42%;
}
#case .case-wrap h4{
	position: absolute;
	display: inline-block;
	top: -36px;
	left: 39%;
	background-color: #FFF;
	font-size: 1.625em;
	color: #AF0404;
	font-weight: 600;
	padding: 20px 3%;
	border: 2px solid #AF0404;
	border-radius: 4px;
}
#case .case-wrap h4:before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 9%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 12px solid #FFF;
  z-index: 2;
}
#case .case-wrap h4:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 9%;
  margin-left: -18px;
  border: 15px solid transparent;
  border-top: 15px solid #AF0404;
  z-index: 1;
}
#case .text-wrap{
	margin-top: 80px;
}
#case .text-wrap>p:first-child{
	font-weight: 600;
	margin-bottom: 20px;
}
#case .text-wrap a{
	display: block;
	color: #414141;
	font-weight: 600;
	margin-top: 20px;
	background: url(../images/icon_arrow_02.svg) no-repeat 106px center / 14px auto;
}
#case .text-wrap a:hover{
	color: #AF0404;
	opacity: 1;
}
/*奇数は左右入れ替え*/
#case .case-wrap:nth-child(odd){
	flex-direction : row-reverse;
}
#case .case-wrap:nth-child(odd) h4{
	left: 0;
}
#case .case-wrap:nth-child(odd) h4:before,
#case .case-wrap:nth-child(odd) h4:after{
	left: 93%;
}
/*最後は下線無し*/
#case .case-wrap:last-of-type{
	border-bottom: none;
}
@media screen and (max-width: 750px){
	#case .ttl h3{
		font-size: 2.2em;
	}
	#case .case-wrap{
		display: block;
		margin-top: 30px;
	}
	#case .case-wrap>figure,#case .case-wrap>div{
		width: 100%;
	}
	#case .case-wrap h4{
		position: static;
		margin-top: 20px;
		border: none;
		padding: 0;
		margin: 20px 0;
	}
	#case .text-wrap{
		margin-top: 0;
	}
}
/*看板製作メニュー
---------------------------------------*/
#menu {
	background-color: #F5F5F5;
	padding: 50px 0 120px 0;
}
#menu .menu-wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
#menu .menu-wrap .menu-item{
	width: 32%;
	padding: 20px;
	margin-bottom: 30px;
	background-color: #fff;
}
#menu .menu-wrap .menu-item h4{
	text-align: center;
	font-weight: 600;
	box-sizing: border-box;
	background: url(../images/icon_arrow_02.svg) no-repeat 93% center / 16px auto;
	margin-top: 14px;
}
@media screen and (max-width: 750px){
	#menu{
		padding-top: 10px;
	}
	#menu .menu-wrap .menu-item{
		width: 49%;
		padding: 10px;
	}
	#menu .menu-wrap .menu-item h4{
		margin-top: 4px;
		background: url(../images/icon_arrow_02.svg) no-repeat 100% center / 14px auto;
		font-size: 0.875em;
	}
}
/*看板デザイン
---------------------*/
#design .design-wrap{
	padding-top: 50px;
	padding-bottom: 50px;
	border-top: dashed 1px #414141;
}
#design .design-wrap .text-wrap>h4{
	box-sizing: border-box;
	background: url(../images/icon_case_01.jpg) no-repeat 0% center / 96px auto;
	font-size: 1.75em;
	font-weight: 600;
	color: #414141;
	padding: 34px 0 34px 120px;
}
#design .design-wrap .text-wrap>p{
	margin: 40px 0;
}
#design .col_2,#design .col_3{
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}
#design .col_2>figure{
	width: 49%;
}
#design .col_3>figure{
	width: 32.3%;
}
/*数字アイコン*/
#design .design-wrap .text-wrap>#design02{
	background: url(../images/icon_case_02.jpg) no-repeat 0% center / 96px auto;
}
#design .design-wrap .text-wrap>#design03{
	background: url(../images/icon_case_03.jpg) no-repeat 0% center / 96px auto;
}
#design .link-btn{
	margin-top: 40px;
}
@media screen and (max-width: 750px){
	#design .design-wrap .text-wrap>p{
		margin-top: 0;
	}
	#design .design-wrap .text-wrap>h4{
		font-size: 1.5em;
	}
	#design .col_2,#design .col_3{
		display: block;
		margin-bottom: 0;
	}
	#design .col_2>figure,#design .col_3>figure{
		width: 100%;
		margin-bottom: 6px;
	}
}
/*看板メンテナンス
---------------------------------------*/
#maintenance{
	background-color: #F5F5F5;
	padding: 50px 0 120px 0;
}
#maintenance .sub-text>span{
	font-size: 1.2em;
	font-weight: 600;
	color: #AF0404;
}
#maintenance .flex-pc{
	margin: 62px 0 70px 0;
}
#maintenance .flex-pc>div{
	text-align: center;
}
#maintenance .flex-pc>div>p{
	padding-top: 20px;
	font-weight: 600;
}
@media screen and (max-width: 750px){
	#maintenance{
		padding-top: 10px;
	}
	#maintenance .flex-pc>div{
		margin-bottom: 20px;
	}
	#maintenance .flex-pc>div>p{
		padding-top: 4px;
	}
}
/*看板設置までの流れ
---------------------------------------*/
#flow{
	background-color: #AF0404;
	padding: 50px 0 120px 0;
}
#flow .ttl,#flow .sub-text{
	color: #FFF;
}
#flow .flow-wrap{
	background-color: #FFF;
	margin: 0 30px 40px 30px;
}
#flow .flow-wrap .number-box{
	width: 27%;
	text-align: center;
	display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#flow .flow-wrap .number-box p{
	font-size: 4.75em;
	color: #AF0404;
	line-height: 1.1;
}
#flow .flow-wrap .number-box h4{
	font-size: 1.625em;
	color: #414141;
}
#flow .flow-wrap .contents-box{
	width: 73%;
	padding: 30px;
}
#flow .flow-wrap .contents-box>p{
	font-weight: 500;
}
#flow .flow-wrap .contents-box .contact{
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
#flow .flow-wrap .contents-box .contact p{
	width: 48%;
}
#flow .flow-wrap .contents-box .contact p>a{
	display: block;
	text-align: center;
	font-weight: 600;
	padding: 10px;
	border-radius: 100vh;
}
#flow .flow-wrap .contents-box .contact .tel{
	color: #414141;
	background-color: #FFF;
	border: 2px solid #414141;
	padding: 1px 1px 1px 30px;
	font-size: 1.875em;
	background: url(../images/icon_phone.svg) no-repeat 9% center / 28px auto;
}
#flow .flow-wrap .contents-box .contact .mail{
	color: #fff;
	font-size: 1.25em;
	padding-left: 30px;
	background: url(../images/icon_email.svg) no-repeat 9% center / 28px auto;
	background-color: #F4A442;
	border: 2px solid #F4A442;
}
#flow .flow-wrap .contents-box .photo{
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
#flow .flow-wrap .contents-box .photo figure{
	width: 48%;
}
#flow .flow-wrap02{
	background-color: #FFF;
	margin: 0 30px 40px 30px;
	padding: 30px;
}
#flow .flow-wrap02>div{
	width: 56%;
	padding: 20px;
}
#flow .flow-wrap02>figure{
	width: 42%;
}
#flow .flow-wrap02 h4{
	font-size: 1.5em;
	font-weight: 600;
	color: #AF0404;
	margin-bottom: 20px;
}
#flow .flow-wrap02 ul{
	padding-left: 30px;
	margin-bottom: 20px;
}
#flow .flow-wrap02 ul li{
	list-style: disc;
	font-weight: 600;
}
@media screen and (max-width: 750px){
	#flow .flow-wrap,	#flow .flow-wrap02{
		margin: 0 10px 40px 10px;
		padding-top: 20px;
	}
	#flow .flow-wrap .number-box,#flow .flow-wrap .contents-box,
	#flow .flow-wrap02>div,#flow .flow-wrap02>figure{
		width: 100%;
	}
	#flow .flow-wrap .contents-box .contact{
		display: block;
	}
	#flow .flow-wrap .contents-box .contact p{
		width: 100%;
		margin-bottom: 20px;
	}
	#flow .flow-wrap02>div{
		padding: 0;
	}
	#flow .flow-wrap02 figure{
		margin-top: 20px;
	}
}
/*お問合せエリア
---------------------------------------*/
#contact .contact-wrap{
	width: 100%;
	background-color: #760505fc;
	background-image: url(../images/inquiry-back-img.png);
  background-size: cover;
  background-position: bottom;
  background-repeat: no-repeat;
	text-align: center;
	padding: 40px 0;
}
#contact .contact-wrap h4{
	font-size: 1.75em;
	font-weight: 600;
	color: #FFF;
	margin-bottom: 30px;
}
#contact .contact-wrap>p{
	color: #FFF;
	margin-bottom: 30px;
}
#contact .contact-wrap .flex-pc{
	width: 75.86%;
	margin: 0 auto;
}
#contact .contact-wrap .flex-pc>div{
	width: 48.86%;
  background-color: #fff;
  border-radius: 6px;
  padding: 20px 0 3px;
  text-align: center;
}
#contact .contact-wrap .flex-pc>div h5{
	font-weight: 600;
  margin-bottom: 10px;
}
#contact .contact-wrap .tel{
	color: #ff6c00;
  text-decoration: none;
  font-size: 38px;
  font-weight: 700;
  line-height: 0.8;
}
#contact .contact-wrap .day{
	color: #333;
  margin: 16px 0 20px 0;
  font-size: 0.875em;
}
#contact .contact-wrap .contact-btn{
  display: inline-block;
  background-color: #ff6c00;
  border-radius: 6px;
  text-decoration: none;
  color: #fff;
  font-weight: 700;
  font-size: 1.25em;
  padding: 15px 11% 12px 11%;
  border-bottom: solid 4px #a14400;
  margin-bottom: 20px;
  position: relative;
}
@media screen and (max-width: 750px){
	#contact .contact-wrap .flex-pc {
		width: 100%;
		padding: 0 10px;
	}
	#contact .contact-wrap .flex-pc>div{
		width: 100%;
		margin-bottom: 20px;
	}
	#contact .contact-wrap h4,
	#contact .contact-wrap > p{
		padding: 0 10px;
		text-align: left;
	}
}
/*東京オフィス
---------------------------------------*/
#map {
	text-align: center;
}
#map h4{
	font-size: 1.875em;
	font-weight: 600;
	color: #AF0404;
	margin-bottom: 10px;
}
#map iframe{
	margin-top: 30px;
	width: 100%;
}
#map .logo{
	display: flex;
	width: 72%;
	justify-content: space-between;
	margin: 60px auto 0 auto;
}
#map .logo p{
	width: 46%;
}
/*お問合せ右下固定ボタン*/
#contWrap .footer_fix_btn {
	position:fixed;
	width: 80px;
	right: 0px;
	bottom: 100px;
}
#contWrap .footer_fix_btn a {
	display:block;
	width:100%;
	text-decoration:none;
}
#contWrap .footer_fix_btn a:hover {
	opacity:0.7;
}
@media screen and (max-width: 750px){
	#contWrap .footer_fix_btn {
		 position: fixed;
		 width: 48px;
		 right: 0px;
		 bottom: 10px;
		 z-index: 999;
	}
	#map .logo{
		display: block;
	}
	#map .logo p{
		width: 100%;
		margin-bottom: 6px;
	}
}