@charset "UTF-8";

/* -----------------
■ デフォルトリセット
------------------- */

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
    display: block;
}

a, abbr, acronym, address, blockquote, body, caption, code, dd, del, dfn, div, dl, dt, em, fieldset, form, h1, h2, h3, h4, h5, h6, html, iframe, img, label, legend, li, object, ol, p, pre, q, span, table, tbody, td, tfoot, th, thead, tr, ul {
    border: 0 none;
    border-collapse: collapse;
    color: inherit;
    font-style: inherit;
    font-weight: inherit;
    list-style-type: none;
    margin: 0;
    outline: medium none;
    padding: 0;
    text-decoration: none;
    vertical-align: baseline;
	line-height: 1.6em;
}

body {
    margin: 0;
    position: relative;
}

/* -----------------
■ 構成
------------------- */

.MainWrap,.modal {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 300;
  margin-bottom: 80px;

  scroll-behavior: smooth;
  @media (prefers-reduced-motion: reduce) {
  scroll-behavior: auto;
  }
  
}


@media only screen and (max-width: 767px) {

	.PC {
	display: none !important;
	}

}

@media print, screen and (min-width: 768px) {

	.SP {
	display: none !important;
	}

}


/* -----------------
■ 汎用
------------------- */

.lh0 {
    line-height: 0;
}

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


/* -----------------
■ Media Queries
------------------- */

.pc {
display: block;
}

@media screen and (max-width: 767px) {
    .pc {
    display: none !important;
    }
}

.sp {
display: block;
}

@media screen and (min-width: 768px) {
    .sp {
    display: none !important;
    }
    .tablet {
    display: none !important;
    }
}