@charset "utf-8";

/*----------------------------------------------------------
   normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css
----------------------------------------------------------*/
/* Document */
html { line-height: 1.15; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;}

/* Sections */
body { margin: 0;}
article,aside,footer,header,nav,section { display: block;}
h1 { font-size: 2em; margin: 0.67em 0;}

/* Grouping content */
figcaption,figure,main { display: block;}
figure { margin: 1em 40px;}
hr { box-sizing: content-box; height: 0; overflow: visible;}
pre { font-family: monospace,monospace; font-size: 1em;}

/* Text-level semantics */
a { background-color: transparent; -webkit-text-decoration-skip: objects;}
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted;}
b,strong { font-weight: inherit;}
b,strong { font-weight: bolder;}
code,kbd,samp { font-family: monospace,monospace; font-size: 1em;}
dfn { font-style: italic;}
mark { background-color: #ff0; color: #000;}
small { font-size: 80%;}
sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}
sub { bottom: -0.25em;}
sup { top: -0.5em;}

/* Embedded content */
audio,video { display: inline-block;}
audio:not([controls]) { display: none; height: 0;}
img { border-style: none;}
svg:not(:root) { overflow: hidden;}

/* Forms */
button,input,optgroup,select,textarea { font-family: sans-serif; font-size: 100%; line-height: 1.15; margin: 0;}
button,input { overflow: visible;}
button,select { text-transform: none;}
button,html[type="button"],[type="reset"],[type="submit"] { -webkit-appearance: button;}
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner { border-style: none; padding: 0;}
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring { outline: 1px dotted ButtonText;}
fieldset { padding: 0.35em 0.75em 0.625em;}
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal;}
progress { display: inline-block; vertical-align: baseline;}
textarea { overflow: auto;}
[type="checkbox"],[type="radio"] { box-sizing: border-box; padding: 0;}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button { height: auto;}
[type="search"] { -webkit-appearance: textfield; outline-offset: -2px;}
[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit;}

/* Interactive */
details,menu { display: block;}
summary { display: list-item;}

/* Scripting */
canvas { display: inline-block;}
template { display: none;}

/* Hidden */
[hidden] { display: none;}

/* reset
----------------------------------------------------------*/
h1, h2, h3, dl, dt, dd, ul, ol, li, p, table, th, td { margin: 0; padding: 0; font-size: 100%;}
h1, h2, h3, h4, h5, h6 { font-weight: normal;}
li { list-style: none;}
figure { margin: 0;}
img { vertical-align: top;}
table { border-collapse: collapse; border-spacing: 0;}
button { margin: 0; padding: 0; border: 0; outline: none; background: transparent; box-shadow: 0 0 0 0 transparent; cursor: pointer;}
input, button, textarea, select, optgroup, option { border: 0; outline: none; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit;}
input[type="text"], input[type="password"], input[type="email"], textarea, select { border-radius: 0; outline: none; -moz-appearance: none; -webkit-appearance: none; appearance: none;}
input[type="submit"], input[type="reset"], input[type="button"], button { cursor: pointer; border-radius: 0; outline: none; -moz-appearance: none; -webkit-appearance: none; appearance: none;}
select::-ms-expand { display: none;}
select::-ms-value { color: currentColor;}
::-moz-selection,
::selection { background: black; color: #fff;}

/*----------------------------------------------------------
   base
----------------------------------------------------------*/
html {
  position: relative;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Roboto, Droid Sans, "Yu Gothic", YuGothic, "\30E1\30A4\30EA\30AA", Meiryo, "\30D2\30E9\30AE\30CE\89D2\30B4 ProN W3", "Hiragino Kaku Gothic ProN", "\FF2D\FF33 \FF30\30B4\30B7\30C3\30AF", sans-serif;
  -webkit-font-smoothing: antialiased;
}
body {
  position: relative;
  background-color: #fff;
  color: #3b4043;
  font-size: 13px;
  line-height: 1.7;
  text-align: center;
  -webkit-tap-highlight-color: transparent;
}
input,
select {
  font-size: 16px;
}
a,
input[type="submit"] {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  outline: none;
  opacity: 1;
  transition: all .3s;
  backface-visibility: hidden;
}
a::after,
a::before {
  transition: all .3s;
}
a.is-touch,
input[type="submit"].is-touch {
  opacity: .8;
}
a img {
  vertical-align: top;
  background-color: rgba(255, 255, 255, .01);
}

#spFlg {
  display: block;
  width: 0;
  height: 0;
  font-size: 0;
  line-height: 0;
}
.sp_show { display: block;}
.pc_show { display: none;}
.noscript_text { padding: 1em;}

