@charset "utf-8";

body{
width: 100%;
min-width: 100%;
webkit-text-size-adjust : none;
}

img {max-width: 100%;height: auto;width /***/:auto;float: none!important;text-align: center;}


p,
td,
th,
li,
dt,
dd,
input,
textarea,
.entryBody,
.entryMore {
font-size: 16px;
}

/* ========== ヘッダー ========== */
#siteTitle h1 {
font-size:10px;
text-align: center;
width: 100%;
}

#catchArea h1{
font-size:16px;
}

#catchArea {
background-attachment:initial;
}

ul#nav_sp{
	margin:0;
	padding:0;
    font-size: 0;
	letter-spacing:-4px;
}
#nav_sp li.logo {
    width: 60%;
    display: inline-block;
}
#nav_sp li{
    width: 20%;
    display: inline-block;
    vertical-align: top;
}

#header{
width:100%;
background:#fff;
z-index:10000;
}

#header_wrapper{
height:90px;
}


#header.fixed{

}

#headerTitle {
width: 100%;
max-width:100%;
padding:0;
}

#headerAreaLogo{
}

#headerAreaLogo img{
max-height:30px;
width:auto;
}


#main {
width: 100%;
margin: 0 auto;
}

/* ========== メインメニュー ========== */
#mainMenu {
display: none;
}

#mainMenu ul{
}

/* ==================== コンテンツ ==================== */
#contents {
width: 96%;
margin:0 auto;
float: none;
}

#categoryTop .date .dateTime{
display: block;
}


/* ==================== セカンドエリア ==================== */
#secondArea {
width: 100%;
float: none;
}

#secondArea #subMenu{
display:block;
}

#sideBanners img,
#sideBanners2 img{
width: 90%;
margin:0 auto;
}

#catchArea_wrapper_sp{
}

#catchArea_sp h1 img{max-width:100%;}

#catchArea_sp h1{
max-width:100%;
}

#spclose{
display: block;
}

ul#slider{
	margin:0;
	padding:0;
	list-style:none;
}

/* ========== フッター ========== */

DIV#footerInner {
width: 90%;
margin: 0 auto 15px;
}

DIV#footer .tel a{
    color: #4f2f25;
    text-decoration: underline;
}

DIV#footer P#copyright{
font-size:12px;
text-align: center;
}

#footerMenu{
}

#footerAreaLogo{
float:none;
padding-top:30px;
text-align:center;
}

ul#footer_sns{
text-align:center;
}

DIV#footer DIV#footerMenu{
display:none;
float:none;
width:100%;
}

DIV#footer DIV#footerMenu ul{
float:none;
width:100%;
}

/* ========== サイドメニュー ========== */

div#secondArea div#subMenu div#subMenu_menu div.title{
display: none;
}

#subMenu ul,
#subMenu li,
.sideTitle li,
#secondAreaBlogParts .sideContents li,
#secondAreaCustomParts .sideContents li{
background: none;
}

/* ========== 会社案内 ========== */

#contents #categoryCompany th{
width:1em;
}

#contents #categoryCompany table.accessTable th{
width:1em;
}

/* ========== 施工事例 ========== */

#contents .categoryWorksList ul{
margin: 2% 10px;
}

#contents .categoryWorksList ul li {
float:none;
width: 98%;
margin-bottom: 20px;
}


#contents .categoryWorksList ul li a {
width: 98%;
}

#contents .categoryWorksList ul li img{
width: 98%;
}

#showType1 #categoryWorksData{
float:none;
width:98%;
}

#showType1 #categoryWorksPhoto{
float:none;
width:98%;
}


/* ========== お問い合わせ ========== */

#contents #categoryInquiry table{
width: 98%!important;
margin:0 auto;
}

#contents #categoryInquiry table,
#contents #categoryInquiry tbody,
#contents #categoryInquiry thead,
#contents #categoryInquiry tfoot,
#contents #categoryInquiry tr,
#contents #categoryInquiry th,
#contents #categoryInquiry td {
display: block;
}

#contents #categoryInquiry th,
#contents #categoryInquiry td {
border:none;
background: none;
}

#contents #categoryInquiry th,
#contents #categoryInquiry td,
#contents #categoryInquiry textarea{
width:100%;
}

#contents #categoryInquiry th,
#contents #categoryInquiry td{
padding:5px 0;
}

