/*! normalize.css v2.1.3 | MIT License | git.io/normalize */
img, legend {
  border: 0
}

img, textarea {
  vertical-align: top
}

body, mark {
  color: #000
}

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

audio, canvas, video {
  display: inline-block
}

audio:not([controls]) {
  display: none;
  height: 0
}

[hidden], template {
  display: none
}

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%
}

body, figure {
  margin: 0
}

a {
  background: 0 0;
  outline: 0 !important;
  -webkit-tap-highlight-color: transparent;
  text-decoration: none;
  color: #3e3e3e
}

a:focus {
  outline: dotted thin
}

a *, a img, a:active, a:hover {
  outline: 0
}

abbr[title] {
  border-bottom: 1px dotted
}

b, strong {
  font-weight: 700
}

hr {
  box-sizing: content-box;
  height: 0
}

mark {
  background: #ff0
}

code, kbd, pre, samp {
  font-family: monospace, serif;
  font-size: 1em
}

pre {
  white-space: pre-wrap
}

q {
  quotes: "\201C""\201D""\2018""\2019"
}

small {
  font-size: 80%
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sup {
  top: -.5em
}

sub {
  bottom: -.25em
}

svg:not(:root) {
  overflow: hidden
}

fieldset {
  border: 1px solid silver
}

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0
}

.btn-gray {
  color: #33322f !important;
  background-color: #f7f7f7;
}

a.btn-gray:hover {
  background-color: #e1e1e1;
}

.btn {
  display: inline-block;
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 5px 20px;
  margin-top: 10px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  text-shadow: 0.5px 0.866px 0px rgba(0, 0, 0, 0.1);
}
.btn:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}

button, input {
  line-height: normal
}

button, select {
  text-transform: none
}

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer
}

button[disabled], html input[disabled] {
  cursor: default
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0
}

textarea {
  overflow: auto
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

blockquote, body, code, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, input, legend, li, ol, p, pre, td, textarea, th, ul {
  margin: 0;
  padding: 0
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: 400
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 400;
  line-height: 1.6
}

li {
  list-style: none
}

div, footer, h1, h2, h3, h4, h5, h6, header, li, section {
  box-sizing: border-box
}

html {
  font-size: 62.5%;
  height: 100%
}

dl, li, p {
  line-height: 1.7
}

::selection {
  background: #d5d3d2
}

::-moz-selection {
  background: #d5d3d2
}

.fn {
  font-weight: 400 !important
}

.fb {
  font-weight: 700 !important
}

.fs12 {
  font-size: 1.2rem
}

.list1 {
  margin: 0 0 0 1.3em
}

.list1 li {
  line-height: 1.6
}

ol.list1 li {
  list-style: decimal
}

ul.list1 li {
  list-style: disc
}

span.inb {
  display: inline-block
}

body.ready {
  visibility: visible !important
}

.defs {
  display: none
}

.btn1, .btn2 {
  display: inline-block;
  position: relative;
  line-height: 1;
  white-space: nowrap
}

body {
  font-family: "Hiragino Kaku Gothic ProN", YuGothic, "Yu Gothic", Meiryo, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  background: #fff;
  font-size: 1.4rem;
  letter-spacing: 1px;
  -webkit-font-smoothing: antialiased
}

.wrapper {
  background-color: #fff
}

#contents.error {
  text-align: center;
  margin-top: 4em
}

#contents.error h1 {
  font-weight: 700;
  font-size: 200%;
  margin-bottom: 3em
}

#type .bg {
  background-color: #eee;
  color: #737373
}

.header1 {
  text-align: center;
  border-top: 1px solid #c7c7c7
}

.header1 .ttl {
  font-family: SofiaProBold;
  color: #343434;
  letter-spacing: .2em;
  line-height: 1;
  margin-bottom: .2em
}

.btn1 span, .btn2 span {
  font-family: SofiaProRegular
}

.btn1 {
  border: 1px solid #b6b6b6;
  color: #2d2d2d;
  padding: 19px 30px;
  cursor: pointer
}

.btn1 span {
  background: url(../img/common/arrow-1.svg) 100% 50% no-repeat;
  background-size: 22px auto;
  padding-right: 35px
}

.btn2 {
  border: 1px solid #fff;
  color: #fff;
  padding: 19px 30px
}

.btn2 span {
  background: url(../img/common/arrow-2.svg) 100% 50% no-repeat;
  background-size: 22px auto;
  padding-right: 35px
}

.btn3, .btn4 {
  font-size: 1.7rem;
  font-weight: 700;
  padding: 20px 60px;
  border: 0;
  color: #fff;
  display: inline-block;
  text-align: center
}

.btn3 {
  background-color: #545454
}

.btn4 {
  background-color: #004da1;
  border-radius: 5px
}

.arrow1 span, a.map {
  font-family: SofiaProRegular;
  padding-right: 35px
}

.btn4.back {
  background-color: #545454
}

a.map {
  background: url(../img/common/arrow-1.svg) 100% 50% no-repeat;
  background-size: auto 90%;
  font-size: 1.1rem;
  letter-spacing: 0
}

.arrow1 {
  color: #fff;
  display: inline-block;
  line-height: 1;
  white-space: nowrap
}

.arrow1 span {
  background: url(../img/common/arrow-2.svg) 100% 50% no-repeat;
  background-size: 22px auto
}

body.modal-show {
  overflow: hidden
}

.modal .close-wrap {
  margin: 0 auto 0 -350px;
  width: 760px;
  position: fixed;
  top: 0;
  left: 50%
}

.modal .close {
  position: absolute;
  top: 20px;
  right: 30px;
  display: block;
  width: 22px;
  height: 22px;
  text-indent: -9999px;
  background: url(../img/common/close-1.png) no-repeat;
  background-size: 100% auto
}

.modal-wrap label, .modal>label {
  color: #000;
  display: inline-block
}

.modal input {
  position: absolute;
  z-index: -9999;
  visibility: hidden
}

.modal>label {
  background: #FFD300
}

.modal-overlay {
  background: rgba(0, 0, 0, .6);
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  -webkit-transform: scale(.5);
  transform: scale(.5);
  -webkit-transition: all .75s cubic-bezier(.65, -.55, .265, 1.55);
  transition: all .75s cubic-bezier(.65, -.55, .265, 1.55);
  z-index: -999
}

.modal-wrap {
  position: relative;
  margin: 0 auto;
  width: 100%;
  max-height: 100vh;
  overflow: auto;
  background: #fff;
  max-width: 815px;
  padding: 50px
}

.modal-wrap label {
  background: #FFD300;
  cursor: pointer
}

input.modal-check:checked~.modal-overlay {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
  z-index: 999
}

@media print {
  #nav-sticky {
    display: none;
    opacity: 0
  }
}

section.admin {
  padding: 3em 0
}

section.admin h1 {
  font-size: 3rem;
  margin-bottom: 1em
}

section.admin .btn {
  clear: both
}

section.admin .btn input {
  font-size: 2rem;
  padding: .5em 2em
}

section.admin input[type=radio] {
  margin-right: .5em
}

section.admin label+label {
  margin-left: 1em
}

section.admin .back {
  margin-top: 2em;
  text-align: center;
  text-decoration: underline;
  font-size: 1.8rem
}