@media screen and (min-width: 768px) {
  #spFlg { display: none;}
  .sp_show { display: none;}
  .pc_show { display: block;}
}

/* loading
----------------------------------------------------------*/
#loading { z-index: 9999; position: fixed; top: 0; right: 0; bottom: 0; left: 0; height: 100%; background-color: #fff; visibility: visible; opacity: 1; transition: visibility 1s linear, opacity 1s cubic-bezier(.4, 0, .2, 1);}
#loading #loadingSpinner { position: relative; top: 50%; left: 50%; margin: -10px 0 0 -10px;}
.is-loaded #loading { visibility: hidden; opacity: 0;}
.is-loaded #loading #loadingSpinner { display: none;}

/* spinner */
.spinner { position: relative; width: 20px; height: 20px;}
.spinner .spinner_blade { position: absolute; top: 37%; left: 44.5%; width: 10%; height: 25%; background-color: #8c8c8c; border-radius: 50% / 20%; -webkit-animation: spinner_blade__fade 1s linear infinite; animation: spinner_blade__fade 1s linear infinite; -webkit-animation-play-state: running; animation-play-state: running;}
.spinner .spinner_blade:nth-child(1) { -webkit-transform: rotate(30deg) translate(0, -150%); transform: rotate(30deg) translate(0, -150%); -webkit-animation-delay: -1.66667s; animation-delay: -1.66667s;}
.spinner .spinner_blade:nth-child(2) { -webkit-transform: rotate(60deg) translate(0, -150%); transform: rotate(60deg) translate(0, -150%); -webkit-animation-delay: -1.58333s; animation-delay: -1.58333s;}
.spinner .spinner_blade:nth-child(3) { -webkit-transform: rotate(90deg) translate(0, -150%); transform: rotate(90deg) translate(0, -150%); -webkit-animation-delay: -1.5s; animation-delay: -1.5s;}
.spinner .spinner_blade:nth-child(4) { -webkit-transform: rotate(120deg) translate(0, -150%); transform: rotate(120deg) translate(0, -150%); -webkit-animation-delay: -1.41667s; animation-delay: -1.41667s;}
.spinner .spinner_blade:nth-child(5) { -webkit-transform: rotate(150deg) translate(0, -150%); transform: rotate(150deg) translate(0, -150%); -webkit-animation-delay: -1.33333s; animation-delay: -1.33333s;}
.spinner .spinner_blade:nth-child(6) { -webkit-transform: rotate(180deg) translate(0, -150%); transform: rotate(180deg) translate(0, -150%); -webkit-animation-delay: -1.25s; animation-delay: -1.25s;}
.spinner .spinner_blade:nth-child(7) { -webkit-transform: rotate(210deg) translate(0, -150%); transform: rotate(210deg) translate(0, -150%); -webkit-animation-delay: -1.16667s; animation-delay: -1.16667s;}
.spinner .spinner_blade:nth-child(8) { -webkit-transform: rotate(240deg) translate(0, -150%); transform: rotate(240deg) translate(0, -150%); -webkit-animation-delay: -1.08333s; animation-delay: -1.08333s;}
.spinner .spinner_blade:nth-child(9) { -webkit-transform: rotate(270deg) translate(0, -150%); transform: rotate(270deg) translate(0, -150%); -webkit-animation-delay: -1s; animation-delay: -1s;}
.spinner .spinner_blade:nth-child(10) { -webkit-transform: rotate(300deg) translate(0, -150%); transform: rotate(300deg) translate(0, -150%); -webkit-animation-delay: -.91667s; animation-delay: -.91667s;}
.spinner .spinner_blade:nth-child(11) { -webkit-transform: rotate(330deg) translate(0, -150%); transform: rotate(330deg) translate(0, -150%); -webkit-animation-delay: -.83333s; animation-delay: -.83333s;}
.spinner .spinner_blade:nth-child(12) { -webkit-transform: rotate(360deg) translate(0, -150%); transform: rotate(360deg) translate(0, -150%); -webkit-animation-delay: -.75s; animation-delay: -.75s;}

/*----------------------------------------------------------
   common layout
----------------------------------------------------------*/
#wrap {
  overflow: hidden;
  padding-bottom: 20px;
}
section {
  position: relative;
  display: block;
}
section::after {
  clear: both;
  content: '';
  display: block;
}
.inner {
  position: relative;
  width: 100%;
  max-width: 768px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 16px;
  box-sizing: border-box;
  text-align: left;
}
.inner * {
  box-sizing: border-box;
}

