@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@500;600&display=swap);
@font-face {
  font-family: 'Yu Gothic';
  src: local("Yu Gothic Medium");
  font-weight: 100
}
@font-face {
  font-family: 'Yu Gothic';
  src: local("Yu Gothic Medium");
  font-weight: 200
}
@font-face {
  font-family: 'Yu Gothic';
  src: local("Yu Gothic Medium");
  font-weight: 300
}
@font-face {
  font-family: 'Yu Gothic';
  src: local("Yu Gothic Medium");
  font-weight: 400
}
@font-face {
  font-family: 'Yu Gothic';
  src: local("Yu Gothic Bold");
  font-weight: bold
}
/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html,
body,
body div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
figure,
footer,
header,
menu,
nav,
section,
time,
mark,
audio,
video,
details,
summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent
}
article,
aside,
figure,
footer,
header,
nav,
section,
details,
summary {
  display: block
}
/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit
}
/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%
}
/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll
}
/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none
}
blockquote,
q {
  quotes: none
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}
del {
  text-decoration: line-through
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help
}
/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0
}
th {
  font-weight: bold;
  vertical-align: bottom
}
td {
  font-weight: normal;
  vertical-align: top
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}
input,
select {
  vertical-align: middle
}
pre {
  white-space: pre;
  /* CSS2 */white-space: pre-wrap;
  /* CSS 2.1 */white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */word-wrap: break-word/* IE */
}
input[type="radio"] {
  vertical-align: text-bottom
}
input[type="checkbox"] {
  vertical-align: bottom
}
.ie7 input[type="checkbox"] {
  vertical-align: baseline
}
.ie6 input {
  vertical-align: text-bottom
}
select,
input,
textarea {
  font: 99% sans-serif
}
table {
  font-size: inherit;
  font: 100%
}
small {
  font-size: 85%
}
strong {
  font-weight: bold
}
td,
td img {
  vertical-align: top
}
/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative
}
sup {
  top: -0.5em
}
sub {
  bottom: -0.25em
}
/* standardize any monospaced elements */
pre,
code,
kbd,
samp {
  font-family: monospace,sans-serif
}
/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer
}
/* Webkit browsers add a 2px margin outside the chrome of form elements */
button,
input,
select,
textarea {
  margin: 0
}
/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible
}
/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic
}
/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before,
.clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden
}
.clearfix:after {
  clear: both
}
.clearfix {
  zoom: 1
}
html,
body {
  -webkit-text-size-adjust: 100%
}
html {
  font-size: 62.5%
}
body {
  font-family: "Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.625;
  word-wrap: break-word;
  color: #333;
  background-color: #fff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased
}
a {
  text-decoration: none;
  color: #333;
  outline: none
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom
}
.dis-pc {
  display: block
}
.dis-sp {
  display: none
}
@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.57;
    letter-spacing: 0.28px
  }
  .dis-pc {
    display: none
  }
  .dis-sp {
    display: block
  }
}
.clearfix:after {
  content: '';
  display: block;
  clear: both
}
.container {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto
}
header {
  max-width: 1280px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 25px
}
header h1 {
  width: 50%
}
header .nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
header .nav li {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  margin-left: 30px
}
header .nav li a:hover {
  color: #d2d2d2
}
header #nav-btn-check {
  display: none
}
@media screen and (max-width: 768px) {
  header {
    max-width: 100%;
    display: block;
    padding: 15px
  }
  header h1 {
    width: 36.5%
  }
  header .nav-btn {
    position: absolute;
    top: 4vw;
    right: 3.5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 30px;
    width: 30px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 10;
    border: 2px solid #000;
    border-radius: 2px
  }
  header .nav-content {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.95);
    -webkit-transition: opacity 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: opacity 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    text-transform: uppercase;
    z-index: 1;
    visibility: hidden
  }
  header input:checked ~ .nav-content {
    opacity: 1;
    visibility: inherit
  }
  header .nav {
    width: 67.5%;
    margin: 17vh auto 0;
    display: block
  }
  header .nav li {
    border-bottom: solid 1px #000;
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 0
  }
  header .nav li:first-child {
    border-top: 1px solid #000
  }
  header .nav li a {
    display: block;
    width: 100%;
    padding: 25px 15px 25px 0;
    position: relative
  }
  header .nav li a::after {
    content: "";
    width: 9px;
    height: 9px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 15px;
    top: 43%;
    -webkit-transition: right 500ms ease;
    transition: right 500ms ease
  }
  header .nav li:hover a::after {
    right: 2%
  }
  .nav-btn,
  .nav-btn span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
  }
  .nav-btn {
    position: relative;
    width: 30px;
    height: 30px;
    background: none;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
  }
  .nav-btn span {
    position: absolute;
    width: 80%;
    height: 2px;
    background-color: #000;
    border-radius: 4px
  }
  .nav-btn span:nth-of-type(1) {
    top: 5px
  }
  .nav-btn span:nth-of-type(2) {
    top: 12px
  }
  .nav-btn span:nth-of-type(3) {
    bottom: 5px
  }
  .nav-btn span:nth-of-type(1) {
    -webkit-animation: bar01 .5s forwards;
    animation: bar01 .5s forwards
  }
  @-webkit-keyframes bar01 {
    0% {
      -webkit-transform: translateY(7px) rotate(-45deg);
      transform: translateY(7px) rotate(-45deg)
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
  }
  @keyframes bar01 {
    0% {
      -webkit-transform: translateY(7px) rotate(-45deg);
      transform: translateY(7px) rotate(-45deg)
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
  }
  .nav-btn span:nth-of-type(2) {
    -webkit-animation: bar02 .5s forwards;
    animation: bar02 .5s forwards
  }
  @-webkit-keyframes bar02 {
    0% {
      opacity: 0
    }
    100% {
      opacity: 1
    }
  }
  @keyframes bar02 {
    0% {
      opacity: 0
    }
    100% {
      opacity: 1
    }
  }
  .nav-btn span:nth-of-type(3) {
    -webkit-animation: bar03 .5s forwards;
    animation: bar03 .5s forwards
  }
  @-webkit-keyframes bar03 {
    0% {
      -webkit-transform: translateY(-7px) rotate(45deg);
      transform: translateY(-7px) rotate(45deg)
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
  }
  @keyframes bar03 {
    0% {
      -webkit-transform: translateY(-7px) rotate(45deg);
      transform: translateY(-7px) rotate(45deg)
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
  }
  header #nav-btn-check:checked ~ .nav-btn {
    position: fixed
  }
  header #nav-btn-check:checked ~ .nav-btn span:nth-of-type(1) {
    -webkit-animation: active-bar01 .5s .3s forwards;
    animation: active-bar01 .5s .3s forwards
  }
  @-webkit-keyframes active-bar01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
    100% {
      -webkit-transform: translateY(7px) rotate(-45deg);
      transform: translateY(7px) rotate(-45deg)
    }
  }
  @keyframes active-bar01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
    100% {
      -webkit-transform: translateY(7px) rotate(-45deg);
      transform: translateY(7px) rotate(-45deg)
    }
  }
  header #nav-btn-check:checked ~ .nav-btn span:nth-of-type(2) {
    -webkit-animation: active-bar02 .5s .3s forwards;
    animation: active-bar02 .5s .3s forwards
  }
  @-webkit-keyframes active-bar02 {
    0% {
      opacity: 1
    }
    100% {
      opacity: 0
    }
  }
  @keyframes active-bar02 {
    0% {
      opacity: 1
    }
    100% {
      opacity: 0
    }
  }
  header #nav-btn-check:checked ~ .nav-btn span:nth-of-type(3) {
    -webkit-animation: active-bar03 .5s .3s forwards;
    animation: active-bar03 .5s .3s forwards
  }
  @-webkit-keyframes active-bar03 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
    100% {
      -webkit-transform: translateY(-7px) rotate(45deg);
      transform: translateY(-7px) rotate(45deg)
    }
  }
  @keyframes active-bar03 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0)
    }
    100% {
      -webkit-transform: translateY(-7px) rotate(45deg);
      transform: translateY(-7px) rotate(45deg)
    }
  }
}
footer {
  background: #000;
  color: #fff
}
footer .footer-contents {
  max-width: 1280px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 45px 50px
}
footer .logo-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
footer h1 {
  width: 22%
}
footer .nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
footer .nav li {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  margin-left: 30px
}
footer .nav li a {
  color: #fff
}
footer .nav li a:hover {
  color: #646464
}
footer .copyright {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0;
  font-weight: bold;
  font-family: ‘Poppins’,sans-serif
}
@media screen and (min-width: 768px) and (max-width: 1279px) {
  footer .footer-contents {
    display: block
  }
  footer .copyright {
    text-align: right
  }
}
@media screen and (max-width: 768px) {
  footer .footer-contents {
    max-width: 84%;
    display: block;
    padding: 30px 0
  }
  footer .logo-area {
    margin-bottom: 20px
  }
  footer h1 {
    width: 20%;
    margin: 14%
  }
  footer .nav {
    display: block;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    width: 75%
  }
  footer .nav li {
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 0;
    border-bottom: 1px solid #fff;
    padding: 10px 0;
    position: relative
  }
  footer .nav li:last-child {
    border-bottom: none
  }
  footer .nav li a::after {
    content: "";
    position: absolute;
    top: 37%;
    right: 4%;
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
  }
  footer .copyright {
    text-align: center
  }
}
/*# sourceMappingURL=../sourcemaps/common.css.map */
