@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: 80%;
}

.pcNone {
display: block;
}
br.pcNone {
display: inline;
}
.spNone {
display: none!important;
}

.pankuzu p{
	width:100%;
}

/* ========== ヘッダー ========== */
.slick-slider {
overflow:hidden;
padding-top: 60px;
}
.topPage #mainBg {
    padding-top: 0 !important;
}
#header{
position:absolute;
top:0;
}

#header.scroll{
}

#headerTitle {
width: 94%;
margin:0 auto;
padding:0;
    position: relative;
}

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



/* ========== キャッチ画像 ========== */

#catchArea{
	padding-top:55px;
	height:70vh;
}

.topPage #header{
}

#catchArea_bg{
    background: url(./cmn/images/mainimage_sp.jpg) center center no-repeat;
    background-size: cover;
animation-delay
}

.catchArea_inner{
	height:260px;
	box-sizing:border-box;
}
.dinb.bnr_sec_wrap {
    display: block;
}
.dinb.bnr_sec_wrap .dinb_inner:nth-child(1) {
width: 100%;
max-width: 100%;
display: block;
}
.dinb.bnr_sec_wrap .dinb_inner:nth-child(2) {
max-width: 100%;
width: 100%;
display: block;
}
.catchArea_inner h1{
font-size:150%;
margin-top:30px;
}

.catchArea_inner h2{
font-size:110%;
}

.catchArea_inner p{
font-size:60%;
}

.catchArea_inner {
background-attachment:initial;
}


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

.mainBlock{
	padding:30px 0;
}

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

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


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

#secondArea #subMenu{
display:block;
}

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

#spclose{
display: block;
}

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

#footerInner {
	width: 100%;
	margin: 0 auto 15px;
	padding: 40px 0 0;
}

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

#footerMenu{
}

#footerAreaLogo{
    float: none;
    padding-top: 0;
    text-align: center;
    margin: auto;
}

#footerAreaLogo img{
}

ul#footer_sns{
text-align:center;
}

#footer DIV#footerMenu{
	/* display:none; */
	float: none;
	width: auto;
	padding: 0 .5rem;
}

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

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

#footer_fixarea{
	padding:10px 0;
}


#footer_fixarea p{
	margin-bottom:5px;
}

#footer_fixarea ul li:nth-child(1){
margin-bottom:10px;
}

#footer_fixarea ul li:nth-child(2){
	margin:0 ;
	padding:10px;
}

#footer_fixarea ul li:nth-child(3){
	margin:0 ;
	padding:10px;
}



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

#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 select,
form#mailformpro textarea{
font-size: 16px!important;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-webkit-appearance: none;
max-width: 100%;
}

div#mfp_overlay_inner{
width:100%!important;
box-sizing: border-box;
}

table#mfp_confirm_table tr th,
table#mfp_confirm_table tr td{
width:100%!important;
box-sizing: border-box;
display: block;
}

table#mfp_confirm_table tr.mfp_colored{
background-color:none!important;
}

table#mfp_confirm_table tr td{
border-top:none!important;
}


/* ========== スマホ用メニュー ========== */

#sp_gnavi {width: 100%;position: relative;top: 10px;left: 0;right: 0;bottom: 0;overflow-y: auto;z-index: 999;background-color: rgba(255, 255, 255, 1);}

#sp_gnavi a {
color: #000;
text-decoration: none;
display: block;
text-align: left;
}


#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 #eee;
}

#sp_gnavi ul li.clicked i{
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
	  box-sizing:border-box;
transition-duration: 0.5s;
}


#sp_gnavi ul li i{
margin-left:15px;
transition-duration: 0.5s;
}

#sp_gnavi ul a {
position: relative;
padding:10px;
height: 40px;
box-sizing:border-box;
line-height: 1.4;
}


#sp_gnavi .close {
border-top: 1px solid #efefef;
text-align: center;
padding: 15px 0;
margin: 0;
box-sizing:border-box;
}

#sp_gnavi .close a {
display: inline-block;
font-weight: bold;
}

.sp_Menu {
display: block;
float: right;
margin: 0;
padding:10px 0;
}



#sp_gnavi div.sub_menu{
display:none;
}


.menu-trigger i{
color:#fff;
line-height:35px;
width: 40px;
font-size:20px;
text-align: center;
transition-duration: 0.5s;
}

.menu-trigger.active i{
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
transition-duration: 0.5s;
}

.spNavi{
position:relative;
}

/* ==================== スマホ全画面表示 ==================== */
.menu{
    height: 20px;
    position: absolute;
    right: 0;
    top: 5px;
    width: 30px;
	z-index: 99;
}

