@charset "utf-8";

body {
/* min-width: 1080px;
overflow: hidden; */
font-family: 'Noto Sans JP', sans-serif;
}

.mincho{
font-family: 'Noto Serif JP', serif;
}

.en{
font-family: 'Heebo', sans-serif;
}

#wrap{
line-height:1.7;
color:#666;
/* overflow:hidden; */
}


/*
-----------------------------------------------
WEBフォント
----------------------------------------------- */



/*
-----------------------------------------------
TAB 横
----------------------------------------------- */
@media (orientation: landscape) and (max-device-width: 1024px){
body {
width: 100%;
/* overflow: hidden; */
}

}

/*
-----------------------------------------------
 TAB SP
----------------------------------------------- */
@media screen and (max-width: 768px) {
body {
width: 100%;
/* overflow: hidden; */
}

}



/*
-----------------------------------------------
PC用ナビゲーション
----------------------------------------------- */
.head-contact{
text-align:center;
position:absolute;
top:38px;
right:0;
line-height:1.0;
}


.head-contact a{
text-align:center;
display:block;
margin:0px;
color:#333;
padding-bottom:6px;
}

.head-contact a{
text-decoration:none !important;
}


.head-contact .jn{
display:block;
margin-top:2px;
font-size:1.1rem;
}

.head-contact .en:before{
content: url(../img/mail.png);
position:relative;
display:inline-block;
vertical-align:middle;
margin-right:6px;
}


.head-contact .en{
position:relative;
letter-spacing:0.1rem;
font-size:1.6rem;
}


.main-navi{
position:absolute;
line-height:1.0;
top:38px;
right:130px;
z-index:100;
display：block;
}

.navi{
position:relative;
z-index:100;
}

.navi .en{
letter-spacing:0.1rem;
font-size:1.6rem;
}

.navi > li{
display:inline-block;
position:relative;
padding-left:8px;
padding-right:8px;
}

.navi > li:after{
content:"/";
position:absolute;
top:0;
right:-5px;
}

.navi > li:last-child:after{
content:"";
display:none;
top:0;
right:0;
}

.navi > li > a{
text-align:center;
display:block;
margin:0px;
color:#333;
padding-bottom:6px;
}

.navi .jn{
display:block;
margin-top:4px;
font-size:1.1rem;
}

.ls01{
letter-spacing:-0.15rem;
}
.ls02{
letter-spacing:-0.1rem;
}

.navi > li > a:hover{
text-decoration:none;
}


/* ドロップダウンメニュー */
.navi li ul li{
  overflow: hidden;
  height: 0;
  transition: .2s;
}
.navi li:hover ul li{
  overflow: visible;
  height: 50px;
}

.navi li ul{
  list-style: none;
  position: absolute !important;
  z-index: 200;
  top: 100%;
  margin: 0;
  padding: 0;
}

.sub-ul01{
left:-10px;
width:160px;
}

.navi li ul li{
  width: 100%;
}
.navi li ul li a{
  border-bottom: 1px solid #ccc;
  background-color: rgba(216,214,213,0.8);
  text-align: center;
  text-decoration:none;
  display: table-cell;
  vertical-align: middle;
  color:#333;
  font-size:14px;
  height: 50px;
  width:160px;
}

.navi ul li a:hover{
  background-color: rgba(169,31,26,0.8);
  color:#fff;
}

.navi-span{
font-size:1.2rem;
margin-right:6px;
vertical-align:middle;
}

.head-contact a:after,
.foot-contact a:after,
.foot-privacy a:after,
.navi li a:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #df3a80;
  transition: all 0.3s ease 0s;
}

.head-contact a:hover,
.foot-contact a:hover,
.foot-privacy a:hover,
.navi li a:hover {
  cursor: pointer;
}

.head-contact a:hover:after,
.foot-contact a:hover:after,
.foot-privacy a:hover:after,
.navi li a:hover:after {
  width: 100%;
}


