/* CSS Document */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■   　デフォルト   　■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

html, body, div, span, iframe,article,figure,
p, a, img, small, dl, dt, dd, ol, ul, li,
h1, h2, h3, h4, h5,h6{
  border: 0;
  margin: 0;
  padding: 0;
}

html, body, div, span, iframe,article,figure,
p, a, img, small, dl, dt, dd, ol, ul, li{
  font-size:14px;
  letter-spacing: 0.05em;
  color: #57656e;
  font-family: "zen-kaku-gothic-new", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-feature-settings: "palt";
}
html{
  opacity: 0;
  transition: 1.2s ease all;
  scroll-behavior: smooth;
}

html.wf-active{
  opacity: 1;
}

.bold{
  font-family: "zen-kaku-gothic-new", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.en_reg{
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.en_mid{
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.en_bold{
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 700;
  font-style: normal;
}


input[type="text"],
input[type="submit"],
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}


select::-ms-expand {
  display: none;
}


h1, h2{
  font-family: noto-sans,serif;
  font-weight: 700;
  font-style: normal;  
}

h3,h4, h5,h6{
  font-family: noto-sans,serif;
  font-weight: 500;
  font-style: normal;
}
h3{
  letter-spacing:0.1em;
}


html,body {
  line-height: 1;
  width: 100%;
  min-height: 100vh;
  height: auto;
  position: relative;
  min-width:1000px;
}
ol, ul {
  list-style: none;
}
a{
  outline:none;
  text-decoration:none;
  cursor: pointer;
}
a,
a * {
  cursor: pointer !important;
}
a img {
  border: none;
  border-style:none;
}

img{
  width: 100%;
  height: auto;
  vertical-align: top;
}

li{
  list-style:none;
}
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}


header{
  width: 100%;
  position: relative;
  z-index: 1000;

}
header .wrap{
  width: 80%;
  max-width:1200px;
  padding: 25px 0 20px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
header .wrap h1{
  width: 160px;
}
header .wrap nav ul{
  display: flex;
  flex-wrap: wrap;
}
header .wrap nav ul li{
  padding-left: 25px;
}
header .wrap nav ul li a{
  display: block;
  font-size: 14px;
  line-height:40px;
  cursor: pointer;
  user-select: none;
  transition: 0.2s all ease;
}
header .wrap nav ul li a:hover{
  color:#82cdde;
}



#top .mv{
  width: 100%;
  position: relative;
  z-index:1;
}

#top .product{
  background:#FFF;
  position: relative;
  width: 1100px;
  margin:-80px auto 0;
  z-index: 2;
  border-radius: 50px;
  margin-bottom: 100px;
}

#top .product .wrap{
  width: 950px;
  margin: 0 auto;
  padding-top:70px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top .product .wrap h2{
  width:200px;
  font-size:36px;
}
#top .product .wrap h2 span{
  display: block;
  font-size:14px;
  padding-top: 10px;
  color: #b5c4c9;
}

#top .product .wrap ul{
  width:650px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top .product .wrap ul li{
  width:300px;
}
#top .product .wrap ul li dl dt{
  margin-bottom: 15px;
}
#top .product .wrap ul li dl dd{
  font-size:14px;
  text-align: center;
}

#top .product .wrap ul li dl dt a{
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background:#b5c4c9;
}
#top .product .wrap ul li dl dt a img{
  transition: all ease 0.3s;
}
#top .product .wrap ul li dl dt a:hover img{
  transform: scale(1.03);
  opacity: 0.8;
}
#top .sec02{
  width: 950px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top .sec02 h2{
  width:200px;
  font-size:36px;
}
#top .sec02 h2 span{
  display: block;
  font-size:14px;
  padding-top: 10px;
  color: #b5c4c9;
}

/* ulのスクロール出現 */
#top .sec02 ul{
  width:650px;
}

#top .sec02 ul li dl{
  display: flex;
  flex-wrap: wrap;
}
#top .sec02 ul li dl dt{
  width:200px;
  border-bottom: 1px solid #b5c4c9; 
  color: #57656e;
  padding: 15px 0;
  box-sizing: border-box;
  font-size: 14px;
  list-style: 28px;
}
#top .sec02 ul li dl dd{
  width:450px;
  border-bottom:1px solid #b5c4c9;
  color: #57656e;
  padding: 15px;
  box-sizing: border-box;
  font-size: 14px;
  list-style: 28px;
}
#top .sec02 .accessmap{
  width: 700px;
  height:400px;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 10px;
}
#top .sec02 .accessmap iframe{
  width: 100%;
  height: 100%;
}

/*
#top .sec02 ul li,
#top .sec02 .accessmap{
  transition:all 0.8s ease;
  opacity: 0;
  transform: translateY(20px);
}
#top .sec02.is-active ul li,
#top .sec02.is-active .accessmap{
  opacity:1;
  transform: translateY(0px);
}
#top .sec02 ul li:nth-child(1){transition-delay: 0.2s;}
#top .sec02 ul li:nth-child(2){transition-delay: 0.3s;}
#top .sec02 ul li:nth-child(3){transition-delay: 0.4s;}
#top .sec02 ul li:nth-child(4){transition-delay: 0.5s;}
#top .sec02 ul li:nth-child(5){transition-delay: 0.6s;}
#top .sec02 ul li:nth-child(6){transition-delay: 0.7s;}
#top .sec02 ul li:nth-child(7){transition-delay: 0.8s;}
#top .sec02 ul li:nth-child(8){transition-delay: 0.9s;}
#top .sec02 ul li:nth-child(9){transition-delay: 1s;}
#top .sec02 .accessmap{transition-delay: 1.1s;}
*/
footer{
  padding:100px 0 30px;
}

footer h2{
  width:100px;
  margin: 0 auto 20px;
}
footer small{
  font-size: 12px;
  text-align: center;
  display: block;
}







