@charset "UTF-8";
/* CSS Document */

/***
* common_sp.css
*/

@media only print, only screen and (min-width: 18.75em){
	
.tab,
.pc,
.pc_tab{
	display:none;
}

.sp{
	display:block;
}

.hover:hover{
	opacity:1;
	filter:alpha(opacity=100);
}

.hyphen{
  position: relative;
  top: -0.5vw;
}

a{
  color: #000;
  transition-duration: 0.5s;
}

.btn{
  padding: 1px 6px;
  color: #000;
  background: #fff;
  border: 1px solid #000;
  font-size: 13px;
  text-align: center;
  transition-duration: 0.5s;
}

.jp{
  font-family: 'Neue Haas Grotesk Disp W01_55Rm', a-otf-gothic-bbb-pr6n, sans-serif;
  font-feature-settings: "palt" 1;
}

/***
* layout
*/

#wrapper{
  opacity: 0;
}

/* header */

#header{
  width: 100%;
  position: fixed;
  top: -50px;
  z-index: 3333;
  opacity: 1;
  visibility: visible;
  transition-duration: 0.5s;
}

#header.show{
  top: 0;
}

#header.positive .path{
  fill: #fff;
}

#header.positive,
#header.positive a,
#header.positive #nav a{
  color: #fff;
}

#btnMenu{
  position: absolute;
  top: 13px;
  left: 10px;
  font-size: 12px;
}

#nav{
  display: inline-block;
  position: absolute;
  top: 36px;
  left: 10px;
  font-size: 12px;
  line-height: 1.6;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}

#nav.is-open{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#nav li{
  margin-right: 0;
  padding: 0 6px;
  display: block;
  width: max-content;
  position: relative;
}

#nav li:last-child{
  margin-bottom: 0;
}

#nav li::before{
  content: '(';
  position: absolute;
  top: 0;
  left: -10px;
  opacity: 0;
  transition-duration: 0.5s;
}

#nav li::after{
  content: ')';
  position: absolute;
  top: 0;
  right: -10px;
  opacity: 0;
  transition-duration: 0.5s;
}

#nav li.active::before{
  left: 0;
  opacity: 1;
  transition-duration: 0.5s;
}

#nav li.active::after{
  right: 0;
  opacity: 1;
  transition-duration: 0.5s;
}

#logo{
  width: 130px;
  margin: 0 auto;
  padding: 10px 0 14px;
}

#btnOnline{
  position: absolute;
  top: 11px;
  right: 10px;
  font-size: 11px;
  display: block;
}

#header.positive .btn{
  background: transparent;
  border: 1px solid #fff;
}

/* main */

#main{
  margin-bottom: 160px;
}

/* footer */

#footer{
  text-align: center;
}

#footerLogo{
  width: 35px;
  margin: 0 auto 30px;
}

#footerNav{
  margin-bottom: 140px;
}

#footerNav li{
  margin-right: 0;
  font-size: 19px;
  line-height: 2;
  display: block;
}

#footerNav li::after{
}

#copyright{
  padding-bottom: 20px;
  font-size: 8px;
  line-height: 1.5;
}

}