/*
-----------------------------------------------
SP用ナビゲーション
----------------------------------------------- */
@media screen and (max-width: 768px) {
.navi{
display:none;
}

.fixed {
    overflow: auto;
    height: 100%;
}

.drawer-dropdown-menu > li{
background:#969696 !important;
}

.drawer-dropdown-menu-item{
/* font-size:1.2rem !important;
padding:0.2em 0em !important;
line-height:1.0 !important; */
background:#737373;
color:#fff;
margin-left:0px;
}



/* ハンバーガーメニューのMENUの文字 */
.nav-menu{
position:absolute;
top:62%;
left:11px;
font-size:1.2rem;
color:#737373;
letter-spacing:1px;
}

.en-sp{
width:7em;
font-size:14px !important;
display:inline-block;
}

.jn-sp{
font-size:11px !important;
}

.drawer-drop,
.drawer-dropdown{
border-top:solid 1px #737373;
}


}

/*
-----------------------------------------------
ヘッダ
----------------------------------------------- */
#head-box{
width:1180px;
padding-left:15px;
padding-right:15px;
position:relative;
margin-left:auto;
margin-right:auto;
}

header{
width:100%;
position:relative;
}

header h1{
position:relative;
width:227px;
z-index:200;
padding-top:38px;
padding-bottom:38px;
}

header h1 img{
width:100%;
height:auto;
}


/*
-----------------------------------------------
TAB 横
----------------------------------------------- */
@media (orientation: landscape) and (max-device-width: 1024px){
#head-box{
width:100%;
padding-left:15px;
padding-right:15px;
}

.main-navi{
right:40px;
}


}

/*
-----------------------------------------------
ヘッダ　TAB
----------------------------------------------- */
@media screen and (max-width: 768px) {
#head-box{
width:100%;
padding-left:20px;
padding-right:20px;
}

header h1{
width:280px;
padding-top:10px;
padding-bottom:10px;
}

}

/*
-----------------------------------------------
ヘッダ　SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
header{
}

.head-contact{
display:none;
}

header h1{
position:relative;
width:200px;
padding-top:20px;
padding-bottom:22px;
}

header h1 img{
width:100%;
height:auto;
}

header h1 img{
width:100%;
height:auto;
}
}

/*
-----------------------------------------------
コンテンツ幅
----------------------------------------------- */
.in-box01{
position:relative;
width:980px;
margin-left:auto;
margin-right:auto;
}

.in-box02{
position:relative;
width:780px;
margin-left:auto;
margin-right:auto;
}


/*
-----------------------------------------------
TAB 横
----------------------------------------------- */
@media (orientation: landscape) and (max-device-width: 1024px){
.in-box01,
.in-box02,
.in-box03,
.in-box04,
.in-box05{
width:100%;
padding-left:35px;
padding-right:35px;
}



}

/*
-----------------------------------------------
コンテンツ幅 TAB
----------------------------------------------- */
@media screen and (max-width: 768px) {
.in-box01,
.in-box02,
.in-box03,
.in-box04,
.in-box05{
width:100%;
padding-left:30px;
padding-right:30px;
}


}

/*
-----------------------------------------------
コンテンツ幅 SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.in-box01,
.in-box02,
.in-box03,
.in-box04,
.in-box05{
width:100%;
padding-left:20px;
padding-right:20px;
}
}


/*
-----------------------------------------------
flex-box
----------------------------------------------- */
.container01{
display:flex;
flex-wrap:wrap;
}

.container02{
display:flex;
flex-wrap:nowrap;
}

.container03{
display:flex;
flex-wrap:wrap;
}

.c-type01{
justify-content:space-between;
}

.c-type02{
justify-content:space-around;
}

.c-type03{
justify-content:flex-start;
}

.c-type04{
justify-content:center;
}

@media screen and (max-width: 767px) {
.container03{
flex-wrap:wrap-reverse;
}
}


/*
-----------------------------------------------
見出し要素
----------------------------------------------- */
.h-type01{
color:#df3a80;
font-size:1.5rem;
display:inline-block;
letter-spacing:0.18rem;
}

.h-type01 .en{
font-size:2.8rem;
display:block;
border-bottom:solid 2px #df3a80;
padding-left:5px;
padding-right:5px;
}

.h-type01 .jn{
margin-top:6px;
color:#333;
display:block;
font-weight:600;
}

.h-type02{
font-size:2.2rem;
border-bottom:solid 1px #444;
padding-bottom:8px;
margin-bottom:34px;
}

