@charset "utf-8";

/*
==============
base.css
==============
*/

/* -----------------
■ デフォルトリセット
------------------- */
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0 none;
	border-collapse: collapse;
	color: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	list-style-type: none;
	margin: 0;
	padding: 0;
	table-layout: fixed;
	text-decoration: none;
	vertical-align: baseline;
}




/* -----------------
■ フォント
------------------- */
body {
	font-family: 'milano', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	-webkit-text-size-adjust: 100%;
}

@font-face {
  font-family: 'milano';
  src: url('../fonts/font.woff2') format('woff2'),
       url('../fonts/font.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}




/* -----------------
■ 全体
------------------- */
:root {
  --scrollbar: 0;
  --customW: 1 * 1px;
}

/* calc(0 / var(--customW)) */

html {
	font-size: 62.5%;
}

body {
  min-height: 0px;
}

img {
	max-width: 100%;
	vertical-align: middle;
}

.js-fadein {
	opacity: 0;
	transition: opacity 1s ease;
}

.js-fadein.is-show {
	opacity: 1;
}


@media screen and (max-width: 767px)
{
	:root {
	  --w: 390;
	  --customW: var(--w) * 100vw;
	}

  body {
    min-height: 1px;
  }

	img {
		width: 100%;
	}

} /* media end */




/* -----------------
■ ヘッダー
------------------- */
.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px 60px 0;
}

.header__logo a {
  display: block;
  position: relative;
  line-height: 0;
}

.gnav {
  display: flex;
  gap: 0 55px;
}

.gnav__item a {
  position: relative;
  color: #fa0500;
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.14em;
}

.gnav__item.is-current a::after,
.header__logo.is-current a:after {
  content: "";
  position: absolute;
  left: 50%;
  width: 50px;
  height: 1px;
  transform: translateX(-50%);
  background-color: #fa0500;
}

.gnav__item.is-current a::after {
  top: 57%;
}

.header__logo.is-current a:after {
  top: 50%;
  width: 60px;
}


@media screen and (max-width: 767px)
{
  .header {
    padding: calc(40 / var(--customW)) calc(35 / var(--customW)) 0;
  }

  .gnav {
    gap: 0 calc(50 / var(--customW));
  }

  .gnav__item a {
    font-size: calc(12 / var(--customW));
  }

  .gnav__item.is-current a::after {
    width: calc(50 / var(--customW));
  }

} /* media end */




/* -----------------
■ 汎用
------------------- */
.lh0 { line-height: 0; }

.clearfix:after{
	content: ".";
	display: block; 
	clear: both; 
	height: 0; 
	font-size:0;	
	visibility:hidden;
}


@media screen and (min-width: 768px)
{
	.spEle,
	.spEleIn {
		display: none;
	}

	.pcEleIn {
		display: inline-block;
	}


} /* media end */


@media screen and (max-width: 767px)
{
	.pcEle,
	.pcEleIn {
		display: none;
	}

	.spEleIn {
		display: inline-block;
	}


} /* media end */