form#mailformpro input, form#mailformpro textarea{
max-width:250px!important;
}

/* For Smart Phone CSS */

  *, *:before, *:after {
      -webkit-box-sizing: border-box;
         -moz-box-sizing: border-box;
           -o-box-sizing: border-box;
          -ms-box-sizing: border-box;
              box-sizing: border-box;
  }

  body {
    font-family: sans-serif;
    /*padding-bottom: 60px;*/
    -webkit-text-size-adjust: 100%;
  }

  p, li, dt, dd {
    font-size: 14px;
  }

  img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    display: block;
  }

  .pcNone {
    display: block;
  }
  br.pcNone {
    display: inline;
  }
  table.pcNone {
    display: table;
  }
  tr.pcNone {
    display: table-row;
  }
  th.pcNone,
  td.pcNone {
    display: table-cell;
  }
  .spNone {
    display: none!important;
  }

  body,
  body#index {
    min-width: 0;
  }


  #sp_gnavi {
    width: 100%;
    position: fixed;
    top: 90px;
    left: 0;
    right: 0;
    bottom: 0;
    overflow-y: auto;
    z-index: 100000;
    background-color: rgba(0, 0, 0, 0.9);
  }
  #sp_gnavi a {
    color: #000;
    text-decoration: none;
    display: block;
    text-align: left;
  }
  #sp_gnavi dl {
    border-top: 1px solid #999;
    box-sizing:border-box;
  }
  #sp_gnavi dl:first-child {
    margin-top: 0;
    border-top: none;
  }
  #sp_gnavi dt {
    font-weight: 500;
    text-align: center;
    color: #fff;
    font-size: 14px;
    line-height: 1;
    padding: 12px 6px;
    border-bottom: 1px solid #ddd;
  }
  #sp_gnavi ul {
    overflow: hidden;
    margin:0;
    padding:0;
    list-style: none;
  }
  #sp_gnavi ul li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid#fff;
    font-size:12px;
  }

  #sp_gnavi ul a {
    position: relative;
    padding: 4px 10px 4px 25px;
    height: 50px;
    line-height: 1.4;
    font-size: 11px;
color:#fff;
  }
  #sp_gnavi ul a span {
    display: block;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

#sp_gnavi ul a:after {
content:"▶";
float:right;
}
#sp_gnavi ul li.clicked a:after {
content:"▼";
}

#sp_gnavi ul li.on a:after {
content:"▼";
}

  #sp_gnavi ul li ul li {
border-top:1px solid #eee;
border-bottom:none;
}

  #sp_gnavi ul li ul li a:after{
content:""!important;
}

  #sp_gnavi .close {
color:#fff;
    border-top: 1px dotted #fff;
    text-align: center;
    padding: 15px 0;
    margin: -1px 0 0 0;
  }
  #sp_gnavi .close a {
    display: inline-block;
    font-weight: bold;
color:#fff;
  }

  #sp_gnavi .close {
    border-top: 1px dotted #fff;
    text-align: center;
    padding: 15px 0;
    margin: -1px 0 0 0;
  }
  #sp_gnavi .close a {
    display: inline-block;
    font-weight: bold;
  }
  .ac_Menu {
    display: block;
float: right;
    margin: 0 5% 0 0;
    padding:  0;
  }


.menu-trigger i{
color:#000;
line-height:40px;
}

  #footer_fix_btn {
    display: block;
    font-size: 0;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    background-color: #fff;
    box-shadow: -1px 0 3px rgba(0, 0, 0, 0.5);
    z-index: 10;
    text-align: center;
    padding: 6px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  #footer_fix_btn ul li {
    font-size: 15px;
    display: inline-block;
    margin-right: 4%;
    width: 48%;
    vertical-align: middle;
  }
  #footer_fix_btn ul li:last-child {
    margin-right: 0;
  }
  #footer_fix_btn a {
    display: block;
  }
  #footer_fix_btn img{
    max-width:250px;
  }

  svg[width="60"]{
    display: none !important;
  }


.spNavi{
position:relative;
}

#contents .mainTitle h2{
	font-size:18px;
}

.one_colomun #read p{
font-size:14px;
	line-height:1.8;
}

/* ==================== トップページ調整 ==================== */

