@charset "UTF-8";
/*-----------------------------------------------------------------------------
basic
-----------------------------------------------------------------------------*/
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, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	list-style: none;
}

html {
	overflow-y: scroll;
	overflow-x: hidden;
	background-color: #fff;
}
nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	text-decoration: none;
}

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 #000;
	cursor:help;
}

table {
	border-collapse:collapse;
}

hr {
    display:block;
    height:4px;
    border:0;
    border-top:4px solid #e1edf6;
    margin: 0;
    padding:0;
}

input, select {
	vertical-align:middle;
}





/* NotoSansJP-Regular */
@font-face {
    font-family: ' NotoSansJP-Regular ';
    src: url('../fonts/NotoSansJP-Regular.woff2') format('woff2'),
             url('../fonts/NotoSansJP-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}
/* NotoSansJP-Bold */
@font-face {
    font-family: ' NotoSansJP-Bold ';
    src: url('../fonts/NotoSansJP-Medium.woff2') format('woff2'),
             url('../fonts/NotoSansJP-Medium.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
}

body {
color: #333;
font-size: 91%;
line-height: 1.7em;
font-family: ' NotoSansJP-Regular ';
overflow: hidden;
letter-spacing: 0.05rem;
padding-top: 80px;
background:white;
position: relative;}
@media (min-width: 768px) {
body {
font-size: 92%;
letter-spacing: 0.05rem;
}
}

@media (min-width: 992px) {
body {
font-size: 94%;
line-height: 1.8em;
padding-top: 100px;
letter-spacing: 0.05rem;
}
}
@media (min-width: 1280px) {
body {
font-size: 99%;
line-height: 1.9em;
letter-spacing: 0.08rem;
}
}

@media (min-width: 1920px) {
body {max-width: 1920px;margin: 0px auto;}

}

/* -------------------------------

/* 共通
---------------------------------------------------- */

.fluid {position: relative;
	max-width: 1140px;
	margin: 0 auto;
}



.clearfix:after {
  content: "";
  clear: both;
	display: table;
}
.clear {clear: both;}

a{outline:none;}

.f-right {float: right;}
.f-left {float: left;}
.pointer {cursor: pointer;}
ul.decimal li{list-style: decimal;margin-left: 25px;line-height: 1.7;}
ul.dot li{list-style:disc;margin-left: 25px;line-height: 1.7;text-align: left;}
ul.square {margin-left: 30px;}
ul.square li{list-style:disc;line-height: 1.7;}

.mb0  { margin-bottom: 0 !important; }
.mb5  { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.pad10 { padding: 10px; }
.pad20 { padding: 20px; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pl10 { padding-left: 10px !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }
.w20 { width: 20%; }
.w25 { width: 25%; }
.w33 { width: 33.33333333%; }
.w50 { width: 50%; }
.w60 { width: 60%; }
.w70 { width: 70%; }
.w80 { width: 80%; }
.mb150mb100{margin-bottom: 150px;}
.mb120mb80{margin-bottom: 120px;}
.mb80mb50{margin-bottom: 80px;}
.mb50mb30{margin-bottom: 50px;}
.mb30mb10{margin-bottom: 30px;}

@media (max-width: 1140px) {
.mb120mb80{margin-bottom: 80px;}
.mb150mb100{margin-bottom: 100px;}

}


@media (max-width: 991px) {
.mb120mb80{margin-bottom: 60px;}
.mb150mb100{margin-bottom: 90px;}
.mb30-md{margin-bottom: 30px;}
}

@media (max-width: 767px) {
.space15{margin-bottom: 15px;}
.mb150mb100{margin-bottom: 80px;}
.mb120mb80{margin-bottom: 50px;}
.mb80mb50{margin-bottom: 50px;}
.mb50mb30{margin-bottom: 30px;}
.mb20-xs{margin-bottom: 20px;}
.mb30-xs{margin-bottom: 30px;}
.mb10-xs{margin-bottom: 10px;}
}
@media (max-width: 568px) {
.mb30-xs2{margin-bottom: 30px;}
.mb10-xs{margin-bottom: 10px;}
.mb30mb10{margin-bottom: 10px;}

}


@media (min-width: 1200px) {

.mb30-xl { margin-bottom: 30px !important; }
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
}

.indent2 {
  padding-left: 1.8em;
  text-indent: -1.8em;
}

.flexbox{display: flex;align-items: center;}
.flexbox-between{display: flex;align-items: center;justify-content: space-between;}

.flexbox3{display: flex;align-items: flex-end;}
.flexbox4{display: flex;justify-content: flex-end;}


@media (max-width: 767px) {
.flexbox4{display:block;}


}


.bg-gray{background: rgba(0,0,0,.03);}
.bg-blue{background: rgba(68,138,202,.05);}
.bg-border-top{border-top: 1px solid #ddd;}

.oblique{font-style: oblique;}




/*btn
------------------------------ */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img{vertical-align: bottom;}




/* アニメーション
---------------------------------------------------- */
.delayed-image {
	/* じわっと画像が表示される */
 	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

/* じわっと画像が表示される ---------　一度追加していたら不要*/
@keyframes fadeIn { /*上のbody内で呼び出しているアニメーションと名前をそろえる*/
    0% {opacity: 0} /* 始め */
    100% {opacity: 1} /* 終わり */
}

/*古いブラウザ用　---------　一度追加していたら不要*/
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.vertical {
  animation: vertical_6392 2.44s ease infinite;
  transform-origin: 50% 50%;
}

@keyframes vertical_6392 {
  0% { transform:translate(0,-3px) }
  3.27869% { transform:translate(0,3px) }
  6.55738% { transform:translate(0,-3px) }
  9.83606% { transform:translate(0,3px) }
  13.11475% { transform:translate(0,-3px) }
  16.39344% { transform:translate(0,3px) }
  18.03279% { transform:translate(0,0) }
  100% { transform:translate(0,0) }
}

.fluffy {
	-webkit-animation: fluffy 0.8s linear 0s 1;
	animation: fluffy 0.8s linear 0s 1;
}
@-webkit-keyframes fluffy {
	0%   { -webkit-transform: scale(1.0, 1.0) translate(0%, 0%); }
	15%  { -webkit-transform: scale(0.9, 0.9) translate(0%, 5%); }
	30%  { -webkit-transform: scale(1.3, 0.8) translate(0%, 10%); }
	50%  { -webkit-transform: scale(0.8, 1.3) translate(0%, -10%); }
	70%  { -webkit-transform: scale(1.1, 0.9) translate(0%, 5%); }
	100% { -webkit-transform: scale(1.0, 1.0) translate(0%, 0%); }
}
@keyframes fluffy {
	0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
	15%  { transform: scale(0.9, 0.9) translate(0%, 5%); }
	30%  { transform: scale(1.3, 0.8) translate(0%, 10%); }
	50%  { transform: scale(0.8, 1.3) translate(0%, -10%); }
	70%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
	100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}

.horizontal {
  animation: horizontal_5801 2.72s ease infinite;
  transform-origin: 50% 50%;
}

@keyframes horizontal_5801 {
  0% { transform:translate(0,0) }
  4.41177% { transform:translate(5px,0) }
  8.82353% { transform:translate(0,0) }
  13.23529% { transform:translate(5px,0) }
  17.64706% { transform:translate(0,0) }
  22.05882% { transform:translate(5px,0) }
  26.47059% { transform:translate(0,0) }
  100% { transform:translate(0,0) }
}

.passing-reverse {
  animation: passing-reverse_1059 4s linear infinite;
  transform-origin: 50% 50%;
}

@keyframes passing-reverse_1059 {
  0% { transform:translateX(50%); opacity:0 }
  50% { transform:translateX(35%); opacity:.5 }
  100% { transform:translateX(0%); opacity:1 }
}

.float {
  animation: float_1 4s linear infinite;
  transform-origin: 50% 50%;
}
@keyframes float_1 {
  0% { transform: translateY(0) }
  50% { transform: translateY(-10px) }
  100% { transform: translateY(0) }
}

.float2 {
  animation: float_2 2s linear infinite;
  transform-origin: 50% 50%;
}
@keyframes float_2 {
  0% { transform: translateY(0) }
  60% { transform: translateY(-5px) }
  100% { transform: translateY(0) }
}


/* link
---------------------------------------------------- */
a:link,a:visited{text-decoration:none;}
a:hover,a:active{text-decoration:none;}
a.opacity {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
a.opacity:hover {
	-webkit-opacity: 0.6;
	-moz-opacity: 0.6;
	opacity: 0.6;
}
a:focus{
  outline: none;
}
a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
[data-action="call"]  {text-decoration: none;}

/* font-size color
---------------------------------------------------- */
.x-small { font-size: 10px; line-height: 1.6; }
.small { font-size: 12px; line-height: 1.6; }
.middle { font-size: 14px; }
.large { font-size: 16px; }
.x-large { font-size: 18px; }
.x2-large { font-size: 20px; }
.x3-large { font-size: 22px; }
.x4-large { font-size: 24px; }
.max-large { font-size: 32px; }
.italic {font-style: italic;}
.bold{font-weight: bold;}

.white { color: #ffffff; }
.red { color: #f00; }
.blue { color: #0587c6; }
.purple { color: #e24bc4; }
.orange { color: #e48f0a; }
.green { color: #39a124; }
.pink{color: #FA68AF;}

/* スクロールでナビ表示
---------------------------------------------------- */
.cb-header {
    position: fixed;
    top: 0;
    left: 0;
	right:0;
    display: none;
    background: #fff;
}
.cb-header .inner {width: 96%;margin: 0px auto; margin-top: 20px;}


#navibar {
    width: 100%;
    height: auto;
    z-index: 100;
}

@media (min-width: 768px) {
    #navibar {
        height:70px;
        /*32px;*/
        z-index: 100;
    }
	
  #navibar .navarea{padding-top: 20px;}
  #navibar .logo{padding-top: 20px;} 
}

@media (min-width: 992px) {
    #navibar {
        width: 100%;
        z-index: 100;
    }
  #navibar .logo{padding-top: 15px;} 

	
}

@media (max-width: 767px) {
.cb-header {display: none!important;}
#navibar {display: none;border-bottom:none;}
}


/* header
---------------------------------------------------- */
#header{display: none;}
.cb-header2 {
    position: fixed;
    /* 固定 */
    top: 0;
    /* 上から0の位置に固定 */
    left: 0;
    /* 左から0の位置に固定 */
    display: block;
    /* 表示 */
	z-index: 200;
	width: 100%;
	box-sizing: border-box;
	background:#fff;
}

.sc {
display: flex;
align-items: center;
    width: 100%;
    margin: 0 auto;
	padding: 0px 15px;
	height: 80px;
	justify-content: space-between;}
	
.sc .logo a{color: #448ACA;font-family: ' NotoSansJP-Bold ';font-size: 18px;}


.site-header{display: none;}





.header{display: none;}
.top-logo {display: none;}

@media (min-width: 662px) {

}



@media (min-width: 992px) {
.cb-header2 {display: none!important;}

.site-header{
position: fixed;
	display: flex;
	justify-content: space-between;
	width: 100%;
	z-index: 99;
	top:0;
	transition: 0.5s;
}
.header{width: 100%; display: flex;justify-content: space-between; align-items: center;height: 100px;position: relative;z-index: 10;background-color: rgba(255, 255, 255, 0);}

.hide {background-color: rgba(255, 255, 255, 0.9);}

.top-logo {display: block;position:relative;margin-left: 20px;}
a .top-logo{color: #448aca;font-size: 20px;font-family: ' NotoSansJP-Bold ';}
a .top-logo h1{color: #448aca;font-size: 13px;}


.navarea{display: flex;align-items: center;}
.navbar-nav{  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  list-style: none;
}
.navbar-nav li{ text-align: center;position: relative;}
.navbar-nav li.nav-item{margin: 0px 8px;}
.navbar-nav li a{color: #333; transition: .3s;line-height: 1;position: relative;display: inline-block;}
.navbar-nav li a:hover{color: #448aca;}

.navbar-nav li:last-child a{border-right:none;padding-right: 0px;}
.navbar-nav li.active{ position: relative;border-bottom: 3px solid rgba(68,138,202,1);}

.navarea .btnset {margin-right: 20px;}
.navarea .btnset a {transition: .3s;width: 50px;height: 50px;line-height: 50px;background: #448aca;display: block;color: white;text-align: center;font-size: 18px;}
.navarea .btnset a:hover{background: #404040;}



.dropdown:hover > .dropdown-menu{display: block;}
.dropdown-item {
position: relative;
  display: block;
  width: 100%;
  padding: .6rem 0rem!important;
  clear: both;
  color: #222;
  text-align:left!important;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  letter-spacing: 0.05rem;
  font-size: 14px;
}
.dropdown-item::after {
  font-family: "Font Awesome 5 Free";
  content: "\f30b";
  position: absolute;
  right:0;
  top:50%;
  transform: translateY(-50%);
  -webkit-font-smoothing: antialiased;
  font-weight: 900;
  color: #448ACA;
}
.dropdown-menu-center {
    right: auto;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

}

@media (min-width: 1280px) {
.top-logo {margin-left: 40px;}
a .top-logo{color: #448aca;font-size: 24px;}
a .top-logo h1{color: #448aca;font-size: 15px;}

.navbar-nav li a{text-align: center;font-size: 16px;}
.navbar-nav li:last-child a{padding-right: 5px!important;}
.navbar-nav li.nav-item{margin: 0px 18px;}

.dropdown-item {
  display: block;
  width: 100%;
  padding: .8rem 0rem!important;
  clear: both;
  color: #222;
  text-align:left!important;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  letter-spacing: 0.05rem;
  font-size: 14px;
}

.navarea .btnset {margin-right: 40px;}

}


@media (min-width: 1680px) {
.navbar-nav li:last-child a{padding-right: 20px!important;}
.dropdown-item {
  display: block;
  width: 100%;
  padding: .7rem 0rem!important;
  clear: both;
  color: #222;
  text-align:left!important;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  letter-spacing: 0.05rem;
  font-size: 14px!important;
}


}











/* main
---------------------------------------------------- */

.main{position: relative; height: 300px;
z-index: 10;}


.main-txt{position: absolute;
top:50%;
left:50%;
transform: translateY(-50%) translateX(-50%);
margin-right: -50%;
z-index: 80;
}
.main-txt h2{color: white; font-family: ' NotoSansJP-Bold ';font-size: 26px;text-align: center;line-height: 1.5;text-shadow: 2px 2px 5px #555;margin-bottom: .7em;}
.main-txt .h2-sub{color: white; font-size: 16px;text-align: left;line-height: 1.5;text-shadow: 2px 2px 5px #555;padding: 0px 20px;}

.emblem {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 35vh;
    height: 35vh;
    border-radius: 10%;
    animation: spin 55s linear infinite;
    content: url(../images/catchcopyitem.png);
    z-index: 70;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}




.swiper-container{
  max-width: 100%;
  width: 100%;
  margin: auto;
}

.swiper-wrapper{
position: relative;
}

.swiper-slide {width: 100%;}
.slide-img {width: 100%;
background-size: cover;
background-position: center center;
height: 300px;
}

@media (min-width: 568px){
.main{position: relative; height: 380px;}
.slide-img {width: 100%;
background-size: cover;
background-position: center center;
height: 380px;
}


}


@media (min-width: 768px){
.main{ height: 500px;}
.slide-img {height: 500px;}
.main-txt h2{}


}

@media (min-width: 992px){
.main{height: 100vh;}

.main-txt h2{font-size: 34px;margin-bottom: .8em;}
.main-txt .h2-sub{ font-size: 20px;padding: 0px 0px;text-align: center;}



.swiper-container{width: 100%;  height:  100vh;}


.swiper-wrapper{position: relative;}
.slide-img {width: 100%;
background-size: cover;
background-position: center center;
height: 100vh;
}




}

@media (min-width: 1140px){
.main{position: relative;}

.swiper-wrapper{
position: relative;
}

}

@media (min-width: 1280px){
.main-txt h2{font-size: 40px;letter-spacing: .1rem;}
.main-txt .h2-sub{ font-size: 24px;}
.emblem {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 55vh;
    height: 55vh;
    border-radius: 10%;
    animation: spin 55s linear infinite;
    content: url(../images/catchcopyitem.png);
    z-index: 70;
}



}

@media (min-width: 1680px){


.main-txt{}

}






/* index.html 
---------------------------------------------------- */

.home #section01{position: relative; width: 100%;padding: 60px 0px;background: #e6e6e6;}
.home #section01 .index{font-size: 20px;position: relative;margin-bottom: 40px;line-height: 1.6;font-family: ' NotoSansJP-Bold ';text-align: center;}
.home #section01 .pic{margin-bottom: 3em;}
.home #section01 h3{border-left: 5px solid #448aca;padding-left: 7px; font-family: ' NotoSansJP-Bold ';font-size: 18px;position: relative;margin-bottom: 1.5em;}
.home #section01 h3:after{content: "";position: absolute;bottom:-10px;left:-7px;right:0;border-bottom: 1px solid #498DCB;}
.home #section01 .wrap{background: #498DCB;color: white;font-family: ' NotoSansJP-Bold ';padding: 20px;}

.home #section02{position: relative; width: 100%;padding: 60px 0px 30px;}
.re-mark-left{display: none;}
.re-mark-right{display: none;}
.home #section02 a.box{background: white;border:2px solid #434343;display: flex;align-items: center;justify-content: center;flex-flow: column;box-shadow: 0px 7px 7px 0px rgba(0,0,0,0.1);padding: 20px 15px;width: 100%;color: #222;transition: .3s;margin-bottom: 30px;}
.home #section02 a.box:hover{background: #fafafa; border:2px solid #448aca;transition: .3s;}
.home #section02 a.box:hover img{opacity: 1;}
.home #section02 a.box .ico{margin-bottom: 15px;}
.home #section02 a.box h3{color: #222;}
.home #section02 a.box2{background: white;display: flex;align-items: center;justify-content: center;flex-flow: column;width: 100%;color: white;transition: .3s;margin-bottom: 30px;position: relative;}
.home #section02 a.box2 img{width: 100%;height: auto;}
.home #section02 a.box2:hover img{filter: grayscale(80%);}
.home #section02 a.box2 .title{position: absolute;top:50%;left:50%;transform: translate(-50%,-50%);margin-right: -50%;font-family: ' NotoSansJP-Bold ';font-size: 20px;}




.home #section03{position: relative; width: 100%;padding: 60px 0px;}


.home #section04{position: relative; width: 100%;padding: 30px 0px 60px;}

  

@media (min-width: 569px) {
.home #section01 .pic{width: 80%;margin: 0px auto;margin-bottom: 3em;}

}




@media (min-width: 768px) {


.home #section01{padding: 80px 0px;}
.home #section01 .index{font-size: 23px;margin-bottom: 50px;}
.home #section01 h3{font-size: 20px;margin-bottom: 1.5em;}
.home #section01 .wrap{padding: 30px;}

.home #section02{padding: 80px 0px 50px;}

.home #section03{padding: 80px 0px;}

.home #section04{padding: 60px 0px 80px;}



}



@media (min-width: 992px) {
.home #section01 .pic{width: auto;margin-bottom: 0em;}
.home #section01 .wrap{padding: 50px;text-align: center;}

.home #section02 a.box{margin-bottom: 0px;}


}




@media (min-width: 1280px) {

.home #section01{padding: 100px 0px;}
.home #section01 .index{font-size: 30px;margin-bottom: 70px;}
.home #section01 h3{border-left: 7px solid #448aca;padding-left: 10px; font-size: 24px;position: relative;margin-bottom: 1.5em;}
.home #section01 .wrap{font-size: 18px;}




.home #section02{padding: 100px 0px;}

.home #section03{padding: 100px 0px;}





.home #section04{padding: 100px 0px;}

}


@media (min-width: 1366px) {

.re-mark-left{display: block;position: absolute;left:0;top:50%;transform: translateY(-50%);z-index: 1;width: 130px;}
.re-mark-right{display: block;position: absolute;right:0;top:50%;transform: translateY(-50%);z-index: 1;width: 130px;}
.home #section02 .fluid{z-index: 50;}
}

@media (min-width: 1680px) {

.re-mark-left{width: 200px;}
.re-mark-right{width: 200px;}
.home #section02 .fluid{z-index: 50;}
}

@media (min-width: 1880px) {

.re-mark-left{width: 320px;}
.re-mark-right{width: 320px;}
.home #section02 .fluid{z-index: 50;}
}

.viewmore{color: white;background: #111;width: 100%;line-height: 45px;text-align: center;display: block; font-size: 14px;transition: .3s;margin-top: auto;}
.viewmore img{margin-left: 5px;vertical-align: middle;}
a:hover .viewmore{background: #c00;}

.more{ color: white;background: #111;width: 230px;line-height: 45px;text-align: center;display: inline-block; font-size: 14px;transition: .3s;margin-top: 4em;}
.more img{margin-left: 5px;vertical-align: middle;}
a:hover .more{background: #c00;}


a.btn-large{width: 100%;line-height: 55px; font-size: 17px; background: black;color: white;text-align: center;margin-top: 10px;display: block;
  padding: 0px;
  border:none;
  transition: .3s;
  padding-right: 0px!important;
  margin-right: 0!important;
}
a.btn-large:hover{background: #07a3d7;}

@media (min-width:768px) {
a.btn-large{width: 100%;line-height: 68px;font-size: 20px; background: black;color: white;text-align: center;margin-top: 40px;}


}

@media (min-width: 992px) {
a.btn-large{width: 100%;font-size: 20px; background: black;color: white;text-align: center;margin-top: 40px;}


}


@media (min-width: 1360px) {
a.btn-large{width: 100%;line-height: 80px;font-size: 24px;}


}



/* pagetop 
---------------------------------------------------- */
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 100;
}
 #pagetop img{vertical-align: bottom;}

#pagetop a {
    display: block;
    width: auto;
    text-align: center;
}
 
#pagetop a:hover {
    opacity: .8;
    text-decoration: none;
}






/* -----  footer ------- */

#common{padding: 50px 0px; background: linear-gradient(180deg, #fff 0%, #fff 50%, #e6e6e6 50%, #e6e6e6 100%)!important;}
#common .wrap{border:2px solid #626262;background: white;padding: 15px;display: flex;flex-flow: column;align-items: center;justify-content: center;}
#common h3{margin-bottom: 20px;border-left: 5px solid #555;padding-left: 10px;font-family: ' NotoSansJP-Bold ';font-size: 16px;}

#common .tel{text-align: center;margin-bottom: 7px;font-size: 30px;font-family: ' NotoSansJP-Bold ';line-height: 1;}
#common .tel .fas{color: #448ACA;margin-right: 5px;}
#common .tel span{color: #222;}
#common .time{font-size: 12px;line-height: 1;text-align: center;margin-bottom: 3em;}

#common .mail{text-align: center;}
#common a.mail {height: 50px;line-height: 50px; width: 100%; display: block;text-align: center;color: white;font-size: 16px; transition: .5s;background: #448aca;}
#common a.mail  .fas{font-size: 24px;}
#common a.mail:hover{background: #555;}


footer{padding: 50px 0px;background:#404040; color:white;}
footer .logo{text-align: center;margin-bottom: 20px;line-height: 1.5;}
footer .logo a{color: white;font-size: 13px;letter-spacing: 0;}
footer .logo a span{display: block;font-family: ' NotoSansJP-Bold ';font-size: 16px;}

footer .address{font-size: 14px;line-height: 1.5;margin-bottom: 10px;text-align: center;}
footer .address .fas{margin-left: 5px;}
footer .address a .fas{color: #fff45c;}
footer .tel{font-size: 12px;line-height: 1.8;text-align: center;letter-spacing: 0rem;}
footer .tel span{color: #fff;font-size: 14px;}
footer .box{border:2px solid white;padding: 30px;background: #595959;color: white;}
footer .box h3{border-bottom:5px double white;text-align: center;font-size: 18px;padding-bottom: 1em; margin-bottom: 1.5em;font-family: ' NotoSansJP-Bold ';}
footer .box a{color: white;display: block;}
footer .box a:hover{color: #448aca;}


.footer-menu{margin-bottom: 0px;padding:20px 0px;}
.footer-menu ul{display: flex;justify-content: space-between;flex-wrap: wrap;}
.footer-menu li{width: 49%;}
.footer-menu li a{color: #fff;font-size: 14px;text-decoration: none;padding: 10px 10px;display: block;transition: .3s;border-bottom: 1px solid #ddd;}

.footer-menu li a:hover{color:#448aca;}

.copy{font-size: 12px;color:#ccc;text-align: center;padding: 15px;}
.copy {
  display:block;
  border: none;
}


@media (min-width: 568px) {

#common .wrap{border:2px solid #626262;background: white;padding: 30px 15px;display: flex;flex-flow: column;align-items: center;justify-content: center;}

#common a.mail {height: 50px;line-height: 50px; width: 360px; display: block;text-align: center;color: white;font-size: 16px; transition: .5s;background: #448aca;}



}


@media (min-width: 768px) {
#common{padding: 70px 0px;}



footer{ padding: 60px 0px;}

footer .address{font-size: 14px;text-align: left;letter-spacing: 0;}
footer .tel{text-align: left;}
footer .box{border:2px solid white;padding: 15px;background: #595959;color: white;}

.footer-menu{width: auto;border-top: none;padding: 0px 0px 0px 0px;}
.footer-menu{border-top: none;padding:0px 0px 15px 0px;margin-bottom:0px;border-bottom: 1px solid #ccc;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0px;margin-bottom: 0px;display: flex;flex-flow: wrap;justify-content:center;}
.footer-menu li {width: auto;padding-bottom: 0px;padding: 0px 8px;}

.footer-menu li a{text-decoration: none;text-align: left;  border-bottom: none; border-right: none; line-height: 1;font-size: 14px;}




.copy{font-size: 12px;padding: 15px 0px;}


}


@media (min-width: 992px) {
#common .wrap{border:2px solid #626262;background: white;padding: 50px 15px;display: flex;flex-flow: column;align-items: center;justify-content: center;}
#common h3{margin-bottom: 30px;border-left: 5px solid #555;padding-left: 10px;font-family: ' NotoSansJP-Bold ';font-size: 18px;line-height: 1.8;}

#common .tel{text-align: center;margin-bottom: 7px;font-size: 40px;font-family: ' NotoSansJP-Bold ';line-height: 1;}
#common .tel .fas{color: #448ACA;margin-right: 15px;font-size: 46px;}
#common .tel span{color: #222;}
#common .time{font-size: 18px;line-height: 1;text-align: center;margin-bottom: 2em;}

#common .mail{text-align: center;}
#common a.mail {height: 70px;line-height: 70px; width: 400px; display: block;text-align: center;color: white;font-size: 18px; transition: .5s;background: #448aca;}
#common a.mail  .fas{font-size: 30px;}



footer{padding: 70px 0px;}
footer .logo{text-align: left;}
footer .logo a{color: white;font-size: 13px;letter-spacing: 0;}
footer .logo a span{display: block;font-family: ' NotoSansJP-Bold ';font-size: 18px;}

footer .address{text-align: left;letter-spacing: 0;}
footer .tel{font-size: 14px;text-align: left;}
footer .tel span{font-size: 16px;}
footer .box{border:2px solid white;padding: 30px 50px;background: #595959;color: white;}

.footer-menu{width: auto;border-top: none;padding: 0px 0px 0px 0px;}
.footer-menu ul{margin-bottom: 0px;}
.footer-menu li a{text-decoration: none;text-align: left; padding: 10px 18px; border-bottom: none; line-height: 1;font-size: 16px;}

.copy{font-size: 12px;}

}




@media (min-width: 1280px) {
#common{padding: 100px 0px;}


footer{ padding: 90px 0px 40px;}
footer .logo{text-align: left;width: auto; margin-bottom: 20px;}
footer .logo a{color: white;font-size: 16px;letter-spacing: 0;}
footer .logo a span{display: block;font-family: ' NotoSansJP-Bold ';font-size: 24px;}

footer .address{line-height: 1.5;font-size: 15px;}
footer .box{border:2px solid white;padding: 30px 60px;background: #595959;color: white;}

.footer-menu ul{border-top: none;border-left:none;margin-left: 0px;margin-bottom: 15px;}




}





/*------------------------------　　下層ページ style　　------------------------------------------*/
.h2area{width: 100%; position: relative;height: 200px;display: flex;align-items: center;justify-content: center;z-index: 1;}
.h2area::after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(../images/dot.png);
    background-repeat: repeat;
    position:absolute;
}
.h2area.h2-kumiai{background: url("../images/h2-kumiai.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;}
.h2area.h2-intro{background: url("../images/h2-intro.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;}
.h2area.h2-shigen{background: url("../images/h2-shigen.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;}
.h2area.h2-vehicle{background: url("../images/h2-vehicle.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;}
.h2area.h2-recruit{background: url("../images/h2-recruit.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;}
.h2area.h2-contact{background: url("../images/h2-contact.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;}

.h2-txt {font-size: 30px;letter-spacing: 0.08rem;color: #fff;text-align: center;font-family: ' NotoSansJP-Bold ';position: relative;z-index: 10;}
.h2-txt span{font-size: 16px;letter-spacing: 0.08rem;display: block;margin-bottom: 5px;color: #ff0;}



.h2-shadow {
    -webkit-filter: drop-shadow(3px 5px 5px rgba(0,0,0,.3));
        filter: drop-shadow(3px 5px 5px rgba(0,0,0,.3));
        }
		


.headline-h3 {
  position: relative;
  margin-bottom: 60px;
  padding-bottom: .5em;
  font-size: 20px;
  letter-spacing: .05rem;
  font-family: ' NotoSansJP-Bold ';
}
.headline-h3::after{
   content:"";
   display:block;
   width:50px;
   height:2px;
   background-color:#448aca;
   position:absolute;
   bottom:0;
   left:0px;
}





.headline-h4 { text-align: left;
  font-size: 18px;
color: #222;
margin-bottom: 30px;
font-family: ' NotoSansJP-Bold ';}


.btwn{display: flex;justify-content: space-between;}


@media (min-width: 768px) {
.h2area{  position: relative;height: 320px;}
.h2-txt {font-size: 34px;letter-spacing: 0.08rem;}
.h2-txt span{font-size: 16px;padding-top: 5px;}


.headline-h3 {font-size: 28px;margin-bottom: 70px;}



.headline-h4 {  font-size: 20px;}

}


@media (min-width: 992px) {

.h2-txt {font-size: 36px;letter-spacing: 0.1rem;}
.h2-txt span{font-size: 18px;padding-top: 5px;}


.headline-h3::after{
   width:80px;
   height:2px;
}





}


@media (min-width: 1280px) {
.h2area{height: 360px;}
.h2-txt {font-size: 40px;letter-spacing: 0.3rem;}

.headline-h3 {font-size: 32px;}


.headline-h4 {  font-size: 24px;}

}



@media (min-width: 1680px) {

.h2-txt {font-size: 48px;letter-spacing: 0.3rem;}
.h2-txt span{letter-spacing: 0.1rem;}

}

#pankuzu{background: #fff;}





.marker {
  background: linear-gradient(transparent 60%, #ffff7f 0%);
}
.marker2 {
  background: linear-gradient(transparent 70%, #f60 0%);
}


a.btn-more{background: #222f;color: white;display: inline-block;transition: .3s;width: 100%;line-height: 80px;text-align: center;font-size: 24px;}
a.btn-more:hover{background: #555;}

@media (max-width: 991px) {
a.btn-more{line-height: 65px;font-size: 18px;}


}



@media (max-width: 767px) {
a.btn-more{line-height: 55px;font-size: 16px;}


}
.btn-gray{background: #999;color: white;transition: .3s;}
.btn-gray:hover{background: #555;color: white;}

.btn-back {
  display: inline-block;
  padding:10px 5px;
  text-align: center;
  width:240px;
  text-decoration: none;
  border-radius: 6px;
  background:#000;
  color: #fff;/*文字色*/
  font-size: 15px;
  letter-spacing: 0;
  transition: .3s;
}
.btn-back:hover{
  color: #fff;/*文字色*/
  background:#555;

}

.btn-pdf {
  display: inline-block;
  padding:10px 20px 10px 60px;
  text-align: left;
  text-decoration: none;
  background:url("../images/ico-pdf.png"),#fff;
  background-position: center left 20px;background-repeat: no-repeat;
  color: #222;/*文字色*/
  font-size: 15px;
  letter-spacing: 0;border-radius: 25px;border:2px solid red;
}
.btn-pdf:hover{
  color: #fff;/*文字色*/
  background:url("../images/ico-pdf.png"),red;
background-position: center left 20px;background-repeat: no-repeat;
}


@media (min-width: 768px) {
.btn-back {
  padding:18px 5px;
  width:340px;
  font-size: 16px;
}

}



.photo-ofi {
  height: 0;
  display: block;
  background: none;
  overflow: hidden;
  position: relative;
  padding-bottom: 65%;
  /* 高さを指定（ボックスの横幅を基準） */
}
.photo-ofi img {
  max-width: inherit;
  max-height: inherit;
  width: 100%;
  height: 100%;
  object-fit: scale-down;
  font-family: 'object-fit: scale-down;';
  position: absolute;
  left: 0;
  top: 0;
}



/* paging */
.paging {
margin-top: 4em;
	padding:0px 10px;
	line-height: 1.4;
	font-size: 14px;
}
.paging .page{text-align: center;margin-bottom: 5px;font-size: 13px;}
.paging span.current,
.paging  span.paging-text a{
	padding:5px 10px;
	color:#333;
	display:inline-block;
	margin:3px 0;
	background: #fff;
	border: 1px solid #ddd;
	text-decoration: none;
}
.paging span.current {
	background:#DA4646;
	color:#fff;
}
.paging span.paging-text a:hover {
	background:#DA4646;
	color:#fff;
}



/* shadow */
.box-shadow {box-shadow: 4px 4px #cdeaf8;}
.box-shadow2 {box-shadow: 2px 2px 10px rgba(0,0,0,.5)}
.drop-shadow { -webkit-filter: drop-shadow(0px 2px 1px rgba(0,0,0,.2));
        filter: drop-shadow(0px 2px 1px rgba(0,0,0,.2)); }
.drop-shadow2 { -webkit-filter: drop-shadow(0px 0px 10px rgba(0,0,0,.08));
        filter: drop-shadow(0px 0px 10px rgba(0,0,0,.08));}


.table-responsive {position: relative;z-index: 10;
border:none;
}


@media screen and (max-width: 568px) {
.table-responsive {
border:none;
}
.table-responsive::after {
font-size: 12px;
letter-spacing: 0;
display: block;
padding: 0px 5px 5px 5px;
content: "表は左右にスクロールできます";
color: #999;
}
.table-responsive::-webkit-scrollbar {
height: 7px;
}

.table-responsive::-webkit-scrollbar-track {
border-radius: 5px;
background: #eee;
}

.table-responsive::-webkit-scrollbar-thumb {
border-radius: 5px;
background:#999;
}
}


/* アコーディオン */
.accordion {width:100%;}
.accordion dt {
	cursor:pointer;
	background: url(../images/plus_black.gif),#ddd;
	background-repeat: no-repeat;
	background-position: right 15px center;
	color:#222;
	padding:10px;
	font-size:15px;	
	font-weight: 700;margin-bottom: 5px;
}
.accordion dd{
	display:none;
	line-height:120%;
	margin:0;
	padding:0px;
	}
.accordion dt.active{
	background: url(../images/minus_black.gif),#ddd;
	background-repeat: no-repeat;
	background-position: right 15px center;
}
.accordion dt.cover {
	background-color: #eee;
}
.accordion dd ul{}
.accordion dd ul li{width: 100%;}
.accordion dd ul li a{padding: 15px;color: #fff;background: #243551; transition: .3s;font-weight: 600;border-radius: 3px;display:  block;text-align: center;margin-bottom: 5px;}
.accordion dd ul li a:hover{background: #555;}

@media (min-width: 768px) {

.accordion {width:100%;display: block;}
.accordion dt {display: none;}

.accordion dd{
	display:block;
	line-height:1.6;
	margin:0;
	padding:0px;	
	}
.accordion dd ul{
	display:flex;
	justify-content: center;
	flex-wrap:wrap;
	line-height:1;
	margin:0;
	padding:0px;
	}
.accordion dd ul li{width: auto;}
.accordion dd ul li a{font-size: 14px;margin-bottom: 0px;margin: 0px 2px;padding: 13px 20px;}

}

@media (min-width: 992px) {
.accordion dd ul li{}
.accordion dd ul li a{font-size: 18px;padding: 15px 25px;}

}

@media (min-width: 1280px) {
.accordion {width:100%;margin-bottom: 80px;}
.accordion dd ul li a{font-size: 18px;padding: 20px 40px;}


}





/* -----  association.html  -----*/

.kumiai #section01{padding: 60px 0px;}
.kumiai #section01 .index{font-size: 20px;line-height: 1.4;position: relative;margin-bottom: 30px;color: #448aca;font-family: ' NotoSansJP-Bold ';}
.kumiai #section01 .txt{line-height: 1.8;}


.kumiai #section02{padding: 60px 0px;position: relative;}
.kumiai #section02 .index{font-size: 16px;margin-bottom: 1em;font-family: ' NotoSansJP-Bold ';}
.kumiai #section02 .index .fas{font-size: 20px;margin-top: -10px;color: #448aca;}
.kumiai #section02 .name{text-align: right;padding-top: 15px;}

.kumiai .table.gaiyo{border-bottom: 1px solid #eee;}
.kumiai .table.gaiyo th{display: block;background: #fafafa;}
.kumiai .table.gaiyo td{display: block;}
.kumiai .table.gaiyo td .call{color: #222;}

.kumiai .table.history th{display: block;background: #fafafa;}
.kumiai .table.history td{display: block;}

.kumiai .photos li{margin-bottom: 30px;}



@media (min-width:569px) {
.kumiai #section01 .index{font-size: 20px;line-height: 1.7;margin-bottom: 30px;text-align: center;}


}


@media (min-width:768px) {

.kumiai #section01{padding: 80px 0px;}
.kumiai #section01 .index{font-size: 26px;}

.kumiai #section02{padding: 80px 0px;}
.kumiai #section02 .index{font-size: 20px;margin-bottom: 1em;}
.kumiai #section02 .index .fas{font-size: 24px;margin-top: -10px;}
.kumiai #section02 .name{font-size: 1.2em;}

.kumiai .table.gaiyo th{display: table-cell;width: 170px; background: none;}
.kumiai .table.gaiyo td{display: table-cell;width: auto;}

.kumiai .table.history th{display: table-cell;width: 170px;background: #fafafa;}
.kumiai .table.history td{display: table-cell;width: auto;}




}


@media (min-width:992px) {
.kumiai #section01 .index{font-size: 23px;}




}


@media (min-width:1280px) {

.kumiai #section01{padding: 100px 0px;}
.kumiai #section01 .index{font-size: 24px;}

.kumiai #section02{padding: 100px 0px;}
.kumiai #section02 .index{font-size: 23px;margin-bottom: 1.5em;}
.kumiai #section02 .index .fas{font-size: 27px;margin-top: -15px;}

.kumiai .table.gaiyo th{width: 200px; padding: 20px 0px;}
.kumiai .table.gaiyo td{width: auto;padding: 20px 0px;}

.kumiai .table.history th{width: 200px;}

}









/* -----  introduction.html  -----*/

.intro #section01{padding: 60px 0px 0px;position: relative;}
.intro #section01 .table thead th{text-align: center;border-bottom: 3px double #ddd;}


.intro #section02{padding: 60px 0px;position: relative;}


.intro #section03{padding: 60px 0px;position: relative;}




.intro .table {font-size: 13px;line-height: 1.6;border-bottom: 1px solid #eee;}
.intro .table tbody th {white-space: nowrap;padding: 12px 0px;}
.intro .table td {white-space: nowrap;padding: 12px 8px;}
.intro .table td span.call{color: #222;}

.intro .table td:nth-of-type(2){text-align: center;}
 
.intro .table td:nth-of-type(3){text-align:center;}

.intro .photos li{margin-bottom: 30px;}




@media (min-width:569px) {


.intro #section01 .table thead th{text-align: center;border-bottom: 3px double #ddd;}

.intro .table {font-size: 14px;}
.intro .table tbody th {width: 180px;display: table-cell}
.intro .table td {width: auto;padding: 10px 0px;display: table-cell;}

}


@media (min-width:768px) {
.intro #section01{padding: 80px 0px;position: relative;}


.intro #section02{padding: 80px 0px;}

.intro #section03{padding: 80px 0px;}

.intro .table {font-size: 14px;}
.intro .table tbody th {width: 200px;display: table-cell;padding: 15px 0px;}
.intro .table td {width: auto;display: table-cell;padding: 15px;}

.intro #section03 .shop{font-size: 20px;padding-bottom: 15px;margin-bottom: 30px;}


}


@media (min-width:992px) {
.intro .table tbody th{width:  25%;}
.intro .table td:nth-of-type(1){width:  35%;}

.intro .table td:nth-of-type(2){width:  20%;}
 
.intro .table td:nth-of-type(3){width: 20%;}

.intro .map iframe{width: 100%;height: 350px;}


}


@media (min-width:1280px) {
.intro #section02{padding: 100px 0px;}



.intro #section02{padding: 120px 0px;}

.intro #section03{padding:120px 0px;}

.intro .table {font-size: 16px;line-height: 1.6;}
.intro .table tbody th {width: 240px;display: table-cell;padding: 20px 0px;}
.intro .table td {padding: 20px 15px;}




}





/* -----  garbage.html  -----*/

.garbage #section01{padding: 60px 0px;position: relative;}
.garbage #section01 .index{font-size: 20px;line-height: 1.4;position: relative;margin-bottom: 30px;color: #448aca;font-family: ' NotoSansJP-Bold ';}
.garbage #section01 .txt{line-height: 1.8;}
.garbage #section02{padding: 60px 0px;position: relative;}
.garbage #section02 #flow{position:absolute;left:0;top:-80px;}
.garbage #section02 .wrap{position: relative;}
.garbage #section02 .wrap::after {
	position: absolute; /*--positionを追加--*/
	z-index: 1;
	top: 0;
	left: 50%;
	content: "";
	width: 5px; /*--縦線の太さ(幅)--*/
	height: 100%;
	background-color: #448aca; 
}
.garbage #section02 ul{position: relative;z-index: 10;}
.garbage #section02 li{margin-bottom: 30px;}
.garbage #section02 li:last-child{margin-bottom: 0px;}
.garbage #section02 .box{border:2px solid #448aca;padding: 15px;background: white;border-radius: 5px;}
.garbage #section02 .pic{margin-bottom: 15px;}
.garbage #section02 .index{margin-bottom: 1.2em;font-size: 18px; font-family: ' NotoSansJP-Bold ';color: black;line-height: 1.4;text-align: center;}
.garbage #section02 p{line-height: 1.4;}
.garbage #section02 .txt{line-height: 1.4;}

.garbage #section03{padding: 60px 0px;position: relative;}
.garbage #section03 #howto{position:absolute;left:0;top:-80px;}

.garbage #section04{padding: 60px 0px;position: relative;}
.garbage #section04 #types{position:absolute;left:0;top:-80px;}
.garbage #section04 li{margin-bottom: 15px;}
.garbage #section04 .wrap{position:relative;}
.garbage #section04 .box{border:3px solid #F2EDCA;background: white; padding: 15px;border-radius: 10px;position: relative;z-index: 10;}
.garbage #section04 .boxshadow {
    width: 100%;
    height: 100%;
    background-image: url(../images/bg-slash.png);
    background-repeat: repeat;
    position:absolute;
   right: -5px;
    bottom: -5px;
	border-radius: 15px;
	z-index: 1;
}
.garbage #section04 .box .pic{text-align: center; margin-bottom: 15px;}
.garbage #section04 .box .index{text-align: center; font-family: ' NotoSansJP-Bold ';color: black;line-height: 1.4;font-size: 16px;margin-bottom: 15px;}
.garbage #section04 .box .txt{line-height: 1.4;}

.garbage #section05{padding: 60px 0px;position: relative;}
.garbage #section05 #faq{position:absolute;left:0;top:-80px;}
.Qa-Box {
  width: 90%;
  margin: 0 auto;
}

.Qa-Box .Qa {
  padding: 0px 0;
  border-bottom: 1px solid #c8c8c8;
}

.Qa-Box .Qa dt,
.Qa-Box .Qa dd {
  display: flex;
  align-items: baseline;
  margin: 15px 0;
}

.Qa-Box .Qa dt p {
  margin: 0;
  padding-left: 15px;
  font-weight: bold;
  width: 100%;
}

.Qa-Box .Qa dd p {
  margin: 0;
  padding-left: 15px;
  width: 100%;
}

.Qa-Box .Qa:last-of-type {
  border-bottom: none;
}

.Qa-Box .Qa dt::before {
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #6699b7;
  width: 2em;
  height: 2em;
}

.Qa-Box .Qa dd::before {
  content: "A";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #d65556;
  width: 2em;
  height: 2em;
}

@media screen and (max-width:991px) {
  .Qa-Box {
    width: 100%;
  }
}



@media (min-width:569px) {
.garbage #section01 .index{font-size: 20px;line-height: 1.7;margin-bottom: 30px;text-align: center;}
.garbage #section02 .box{display: flex;justify-content: space-between;}
.garbage #section02 .index{margin-bottom: 1.2em;font-size: 18px;text-align: left;}
.garbage #section02 .pic{margin-bottom: 0px;width: 45%;}
.garbage #section02 .txtbox{width: 50%;}
.garbage #section02 p{line-height: 1.4;font-size: 14px;}
.garbage #section04 li{margin-bottom: 30px;}
.garbage #section04 .box .txt{padding: 0px 15px;}

}


@media (min-width:768px) {
.garbage #section01{padding: 80px 0px;}

.garbage #section01 .index{font-size: 26px;line-height: 1.7;margin-bottom: 30px;text-align: center;}

.garbage #section02{padding: 80px 0px;}

.garbage #section03{padding: 80px 0px;}

.garbage #section04{padding: 80px 0px 50px;}

.garbage #section05{padding: 80px 0px;}


}


@media (min-width:992px) {
.garbage #section01 .index{font-size: 26px;line-height: 1.7;margin-bottom: 30px;text-align: center;}

.garbage #section02 #flow{position:absolute;left:0;top:-100px;}
.garbage #section02 .wrap::after {
	position: absolute; /*--positionを追加--*/
	z-index: 1;
	top: 50%;
	left: 0;
	content: "";
	width: 100%; /*--縦線の太さ(幅)--*/
	height: 5px;
	background-color: #448aca; 
}

.garbage #section02 li{margin-bottom: 0px;}
.garbage #section02 .box{display: block;}
.garbage #section02 .index{margin-bottom: 1.2em;font-size: 16px;display: flex;justify-content: center;height: 40px;}
.garbage #section02 .pic{margin-bottom: 15px;width: 100%;}
.garbage #section02 .txtbox{width: 100%;}


.garbage #section03 #howto{position:absolute;left:0;top:-100px;}
.garbage #section04 #types{position:absolute;left:0;top:-100px;}
.garbage #section05 #faq{position:absolute;left:0;top:-100px;}

}



@media (min-width:1280px) {
.garbage #section01{padding: 100px 0px;}
.garbage #section01 .index{font-size: 28px;line-height: 1.7;margin-bottom: 50px;}

.garbage #section02{padding: 100px 0px;}
.garbage #section02 .txt{line-height: 1.8;font-size: 16px;}

.garbage #section03{padding: 100px 0px;}

.garbage #section04{padding: 100px 0px 70px;}
.garbage #section04 .box .txt{padding: 0px 15px;}

.garbage #section05{padding: 100px 0px;}


}


.stepbar {
  position: relative;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;margin-bottom: 80px;
}

.stepbar li {
  position: relative;
  list-style: none;
  text-align: center;
  width: 16.666%;
}
.stepbar li .stepindex {font-family: ' NotoSansJP-Bold ';padding-top: 5px;font-size: 18px;}
.stepbar li .stepindex span{font-family: ' NotoSansJP-Regu ';font-size: 13px;}
.stepbar li p {
  font-weight: normal;
  margin: 10px 10px 0px;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  border:1px solid #ddd;
  padding: 12px;
  border-radius: 7px 7px 0px 0px;
}
.user{font-size: 13px;text-align: center;background:#fae46c;padding: 8px 5px;line-height: 1;margin: 0px 10px;}

.stepbar li:before {
  display: block;
  width: 30px;
  height: 30px;
  margin: 0.5em auto;
  content: "";
  text-align: center;
  border-radius: 50%;
  background-color: #efcb05;
}
.stepbar li:after {
  position: absolute;
  z-index:1;
  top: 1.4em;
  left: -50%;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #efcb05;
}
.stepbar li:first-child:after { content: none;}

@media screen and (max-width: 1199px) {
.stepbar li p {
  font-weight: normal;
  margin: 10px 5px 0px;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  border:1px solid #ddd;
  padding: 15px;
}
.user{font-size: 13px;text-align: center;background:#fae46c;padding: 8px 5px;line-height: 1;margin: 0px 5px;}

}

@media screen and (max-width: 991px) {
.stepbar {
  position: relative;
  margin: 0;
  padding: 0;
  display: block;
  margin-bottom: 50px;
}

.stepbar li {
  position: relative;
  list-style: none;
  text-align: left;
  width: 100%;
  padding-left: 50px;
  display: flex;
  flex-flow: column;
  padding-bottom: 30px;
}
.stepbar li:last-child {padding-bottom: 0;}

.stepbar li .stepindex {font-family: ' NotoSansJP-Bold ';padding-top: 11px;font-size: 18px;margin-bottom: 10px;}
.stepbar li .stepindex span{font-family: ' NotoSansJP-Regu ';font-size: 13px;}
.stepbar li p {
  font-weight: normal;
  margin: 0px 0px;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  border:1px solid #ddd;
  padding: 12px;
}
.user{font-size: 13px;text-align: center;background:#fae46c;padding: 8px 5px;line-height: 1;margin: 0px 0px;}

.stepbar li:before {
  display: block;
  position: absolute;
  left:0;
  top:0;
  width: 30px;
  height: 30px;
  margin: 0.5em auto;
  content: "";
  text-align: left;
  border-radius: 50%;
  background-color: #efcb05;
}
.stepbar li:after {
  position: absolute;
  z-index:1;
  top: 0;
  left: 15px;
  width: 1px;
  height: 100%;
  content: "";
  background-color: #efcb05;
}
.stepbar li:first-child:after {  position: absolute;
  z-index:1;
  top: 10px;
  left: 15px;
  width: 1px;
  height: 100%;
  content: "";
  background-color: #efcb05;
}



}






/* -----  recruit.html  -----*/

.recruit #section01{padding: 60px 0px;position: relative;}
.recruit #section01 .index{font-size: 20px;line-height: 1.4;position: relative;margin-bottom: 30px;color: #448aca;font-family: ' NotoSansJP-Bold ';}
.recruit #section01 .txt{line-height: 1.8;}

.recruit #section02{padding: 60px 0px;position: relative;}
.recruit .info{background: #c00;padding: 10px;color: white;text-align: center;margin: 30px 0px;}
.recruit .infobox{background: #448ACA;padding: 20px 15px;}
.recruit .infobox .txt{color: white;text-align: center;letter-spacing: 0;font-size: 16px;font-family: ' NotoSansJP-Bold ';margin-bottom: 1em;}
.recruit .infobox .tel{color: white;text-align: center;letter-spacing: .1rem;font-size: 26px;font-family: ' NotoSansJP-Bold ';margin-bottom: 0em;}
.recruit .infobox .tel span{color: white;}
.recruit .infobox .time{color: white;text-align: center;font-size: 13px;}


.recruit .table {border-bottom:none;font-size: 13px;line-height: 1.6;}
.recruit .table th {width: 100%;display: block;border-top:none;border-bottom: 1px solid #ddd;color: #448aca;}
.recruit .table td {width: 100%;display: block;padding: 10px 10px 10px 20px;border-top:none;border-bottom: 1px solid #ddd;border-right: none;}



@media (min-width:569px) {
.recruit #section01 .index{text-align: center;}

.recruit .infobox{background: #448ACA;padding: 20px 15px;}
.recruit .infobox .txt{color: white;text-align: center;letter-spacing: 0;font-size: 16px;font-family: ' NotoSansJP-Bold ';margin-bottom: 1em;}
.recruit .infobox .tel{color: white;text-align: center;letter-spacing: .1rem;font-size: 26px;font-family: ' NotoSansJP-Bold ';margin-bottom: 0em;}
.recruit .infobox .tel span{color: white;}
.recruit .infobox .time{color: white;text-align: center;font-size: 13px;}

.recruit .table {border-bottom:none;font-size: 14px;line-height: 1.6;}
.recruit .table th {width: 180px;display: table-cell;border-top:none;}
.recruit .table td {width: auto;display: table-cell;padding: 10px 10px 10px 20px;border-top:none;}

}

@media (min-width:768px) {
.recruit #section01{padding: 80px 0px;}
.recruit #section01 .index{font-size: 23px;}



.recruit #section02{padding: 80px 0px;position: relative;}
.recruit .infobox{background: #448ACA;padding: 30px 40px;}
.recruit .infobox .txt{font-size: 18px;margin-bottom: 1.3em;}
.recruit .infobox .tel{letter-spacing: .1rem;font-size: 30px;}
.recruit .infobox .time{font-size: 14px;}




.recruit .table {border-bottom:none;font-size: 15px;line-height: 1.6;}
.recruit .table th {width: 200px;display: table-cell;border-top:none;}
.recruit .table td {width: auto;display: table-cell;padding: 10px 10px 10px 20px;border-top:none;}


}


@media (min-width:992px) {

.recruit #section01 .txt{text-align: center;}
.recruit .info{background: #c00;padding: 15px;color: white;text-align: center;font-size: 1.1em;margin: 80px 0px;}


}


@media (min-width:1280px) {
.recruit #section01{padding: 100px 0px;}
.recruit #section01 .index{font-size: 26px;line-height: 1.6;}

.recruit #section02{padding: 100px 0px;position: relative;}
.recruit .infobox{background: #448ACA;padding: 50px 80px;}
.recruit .infobox .txt{font-size: 24px;margin-bottom: 1.5em;}
.recruit .infobox .tel{letter-spacing: .2rem;font-size: 34px;}
.recruit .infobox .time{font-size: 16px;}

.recruit #section03{padding: 100px 0px;position: relative;}

.recruit .table {border-bottom:none;font-size: 16px;line-height: 1.6;}
.recruit .table th {width: 220px;display: table-cell;border-top:none;padding: 22px 10px;}
.recruit .table td{padding: 22px 15px;}

}












/* -----  contact-box ------- */

.contact #section01{padding: 60px 0px;clear: both;position: relative;}
.contact #section01 li{margin-bottom: 10px;}
.contact #section01 li:last-child{margin-bottom: 0px;}
.contact #section01 .info{margin-bottom: 30px;}
.contact #section01 .index{margin-bottom: 20px;font-family: ' NotoSansJP-Bold ';text-align: center;font-size: 17px;}
.contact-box{padding:25px 15px;}
.contact-box p.tel{text-align:center;font-size: 24px;margin-bottom: 5px;}
.contact-box p.tel span{font-size: 30px;color: #222;}
.contact-box p.time{font-size: 12px;color: #666;text-align: center;}
.contact-box p.time span{margin-left: 15px;}


.contact #section02{padding: 60px 0px 60px;position: relative;}
.contact #section02 .txt{margin-bottom: 40px}
.contact span.hissu{background: red;color: white;padding: 3px 5px;border-radius: 5px;font-size: 12px;margin-right: 5px;}



.contact .table{border-bottom: 1px solid #ddd;}
.contact .table th{width: 100%;display: block;background: none!important;border-top:1px solid #ddd;border-bottom:none;}
.contact .table td{width: 100%;display: block;background: none!important;border-right: none;border-top:1px solid #ddd;border-bottom:none;}
.contact .table th span.hissu{background: red;color: white;padding: 0px 5px;border-radius: 5px;float: right;font-size: 12px;margin-right: 0;;}


.contact h4{font-weight: 500;margin-bottom: 15px;font-size: 20px;}


.tenpu label {
 display: inline-block;
 position: relative;
 background: #ccc;
 color:#fff;
 font-size: 14px;
 padding: 5px 15px;
 border-radius: 4px;
 transition: all 0.3s;
 cursor: pointer!important;
 margin: 2px 0px;
}
.tenpu label:hover {
 background: #888;
}
.tenpu label input {
 position: absolute;
 left:0;
 top:0;
 opacity: 0;
 width: 100%;
 height: 100%;
}
.tenpu .filename {
 font-size: 14px!important;
 margin:0 0 0 10px;
 display: inline-block!important;
}



@media (min-width: 569px) {
.contact #section01 .index{margin-bottom: 20px;font-family: ' NotoSansJP-Bold ';text-align: center;font-size: 16px; height: calc( 1.4em * 3 ); line-height: 1.4; display: block;align-items: center;}
.contact-box{padding:25px 10px;}
.contact-box p.tel{text-align:center;font-size: 18px;}
.contact-box p.tel span{font-size: 22px;color: #222;}
.contact-box p.time{font-size: 12px;color: #666;text-align: center;height: calc( 1.4em * 2 );line-height: 1.4;display: block;align-items:flex-start;}
.contact-box p.time span{margin-left: 0px;display: block;}


}


@media (min-width: 768px) {

.contact #section01{padding: 80px 0px 90px;}


.contact #section02{padding: 80px 0px 80px;}



.contact .table th{width: 250px;display:table-cell;font-weight: normal;vertical-align: middle;}
.contact .table td{width: auto;display:table-cell;}





}


@media (min-width: 992px) {

.contact-box{padding:25px 10px;}
.contact #section01 .index{margin-bottom: 20px;font-family: ' NotoSansJP-Bold ';text-align: center;font-size: 18px; height: calc( 1.4em * 3 ); line-height: 1.4; display: block;align-items: center;}

.contact-box p.tel{text-align:center;font-size: 22px;}
.contact-box p.tel span{font-size: 26px;color: #222;}
.contact-box p.time{font-size: 12px;color: #666;text-align: center;height:auto;line-height: 1.4;display: block;align-items:flex-start;}
.contact-box p.time span{margin-left: 15px;display: inline;}


.contact #section02 .txt{margin-bottom:50px}

}


@media (min-width: 1140px) {


.contact .table th{width: 280px;display:table-cell;font-weight: normal;}
.contact h4{font-weight: 500;margin-bottom: 25px;font-size: 26px;}


}


@media (min-width: 1280px) {

.contact #section01{padding: 100px 0px;}
.contact-box{padding:30px 10px;}
.contact #section01 .index{margin-bottom: 20px;font-family: ' NotoSansJP-Bold ';text-align: center;font-size: 20px; height: calc( 1.4em * 3 ); line-height: 1.4; display: block;align-items: center;}
.contact-box p.tel{text-align:center;font-size: 22px;}
.contact-box p.tel span{font-size: 30px;color: #222;}
.contact-box p.time{font-size: 13px;color: #666;text-align: center;height:auto;}



.contact #section02{padding: 100px 0px 100px;}



}



.doi-box{background:#fff;padding: 30px 15px;border-radius: 15px;}
.doi-box label{font-size: 13px;margin-bottom: 15px;}
.doi-box p a{color: #F46A02;font-size: 15px;transition: .3s;font-weight: bold;}
.doi-box p a:hover{color: #333;}
.doi-box .btn-lg{font-size: 13px;padding: 7px 5px;}

@media (min-width: 768px) {
.doi-box label{font-size: 14px;margin-bottom: 20px;}
.doi-box .btn-lg{font-size: 14px;padding: 7px 10px;}
}

@media (min-width: 1140px) {
.doi-box{background:#fff;padding: 50px 15px;border-radius: 15px;}

.doi-box .btn-lg{font-size: 16px;padding: 15px 50px;}
}





.form-s{width:70px}
.form-m{width:150px}
.form-name{width:99%;}
.form100{width:99%}
.form-h{ height:80px}
.needinput{background-color:#fafafa;border:1px solid #ddd}
input ,select {
    position:relative;
	color: #111;
	font-size: 13px;
}
input[type="checkbox"], input[type="radio"] {vertical-align:middle;position: relative;top:-2px;}
input{font-size:100%;vertical-align:middle; padding:12px;}
input[type="text"], select{border:1px solid #ddd;}
input,textarea { outline:0; padding:12px;border-radius: 7px; }
textarea{border:1px solid #ccc;width:99%;color: #111;}

input::placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
input::-webkit-input-placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
input:-ms-input-placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
input::-moz-placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
textarea::placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
textarea::-webkit-input-placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
textarea:-ms-input-placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}
textarea::-moz-placeholder {
	color: #ccc;font-size: 13px;letter-spacing: 0.08rem;
}


@media (min-width: 768px) {
.form-name{width:350px;}

}



/*-----------------------------------------------------------------------------
print css
-----------------------------------------------------------------------------*/
@media print {
body {padding-top: 100px;}
.aos-init { opacity: 1 !important; transform: none !important; }
.cb-header2 {display: none!important;}
.site-header{
position: absolute;
	display: flex;
	justify-content: space-between;
	width: 100%;
	z-index: 99;
	top:0;
}
.header{width: 100%; display: flex;justify-content: space-between; align-items: center;height: 100px;position: relative;z-index: 10;}
.top-logo {display: block;position:relative;margin-left: 20px;}
a .top-logo{color: #448aca;font-size: 20px;}
a .top-logo h1{color: #448aca;font-size: 13px;}

.navarea{display: flex;align-items: center;}
.navbar-nav{  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  list-style: none;
}
.navbar-nav li{ text-align: center;position: relative;}
.navbar-nav li.nav-item{margin: 0px 7px;}
.navbar-nav li a{color: #222; transition: .3s;line-height: 1;position: relative;display: inline-block;}
.navbar-nav li.active{ position: relative;border-bottom: 3px solid rgba(68,138,202,1);}
.dropdown:hover > .dropdown-menu{display: none;}
.navarea .btnset {margin-right: 20px;}
.navarea .btnset a {transition: .3s;width: 50px;height: 50px;line-height: 50px;background: #448aca;display: block;color: white;text-align: center;font-size: 18px;}

.main{ height: 500px;}
.slide-img {height: 500px;}
.home #section01{width: 100%;padding: 100px 0px;}
.home #section02{padding: 100px 0px;}
.home #section03{padding: 100px 0px;}
.h2area{height: 350px; position: relative;}


.kumiai .table.gaiyo th{display: table-cell;width: 200px; background: none;}
.kumiai .table.gaiyo td{display: table-cell;width: auto;}
.kumiai .table.history th{display: table-cell;width: 200px;background: #fafafa!important;}
.kumiai .table.history td{display: table-cell;width: auto;}

.garbage #section02 .wrap::after {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 0;
	content: "";
	width: 100%; 
	height: 5px;
	background-color: #448aca; 
}
.garbage #section02 li{margin-bottom: 0px;}
.garbage #section02 .box{display: block;}
.garbage #section02 .index{margin-bottom: 1.2em;font-size: 16px;display: flex;justify-content: center;height: 40px;}
.garbage #section02 .pic{margin-bottom: 15px;width: 100%;}
.garbage #section02 .txtbox{width: 100%;}









.intro #section01{padding: 80px 0px 120px;position: relative;}
.intro .table th {width: 200px;display: table-cell;background: none!important;}
.intro .table td {width: auto;display: table-cell;background: none!important;}

.recruit .table {border-bottom:none;font-size: 14px;line-height: 1.6;}
.recruit .table th {width: 180px;display: table-cell;border-top:none;border-bottom: 1px solid #999;background: none!important;}
.recruit .table td {width: auto;display: table-cell;padding: 10px 10px 10px 20px;border-top:none;border-bottom: 1px solid #ddd;border-right: none;background: none!important;}


.contact .table th{width: 250px;display:table-cell;font-weight: normal;vertical-align: middle;background: none!important;}
.contact .table td{width: auto;display:table-cell;background: none!important;}

footer .logo{text-align: left;margin-bottom: 15px;}
footer .address{text-align: left;letter-spacing: 0;}
footer .tel{text-align: left;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0px;margin-bottom: 15px;display: flex;flex-flow: wrap;justify-content: center;}
.footer-menu li {width: auto;padding-bottom: 0px;}
.footer-menu li a{text-decoration: none;text-align: left; padding: 15px 0px; border-bottom: none; border-right: none; line-height: 1;font-size: 14px;}

.copy{font-size: 12px;padding: 10px 0px;}

.drawer_menu{display: none!important;}


#pagetop {display: none!important;}
.no-print{display: none!important;}
.mb30-xs2{margin-bottom: 0px;}

}