/*
-----------------------------------------------
見出し要素
----------------------------------------------- */
@media screen and (max-width: 767px) {
.h-type01{
}

.h-type02{
font-size:1.8rem;
border-bottom:solid 1px #444;
padding-bottom:4px;
margin-bottom:18px;
font-weight:500;
}

}


/*
-----------------------------------------------
フッター
----------------------------------------------- */
footer{
position:relative;
} 

#foot-in{
background:#757575;
padding:20px 0;
color:#fff;
}

.foot-consul-btn a{
color:#fff;
}

.foot-consul-btn a:hover{
color:#ccc;
text-decoration:none;
}

.foot-consul-btn{
margin-bottom:20px;
}

.foot-consul-btn span{
display:block;
font-size:1.2rem;
}

.foot-consul-btn .en{
font-size:2.2rem !important;
letter-spacing:0.3rem;
margin-left:20px;
}

.foot-consul-btn .en:after{
content:"››";
display:inline-block;
margin-left:15px;
}

.cr{
padding-left:50px;
}

.foot-contact{
position:absolute;
}

.posi-r{
position:relative;
}

.foot-fb{
position:absolute;
top:16px;
right:355px;
}

.foot-privacy{
position:absolute;
top:20px;
right:178px;
line-height:1.0;
border-left:solid 1px #ccc;
border-right:solid 1px #ccc;
padding-left:10px;
padding-right:10px;
font-weight:400;
}

.foot-privacy a{
display:block;
padding-bottom:6px;
text-decoration:none !important;
}


.foot-contact{
text-align:center;
position:absolute;
top:20px;
right:50px;
line-height:1.0;
}


.foot-contact a{
text-align:center;
display:block;
margin:0px;
color:#333;
padding-bottom:6px;
text-decoration:none !important;
}

.foot-contact .en:before{
content: url(../img/mail.png);
position:relative;
display:inline-block;
vertical-align:middle;
margin-right:6px;
}

/*
-----------------------------------------------
フッター SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.foot-privacy{
position:relative;
top:auto;
right:auto;
line-height:1.0;
border-left:none;
border-right:none;
padding-left:5px;
padding-right:5px;
font-weight:400;
}

.foot-contact{
text-align:center;
position:relative;
top:auto;
right:auto;
line-height:1.0;
padding-left:5px;
padding-right:5px;
}

.foot-fb{
position:relative;
top:auto;
right:auto;
border-right:none;
padding-left:5px;
padding-right:5px;
}

.foot-fb img{
width:20px;
height:auto;
}


.foot-sp-btn{
display:flex;
margin-top:10px;
justify-content:center;
}

.cr{
padding-left:15px;
padding-right:15px;
font-size:12px;
}

}




/*
-----------------------------------------------
TOP要素
----------------------------------------------- */
/*  スライド  */
.slide-wrap{
position:relative;
}

.bx-has-pager{
float:right;
margin-top:-15px !important;
padding-right:30px;
}

.top60{
margin-top:60px;
}

/*
-----------------------------------------------
TOP NEWS
----------------------------------------------- */
.top60{
margin-top:30px;
}

.top-news{
margin-top:40px;
}

.top-news dl{
border-top:solid 1px #ccc;
position:relative;
}

.top-news dl:last-child{
border-bottom:solid 1px #ccc;
}

.top-news dt{
font-family: 'Heebo', sans-serif;
font-weight:400;
letter-spacing:0.1rem;
display:inline-block;
vertical-align:top;
font-size:1.3rem;
vertical-align:top;
width:14%;
padding:24px 0;
}

.top-news dd{
display:inline-block;
vertical-align:top;
font-size:1.6rem;
vertical-align:top;
padding:24px 0;
width:84%;
position:relative;
}

.top-news dd a{
display:block;
}

.top-news dd a:after {
  position:absolute;
  content: '';/*何も入れない*/
  display: block;/*忘れずに！*/
  width: 20px;/*画像の幅*/
  height: 20px;/*画像の高さ*/
  background-image: url(../img/mk01.png);
  background-repeat:no-repeat;
  background-size: contain;
  right:5px;
  top:35%;
}


