/**
 * ################################################
 *
 * #######  SETTING  #########
 *
 * ################################################
 */
/*
@media all and (max-width:$sp_width) { // sp
}
@media all and (min-width:$pc_width) { // pc
}
*/
/* PC,SP width setting */
@import url("https://fonts.googleapis.com/css2?family=Raleway:wght@400;700&display=swap");
* {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
}

/* select color */
::-moz-selection {
  background: #b7e997; /* Safari */
}
::selection {
  background: #b7e997; /* Safari */
}

::-moz-selection {
  background: #b7e997; /* Firefox */
}

area {
  border: none;
  outline: none;
}

/* FORM ======================= */
input[type=text], input[type=tel], input[type=email], input[type=password] {
  padding: 0 4px;
  margin-top: -2px;
}

textarea {
  padding: 4px;
}

::-webkit-input-placeholder {
  color: #AAA;
  font-weight: normal !important;
}

:-ms-input-placeholder {
  color: #AAA;
  font-weight: normal !important;
}

::-moz-placeholder {
  color: #AAA;
  font-weight: normal !important;
}

button {
  outline: none;
}

label {
  display: inline-block;
  cursor: pointer;
}

/*clearfix*/
.cf {
  *zoom: 1;
}

.cf:after {
  content: "";
  display: block;
  clear: both;
}

.clear, hr {
  clear: both;
}

/* #####################
#
#      Font setting
#
##################### */
html {
  font-size: 62.5%;
}

* {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
  color: #0b1116;
}

a {
  color: #0073d1;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

.f-mono, header.header .header__navi .header__menu li a {
  font-family: "Raleway", sans-serif;
  letter-spacing: 1px;
}

/* #####################
#
#      Color setting
#
##################### */
/* #####################
#
#      Class setting
#
##################### */
@media all and (max-width: 768px) {
  .pc {
    display: none;
  }
}
@media all and (min-width: 769px) {
  .sp {
    display: none;
  }
}
/* float */
.fll {
  float: left;
}

.flr {
  float: right;
}

/* text-align */
.tal {
  text-align: left !important;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

/* ##################################
#      STYLE
################################## */
html {
  height: 100%;
}

body {
  padding: 30px;
  background-color: #f7f7f7;
  overflow: hidden;
}
@media all and (max-width: 768px) {
  body {
    padding: 16px;
  }
}

.wrapper {
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 600px;
}
@media all and (min-width: 769px) {
  .wrapper {
    padding-right: 100px;
    padding-left: 100px;
    max-width: 1300px;
  }
}

.inner {
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 600px;
}
@media all and (min-width: 769px) {
  .inner {
    padding-right: 100px;
    padding-left: 100px;
    max-width: 1100px;
  }
}

header.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
header.header .header-top {
  padding-right: 60px;
  padding-left: 60px;
  height: 60px;
  line-height: 60px;
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 768px) {
  header.header .header-top {
    padding-right: 15px;
    padding-left: 15px;
    height: 40px;
    line-height: 40px;
  }
}
header.header .header__logo {
  display: inline-block;
  text-decoration: none;
  font-size: 2rem;
  color: #0b1116;
}
header.header .header__navi {
  display: inline-block;
}
header.header .header__navi .header__menu {
  display: flex;
  justify-content: flex-start;
}
header.header .header__navi .header__menu li {
  margin-right: 15px;
  list-style-type: none;
}
header.header .header__navi .header__menu li a {
  text-decoration: none;
  letter-spacing: 1px;
  font-size: 2rem;
  color: #0b1116;
}

footer {
  text-align: center;
}
footer p.f-mono {
  font-size: 1.3rem;
}

.js-fadein {
  opacity: 0.1;
  transform: translateY(10rem);
  transition: 1.2s ease-out;
}
.js-fadein.is-fadein {
  opacity: 1;
  transform: translateY(0);
  transition: 1.2s ease-out;
}