@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video{margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; }
body{line-height:1; }
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section{display:block; }
ul{list-style:none; }
blockquote, q{quotes:none; }
blockquote:before, blockquote:after,
q:before, q:after{content:''; content:none; }
a{margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
img{vertical-align:top; font-size:0; line-height:0; }
ins{background-color:#ff9; color:#000; text-decoration:none; }
mark{background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }
del{text-decoration:line-through; }
abbr[title], dfn[title]{border-bottom:1px dotted; cursor:help; }
table{border-collapse:collapse; border-spacing:0; }
em{font-style:normal; }
hr{display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; }
input, select{vertical-align:middle;}
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary{display:block;}

*,:before,:after{box-sizing:border-box;-webkit-text-size-adjust:100%; max-height: 100%;}
.cf:before,.cf:after{content:"";display:table;}
.cf:after{clear:both;}
.cf{*zoom:1;}

html{font-size:62.5%;}
body{font-family: "ＭＳ Ｐゴシック","MS Gothic",sans-serif; font-weight:300; letter-spacing:0.05rem; line-height:1.6; text-align:center; -webkit-text-size-adjust:100%; color:#424242; max-height: 100%; box-sizing:border-box; margin:0; font-weight: normal; /* normal */ font-size: 15px; font-size: 1.5rem;}
.min{font-family: 'Noto Serif JP',system-ui, "Hiragino Sans", "YuGothic","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS Gothic",sans-serif;}
img {width:100%; max-width:100%; height:auto;}

/*Layout*/
a{color:#5e5e5e; text-decoration:none; opacity: 1; transition: 0.5s; -webkit-transition:0.5s; text-decoration:underline;}
a:hover{opacity: 0.7; transition: 0.5s; -webkit-transition:0.5s;}

body{background: #e8e8e8;}

.center{text-align:center;}

@media only screen and (min-width:1200px) {
}

/* header */
header{height: 80px;}
h1{text-align: left;
    margin: 10px 20px 0 20px;
    width: 75%;
    max-width: 290px;
    z-index: 100;
}
h1 span{font-size: 14px; font-size: 1.4rem; font-weight: normal; text-align: left; margin-bottom: 5px; color: #7e7e7e; }
@media only screen and (min-width:768px) {
h1{margin: 10px 0 0 20px;}
}
/*==================================================
スライダーのためのcss
===================================*/
.slider {
  position:relative;
	z-index: 1;
	/*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
}
/*　背景画像設定　*/


.slider-item {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    background-repeat: no-repeat;/*背景画像をリピートしない*/
    background-position: center;/*背景画像の位置を中央に*/
    background-size: cover;/*背景画像が.slider-item全体を覆い表示*/
}

/*矢印の設定*/

.slick-prev, 
.slick-next {
    position: absolute;
	z-index: 3;
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #fff;/*矢印の色*/
    border-right: 2px solid #fff;/*矢印の色*/
    height: 25px;
    width: 25px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left:2.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right:2.5%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
	position: relative;
	z-index: 3;
    text-align:center;
	margin:-50px 0 0 0;/*ドットの位置*/
}

.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#fff;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}

#slide{position: relative;   width: 100%; height: 100%;}
/* コンテナ要素の擬似要素(ここで比率を調整) */
#slide::before {
  content: "";
  display: block;
  padding-top: 65%; /* 比率を指定 */
}

/* 中の要素 */
.box__content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

#slide h2{position: absolute; padding: 2%;  background: rgba(255, 255, 255, 0.7); color: #424242; font-weight: normal; font-size: 20px; font-size: 2rem;  width: 90%; z-index: 10;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);}
#slide h2 .sml{font-size: 14px; font-size: 1.4rem;}

@media only screen and (min-width:600px) {
#slide h2{font-size: 30px; font-size: 3.0rem; width:80%;}
#slide h2 .sml{font-size: 19px; font-size: 1.9rem;}
#slide::before {
  padding-top: 57%; /* 比率を指定 */
}
}
@media only screen and (min-width:1024px) {
#slide::before {
  padding-top: auto; /* 比率を指定 */
}
.slider{height: 550px; width: 100%;}
#slide h2{top: 225px; max-width: 1000px;}
#slide{height: 550px;}
}


#gnav-btn {
    color: gray;
    padding: 10px;
    font-size: 30px;
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 100;
  }
  #gnav-input:checked ~ #gnav-content {
    top: 0;
  }
  #gnav-content {background: rgba(255, 255, 255, 1); z-index: 1000;
    position: fixed;
    top: -100%;
    left: 0;
    z-index: 15;
    transition: 0.3s;
    width: 100%; font-size: 18px; font-size: 1.8rem;
  }
#gnav-content a{text-decoration: none; color: #666; display: block; width: 100%;}
  .humb-menu__title { font-size: 22px; font-size: 2.2rem; line-height: 1.2em;
    padding: 1.5rem;
  }
  .humb-menu__title .sml{font-size: 15px; font-size: 1.5rem;}
  .humb-menu label {
    display: flex;
    justify-content: space-between;
    padding: 1.5rem;
    cursor: pointer;
  }
.humb-menu label.bord{border-top: 1px solid #7e7e7e;}
  .humb-menu input {
    display: none;
  }
  .humb-menu .accshow {
    height: 0;
    overflow: hidden;
  }
  .humb-menu .accshow p {
    padding:0 1.5rem; text-align: left; font-size: 15px; font-size: 15px; padding-bottom: 10px;
  }
  .humb-menu .cssacc:checked + .accshow {
    height: auto;
  }
} 



#gnav-btn.fixed{position:fixed; width:60px; top: 0; right: 0; height:50px; z-index:1;}
#gnav-btn.fixed{background:rgba(190, 190, 190, 0.6);}
#gnav-btn.fixed nav #navbox{overflow-y:initial; height:auto;}

@media only screen and (min-width:768px) {
#gnav-btn{display: none;}
header{height: 100px;}
}


/*PCグローバルナビ*/
.globalnav-wrap {display: inherit; 
  font-size:15px;
  color:#5e5e5e;
  display:flex;   justify-content:space-between; 
}
header{position: relative; max-width: 1024px; margin: 0 auto;}
.globalnav-wrap .tel{position: absolute; right: 10px; top: -10px; font-weight: 600; font-size: 33px; font-size: 3.3rem; line-height: 2.7rem;}
.globalnav-wrap .tel .sml{font-size: 14px; font-size: 1.4rem; font-weight: normal; padding-left: 5px;}
.globalnav-wrap .dropdown-btn a{cursor:pointer; color: #5e5e5e; font-weight: 600; text-decoration: none;}
.globalnav .dropdown-btn {
    position:relative;
    display:inline-block;
    padding: 0 10px 10px 10px;
    cursor:pointer;}
.globalnav .dropdown-btn:hover a{
      color:#797979;
    }
  .dropdown {
    z-index:1000;
    background:#e9e9e9;
    position:absolute; color: #333;
    left:0;
    top:28px;
    width:200px;
    padding:10px 20px;
    display:none;}
  .dropdown li {
      display:inline-block;
      margin:10px 0;}
  .dropdown li a {
        color:#fff;
      }
  .nav-button-wrap,
  .open {
    display:block;
  }
  .nav-button-wrap, .close {
    display:block;
  }
@media screen and (max-width: 767px) {
.globalnav-wrap {display: none;}
  header {
    position:relative;
    width:100%;
  }


  .nav-button-wrap {
    display:block;
    position:absolute;
    right:0px;
    top:0px;
    z-index:1000;
    cursor: pointer;
    padding:15px;
    height:53px;
  }
  .globalnav {
    display:none;}
  .globalnav .close {
      display:none;
    }
  .globalnav-wrap.open .globalnav {
    display:block;
    padding:40px 20px 0;
    position: fixed;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;}
  .globalnav-wrap.open .globalnav li {
      display:block;
    }
  .globalnav-wrap.open .globalnav li:hover {
      background:transparent;
    }
  .globalnav-wrap.open .globalnav .dropdown {
      display:block;
      position:static;
      background:transparent;
    }
}
 @media screen and (min-width: 1000px) {
	 .globalnav-wrap {font-size: 16px;}
} 
/*事業内容*/
.wid1024{max-width: 1024px; margin: 0 auto;} 
h3{font-family: 'PT Sans', sans-serif; padding: 5% 0 5% 0; font-size: 28px; font-size: 2.8rem; font-weight: normal; line-height: 2.5rem;}
h3 .small{font-size: 16px; font-size: 1.6rem;}
@media only screen and (min-width:600px) {
h3{ font-size: 32px; font-size: 3.2rem; padding: 3% 0 2% 0; }
h3 .small{font-size: 18px; font-size: 1.8rem;}
}

#businessarea{background: #424242; padding-bottom: 3%;}
#businessarea h3{color: #fff;}

div.animation_box {
  opacity: 0;
  transform: translateY(-20px);
  transition: 3s ease;
}


.bbox01{background: url("../lib/business01.png") no-repeat; background-size: cover;}
.bbox02{background: url("../lib/business02.png") no-repeat; background-size: cover;}
.bbox03{background: url("../lib/business03.png") no-repeat; background-size: cover;}
.bbox{ color: #fff; width: 94%; padding: 2% 10%; margin: 0 auto; margin-bottom: 15px; font-size: 15px; font-size: 1.5rem;}
.bbox h4{border: 1px solid #fff; padding: 2% 0; font-weight: 600; font-size: 24px; font-size: 2.4rem; margin: 10% 0 5% 0; width: 100%;}
.bbox .txt{text-align: left;}

.bbox .more{margin: 20px 0 10% 0; font-family: 'PT Sans', sans-serif;}
.bbox .more a{position: relative; padding: 2%; background: #fff; color: #666; display: block; text-decoration: none; font-size: 16px; font-size: 1.6rem;}
.bbox .more a::after {content: ">"; position: absolute; right: 10px;}
@media only screen and (min-width:768px) {
	.bbox{display: inline-block; width: 46%; padding: 0 5%; margin: 0 1% 1% 1%;}
.bbox h4{font-size: 25px; font-size: 2.5rem; margin: 10% 0 5% 0; }
.bbox .more{margin: 10px 0 5% 0;}
.bbox .more a{padding: 1%;}
}
@media only screen and (min-width:980px) {
	.bbox{display: inline-block; width: 32%; padding: 0 3%; margin: 0 0.5% 1% 0.3%;}
}
/*リンク*/

#links{padding: 7% 5%;}
#links ul li{padding: 2% 0;}
@media only screen and (min-width:768px) {
#links{padding: 4% 2%;}
	#links ul li{width: 46%; display: inline-block; margin: 0 1%;}
}
#map iframe{width: 100%; height: 450px;}

/*footer*/

footer {font-size: 14px; font-size: 1.4rem;  background: #e5e5e5; text-align:left;  padding: 30px 15px;}
footer ul{margin-bottom: 25px;}
footer ul li {position: relative;  vertical-align: top;
  display: inline-block;
  width: 48%; margin: 0 2% 5% 0;
}
footer ul li::after{content:url("../lib/yazirushi.png") ; width: 15px; position: absolute; right: 5px; top: 0;}

footer ul li a {text-decoration: none;
  display: block;
  color: #7e7e7e;
}
footer .copyright{color: #7e7e7e; text-align: center; font-size: 12px; font-size: 1.2rem;}
footer .flogo{max-width: 260px; margin: 0 auto; padding-bottom: 15px;}


@media screen and (min-width: 768px) {
footer {font-size: 14px; font-size: 1.4rem; }
footer ul li::after{content:""; }
footer ul li {width: auto; margin: 0 10px; text-align: center;}
footer ul{width: 768px; margin: 0 auto; margin-bottom: 35px;     display: flex;
    list-style: none;
    justify-content: center;
}
}

/*TOP PAGE*/
#pagetop {
	position:fixed;
	bottom:20px;
	right:10px;
	font-family: 'Lato', sans-serif;
	font-size:1.2rem;
	font-weight:700;}
#pagetop a {
	background: rgba(121, 121, 121, 0.8);
	text-decoration: none;
	color: #000;
	width: 100px;
	padding:10px 0;
	text-align: center;
	display: block;
	border-radius: 3px;}
#pagetop a:hover {
	text-decoration: none;
	background: #dedcd6;}
	
#pia{text-align: right; padding-bottom: 40px;}


.comingsoon{margin-top: 30px; font-size: 18px;}