/*
-----------------------------------------------
TOP NEWS SP
----------------------------------------------- */
@media screen and (max-width: 767px) {

.top-news{
margin-top:15px;
}

.top-news dt{
display:block;
font-size:1.3rem;
width:100%;
padding:12px 0 0 0;
}

.top-news dd{
display:block;
font-size:1.3rem;
padding:0 0 12px 0;
width:90%;
position:relative;
}

.top-news dd a:after {
  width: 15px;/*画像の幅*/
  height: 15px;/*画像の高さ*/
  right:-25px;
  top:18%;
}

}


/*
-----------------------------------------------
TOP WORKS
----------------------------------------------- */
.works-box{
width:31.8%;
background:#eee;
margin-bottom:30px;
}

.works-box img{
width:100%;
height:auto;
}

.works-box{
margin-right:2.3%;
}

.works-box-in{
padding:16px;
}

.works-box:nth-child(3n){
margin-right:0;
}

/* .works-box:last-child{
margin-right:0%;
} */

.wk-name{
margin-bottom:4px;
font-size:1.6rem;
font-weight:500;
}

.wk-sub{
font-size:1.2rem;
}

.big-more{
margin-top:30px;
font-size:2.8rem;
font-weight:bold;
margin-bottom:24px;
letter-spacing:0.2rem
}
.big-more a{
color:#333;
}

.btn01{
display:inline-block;
width:450px;
}

.btn01 a{
display:block;
background:#666;
border-radius:6px;
color:#fff;
font-size:1.8rem;
font-weight:400;
padding:0.4em 0;
}

.btn01 a:hover{
background:#999;
text-decoration:none;
}

.btm100{
margin-bottom:100px;
}


/*
-----------------------------------------------
TOP WORKS SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.works-box{
width:100%;
}

.works-box-in{
padding:10px 12px;
}

.works-box{
margin-right:0%;
}

.btm100{
margin-bottom:0px;
}

.wk-name{
font-size:1.4rem;
font-weight:500;
}

.big-more{
margin-top:0px;
font-size:2.0rem;
margin-bottom:18px;
}

.btn01{
display:block;
width:100%;
}

.btn01 a{
font-size:1.6rem;
}

.btm100{
margin-bottom:40px;
}


}


/*
-----------------------------------------------
TOP PROJECT
----------------------------------------------- */
.top-pj{
border:solid 1px #999;
width:47%;
padding:20px;
}

.top-pj h3{
text-align:center;
line-height:1.5;
font-size:25px;
margin-bottom:10px;
}

.top-pj h3 span{
font-size:17px;
display:block;
}

.top-pj ul li{
list-style-type:disc !important;
font-size:17px;
}

.top-pj ul{
margin-left:60px;
}

.pj-btn:before,
.pj-btn02:before{
content:"▼";
display:block;
font-size:30px;
}

.pj-btn span{
font-size:25px;
font-weight:700;
}

.pj-btn a{
color:#333;
letter-spacing:0.2rem;
}

.pj-btn a:hover{
color:#999;
text-decoration:none;
}

.pj-btn02{
text-align:center;
display:block;
}

.pj-btn02 span{
display:inline-block;
font-size:17px;
font-weight:500;
border-radius:4px;
background:#c8c9ca;
display:inline-block;
line-height:1.01;
padding:0.4em 1em;
border:solid 1px #444;
font-size:1.6rem;
letter-spacing:0.15rem;
}

.pj-btn02 a:hover span{
background:#dedede;
}


/*
-----------------------------------------------
TOP PROJECT SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.top-pj{
width:100%;
padding:15px;
margin-bottom:15px;
}

.top-pj h3{
font-size:1.8rem;
margin-bottom:10px;
}

.top-pj h3 span{
font-size:1.4rem;
display:block;
}

.top-pj ul li{
list-style-type:disc !important;
font-size:1.4rem;
}

.top-pj ul{
margin-left:20px;
}

.pj-btn:before,
.pj-btn02:before{
font-size:20px;
}


}

/*
-----------------------------------------------
TOP FLOW
----------------------------------------------- */
.step{
width:251px;
position:relative;
}

.step p{
font-size:1.7rem;
padding:20px 0;
line-height:1.6;
}