.top_contents ul li div.imgScale{
    overflow: hidden;
    width: 100%;
    height: 200px;
    position: relative;
}

.top_contents ul li div.imgScale img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.viewport{
width: 96%;
margin:0 auto;
padding:0;
}

#contents .mainTitle h2{
text-align:left;
font-size:22px;
font-weight:600;
}

#contents .mainTitle h2:before{
margin: 30px 0 15px;
}

.top_contents ul{
width:100%;
}

.top_contents ul li{
float:none;
margin:15px 0 50px;
width:100%;
}

#contents h3{
font-size:16px;
}

#news{
width:100%;
}

.date li,
#top_insta ul li{
display:block;
width:49%;
float:left;
margin:0 2% 15px 0;
font-size:12px;
}

.date li:nth-child(2n),
#top_insta ul li:nth-child(2n){
margin-right:0;
}



#contents p#read{
text-align:left;
margin:30px 0;
}

#access table,
#contact_box{
width:100%;
}

#contents table{
	width:100%;
}

#contents tr{border:none;}

#contents tr,
#contents td,
#contents th{
display:block;
width:100%;
padding:5px 0;
box-sizing:border-box;
}

#contents tr:nth-child(even){background:none;}

.pagetop{
right:5px;
bottom:5px;
}


.wd1200{
width:100%;
}

#contents.has_secondArea{
    width: 96%;
    margin: auto;
    float: none;
}

img.blogthumb{
width:100%;
height:auto;
}

.pankuzu p{
width:100%;
}

#contents .mainTitle h2{
font-size:16px;
}


#point ul li{
	width:49%;
	padding:8px;
	margin:0 2% 30px 0;
	box-sizing:border-box;
}

#point ul li:nth-child(2n){
margin-right:0;
}

#point ul li p{
	font-size:11px;
}

#point2 ul,
#point2 ul li {
	width:100%;
}

#point2 ul li div.imgScale{
	width:100%;
	display:block;
}

#point2 ul li div.textArea{
	width:100%;
	padding:30px 0;
}

#point2 ul li h3{
	font-size:18px;
}

#about ul{
	width:100%;
}

#about ul li{
	float:none;
	width:100%;
	margin:30px 0;
}

#menu h3.title{
	padding-left:0;
}

#contents #access table th,
#contents #access table td{
	padding:10px;
	font-size:12px;
}

#contents .faq_block{
	padding:8px;
}

.one_colomun #read{
	padding:0 10px;
	margin:50px auto;
}

.form_btn{
	text-align:center;
}

#point2 ul li p{
	font-size:14px;
}

.catchArea_inner p{line-height:initial;font-weight:400;}

.one_colomun{background-attachment:initial;}

#point2 ul li p.mini{font-size:12px;}

#point2 ul li div.textArea .mainTitle{padding:0;}

#menu table th,#menu table td{font-size:12px;}

#menu p{font-size:11px;}

#contents .faq_block h3{font-size:12px;}

#contact_box p{font-size:12px;}

/* ==================== 各サイト専用 ==================== */
#header_wrap {
    display: none;
}
#mainMenu {
    display: none;
}
#undercolumn .mainTitle {
    width: 100% !important;
    float: none !important;
}
h2.title {
    box-sizing: border-box;
    width: 100%;
    font-size: 120%;
}
#container {
    width: 96%;
    margin: 10px auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
#blog {
    width: 100%;
    float: none;
}
.navigation:after {
    content: "";
    display: block;
    clear: both;
}
#footer {
    width: 100%;
}
#main {
    margin: auto;
    width: 100%;
}
#header_sp.fixed {
    position: fixed;
}
#header_sp {
    position: absolute;
    z-index: 99999;
    width: 100%;
    background: rgba(0, 0, 0, 0.9);
}

/*top*/
#catchArea {
    width: 100%;
}
#slider {
    height: 0 !important;
    padding-bottom: 54%;
}
#news_area {
    background: none;
    width: 100%;
    height: auto;
}
#news_area .title_news {
    background: #ffcdd2;
    width: 100%;
    display: block;
}
#news_area .bloc_body {
    position: static;
    display: block;
    width: 100%;
}
#news_area p#more {
    position: static;
    display: block;
}
#news_area .news_contents {
    height: 40px !important;
}
.pankuzu {
    display: block;
    background: #fff;
    padding: 5px;
    box-sizing: border-box;
}

