@charset "utf-8";

/*--------------------------------------------
エージェント別
--------------------------------------------*/
.u-pc { display: block !important; }
.u-pc__inline { display: inline !important; }
.u-sp { display: none !important; }
.u-sp__inline { display: none !important; }
/********* sp *********/
@media only screen and (max-width: 750px) {
.u-pc { display: none !important; }
.u-pc__inline { display: none !important; }
.u-sp { display: block !important; }
.u-sp__inline { display: inline !important; }
}


/*--------------------------------------------
文字寄せ
--------------------------------------------*/
.u-txt_c {
  text-align:  center;
}

.u-txt_r {
  text-align: right;
}


/*--------------------------------------------
フォント
--------------------------------------------*/
/* ゴシック 300 400 500 */
.u-font-noto {
  font-family: 'Noto Sans JP', sans-serif;
}

/* 明朝 300 400 500 600  */
.u-font-noto_serif {
  font-family: 'Noto Serif JP', serif;
}

/* 英文ゴシック 400 500 700 */
.u-font-roboto {
  font-family: 'Roboto', sans-serif;
}

/* 英文明朝 */
.u-font-times {
  font-family: "Times New Roman", Times, "serif";
}


/*--------------------------------------------
オンマウスで画像拡大
--------------------------------------------*/
.u-img_over {
  display: block;
  overflow: hidden;
  width: 100%;
  position: relative;
}

.u-img_over img {
  display: block;
  transform: scale(1);
  transition-duration: 0.5s;
}

/********* pc *********/
@media only screen and (min-width: 751px) {
  .u-img_over:hover img,
  img.u-img_zoom {
    transform: scale(1.1);
    transition-duration: 0.5s;
  }
}


/*--------------------------------------------
ページTOPへ戻るボタン
--------------------------------------------*/
.u-btn-pagetop {
  position: fixed;
  right: 40px;
  bottom: 40px;
  width: 70px;
  height: 70px;
  border: solid 1px #e8e6e6;
  border-radius: 50%;
  background: rgba(255,255,255,0.9);
  z-index: 10;
  cursor: pointer;

}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .u-btn-pagetop {
    position: fixed;
    right: 4vw;
    bottom: 4vw;
    width: 14vw;
    height: 14vw;
  }
}

.u-btn-pagetop::before {
  content: "";
  background: url(../images/pagetop_arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-position: center;
  background-size: 14px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .u-btn-pagetop::before {
  background-size: 2.8vw;
  }
}

/********* pc *********/
@media only screen and (min-width: 751px) {
  .u-btn-pagetop:hover {
    background: #606642;
    transition: 0.5s ease-in-out;
  }

  .u-btn-pagetop:hover::before {
    content: "";
    background: url(../images/pagetop_arrow_hover.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px;
  }
}


/*--------------------------------------------
オンマウスでテキストアンダーライン
--------------------------------------------*/
.u-underline {
  display: inline-block;
  position: relative;
  padding-bottom: 0.3em;
  overflow: hidden;
}

.u-underline::before {
  content: "";
  background: #fff;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: -100%;
  transition-duration: 0.2s;
}

.u-underline.-black::before {
  background: #000;
}

.u-underline.-gray::before {
  background: #8d919f;
}


/*--------------------------------------------
coming soon（ツールチップ）
--------------------------------------------*/
.tippy-tooltip {
  background-color: transparent;
	border-radius: 0;
}

.tippy-tooltip.white-theme * {
	color: #000;
	background-color: #fff;
}

.tippy-tooltip.black-theme * {
	color: #fff;
	background-color: #000;
}

.comingsoon-w, .comingsoon-b {
	cursor: pointer;
}


/********* pc *********/
@media only screen and (min-width: 751px) {
  .u-underline:hover::before {
    left: 0;
    transition-duration: 0.2s;
  }
}