.step:after{
content: url(../img/bg_mk.png);
position:absolute;
top:90px;
right:-85px;
}

.step:nth-of-type(3):after{
display:none !important;
}

.top-philosophy{
margin-top:80px;
}

.top-philosophy h3{
font-weight:500;
font-size:35px;
margin-bottom:30px;

}

.top-philosophy p{
font-size:20px;
font-weight:500;
}

/*
-----------------------------------------------
TOP FLOW SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.btm_sp40{
margin-bottom:50px;
}

.top-philosophy{
margin-top:20px;
padding-bottom:10px;
}

.top-philosophy h3{
font-weight:500;
font-size:20px;
margin-bottom:20px;

}

.top-philosophy p{
font-size:14px;
font-weight:500;
}

.sp-img-st{
padding-right:15px;
padding-bottom:20px;
}

}


/*
-----------------------------------------------
ABOUT US
----------------------------------------------- */
.about-dl{
margin-top:36px;
margin-bottom:50px;
}

.about-dl dl{
border-top:solid 1px #ccc;
position:relative;
}

.about-dl dl:last-child{
border-bottom:solid 1px #ccc;
}

.about-dl dt{
letter-spacing:0.1rem;
display:inline-block;
vertical-align:top;
width:18%;
padding:24px 0 24px 34px;
font-weight:500;
}

.about-dl dd{
display:inline-block;
vertical-align:top;
font-size:1.6rem;
padding:24px 0;
width:80%;
position:relative;
}

.about-btn{
text-align:center;
margin-left:30px;
display:inline-block;
}

.about-btn span{
font-weight:500;
border-radius:4px;
background:#c8c9ca;
display:inline-block;
line-height:1.0;
padding:0.4em 1em 0.3em 1em;
border:solid 1px #444;
font-size:1.4rem;
letter-spacing:0.15rem;
}

.about-btn a:hover span{
background:#dedede;
}


.top-map{
width:563px;
}

.top-office{
width:165px;
}

.top-office img{
width:100%;
height:auto;
}

.train{
width:320px;
}

.train li{
list-style-type:disc !important;
margin-left:15px;
}

.train ul,
.car p{
font-size:1.4rem;
}

.car{
width:220px;
}


/*
-----------------------------------------------
ABOUT US SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.sp-img-st02 img{
padding-right:15px;
padding-left:15px;
}


.about-dl{
margin-top:20px;
margin-bottom:50px;
}

.about-dl dt{
display:block;
width:100%;
padding:12px 0 3px 0;
}

.about-dl dd{
display:block;
width:100%;
font-size:1.4rem;
padding:0 0 12px 0;
}


.about-btn{
margin-left:20px;
}

.about-btn span{
font-size:1.2rem;
}

.sp-mt10{
margin-top:10px;
}

.top-map{
width:100%;
}

.top-office{
width:100%;
}

.top-office img{
width:50%;
height:auto;
}

.train{
width:100%;
}

.car{
width:100%;
margin-top:20px;
margin-bottom:20px;
}

.top-office .about-btn{
margin-left:0 !important;
}
}


/*
-----------------------------------------------
PROFILE
----------------------------------------------- */
.profile-img{
width:220px;
}

.profile-txt{
width:520px;
}


.profile-txt h3{
font-size:20px;
font-weight:500;
margin-bottom:30px;
}

.profile-txt h3 span{
font-size:12px;
font-weight:500;
margin-left:20px;
display:inline-block;
vertical-align:middle;
}

.profile-txt h4{
font-size:16px;
font-weight:500;
margin-bottom:10px;
}

.profile-ul li{
list-style-type:disc;
margin-left:30px;
margin-bottom:3px;
}


/*
-----------------------------------------------
PROFILE SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.profile-img{
width:100%;
margin-bottom:10px;
}

.profile-txt{
width:100%;
}

.profile-txt h3{
font-size:1.5rem;
margin-bottom:30px;
}

.profile-txt h3 span{
font-size:1.2rem;
margin-left:12px;
}

}


/*
-----------------------------------------------
WORKS詳細 スライド
----------------------------------------------- */

/* slide-box */

.slide-main{
margin-bottom:30px;
}

.slide-box {
position: relative;
margin-bottom:60px;
}