.inner.entry {
  padding: 0;
}

@media screen and (max-width: 374px) {
  .inner {
    padding-right: 4.26vw;
    padding-left: 4.26vw;
  }
}

/*----------------------------------------------------------
   module
----------------------------------------------------------*/
.image img,
figure img { width: 100%; height: auto;}

.skip { position: absolute; left: -9999px;}
.left { float: left;}
.right { float: right;}
.clear { clear: both;}
.cf::after { clear: both; content: ''; display: block;}
.txtr { text-align: right;}
.txtc { text-align: center;}

.sp01 { margin-top: .5em;}
.sp02 { margin-top: 1em;}
.sp03 { margin-top: 1.5em;}
.sp04 { margin-top: 2em;}
.sp05 { margin-top: 2.5em;}

/* link
----------------------------------------------------------*/
.link_txt a {
  color: #007aff;
  font-weight: bold;
}
.link_url a {
  color: #007aff;
}
a.link_tel {
  color: #007aff;
  text-decoration: underline;
}

.btn a,
.btn input {
  display: block;
  height: 56px;
  border-radius: 4px;
  background-color: #ff3300;
  color: #fff;
  font-weight: bold;
  line-height: 56px;
  text-align: center;
}
.btn input {
  width: 100%;
  line-height: 1.15;
}

/*----------------------------------------------------------
   #privacy
----------------------------------------------------------*/
#privacy {
  margin-bottom: 40px;
}

#privacy p {
  padding-top: 28px;
}

#privacy p+p {
  text-indent: 1em;
}

/*----------------------------------------------------------
   #notFound
----------------------------------------------------------*/
#notFound {
  margin-bottom: 40px;
}
#notFound .title {
  padding: 36px 0 18px;
  color: #6f7478;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
}
#notFound .text {
  line-height: 1.3;
}
#notFound .link_txt {
  margin-top: 20px;
}

/*----------------------------------------------------------
   keyframes
----------------------------------------------------------*/
@-webkit-keyframes spinner_blade__fade {
  0% { opacity: .85;}
  50% { opacity: .25;}
  100% { opacity: .25;}
}
@keyframes spinner_blade__fade {
  0% { opacity: .85;}
  50% { opacity: .25;}
  100% { opacity: .25;}
}
@-webkit-keyframes show {
  0% { opacity: 0;}
  100% { opacity: 1;}
}
@keyframes show {
  0% { opacity: 0;}
  100% { opacity: 1;}
}
@-webkit-keyframes hide {
  0% { opacity: 1;}
  100% { opacity: 0;}
}
@keyframes hide {
  0% { opacity: 1;}
  100% { opacity: 0;}
}