.menu__line{
    background: #fff;
    display: block;
    height: 1px;
    position: absolute;
    transition:transform .3s;
    width: 100%;
}
.menu__line--center{
    top: 9px;
}
.menu__line--bottom{
    bottom: 0;
}
.menu__line--top.active{
    top: 9px;
    transform: rotate(45deg);
}
.menu__line--center.active{
    transform:scaleX(0);
}
.menu__line--bottom.active{
    bottom: 10px;
    transform: rotate(135deg);
}

/*gnav*/
.gnav{
	top:0;
    background: rgba(0,0,0,0.95);
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 98;
}

.gnav__menu{
	list-style:none;
	margin:0;
	padding:0;
	text-align:center;
}

.gnav__wrap{
    align-items:center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: absolute;
    width: 100%;
}
.gnav__menu__item{
    margin: 40px 0;
}
.gnav__menu__item a{
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 40px;
    text-decoration: none;
    transition: .5s;
}
.gnav__menu__item a:hover{
    color: #666;
}



/* ==================== 各サイト専用 ==================== */

.content-inner {
    width: 94%;
    margin: 0 auto;
}

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

#contents .mainTitle h2 {
}

/* ==================== 横並びコンテンツ1 ==================== */

#content_block_01 ul li{
	width:100%;
	padding:5px;
	box-sizing:border-box;
}

#message #read.content-inner {
width:80%;
}

#content_block_01 ul li h3{
	text-align:left;
}

#content_block_01 ul li p{
}

/* ==================== 横並びコンテンツ2 ==================== */

#content_block_02 ul{
}

#content_block_02 ul li:nth-child(-n+2){
	width:100%;
}


#content_block_02 ul li{
    width: 100%;
    margin: 0 0 20px;
}


#content_block_02 ul li .block{
width:80%;
padding:0 10px;
box-sizing:border-box;
}

#content_block_02 ul li .icon{
width:20%;
}

#content_block_02 ul li img{
padding:10px 5px;
}


/* ==================== メッセージ ==================== */

#message {
    background-image: url(./cmn/images/concept_bg_sp.jpg);
    background-position: center center;
	background-size:initial;
	background-attachment:initial;
}

#message #read.content-inner {
    width: 86%;
}

#message #read p{
	font-size:80%;
}

#message p{
	text-align:left;
}

/* ==================== サービスの特徴 ==================== */

#point{
	margin:30px auto;
}

#point .point_block div.textArea{
	width:96%;
	margin:auto;
	display:block;
	padding:20px 0;
}

/* ==================== メニュー ==================== */

#menu table tr{
	width:100%;
	display:block;
	margin-bottom:15px;
}

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

/* ==================== 依頼の流れ ==================== */

#flow ul {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
    white-space: nowrap;
}

#flow ul li{
width:120px;
height:120px;
font-size:16px;
}

/* ==================== 質問 ==================== */

#contents .faq_block h3 {
	font-size:90%;
}

/* ==================== ギャラリー ==================== */

#gallery ul{
	display:block;
}

/* ==================== お知らせ ==================== */

#news .date{
justify-content: left;
}

#news .date li{
display:block;
width:48%;
margin:0 1% 15px 0;
font-size:12px;
}

#news .date li img{
	width:100%;
}

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



/* ==================== お問合せ ==================== */

#contact_box{
	width:90%;
}

#contact_box p {
    font-size: 80%;
}

form#mailformpro tr,
form#mailformpro th,
form#mailformpro td{
	width:100%;
	display:block;
}


/* ==================== ブログ記事 ==================== */

#contents.has_secondArea{
	width:100%;
}

#container .slick-list {
    margin: auto;
    padding: 0;
}
.dinb.bnr_sec_wrap02 .dinb_inner {
    width: 100%;
    margin: auto;
    display: block;
}

.dinb.bnr_sec_wrap .dinb_inner:nth-child(1) .bnr_sec_inner .mask,
.dinb.bnr_sec_wrap .dinb_inner:nth-child(2) .bnr_sec_inner:nth-child(1) .mask,
.dinb.bnr_sec_wrap .dinb_inner:nth-child(2) .bnr_sec_inner:nth-child(2) .mask
{
    width: 90%;
    padding: 20px;
}
.dinb.bnr_sec_wrap02 .dinb_inner {
    width: 94%;
    margin: 0 auto 3%;
    display: block;
}
.about_inner {
margin: auto;
width: 94%;
display: block;
box-sizing:border-box;
}
.img_fl,
.txt_fl,
.img_fr,
.txt_fr {
float: none;
width: 100%;
margin: 10px auto;
}