/* slide */
.slide {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
}
.slide .item {
  position: relative;
  height: 100%;
}
.slide .item a {
  display: block;
}

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


@media screen and (max-width: 767px) {
  .slide {
    width: 100%;
  }
}


/* slide-navigation */

.slide-navigation {
overflow:hidden;
position:relative;
height: 112px !important;
}
.slide-navigation .item {
display:block !important;
  width:112px !important;
  height:112px !important;
  overflow:hidden;
  margin-right:12px;
  position: relative;
  cursor: pointer;
}

.slide-navigation .item:last-child{
  margin-right:0px !important;
}


.slide-navigation .item .image {
  position: relative;
  overflow: hidden;
  width: 112px !important;
  height: 112px !important;
}
.slide-navigation .item .image::before {
  display: block;
  content: "";
}
.slide-navigation .item .image::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0.5;
  background: #fff;
}
.slide-navigation .slick-current .image::after {
  opacity: 0;
}

.slide-box-sn{
margin-bottom:60px;
}

@media screen and (max-width: 767px) {
.slide-box-sn{
display:none;
}

}


/* slick */

.slick-vertical .slick-slide {
  border: 0 solid transparent;
}
.slick-arrow {
  z-index: 999;
}
.slick-prev {
  top: 45%;
  bottom: auto;
  left: -20px;
  margin: auto;
}
.slick-prev:before {
  content: "〈";
  font-size:50px !important;
  color:#ccc;
}
.slick-next {
  top: 45%;
  bottom: auto;
  right: 10px;
  margin: auto;
}
.slick-next:before {
  content: "〉";
  font-size:50px !important;
  color:#ccc;
}


.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
opacity: 0.7;
}

@media screen and (max-width: 767px) {
.slick-prev {
  top: 45%;
  bottom: auto;
  left: -25px;
  margin: auto;
}
.slick-prev:before {
  content: "〈";
  font-size:25px !important;
  color:#ccc;
}
.slick-next {
  top: 45%;
  bottom: auto;
  right: -20px;
  margin: auto;
}
.slick-next:before {
  content: "〉";
  font-size:25px !important;
  color:#ccc;
}
}

.slide-navigation .slick-track {
transform:unset!important;
overflow:hidden;
}

/*
-----------------------------------------------
WORKS詳細 入力項目
----------------------------------------------- */
.under-page{
margin-top:70px;
}

.w-date{
font-size:1.6rem;
margin-right:20px;
display:inline-block;
}

.work-sub{
display:inline-block;
font-size:1.3rem;
}

.work-ttl{
font-size:25px;
font-weight:400;
margin-bottom:12px;
}

.works-catch{
font-size:22px;
font-weight:500;
margin-bottom:12px;
}

.works-article{
margin-bottom:40px;
}

.works-dl{
margin-bottom:20px;
}

.works-dl dt{
width:170px;
vertical-align:top;
display:inline-block;
letter-spacing:0.15rem;
}

.works-dl dt span{
margin-left:10px;
margin-right:10px;
}

.works-dl dd{
width:800px;
vertical-align:top;
display:inline-block;
}

.works-pdf {
display:inline-block;
margin-bottom:20px;
}

.works-pdf a{
display:block;
font-size:1.8rem;
font-weight:500;
border-radius:4px;
background:#666;
color:#fff;
padding:0.3em 4em;
}

.works-pdf a:hover{
text-decoration:none;
background:#999;
}

.back-btn a{
font-size:1.8rem;
}

.back-btn a:before{
content:url(../img/bk_mk.png);
display:inline-block;
margin-right:10px;
}


/*
-----------------------------------------------
WORKS詳細 入力項目
----------------------------------------------- */
@media screen and (max-width: 767px) {

.under-page{
margin-top:25px;
}

.w-date{
font-size:1.6rem;
margin-right:20px;
display:inline-block;
}

.work-ttl{
font-size:19px;
}

.works-catch{
padding-top:15px;
font-size:17px;
font-weight:500;
margin-bottom:8px;
}


.works-dl{
margin-bottom:20px;
}

.works-dl dt{
width:100%;
vertical-align:top;
display:inline-block;
letter-spacing:0.15rem;
}


.works-dl dd{
width:100%;
margin-top:4px;
padding-left:1em;
display:block;
}

.works-article{
margin-bottom:20px;
}

.works-pdf {
display:block;
margin-bottom:20px;
width:100%;
}

.works-pdf a{
display:block;
font-size:1.4rem;
font-weight:500;
border-radius:4px;
background:#666;
color:#fff;
padding:0.4em 1em;
text-align:center;
}

}