/*ブログ*/
#blog ul li time {
    display: block;
    margin-bottom: 5px;
}



/*商品詳細*/
div.listphoto {
    float: none;
    margin: 10px auto;
}
#main_column.colnum2 div.listrightbloc {
    float: none;
    width: auto;
}
div.listrightbloc .cart_area {
    width: 100%;
}
#main_column.colnum2 div#detailphotobloc {
    float: none;
    width: 100%;
}
#main_column.colnum2 #detailrightbloc {
    width: 100%;
    float: none;
    margin: 20px auto;
}
#main_column.colnum2 div.subtext {
    float: none;
}
#main_column.colnum2 div.subphotoimg {
    float: none;
    width: 100%;
    text-align: center;
    border: 1px solid #eee;
    padding: 10px 0;
}
#two_maincolumn_right div.listrightbloc,
#two_maincolumn_left div.listrightbloc {
    float: none;
    width: 100%;
    margin: 10px auto;
}
#two_maincolumn_left div#detailphotobloc, #two_maincolumn_right div#detailphotobloc {
    float: none;
    width: 100%;
    margin: auto;
    text-align: center;
}
#two_maincolumn_left div#detailrightbloc, #two_maincolumn_right div#detailrightbloc {
    float: none;
    width: 100%;
    margin: 10px auto;
}

/*問合せ*/
#undercolumn_contact th,
#undercolumn_contact td,
#undercolumn_entry th,
#undercolumn_entry td,
#undercolumn_customer th,
#undercolumn_customer td,
#undercolumn_order th,
#undercolumn_order td{
    display: block;
    box-sizing: border-box;
    width: 100%;
}
input, textarea {
    max-width: 320px !important;
}
.box380 {
    width: 100%;
    box-sizing: border-box;
}

/*cart*/
#undercolumn_cart table,
#undercolumn_shopping table {
    zoom: 80%;
}
.btn_area li {
    display: inline-block;
}
#container .login_area dl.formlist dt,
#container .login_area dl.formlist dd{
    width: 100%;
    display: block;
}
#container .login_area dl.formlist {
    width: 100%;
}

p.fl {
    float: none;
    margin: 10px auto;
}
p.bigfont {
    font-size: 16px;
}
ul#item_3column li {
    width: 48%;
    margin: 1%;
}
h3.subtitle {
    font-size: 14px;
}
ul#item_2column li {
    float: none;
    width: 100%;
}
div#topcolumn {
    margin: 0px;
    max-width: 100%;
}


/*topページ*/
#one_maincolumn {
    width: 100%;
}
#top_news {
    float: none;
    width: 100%;
    height: auto;
    background: #f0eee9;
}
#top_news_inner {
    width: 100%;
    background: #f0eee9;
    margin: 0 auto 10px;
}
#calender_area {
    float: none;
    margin: 10px auto;
}
#topbanners li {
    float: none;
    max-width: 90%;
    margin: 10px auto !important;
}
#info_area {
    width: 100%;
    float: none;
    margin: 10px auto;
}
#map_area {
    width: 100%;
    float: none;
}
/*サイド*/
#leftcolumn {
    float: none;
    width: 185px;
    margin: auto;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
}
#two_maincolumn_right {
    float: none;
    margin: auto;
    width: 100%;
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
}

.popup_wrap input {
  display: none;
}
.popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(100, 100, 100, 0.5);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}
.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}
.popup_content {
  position: relative;
  align-self: center;
  width: 75%;
  max-width: 800px;
  box-sizing: border-box;
  background: #fff;
  /* line-height: 1.4em; */
  transition: 0.5s;
  border-radius: 12px;
  box-shadow: 0 0 5px rgba(94, 94, 94, 0.7);
  /* height: 14%; */
}
.popup_content p{
    padding:20px 20px 5px 20px;
    text-align: center;
}
.close_btn {
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 30px;
  cursor: pointer;
  color: #000;
}
.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}
.open_btn {
    /* color: #37beb0; */
    /* border-radius: 3px; */
    /* cursor: pointer; */
    transition: .3s ease;
    /* border:1px solid #37beb0; */
    /* padding:5px 15px; */
    /* font-weight: bold; */
}
.open_btn:hover{
    background:#37beb0;
    color:#fff;
    transition: .3s ease;
}