/*
-----------------------------------------------
WORKS詳細 一覧
----------------------------------------------- */
.works-box a{
display:block;
text-decoration:none;
}

.works-box{
transition:opacity 0.5s ease-in-out !important;
}

.works-box :hover img {
opacity:0.7 !important;
}

.works-box :hover{
color:#999;
}

/*
-----------------------------------------------
お知らせ
----------------------------------------------- */

.yoko-img{
width:380px;
}

.news-img-box{
margin-top:40px;
}

.tate-img{
margin-left:auto;
margin-right:auto;
text-align:center;
margin-top:40px;
}


.tate-img img{
width:330px;
height:auto;
}

.blog-box p{
margin-bottom:12px;
font-size:1.6rem;
}


/*
-----------------------------------------------
お知らせ　SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.blog-box p{
margin-bottom:12px;
font-size:1.4rem;
}

.yoko-img{
margin-bottom:15px;
}

}


/*
-----------------------------------------------
クライアント
----------------------------------------------- */
.client-ul li{
list-style-type:disc;
margin-left:30px;
margin-bottom:3px;
}

.client-box{
width:48%;
}

/*
-----------------------------------------------
クライアント　SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.client-box{
width:100%;
}
}

/*
-----------------------------------------------
コンサル
----------------------------------------------- */
.consul-img{
width:44%;
}

.consul-p01{
font-weight:500;
color:#333;
font-size:2.2rem;
}
.consul-p02{
font-weight:500;
color:#333;
font-size:2.0rem;
}

.consul-p03{
font-weight:500;
color:#333;
font-size:2.2rem;
}

.consul-p03 {
font-weight:500;
color:#333;
font-size:2.2rem;
}

.consul-p01 .nml,
.consul-p03 .nml{
font-size:1.6rem;
}


.consul-btn {
display:inline-block;
margin-bottom:20px;
}

.consul-btn a{
display:block;
font-size:1.8rem;
font-weight:500;
border-radius:4px;
background:#666;
color:#fff;
padding:0.3em 4em;
}

.consul-btn a:hover{
text-decoration:none;
background:#999;
}

.consul-ul{
color:#333;
width:480px;
display:inline-block;
margin-left:auto;
margin-right:auto;
margin-bottom:24px;
}

.consul-h{
color:#333;
margin-bottom:15px;
}

.consul-ul li{
font-size:2.3rem;
background:#ccc;
padding:0.3em;
text-align:center;
color:#333;
margin-bottom:16px;
}

.consul-ul li:last-child{
margin-bottom:5px;
}

/*
-----------------------------------------------
コンサル　SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.consul-ul{
width:100%;
margin-bottom:18px;
}

.consul-ul li{
font-size:1.5rem;
background:#ccc;
padding:0.3em;
text-align:center;
color:#333;
margin-bottom:12px;
}

.consul-img{
width:100%;
margin-bottom:15px;
}

.consul-p01{
font-weight:500;
font-size:1.9rem;
}

.consul-p02{
font-size:1.8rem;
}

.consul-p01 .nml,
.consul-p03 .nml{
font-size:1.4rem;
}

.consul-p03{
line-height:1.3;
}

.consul-p03 .en{
display:block;
}


.consul-btn {
display:block;
margin-bottom:0px;
}

.consul-btn a{
font-size:1.5rem;
border-radius:4px;
background:#666;
color:#fff;
padding:0.4em 0.4em;
}

}


/*
-----------------------------------------------
PROJECT
----------------------------------------------- */
.project-h{
font-size:2.8rem;
color:#333;
line-height:1.5;
}

.project-h span{
display:block;
font-size:2.0rem;
margin-top:10px;
}

.kome{
padding-left:1.5em;
position:relative;
}

.kome:before{
content:"※ ";
position:absolute;
left:0;
top:0;
}

.remote-p{
display:inline-block;
font-size:2.3rem;
padding:0.2em 1.2em;
border:solid 2px #c33c72;
color:#c33c72;
font-weight:500;
}

.project-h02{
text-align:center;
font-size:27px;
border-bottom:solid 1px #666;
padding-bottom:4px;
margin-bottom:40px;
color:#333;
font-weight:400;
}

.project-dl01{
color:#333;
margin-bottom:70px;
}

.project-dl01 dt{
font-size:2.3rem;
font-weight:500;
margin-bottom:5px;
}

.project-dl01 dd{
font-size:1.7rem;
font-weight:400;
margin-bottom:30px;
}

.project-h03{
font-size:20px;
color:#333;
font-weight:600;
margin-right:20px;
margin-bottom:10px;
}

.project-dl02 {
position:relative;
margin-bottom:6px;
font-size:1.8rem;
color:#333;
}

.project-dl02 dd{
padding-left:1.5em;
position:relative;
}

.project-dl02 dt{
content:"※ ";
position:absolute;
left:0;
top:0;
}

.tr-pf{
background:#fbf2f5;
padding:32px 26px;
}

.pf-txt{
width:444px;
}

.pf-txt h4{
font-weight:400;
font-size:1.8rem;
color:#c33c72;
border-bottom:solid 1px #c33c72;
margin-bottom:20px;
padding-bottom:4px;
}

.pr-name{
font-weight:500;
font-size:2.3rem;
margin-bottom:30px;
letter-spacing:0.15rem;
}

.pr-name span{
font-size:1.4rem;
margin-left:24px;
}

.pf-txt h5{
font-weight:500;
font-size:1.8rem;
color:#333;
margin-bottom:15px;
margin-left:30px;
}

.pf-ul{
margin-left:30px;
}

.pf-ul li{
list-style-type:disc;
margin-left:30px;
margin-bottom:3px;
}

.pf-img{
width:235px;
font-size:23px;
}

/*
-----------------------------------------------
プロジェクト　SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
.project-h{
font-size:2.0rem;
}

.project-h span{
font-size:1.5rem;
}

.remote-p{
display:inline-block;
font-size:1.7rem;
padding:0.2em 0.5em;
}

.project-h02{
font-size:18px;
padding-bottom:2px;
margin-bottom:15px;
}

.project-dl01{
margin-bottom:35px;
}

.project-dl01 dt{
font-size:1.7rem;
margin-bottom:5px;
}

.project-dl01 dd{
font-size:1.4rem;
margin-bottom:20px;
}

.project-h03{
font-size:17px;
color:#333;
margin-right:0px;
margin-bottom:10px;
}

.project-dl02 {
position:relative;
margin-bottom:6px;
font-size:1.5rem;
color:#333;
}

.project-dl02 dd{
padding-left:1.4em;
position:relative;
}

.project-dl02 dt{
content:"※ ";
position:absolute;
left:0;
top:0;
}

.tr-pf{
padding:14px 14px;
}

.pf-txt{
width:100%
}

.pr-name{
font-size:1.8rem;
margin-bottom:10px;
letter-spacing:0.1rem;
}

.pr-name span{
font-size:1.2rem;
margin-left:16px;
}

.pf-txt h5{
font-size:1.6rem;
margin-bottom:15px;
margin-left:0px;
}


.pf-ul{
margin-left:0px;
}

.pf-ul li{
margin-left:20px;
margin-bottom:2px;
}

.pf-img{
width:100%;
}

.pf-txt-img{
display:block;
margin-bottom:20px;
width:100%;
height:auto;
padding-left:20px;
padding-right:20px;
}


}

/*
-----------------------------------------------
プライバシーポリシー
----------------------------------------------- */
.privacy-box p{
margin-bottom:50px;
}

.privacy-box h3{
font-weight:500;
margin-bottom:10px;
}





/*
-----------------------------------------------
フェードイン
----------------------------------------------- */

 .fadein {
  opacity: 0;
  transform : translate(0, 0px);
  transition : all 2000ms;
}

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}


/*
-----------------------------------------------
フェードイン SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
 .fadein {
  opacity: 0;
  transform : translate(0, 0px);
  transition : all 1400ms;
}

}
