@charset "UTF-8";
/*================================================

base

================================================*/
/*================================================
 * reset */
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

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

/*================================================
 * base */
body {
  font-family: "FP-ヒラギノ明朝 ProN W3", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  background: url(../img/common/bg_wrapper.jpg) center top repeat;
  letter-spacing: 0.05em;
  min-width: 1064px;
  line-height: 1.7;
}

a {
  color: #000;
}

button {
  font-family: inherit;
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

.hover {
  opacity: 1;
  transition: opacity 0.5s ease;
}

.hover:hover {
  opacity: 0.8;
}

::-moz-selection {
  background: #c18585;
}

::selection {
  background: #c18585;
}

/*================================================

plugin

================================================*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  outline: none;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*!
 * animsition v4.0.1
 * A simple and easy jQuery plugin for CSS animated page transitions.
 * http://blivesta.github.io/animsition
 * License : MIT
 * Author : blivesta (http://blivesta.com/)
 */
.animsition, .animsition-overlay {
  position: relative;
  opacity: 0;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animsition-overlay-slide {
  position: fixed;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: #ddd;
}

.animsition-loading, .animsition-loading:after {
  width: 32px;
  height: 32px;
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -16px;
  margin-left: -16px;
  border-radius: 50%;
  z-index: 2;
}

.animsition-loading {
  background-color: transparent;
  border-top: 5px solid rgba(0, 0, 0, 0.2);
  border-right: 5px solid rgba(0, 0, 0, 0.2);
  border-bottom: 5px solid rgba(0, 0, 0, 0.2);
  border-left: 5px solid #eee;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  -webkit-animation-name: animsition-loading;
  animation-name: animsition-loading;
}

@-webkit-keyframes animsition-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}

@keyframes animsition-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.fade-in {
  -webkit-animation-name: fade-in;
  animation-name: fade-in;
}

@-webkit-keyframes fade-out {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.fade-out {
  -webkit-animation-name: fade-out;
  animation-name: fade-out;
}

@-webkit-keyframes fade-in-up {
  0% {
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-up {
  0% {
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.fade-in-up {
  -webkit-animation-name: fade-in-up;
  animation-name: fade-in-up;
}

@-webkit-keyframes fade-out-up {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-500px);
    transform: translateY(-500px);
    opacity: 0;
  }
}

@keyframes fade-out-up {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-500px);
    transform: translateY(-500px);
    opacity: 0;
  }
}

.fade-out-up {
  -webkit-animation-name: fade-out-up;
  animation-name: fade-out-up;
}

@-webkit-keyframes fade-in-up-sm {
  0% {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-up-sm {
  0% {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.fade-in-up-sm {
  -webkit-animation-name: fade-in-up-sm;
  animation-name: fade-in-up-sm;
}

@-webkit-keyframes fade-out-up-sm {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
    opacity: 0;
  }
}

@keyframes fade-out-up-sm {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
    opacity: 0;
  }
}

.fade-out-up-sm {
  -webkit-animation-name: fade-out-up-sm;
  animation-name: fade-out-up-sm;
}

@-webkit-keyframes fade-in-up-lg {
  0% {
    -webkit-transform: translateY(1000px);
    transform: translateY(1000px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-up-lg {
  0% {
    -webkit-transform: translateY(1000px);
    transform: translateY(1000px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.fade-in-up-lg {
  -webkit-animation-name: fade-in-up-lg;
  animation-name: fade-in-up-lg;
}

@-webkit-keyframes fade-out-up-lg {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-1000px);
    transform: translateY(-1000px);
    opacity: 0;
  }
}

@keyframes fade-out-up-lg {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(-1000px);
    transform: translateY(-1000px);
    opacity: 0;
  }
}

.fade-out-up-lg {
  -webkit-animation-name: fade-out-up-lg;
  animation-name: fade-out-up-lg;
}

@-webkit-keyframes fade-in-down {
  0% {
    -webkit-transform: translateY(-500px);
    transform: translateY(-500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-down {
  0% {
    -webkit-transform: translateY(-500px);
    transform: translateY(-500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.fade-in-down {
  -webkit-animation-name: fade-in-down;
  animation-name: fade-in-down;
}

@-webkit-keyframes fade-out-down {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
    opacity: 0;
  }
}

@keyframes fade-out-down {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
    opacity: 0;
  }
}

.fade-out-down {
  -webkit-animation-name: fade-out-down;
  animation-name: fade-out-down;
}

@-webkit-keyframes fade-in-down-sm {
  0% {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-down-sm {
  0% {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.fade-in-down-sm {
  -webkit-animation-name: fade-in-down-sm;
  animation-name: fade-in-down-sm;
}

@-webkit-keyframes fade-out-down-sm {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0;
  }
}

@keyframes fade-out-down-sm {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0;
  }
}

.fade-out-down-sm {
  -webkit-animation-name: fade-out-down-sm;
  animation-name: fade-out-down-sm;
}

.fade-in-down-lg {
  -webkit-animation-name: fade-in-down;
  animation-name: fade-in-down;
}

@-webkit-keyframes fade-out-down-lg {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(1000px);
    transform: translateY(1000px);
    opacity: 0;
  }
}

@keyframes fade-out-down-lg {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateY(1000px);
    transform: translateY(1000px);
    opacity: 0;
  }
}

.fade-out-down-lg {
  -webkit-animation-name: fade-out-down-lg;
  animation-name: fade-out-down-lg;
}

@-webkit-keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-500px);
    transform: translateX(-500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-500px);
    transform: translateX(-500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-left {
  -webkit-animation-name: fade-in-left;
  animation-name: fade-in-left;
}

@-webkit-keyframes fade-out-left {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-500px);
    transform: translateX(-500px);
    opacity: 0;
  }
}

@keyframes fade-out-left {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-500px);
    transform: translateX(-500px);
    opacity: 0;
  }
}

.fade-out-left {
  -webkit-animation-name: fade-out-left;
  animation-name: fade-out-left;
}

@-webkit-keyframes fade-in-left-sm {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-left-sm {
  0% {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-left-sm {
  -webkit-animation-name: fade-in-left-sm;
  animation-name: fade-in-left-sm;
}

@-webkit-keyframes fade-out-left-sm {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
}

@keyframes fade-out-left-sm {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-100px);
    transform: translateX(-100px);
    opacity: 0;
  }
}

.fade-out-left-sm {
  -webkit-animation-name: fade-out-left-sm;
  animation-name: fade-out-left-sm;
}

@-webkit-keyframes fade-in-left-lg {
  0% {
    -webkit-transform: translateX(-1500px);
    transform: translateX(-1500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-left-lg {
  0% {
    -webkit-transform: translateX(-1500px);
    transform: translateX(-1500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-left-lg {
  -webkit-animation-name: fade-in-left-lg;
  animation-name: fade-in-left-lg;
}

@-webkit-keyframes fade-out-left-lg {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-1500px);
    transform: translateX(-1500px);
    opacity: 0;
  }
}

@keyframes fade-out-left-lg {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-1500px);
    transform: translateX(-1500px);
    opacity: 0;
  }
}

.fade-out-left-lg {
  -webkit-animation-name: fade-out-left-lg;
  animation-name: fade-out-left-lg;
}

@-webkit-keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(500px);
    transform: translateX(500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(500px);
    transform: translateX(500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-right {
  -webkit-animation-name: fade-in-right;
  animation-name: fade-in-right;
}

@-webkit-keyframes fade-out-right {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(500px);
    transform: translateX(500px);
    opacity: 0;
  }
}

@keyframes fade-out-right {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(500px);
    transform: translateX(500px);
    opacity: 0;
  }
}

.fade-out-right {
  -webkit-animation-name: fade-out-right;
  animation-name: fade-out-right;
}

@-webkit-keyframes fade-in-right-sm {
  0% {
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-right-sm {
  0% {
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-right-sm {
  -webkit-animation-name: fade-in-right-sm;
  animation-name: fade-in-right-sm;
}

@-webkit-keyframes fade-out-right-sm {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
    opacity: 0;
  }
}

@keyframes fade-out-right-sm {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
    opacity: 0;
  }
}

.fade-out-right-sm {
  -webkit-animation-name: fade-out-right-sm;
  animation-name: fade-out-right-sm;
}

@-webkit-keyframes fade-in-right-lg {
  0% {
    -webkit-transform: translateX(1500px);
    transform: translateX(1500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-right-lg {
  0% {
    -webkit-transform: translateX(1500px);
    transform: translateX(1500px);
    opacity: 0;
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-right-lg {
  -webkit-animation-name: fade-in-right-lg;
  animation-name: fade-in-right-lg;
}

@-webkit-keyframes fade-out-right-lg {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(1500px);
    transform: translateX(1500px);
    opacity: 0;
  }
}

@keyframes fade-out-right-lg {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(1500px);
    transform: translateX(1500px);
    opacity: 0;
  }
}

.fade-out-right-lg {
  -webkit-animation-name: fade-out-right-lg;
  animation-name: fade-out-right-lg;
}

@-webkit-keyframes rotate-in {
  0% {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
}

@keyframes rotate-in {
  0% {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
}

.rotate-in {
  -webkit-animation-name: rotate-in;
  animation-name: rotate-in;
}

@-webkit-keyframes rotate-out {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
}

@keyframes rotate-out {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
}

.rotate-out {
  -webkit-animation-name: rotate-out;
  animation-name: rotate-out;
}

@-webkit-keyframes rotate-in-sm {
  0% {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
}

@keyframes rotate-in-sm {
  0% {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
}

.rotate-in-sm {
  -webkit-animation-name: rotate-in-sm;
  animation-name: rotate-in-sm;
}

@-webkit-keyframes rotate-out-sm {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
}

@keyframes rotate-out-sm {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
}

.rotate-out-sm {
  -webkit-animation-name: rotate-out-sm;
  animation-name: rotate-out-sm;
}

@-webkit-keyframes rotate-in-lg {
  0% {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
}

@keyframes rotate-in-lg {
  0% {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
}

.rotate-in-lg {
  -webkit-animation-name: rotate-in-lg;
  animation-name: rotate-in-lg;
}

@-webkit-keyframes rotate-out-lg {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
}

@keyframes rotate-out-lg {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 1;
  }
  0%, to {
    -webkit-transform-origin: center center;
  }
  to {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    opacity: 0;
  }
}

.rotate-out-lg {
  -webkit-animation-name: rotate-out-lg;
  animation-name: rotate-out-lg;
}

@-webkit-keyframes flip-in-x {
  0% {
    -webkit-transform: perspective(550px) rotateX(90deg);
    transform: perspective(550px) rotateX(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(550px) rotateX(0deg);
    transform: perspective(550px) rotateX(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-x {
  0% {
    -webkit-transform: perspective(550px) rotateX(90deg);
    transform: perspective(550px) rotateX(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(550px) rotateX(0deg);
    transform: perspective(550px) rotateX(0deg);
    opacity: 1;
  }
}

.flip-in-x {
  -webkit-animation-name: flip-in-x;
  animation-name: flip-in-x;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-x {
  0% {
    -webkit-transform: perspective(550px) rotateX(0deg);
    transform: perspective(550px) rotateX(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(550px) rotateX(90deg);
    transform: perspective(550px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-x {
  0% {
    -webkit-transform: perspective(550px) rotateX(0deg);
    transform: perspective(550px) rotateX(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(550px) rotateX(90deg);
    transform: perspective(550px) rotateX(90deg);
    opacity: 0;
  }
}

.flip-out-x {
  -webkit-animation-name: flip-out-x;
  animation-name: flip-out-x;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-x-nr {
  0% {
    -webkit-transform: perspective(100px) rotateX(90deg);
    transform: perspective(100px) rotateX(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(100px) rotateX(0deg);
    transform: perspective(100px) rotateX(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-x-nr {
  0% {
    -webkit-transform: perspective(100px) rotateX(90deg);
    transform: perspective(100px) rotateX(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(100px) rotateX(0deg);
    transform: perspective(100px) rotateX(0deg);
    opacity: 1;
  }
}

.flip-in-x-nr {
  -webkit-animation-name: flip-in-x-nr;
  animation-name: flip-in-x-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-x-nr {
  0% {
    -webkit-transform: perspective(100px) rotateX(0deg);
    transform: perspective(100px) rotateX(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(100px) rotateX(90deg);
    transform: perspective(100px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-x-nr {
  0% {
    -webkit-transform: perspective(100px) rotateX(0deg);
    transform: perspective(100px) rotateX(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(100px) rotateX(90deg);
    transform: perspective(100px) rotateX(90deg);
    opacity: 0;
  }
}

.flip-out-x-nr {
  -webkit-animation-name: flip-out-x-nr;
  animation-name: flip-out-x-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-x-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-x-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
    opacity: 1;
  }
}

.flip-in-x-fr {
  -webkit-animation-name: flip-in-x-fr;
  animation-name: flip-in-x-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-x-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-x-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateX(0deg);
    transform: perspective(1000px) rotateX(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(1000px) rotateX(90deg);
    transform: perspective(1000px) rotateX(90deg);
    opacity: 0;
  }
}

.flip-out-x-fr {
  -webkit-animation-name: flip-out-x-fr;
  animation-name: flip-out-x-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-y {
  0% {
    -webkit-transform: perspective(550px) rotateY(90deg);
    transform: perspective(550px) rotateY(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(550px) rotateY(0deg);
    transform: perspective(550px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-y {
  0% {
    -webkit-transform: perspective(550px) rotateY(90deg);
    transform: perspective(550px) rotateY(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(550px) rotateY(0deg);
    transform: perspective(550px) rotateY(0deg);
    opacity: 1;
  }
}

.flip-in-y {
  -webkit-animation-name: flip-in-y;
  animation-name: flip-in-y;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-y {
  0% {
    -webkit-transform: perspective(550px) rotateY(0deg);
    transform: perspective(550px) rotateY(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(550px) rotateY(90deg);
    transform: perspective(550px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-y {
  0% {
    -webkit-transform: perspective(550px) rotateY(0deg);
    transform: perspective(550px) rotateY(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(550px) rotateY(90deg);
    transform: perspective(550px) rotateY(90deg);
    opacity: 0;
  }
}

.flip-out-y {
  -webkit-animation-name: flip-out-y;
  animation-name: flip-out-y;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-y-nr {
  0% {
    -webkit-transform: perspective(100px) rotateY(90deg);
    transform: perspective(100px) rotateY(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(100px) rotateY(0deg);
    transform: perspective(100px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-y-nr {
  0% {
    -webkit-transform: perspective(100px) rotateY(90deg);
    transform: perspective(100px) rotateY(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(100px) rotateY(0deg);
    transform: perspective(100px) rotateY(0deg);
    opacity: 1;
  }
}

.flip-in-y-nr {
  -webkit-animation-name: flip-in-y-nr;
  animation-name: flip-in-y-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-y-nr {
  0% {
    -webkit-transform: perspective(100px) rotateY(0deg);
    transform: perspective(100px) rotateY(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(100px) rotateY(90deg);
    transform: perspective(100px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-y-nr {
  0% {
    -webkit-transform: perspective(100px) rotateY(0deg);
    transform: perspective(100px) rotateY(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(100px) rotateY(90deg);
    transform: perspective(100px) rotateY(90deg);
    opacity: 0;
  }
}

.flip-out-y-nr {
  -webkit-animation-name: flip-out-y-nr;
  animation-name: flip-out-y-nr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-in-y-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateY(90deg);
    transform: perspective(1000px) rotateY(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flip-in-y-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateY(90deg);
    transform: perspective(1000px) rotateY(90deg);
    opacity: 0;
  }
  to {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
    opacity: 1;
  }
}

.flip-in-y-fr {
  -webkit-animation-name: flip-in-y-fr;
  animation-name: flip-in-y-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flip-out-y-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(1000px) rotateY(90deg);
    transform: perspective(1000px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flip-out-y-fr {
  0% {
    -webkit-transform: perspective(1000px) rotateY(0deg);
    transform: perspective(1000px) rotateY(0deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(1000px) rotateY(90deg);
    transform: perspective(1000px) rotateY(90deg);
    opacity: 0;
  }
}

.flip-out-y-fr {
  -webkit-animation-name: flip-out-y-fr;
  animation-name: flip-out-y-fr;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes zoom-in {
  0% {
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes zoom-in {
  0% {
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.zoom-in {
  -webkit-animation-name: zoom-in;
  animation-name: zoom-in;
}

@-webkit-keyframes zoom-out {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
  50%, to {
    opacity: 0;
  }
}

@keyframes zoom-out {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
  }
  50%, to {
    opacity: 0;
  }
}

.zoom-out {
  -webkit-animation-name: zoom-out;
  animation-name: zoom-out;
}

@-webkit-keyframes zoom-in-sm {
  0% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes zoom-in-sm {
  0% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.zoom-in-sm {
  -webkit-animation-name: zoom-in-sm;
  animation-name: zoom-in-sm;
}

@-webkit-keyframes zoom-out-sm {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
  50%, to {
    opacity: 0;
  }
}

@keyframes zoom-out-sm {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
  50%, to {
    opacity: 0;
  }
}

.zoom-out-sm {
  -webkit-animation-name: zoom-out-sm;
  animation-name: zoom-out-sm;
}

@-webkit-keyframes zoom-in-lg {
  0% {
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes zoom-in-lg {
  0% {
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.zoom-in-lg {
  -webkit-animation-name: zoom-in-lg;
  animation-name: zoom-in-lg;
}

@-webkit-keyframes zoom-out-lg {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
  }
  50%, to {
    opacity: 0;
  }
}

@keyframes zoom-out-lg {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(0.4);
    transform: scale(0.4);
  }
  50%, to {
    opacity: 0;
  }
}

.zoom-out-lg {
  -webkit-animation-name: zoom-out-lg;
  animation-name: zoom-out-lg;
}

@-webkit-keyframes overlay-slide-in-top {
  0% {
    height: 100%;
  }
  to {
    height: 0;
  }
}

@keyframes overlay-slide-in-top {
  0% {
    height: 100%;
  }
  to {
    height: 0;
  }
}

.overlay-slide-in-top {
  top: 0;
  height: 0;
  -webkit-animation-name: overlay-slide-in-top;
  animation-name: overlay-slide-in-top;
}

@-webkit-keyframes overlay-slide-out-top {
  0% {
    height: 0;
  }
  to {
    height: 100%;
  }
}

@keyframes overlay-slide-out-top {
  0% {
    height: 0;
  }
  to {
    height: 100%;
  }
}

.overlay-slide-out-top {
  top: 0;
  height: 100%;
  -webkit-animation-name: overlay-slide-out-top;
  animation-name: overlay-slide-out-top;
}

@-webkit-keyframes overlay-slide-in-bottom {
  0% {
    height: 100%;
  }
  to {
    height: 0;
  }
}

@keyframes overlay-slide-in-bottom {
  0% {
    height: 100%;
  }
  to {
    height: 0;
  }
}

.overlay-slide-in-bottom {
  bottom: 0;
  height: 0;
  -webkit-animation-name: overlay-slide-in-bottom;
  animation-name: overlay-slide-in-bottom;
}

@-webkit-keyframes overlay-slide-out-bottom {
  0% {
    height: 0;
  }
  to {
    height: 100%;
  }
}

@keyframes overlay-slide-out-bottom {
  0% {
    height: 0;
  }
  to {
    height: 100%;
  }
}

.overlay-slide-out-bottom {
  bottom: 0;
  height: 100%;
  -webkit-animation-name: overlay-slide-out-bottom;
  animation-name: overlay-slide-out-bottom;
}

@-webkit-keyframes overlay-slide-in-left {
  0% {
    width: 100%;
  }
  to {
    width: 0;
  }
}

@keyframes overlay-slide-in-left {
  0% {
    width: 100%;
  }
  to {
    width: 0;
  }
}

.overlay-slide-in-left {
  width: 0;
  -webkit-animation-name: overlay-slide-in-left;
  animation-name: overlay-slide-in-left;
}

@-webkit-keyframes overlay-slide-out-left {
  0% {
    width: 0;
  }
  to {
    width: 100%;
  }
}

@keyframes overlay-slide-out-left {
  0% {
    width: 0;
  }
  to {
    width: 100%;
  }
}

.overlay-slide-out-left {
  left: 0;
  width: 100%;
  -webkit-animation-name: overlay-slide-out-left;
  animation-name: overlay-slide-out-left;
}

@-webkit-keyframes overlay-slide-in-right {
  0% {
    width: 100%;
  }
  to {
    width: 0;
  }
}

@keyframes overlay-slide-in-right {
  0% {
    width: 100%;
  }
  to {
    width: 0;
  }
}

.overlay-slide-in-right {
  right: 0;
  width: 0;
  -webkit-animation-name: overlay-slide-in-right;
  animation-name: overlay-slide-in-right;
}

@-webkit-keyframes overlay-slide-out-right {
  0% {
    width: 0;
  }
  to {
    width: 100%;
  }
}

@keyframes overlay-slide-out-right {
  0% {
    width: 0;
  }
  to {
    width: 100%;
  }
}

.overlay-slide-out-right {
  right: 0;
  width: 100%;
  -webkit-animation-name: overlay-slide-out-right;
  animation-name: overlay-slide-out-right;
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
  outline: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

.cboxElement {
  outline: none;
}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000;
  opacity: 0.5 !important;
}

#colorbox {
  outline: 0;
}

#cboxContent {
  background: none;
  overflow: hidden;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  margin-bottom: 28px;
}

#cboxTitle {
  position: absolute;
  bottom: 4px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #949494;
}

#cboxCurrent {
  position: absolute;
  bottom: 4px;
  left: 58px;
  color: #949494;
}

#cboxLoadingOverlay {
  background: url(../img/cbox/loading_background.png) no-repeat center center;
}

#cboxLoadingGraphic {
  background: url(../img/cbox/loading.gif) no-repeat center center;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

/*================================================

* tool

================================================*/
/*================================================

* layout

================================================*/
/*================================================
* header */
.header {
  background: url(../img/common/bg_header_left.png) left top no-repeat, url(../img/common/bg_header_right.png) right top no-repeat;
  padding: 31px 0 0;
  line-height: 1;
}

.header-inner {
  position: relative;
  height: 150px;
}

.logo {
  width: 219px;
  height: 119px;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}

.logo a {
  display: block;
  opacity: 1;
  transition: all 0.5s ease;
}

.logo a:hover {
  opacity: 0.7;
}

.header-info {
  padding: 14px 0 0;
  font-size: 12px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.header-time {
  margin-bottom: 7px;
}

.header-tel {
  font-size: 20px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.header-tel-icon {
  font-size: 14px;
  color: #fff;
  border-radius: 2px;
  background-color: #c07878;
  padding: 3px 5px;
  position: relative;
  top: -2px;
  display: inline-block;
}

.header-fax-btn {
  display: inline-block;
  position: relative;
  top: 2px;
  background: url(../img/common/btn_fax_on.png) 0 0 no-repeat;
}

.header-fax-btn img {
  transition: all 0.5s ease;
  opacity: 1;
}

.header-fax-btn:hover img {
  opacity: 0;
}

.header-address {
  margin-top: 8px;
}

.header-address:before {
  content: "";
  display: inline-block;
  background: url(../img/common/icon_map.png) 0 0 no-repeat;
  width: 13px;
  height: 19px;
  vertical-align: middle;
  margin-right: 8px;
  position: relative;
  top: -1px;
}

.header-links {
  position: absolute;
  right: 20px;
  top: 35px;
  text-align: right;
}

.header-facebook {
  font-size: 12px;
  text-decoration: none;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  color: #000;
  transition: all 0.5s ease;
  opacity: 1;
}

.header-facebook:hover {
  opacity: 0.7;
}

.header-facebook:before {
  content: "";
  display: inline-block;
  background: url(../img/common/icon_fb.png) 0 0 no-repeat;
  width: 17px;
  height: 17px;
  vertical-align: middle;
  position: relative;
  margin-right: 5px;
  top: -2px;
}

.header-facebook-wrapper {
  margin-bottom: 5px;
}

.header-news {
  border-top: 1px solid #970707;
  border-bottom: 1px solid #970707;
  background: rgba(255, 255, 255, 0.4);
  font-size: 16px;
  padding: 7px 0;
}

.header-news-title {
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  float: left;
}

.header-news-title:before {
  content: "";
  display: inline-block;
  background: url(../img/common/icon_info.png) 0 0 no-repeat;
  width: 18px;
  height: 18px;
  vertical-align: top;
  position: relative;
  margin-right: 5px;
  top: -1px;
}

.header-news-list {
  white-space: nowrap;
  display: inline-block;
  position: relative;
  left: 0;
}

.header-news-list li {
  white-space: nowrap;
  display: inline-block;
  margin-right: 20px;
}

.header-news-list-wrapper {
  white-space: nowrap;
  float: right;
  width: 808px;
  overflow: hidden;
  margin: -5px 0;
  padding: 5px 0;
}

/*================================================
* footer */
.footer {
  color: #fff;
  background: url(../img/common/border_footer.png) center top repeat-x, url(../img/common/bg_pattern.png) center top repeat;
  padding: 21px 0 34px;
}

.footer-logo {
  float: left;
}

.footer-logo a {
  display: block;
  opacity: 1;
  transition: all 0.5s ease;
}

.footer-logo a:hover {
  opacity: 0.7;
}

.footer-link {
  font-size: 13px;
  width: 774px;
  float: right;
  margin-top: 15px;
}

.footer-link li {
  width: 240px;
  float: left;
  margin-top: 7px;
}

.footer-link a {
  color: #fff;
  text-decoration: none;
}

.footer-link a:after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  vertical-align: middle;
  position: relative;
  margin-left: 6px;
  top: -1px;
}

.footer-link a.icon-blank:after {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  border: none;
  background: url(../img/icon/blank.png) 0 0 no-repeat;
  width: 11px;
  height: 11px;
}

.footer-link a:hover {
  text-decoration: underline;
}

.copyright {
  text-align: center;
  font-size: 12px;
  margin-top: 37px;
  line-height: 1;
}

.pagetop {
  display: inline-block;
  width: 186px;
  height: 28px;
  background: url(../img/common/btn_pagetop_on.png) 0 0 no-repeat;
  transition: all 0.5s ease;
  position: relative;
  top: 0px;
}

.pagetop img {
  opacity: 1;
  transition: all 0.5s ease;
}

.pagetop:hover {
  top: 5px;
}

.pagetop:hover img {
  opacity: 0;
}

.inner {
  width: 1024px;
  box-sizing: content-box;
  margin: auto;
  padding: 0 20px;
}

.grid-3 {
  width: 324px;
  float: left;
}

.grid-3:not(:nth-child(3n)) {
  margin-right: 26px;
}

.grid-3-wide {
  width: 327px;
  float: left;
}

.grid-3-wide:not(:nth-child(3n)) {
  margin-right: 21px;
}

.grid-3-slim {
  width: 293px;
  float: left;
}

.grid-3-slim:not(:nth-child(3n)) {
  margin-right: 27px;
}

.width-narrow {
  width: 692px;
}

.inner-block {
  padding: 24px 0 40px 36px;
}

.section-top {
  width: 853px;
}

/*================================================

* module

================================================*/
/*================================================
 * utility */
.clr:after {
  content: '';
  display: table;
  clear: both;
  height: 0;
}

.none {
  display: none;
}

.bold {
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.align-l {
  text-align: left;
}

.align-c {
  text-align: center;
}

.align-r {
  text-align: right;
}

.float-l {
  float: left;
}

.float-r {
  float: right;
}

/*================================================
 * alert */
.alertWrap {
  background: #222;
  background: url(../img/common/bg_alert.png);
  width: 100%;
}

.header-alert-content {
  display: block;
  font-size: 12px;
  color: #fff;
  padding: 5px;
}

.header-alert-content dt,
.header-alert-content dd {
  display: inline-block;
}

.header-alert-content dt {
  margin-right: 15px;
}

.header-alert-content dt:after {
  content: "：";
  position: relative;
  left: 10px;
}

/*================================================
 * gnav */
.gnav {
  background: url(../img/common/bg_pattern_gnav.png) 50% 0 repeat-x;
}

.gnav-list > li {
  display: table;
  float: left;
  width: 183px;
  text-align: center;
  position: relative;
}

.gnav-list > li:after {
  content: "";
  display: block;
  width: 1px;
  height: 47px;
  background-color: #cd9090;
  position: absolute;
  right: 0;
  top: 6px;
}

.gnav-list > li:first-child {
  width: 155px;
  text-align: left;
}

.gnav-list > li:last-child {
  width: 137px;
  text-align: right;
}

.gnav-list > li:last-child:after {
  content: none;
}

.gnav-list a {
  display: table-cell;
  height: 58px;
  vertical-align: middle;
  position: relative;
}

.gnav-list a img {
  position: relative;
  z-index: 2;
}

.gnav-list a:after {
  content: "";
  display: block;
  width: 60px;
  height: 53px;
  background: url(../img/common/bg_gnav_item.png) 0 0 no-repeat;
  position: absolute;
  z-index: 1;
  top: 6px;
  left: 50%;
  margin-left: -25px;
  opacity: 0;
  transition: all 0.5s ease;
}

.gnav-list a.is-current:after, .gnav-list a:hover:after {
  opacity: 1;
}

.gnav-list > li:first-child a:after {
  left: 18%;
  margin-left: 0;
}

.gnav-list > li:last-child a:after {
  left: auto;
  right: 14%;
  margin-left: 0;
}

/*================================================
 * mv */
.mv-item {
  width: 1280px;
  outline: none;
  background-color: #000;
  height: 346px;
}

.mv-item a {
  outline: none;
  display: block;
  transition: all 0.5s ease;
  opacity: 1;
}

.mv-item a:hover {
  opacity: 0.8;
}

.mv-item img {
  opacity: 0.2;
  transition: all 0.5s ease;
}

.mv-item.slick-current img {
  opacity: 1;
}

.mv-nav {
  margin-top: 14px;
}

.mv-nav-item {
  display: table;
  float: left;
  width: 163px;
  height: 76px;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  border-radius: 2px;
  border: 1px solid #4d0e00;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 50%;
  margin-right: 9px;
  position: relative;
}

.mv-nav-item:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top: none;
  border-bottom-color: #4e0f01;
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -10px;
  opacity: 0;
  transition: all 0.5s ease;
}

.mv-nav-item:nth-child(1) {
  background-image: url(../img/index/mv_nav_01.jpg);
}

.mv-nav-item:nth-child(2) {
  background-image: url(../img/index/mv_nav_02.jpg);
}

.mv-nav-item:nth-child(3) {
  background-image: url(../img/index/mv_nav_03.jpg);
}

.mv-nav-item:nth-child(4) {
  background-image: url(../img/index/mv_nav_04.jpg);
}

.mv-nav-item:nth-child(5) {
  background-image: url(../img/index/mv_nav_05.jpg);
}

.mv-nav-item:nth-child(6) {
  background-image: url(../img/index/mv_nav_06.jpg);
}

.mv-nav-item:last-child {
  margin-right: 0;
}

.mv-nav-item.is-current:after {
  opacity: 1;
}

.mv-nav-item.is-current .mv-nav-text,
.mv-nav-item:hover .mv-nav-text {
  opacity: 0;
}

.mv-nav-text {
  display: table-cell;
  vertical-align: middle;
  opacity: 1;
  transition: all 0.5s ease;
  position: relative;
}

/*================================================
 * btn */
.btn-img {
  display: inline-block;
  transition: all 0.5s ease;
  background: url(../img/common/bg_pattern.png) 0 0 repeat;
  padding: 2px;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
}

.btn-img.btn-img-large {
  padding: 3px;
}

.btn-img:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/common/bg_pattern_dark.png) 0 0 repeat;
  opacity: 0;
  transition: all 0.5s ease;
  border-radius: 4px;
}

.btn-img > img {
  position: relative;
  z-index: 2;
}

.btn-img:hover:before {
  opacity: 1;
}

.btn-img-list {
  padding: 40px 0 54px;
  text-align: center;
}

.btn-img-list li {
  float: left;
  width: 50%;
  box-sizing: border-box;
}

.btn-img-list li:nth-child(1) {
  padding-left: 50px;
}

.btn-img-list li:nth-child(2) {
  padding-right: 50px;
}

/*================================================
* vertical */
.vertical {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  text-orientation: upright;
  line-height: 2;
  height: 442px;
  width: auto;
  float: right;
  padding: 17px 56px;
}

.vertical-block {
  display: block;
  margin-left: 1em;
}

.front-vertical-box {
  position: relative;
}

.heading-vertical {
  float: right;
  padding-right: 40px;
  margin-top: -50px;
}

.heading-vertical.heading-vertical-top {
  margin-top: 0;
}

/*================================================
* front */
.front-vertical-box {
  position: relative;
  margin-top: 75px;
  padding: 0 34px;
}

.front-vertical-box:before {
  content: "";
  display: block;
  background: url(../img/index/img_vertical_box.png) 0 0 no-repeat;
  width: 477px;
  height: 323px;
  position: absolute;
  left: -40px;
  bottom: 0;
}

.front-section-01 {
  background: url(../img/index/bg_verticalarea.png) center 100px no-repeat, url(../img/common/bg_illust/01_left.png) left 150px no-repeat, url(../img/common/bg_illust/01_right.png) right 30px no-repeat;
}

.loading {
  background: url(../img/common/bg_illust/bg_loading_right.png) right top no-repeat, url(../img/common/bg_illust/bg_loading_left.png) left bottom no-repeat, url(../img/common/bg_wrapper.jpg) center top repeat;
  position: fixed;
  z-index: 99999;
  width: 100%;
  height: 100%;
}

.loading-content {
  text-align: center;
  height: 260px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

/*================================================
* section */
.section {
  padding: 50px 0 66px;
}

.section-border-top {
  background: url(../img/common/border.png) center top repeat-x;
}

.section-border-top-light {
  background: url(../img/common/border_light.png) center top repeat-x;
}

.section-bg-beige {
  background-color: rgba(193, 133, 133, 0.12);
}

.section-bg-orange {
  background-color: rgba(255, 201, 72, 0.12);
}

.section-bg-jp {
  background: url(../img/introduction/bg_introduction.png) center top no-repeat;
  background-size: cover;
  overflow: hidden;
}

.section-bg-order {
  background: url(../img/common/bg_illust/02_right.png) right 1325px no-repeat;
}

.section-bg-ichibanboshi {
  background: url(../img/common/bg_illust/02_right.png) 100% 1085px no-repeat;
  background-size: 600px auto;
}

.section-bg-product {
  background: url(../img/common/bg_illust/02_right.png) 100% 94% no-repeat;
}

.bg-bamboo-wrapper {
  overflow: hidden;
}

.bg-bamboo {
  position: relative;
}

.bg-bamboo:after {
  content: "";
  display: block;
  background: url(../img/common/bg_illust/bamboo.png) 0 0 no-repeat;
  width: 487px;
  height: 816px;
  position: absolute;
  top: -55px;
  right: -50px;
  z-index: -1;
}

.section-follow {
  margin-top: 40px;
  padding-top: 40px;
}

.section-follow.section-follow-pagetop {
  padding-top: 110px;
}

.left-justify {
  padding-left: 36px;
}

.step > li {
  float: left;
  width: 313px;
  position: relative;
}

.step > li:not(:last-child) {
  margin-right: 24px;
}

.step > li:not(:last-child):after {
  content: "";
  display: block;
  width: 0;
  left: 0;
  border: 25px solid transparent;
  border-right: none;
  border-left: 15px solid #600000;
  position: absolute;
  left: 100%;
  top: 130px;
}

.step-text {
  padding: 20px 9px 0;
}

.section-last {
  padding-bottom: 0;
}

/*================================================
* heading */
.heading {
  margin-bottom: 25px;
}

.heading-secondary {
  font-size: 20px;
  color: #600000;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  line-height: 1.5;
}

.heading-box {
  background-color: rgba(147, 107, 107, 0.16);
  color: #600000;
  font-size: 18px;
  line-height: 1;
  padding: 7px 12px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  letter-spacing: 0.15em;
}

.heading-box-icon {
  width: auto;
  height: 16px;
  vertical-align: middle;
  margin: -5px 17px 0 0;
}

/*================================================
* item */
.item {
  display: block;
  text-decoration: none;
  color: #000;
}

.item:hover .item-thumb:before {
  opacity: 0.34;
}

span.item:hover .item-thumb:before {
  opacity: 0;
}

.item-thumb {
  background-color: #f9f7eb;
  border: 1px solid #5a1c16;
  padding: 3px;
  width: 321px;
  box-sizing: border-box;
  position: relative;
  margin-bottom: 10px;
  max-width: 100%;
}

.item-thumb img {
  width: auto;
  max-height: 100%;
  display: block;
  margin: auto;
}

.item-thumb:after {
  content: "";
  display: block;
  border-right: 4px solid #5a1c16;
  border-bottom: 4px solid #5a1c16;
  width: 32px;
  height: 32px;
  position: absolute;
  right: -3px;
  bottom: -3px;
}

.item-thumb:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #350f0c;
  opacity: 0;
  transition: all 0.5s ease;
}

.item-thumb:empty {
  background-image: url(../img/product/item_unreleased.jpg);
  background-repeat: no-repeat;
  background-position: center;
}

.item-thumb-empty {
  display: block;
  background-color: #36100c;
  box-sizing: border-box;
  height: 100%;
  text-align: center;
  box-sizing: border-box;
  padding-top: 95px;
}

.item-thumb-text {
  background-color: #fff;
  line-height: 1;
  display: inline-block;
  padding: 8px 20px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.item-title {
  font-size: 16px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  margin-bottom: 2px;
}

.item-list-front .item-title {
  font-size: 17px;
}

.item-text {
  font-size: 14px;
}

.item-grid {
  height: 368px;
}

.item-grid:not(:nth-child(-n+3)) {
  margin-top: 20px;
}

.item-grid-s {
  height: 328px;
}

.item-grid-s:not(:nth-child(-n+3)) {
  margin-top: 20px;
}

.item-grid-s .item-thumb {
  width: 293px;
  height: 229px;
}

/*================================================
* footer-order */
.footer-order {
  text-align: center;
  padding: 23px 0 32px;
  background-color: rgba(193, 133, 133, 0.15);
}

.order-text {
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  color: #600000;
  margin: 18px 0 26px;
}

.order-text-inner {
  display: inline-block;
  background-color: #f8f5ec;
  font-size: 12px;
  border: 1px solid #fff;
  border-radius: 20px;
  padding: 5px 66px;
}

.order-text-inner:before {
  content: "";
  display: inline-block;
  background: url(../img/icon/track.png) 0 0 no-repeat;
  width: 34px;
  height: 20px;
  vertical-align: middle;
  position: relative;
  top: -3px;
  margin-right: 18px;
}

.order-text-strong {
  font-size: 18px;
}

.order-text-strong-semi {
  font-size: 16px;
}

.order-list > li {
  font-size: 12px;
  line-height: 1.4;
}

.order-list > li:nth-child(2) {
  background: url(../img/common/border_vertical.png) left 0 repeat-y, url(../img/common/border_vertical.png) right 0 repeat-y;
}

.order-list-text {
  color: #600000;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  font-size: 18px;
  line-height: 1;
  margin-top: 13px;
}

.order-list-caption {
  margin: 10px 0 0;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.order-list-caption-2 {
  margin: 6px 0 -6px;
}

.order-list-btn {
  margin-top: 14px;
}

/*================================================
* bread */
.bread {
  overflow: hidden;
  font-size: 14px;
  padding: 15px 0 10px;
  margin-bottom: 30px;
}

.bread li {
  float: left;
}

.bread li:not(:last-child):after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  margin: 0 10px;
  position: relative;
  top: -2px;
  left: -2px;
}

.bread a {
  color: #000;
  text-decoration: none;
}

.bread a:hover {
  text-decoration: underline;
}

/*================================================
* introduction-mv */
.introduction-circle {
  text-align: center;
  position: relative;
  z-index: 2;
  transition: all 0.5s ease;
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transform: scale(0.8);
      -ms-transform: scale(0.8);
          transform: scale(0.8);
  opacity: 0;
}

.introduction-circle.is-visible {
  opacity: 1;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

.introduction-img {
  width: 870px;
  height: 740px;
  margin: auto;
  position: absolute;
  top: 50px;
  left: 0;
  right: 0;
  z-index: 1;
}

.introduction-mv {
  position: relative;
  width: 940px;
  height: 890px;
}

.introduction-mv-box-img {
  float: left;
}

.introduction-mv-box-text {
  padding-left: 333px;
  letter-spacing: 0;
  line-height: 1.85;
}

.introduction-mv-box-text-title {
  margin-bottom: 19px;
}

/*================================================
 * img */
.img-dotted {
  display: inline-block;
  border: 1px dotted #a6867f;
  overflow: hidden;
}

.img-dashed {
  display: inline-block;
  border: 1px dashed #a6867f;
  overflow: hidden;
}

.img-window {
  display: inline-block;
  border: 1px solid #d9d9d9;
  padding: 5px;
  background-color: #fff;
  overflow: hidden;
}

.img-window-slim {
  display: inline-block;
  border: 1px solid #600000;
  padding: 2px;
  background-color: #fff;
  overflow: hidden;
}

/*================================================
* history */
.history {
  padding-top: 22px;
}

.history-img {
  float: left;
  margin-top: 20px;
}

.history-body {
  padding-left: 380px;
  margin-top: -15px;
}

.history-heading {
  margin-bottom: 10px;
}

.history-table {
  letter-spacing: 0;
  margin-bottom: 27px;
}

.history-table td {
  padding: 2px 0;
  white-space: nowrap;
}

.history-table td:not(:last-child) {
  text-align: right;
  padding-right: 15px;
}

/*================================================
* particlar */
.particlar-img {
  float: left;
}

.particlar-body {
  padding: 20px 0 0 480px;
}

.particlar-list {
  margin-top: 28px;
}

.particlar-list-item {
  float: left;
}

.particlar-list-item:not(:last-child) {
  margin-right: 8px;
}

/*================================================
* access */
.access-text {
  float: left;
  padding-left: 20px;
}

.access-map {
  float: right;
  background: url(../img/introduction/access_bg.png) 0 0 no-repeat;
  width: 588px;
  height: 277px;
  box-sizing: border-box;
  padding: 8px;
}

.access-detail {
  letter-spacing: 0.16em;
  line-height: 1.5;
}

.access-detail > li:not(:last-child) {
  margin-bottom: 18px;
}

.access-tel {
  font-size: 18px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

/*================================================
* introduction-footer */
.introduction-footer {
  text-align: center;
  background-image: url(../img/common/bg_illust/02_left.png);
  background-repeat: no-repeat;
  background-position: 0 20px;
}

.introduction-footer-heading {
  font-size: 24px;
  margin-bottom: 27px;
}

.introduction-footer-heading img {
  vertical-align: middle;
  position: relative;
  top: -3px;
  margin: 0 5px;
}

.introduction-footer-address li {
  display: inline-block;
  font-size: 17px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  letter-spacing: 0.2em;
}

.introduction-footer-address li:nth-child(2) {
  margin: 0 60px;
}

.introduction-footer-ad {
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  margin: 60px 0 12px;
}

.introduction-footer-banner {
  margin-bottom: 112px;
}

/*================================================
* box */
.box-header {
  background-color: #600000;
  color: #fff;
  text-align: center;
  padding: 2px 10px;
}

.box-body {
  border: 1px solid #600000;
  background-color: #faf8ec;
  padding: 18px 10px;
  text-align: center;
}

.box-gray {
  background-color: #f3ece3;
  padding: 43px 70px;
}

.box-gray.box-gray-s {
  padding: 18px 13px;
}

/*================================================
 * text element */
.caption {
  color: #dc1717;
  font-size: 14px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.caption-s {
  font-size: 13px;
}

.heavy {
  font-size: 18px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  letter-spacing: 0.16em;
}

.lead {
  font-size: 20px;
  color: #600000;
}

.paragraph {
  margin-bottom: 0.6em;
}

.paragraph-large {
  margin-bottom: 2.8em;
}

.inline-link {
  display: inline-block;
  line-height: 1;
  background: #e8d5cf;
  border-radius: 3px;
  text-decoration: none;
  color: #000;
  padding: 3px 23px 3px 9px;
  position: relative;
  margin-right: 10px;
  transition: all 0.5s ease;
  opacity: 1;
}

.inline-link:after {
  content: "";
  display: inline-block;
  background: url(../img/common/icon_arrow_s.png) right center no-repeat;
  width: 5px;
  height: 8px;
  position: absolute;
  right: 10px;
  top: 6px;
}

.inline-link:hover {
  opacity: 0.7;
}

.text-block {
  color: #600000;
  border: 1px solid #600000;
  display: inline-block;
  min-width: 700px;
  padding: 0 20px;
  box-sizing: border-box;
  margin: 22px 0;
}

.attention {
  color: #ed0000;
}

.tag-border {
  font-size: 13px;
  border: 1px solid #600000;
  display: inline-block;
  line-height: 1;
  padding: 3px 10px;
}

/*================================================
* order */
.list-red {
  color: #701918;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  padding: 18px 28px;
}

.list-red > li:not(:last-child) {
  margin-bottom: 8px;
}

.order-banner {
  margin: 20px 0 28px;
}

.order-btn-list > li {
  float: left;
  margin-right: 39px;
}

/*================================================
* table-board- */
.table-board {
  background: rgba(193, 133, 133, 0.12);
  padding: 51px 63px;
  width: 860px;
  box-sizing: border-box;
}

.table-board-block {
  background: url(../img/company/bg_1line.png) 0 0 no-repeat;
  line-height: 1;
  padding: 9px 0;
  background-size: 100% 100%;
  margin-bottom: 16px;
}

.table-board-block > dt {
  float: left;
  padding-left: 44px;
  position: relative;
}

.table-board-block > dt:before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border: 1px solid #ecd7bd;
  border-radius: 50%;
  position: absolute;
  left: 19px;
  top: 4px;
}

.table-board-block > dd {
  margin-left: 182px;
}

.table-board-block.table-board-block-tall {
  margin-bottom: 0;
  background-image: url(../img/company/bg_some_lines.png);
  padding: 17px 0;
}

.table-board-block.table-board-block-tall > dd:not(:last-child) {
  margin-bottom: 16px;
}

.table-board-wide dt {
  color: #600000;
}

.table-board-wide dt:before {
  content: none;
}

.table-board-wide .table-board-block {
  padding: 22px 0;
  line-height: 1.8;
  background-image: url(../img/commerce/bg_some_lines_large.png);
}

.table-board-wide dd {
  margin-left: 222px;
  padding-right: 20px;
}

/*================================================
* greeting */
.greeting-img-wrap {
  text-align: center;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  float: left;
}

.greeting-img {
  display: inline-block;
  border-radius: 50%;
  border: 1px dotted #996f69;
  padding: 5px;
  margin: 0 10px 25px;
}

.greeting-img img {
  border-radius: 50%;
}

.greeting-heading {
  text-align: left;
}

.greeting-message {
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 25px;
}

.greeting-text {
  margin: 0 30px 0 345px;
  line-height: 1.8;
}

/*================================================
* business */
.business-img {
  text-align: center;
}

.business-title {
  text-align: center;
  margin: 30px 0 20px;
}

.business-text {
  padding: 0 16px;
  min-height: 370px;
}

.business-btn {
  text-align: center;
}

/*================================================
* reason */
.reason-bg {
  background: url(../img/common/bg_illust/02_left.png) left 270px no-repeat;
}

.reason-text {
  padding: 20px 15px 0;
}

/*================================================
* section-access */
.section-access-text {
  float: left;
}

.section-access-text > p {
  margin-bottom: 2em;
}

.section-access {
  margin-bottom: 77px;
}

.section-access-map {
  float: right;
  margin-right: 20px;
  background: url(../img/company/img_map_bg.png) 0 0 no-repeat;
  width: 522px;
  height: 278px;
  box-sizing: border-box;
  padding: 7px;
}

.company-access-banner {
  margin-top: 71px;
}

/*================================================
* rounded */
.rounded {
  display: inline-block;
  background-color: rgba(96, 0, 0, 0.12);
  border: 1px solid #910606;
  border-radius: 20px;
  line-height: 1;
  padding: 7px 50px;
  margin: 25px 0;
}

.rounded:before, .rounded:after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: #910606;
  border-radius: 50%;
  vertical-align: bottom;
  position: relative;
  top: -5px;
}

.rounded:before {
  left: -20px;
}

.rounded:after {
  right: -20px;
}

/*================================================
* ichibanboshi */
.ichibanboshi-view {
  margin: 40px 0 0;
  text-align: center;
}

.ichibanboshi-view img {
  margin-bottom: 15px;
}

.ichibanboshi-menu-img {
  float: left;
}

.ichibanboshi-menu-wrap {
  padding-left: 443px;
}

.ichibanboshi-menu-list {
  margin: 20px 0 50px;
}

.ichibanboshi-menu-list > dt {
  background-color: #eddacf;
  line-height: 1;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  display: inline-block;
}

.ichibanboshi-menu-list > dd:not(:last-child) {
  margin-bottom: 10px;
}

/*================================================
* spread-item */
.spread-item {
  display: block;
  text-decoration: none;
  text-align: center;
  background-position: 50%;
  background-repeat: no-repeat;
  width: 327px;
  height: 183px;
  box-sizing: border-box;
  position: relative;
}

.spread-item.spread-item-01 {
  background-image: url(../img/ichibanboshi/img_item_01.jpg);
}

.spread-item.spread-item-02 {
  background-image: url(../img/ichibanboshi/img_item_02.jpg);
}

.spread-item.spread-item-03 {
  background-image: url(../img/ichibanboshi/img_item_03.jpg);
}

.spread-item:before {
  content: "";
  display: block;
  z-index: 1;
  opacity: 0.67;
  width: 317px;
  height: 32px;
  background-color: #fff;
  position: absolute;
  top: 74px;
  left: 5px;
  transition: all 0.5s cubic-bezier(0.01, 0.53, 0.25, 1);
}

.spread-item:hover:before {
  top: 5px;
  height: 172px;
}

.spread-item img {
  position: relative;
  z-index: 2;
  top: 74px;
}

/*================================================
* product */
.product-header {
  margin-bottom: 35px;
}

.item-nav {
  background: url(../img/product/bg_pattern_item_nav.png) 0 0 repeat-x;
  padding: 0 7px;
  max-height: 78px;
}

.item-nav.item-nav-top {
  padding-top: 6px;
}

.item-nav.item-nav-bottom {
  padding-bottom: 6px;
}

.item-nav > li {
  float: left;
  width: 198px;
  font-size: 15px;
}

.item-nav > li:not(:last-child) {
  margin-right: 5px;
}

.item-nav-item {
  display: table;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.15);
  text-decoration: none;
  width: 100%;
  transition: all 0.5s ease;
}

.item-nav-item.is-current, .item-nav-item:hover {
  background-color: #fdfcf8;
  color: #600000;
}

.item-nav-cell {
  display: table-cell;
  vertical-align: middle;
  padding: 5px;
}

.item-nav-cell:first-child {
  width: 62px;
}

.item-nav-thumb {
  border-radius: 4px;
}

.product {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 35px 44px;
  border-left: 1px solid rgba(113, 15, 15, 0.29);
  border-right: 1px solid rgba(113, 15, 15, 0.29);
}

.product-mv {
  border: 1px solid #571c0f;
  background-color: #fff;
  overflow: hidden;
  display: inline-block;
  padding: 7px;
  margin-bottom: 13px;
}

.product-heading {
  color: #600000;
  font-size: 30px;
  margin-bottom: 7px;
}

.tag {
  background-color: #600000;
  color: #fff;
  font-size: 16px;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  padding: 3px 12px;
  margin-right: 14px;
}

.product-heading-text {
  vertical-align: middle;
}

.product-btn {
  text-align: right;
  margin-top: 15px;
}

.product-section-list > li:not(:first-child) {
  display: none;
}

/*================================================
* modal */
.modal {
  position: relative;
}

.modal-container {
  display: none;
}

.modal-paper {
  background: url(../img/company/bg_modal_paper.png) 0 0 no-repeat;
  background-size: 100% 100%;
  width: 1027px;
  box-sizing: border-box;
  padding: 65px 68px 70px;
  margin: auto;
  position: relative;
}

.modal-paper.modal-paper-dark {
  background-image: url(../img/introduction/bg_modal_paper_dark.png);
}

.modal-paper-close {
  display: block;
  position: absolute;
  top: 65px;
  right: 67px;
}

.company-modal-heading {
  text-align: center;
  margin: 26px 0 52px;
}

.company-modal-heading-s {
  margin: 55px 0 13px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.modal-menu {
  background-color: #e9e1d6;
  padding: 18px;
  width: 1022px;
  margin: auto;
  box-sizing: border-box;
}

.modal-menu-inner {
  background: url(../img/ichibanboshi/bg_menu.jpg) 0 0 no-repeat;
  background-size: cover;
  padding: 55px;
}

.modal-menu-heading {
  text-align: center;
}

.modal-menu-heading-left {
  text-align: left;
  margin-bottom: 35px;
}

.tel-icon {
  font-size: 14px;
  color: #fff;
  border-radius: 2px;
  background-color: #600000;
  padding: 1px 5px;
  position: relative;
  top: -4px;
  display: inline-block;
  margin-right: 7px;
  letter-spacing: 0.1em;
}

.modal-menu-address {
  text-align: center;
  font-size: 24px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
}

.modal-menu-address li {
  display: inline-block;
  margin: 0 15px;
}

.modal-menu-grid-2 {
  float: left;
  width: 417px;
}

.modal-menu-grid-2:nth-child(2n) {
  float: right;
}

.modal-menu-grid-3 {
  float: left;
  width: 266px;
}

.modal-menu-grid-3:not(:nth-child(3n)) {
  margin-right: 39px;
}

.modal-menu-title {
  background-color: #eddacf;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
  text-align: center;
  font-size: 18px;
  margin-bottom: 14px;
}

.modal-menu-itemlist {
  text-align: center;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.modal-menu-itemlist-img {
  margin-top: 50px;
}

.modal-menu-item-img {
  margin: 15px 0;
}

.menu-table-item {
  display: table;
  width: 100%;
  text-align: left;
}

.menu-table-item > li {
  display: table-row;
  line-height: 1.2;
}

.menu-table-item-cell {
  display: table-cell;
  padding: 6px 0;
}

.menu-table-item-cell:last-child {
  text-align: right;
  vertical-align: bottom;
}

.menu-table-item-cell .caption-s {
  letter-spacing: 0;
}

.modal-menu-nomihodai-1 {
  margin-top: 4px;
}

.modal-menu-nomihodai-2 {
  text-align: right;
}

.modal-menu-nomihodai-list {
  margin: 5px 0 0;
  font-size: 11px;
  letter-spacing: 0;
}

.modal-menu-nomihodai-list > li:not(:last-child) {
  margin-bottom: 7px;
}

.modal-menu-bottom {
  text-align: right;
  padding-top: 50px;
  font-size: 13px;
  font-family: "FP-ヒラギノ明朝 ProN W6", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.balloon {
  background-color: #eddacf;
  border-radius: 4px;
  font-size: 13px;
  padding: 6px 25px;
  margin: 15px 0 5px;
  position: relative;
}

.balloon:before {
  content: "";
  display: block;
  background: url(../img/ichibanboshi/menu/icon_balloon.png) 0 0 no-repeat;
  width: 12px;
  height: 13px;
  position: absolute;
  bottom: 100%;
  left: 20px;
}

.full {
  max-width: none;
  width: auto;
}

.menu-img-11 {
  position: relative;
  left: -20px;
}

/*================================================
* introduction-slider */
.introduction-slider {
  position: relative;
  margin: 40px 0 0;
}

.introduction-slider img {
  margin: auto;
}

.introduction-slider .slick-arrow {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: none;
  overflow: hidden;
  text-indent: -9999px;
  width: 17px;
  height: 34px;
  background-position: 0 0;
  background-repeat: no-repeat;
  outline: none;
  cursor: pointer;
  position: absolute;
  z-index: 3;
  top: 50%;
  margin-top: -17px;
  opacity: 1;
  transition: all 0.5s ease;
}

.introduction-slider .slick-arrow.slick-disabled {
  opacity: 0;
  cursor: default;
}

.introduction-slider .slick-prev {
  background-image: url(../img/common/btn_arrow_prev.png);
  left: 0;
}

.introduction-slider .slick-next {
  background-image: url(../img/common/btn_arrow_next.png);
  right: 0;
}

.introduction-slider .slick-dots {
  text-align: center;
}

.introduction-slider .slick-dots > li {
  display: inline-block;
  margin: 20px 7px 0;
}

.introduction-slider .slick-dots > li button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  font-size: 16px;
  background-color: #fffcf7;
  line-height: 1;
  padding: 7px 12px;
  cursor: pointer;
}

.introduction-slider .slick-dots > li.slick-active button {
  border: 1px solid #600000;
}

.introduction-modal-heading {
  font-size: 24px;
  color: #600000;
  margin-bottom: 10px;
}

/*================================================
* company-contents */
.flow-list {
  display: table;
}

.flow-list > li {
  width: 293px;
  height: 209px;
  display: table-cell;
  vertical-align: middle;
  box-sizing: border-box;
  padding: 20px 25px 20px 15px;
  background: url(../img/company/bg_flow.png) center 0 no-repeat;
  text-align: center;
}

.address-list {
  text-align: left;
  margin-top: 20px;
  font-size: 14px;
}

.address-list > li:first-child {
  font-size: 16px;
  letter-spacing: 0.2em;
  margin-bottom: 5px;
}

.icon-tel {
  background-color: #600000;
  display: inline-block;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 1;
  width: 43px;
  border-radius: 3px;
  padding: 3px 0;
  margin-right: 10px;
}

/*================================================
* enjoy-contents */
.enjoy-top {
  float: left;
  width: 862px;
}

.enjoy-mv {
  display: inline-block;
  padding: 5px;
  background-color: #fff;
  border: dashed 1px #600000;
  margin: 25px 0 30px;
}

.enjoy-way li {
  display: table;
  float: left;
  height: 100px;
  vertical-align: middle;
  background: url(../img/enjoy/bg_circle.png) center no-repeat;
}

.enjoy-way li > span {
  display: table-cell;
  vertical-align: middle;
  color: #b14a4a;
  font-size: 18px;
  line-height: 1.3;
}

.enjoy-way li:nth-child(2) {
  margin: 0 134px;
}

.enjoy-way li:nth-child(4) {
  clear: both;
  margin: 0 134px 0 170px;
}

.enjoy-way li:nth-child(4), .enjoy-way li:nth-child(5) {
  margin-top: -30px;
}

.enjoy-box {
  background: rgba(255, 255, 255, 0.7) url(../img/enjoy/img_02.jpg) 17px center no-repeat;
  padding: 7px;
  margin: 10px 0 0;
}

.enjoy-box-inner {
  border: 1px dotted #600000;
  padding: 20px 15px 20px 200px;
}

.enjoy-section-img {
  border: 1px dashed #600000;
  padding: 2px;
  background-color: #fff;
  display: inline-block;
  margin-top: 20px;
}

.enjoy-section-title {
  margin-bottom: 25px;
}

.enjoy-section-odd .enjoy-section-img {
  float: left;
}

.enjoy-section-odd .enjoy-section-body {
  padding-left: 470px;
}

.enjoy-section-even .enjoy-section-img {
  float: right;
}

.enjoy-section-even .enjoy-section-body {
  padding-right: 470px;
}

.enjoy-addImg {
  float: left;
  margin-right: 20px;
}

.enjoy-addImg-caption {
  width: 415px;
  height: 54px;
  background: url(../img/enjoy/img_sub_02.png) no-repeat 0 0;
  position: relative;
  font-size: 13px;
  line-height: 1.4;
  padding: 10px 20px 0 32px;
  display: inline-block;
  text-align: left;
  box-sizing: border-box;
}

/*================================================
* break-box */
.break-box {
  border: 1px dashed #600000;
  background-color: #f2e8db;
  background-repeat: no-repeat;
  padding: 42px 34px 55px;
  margin: 0 26px;
}

.break-box.break-box-illust-01 {
  background-image: url(../img/common/bg_illust/03_right.png);
  background-position: right center;
}

.break-box.break-box-illust-02 {
  background-image: url(../img/common/bg_illust/03_left.png);
  background-position: left center;
}

.break-box-heading {
  text-align: center;
  margin-bottom: 34px;
}

/*================================================
* accordion-box */
.accordion-box {
  background-color: rgba(193, 133, 133, 0.27);
  transition: all 0.5s ease;
}

.accordion-box.is-active {
  padding-bottom: 20px;
}

.accordion-box.is-active > dt:after {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}

.accordion-box:not(:last-child) {
  margin-bottom: 30px;
}

.accordion-box > dt {
  color: #600000;
  padding: 15px 52px;
  cursor: pointer;
  position: relative;
}

.accordion-box > dt:after {
  content: "";
  display: block;
  background: url(../img/faq/icon_arrow.png) 0 0 no-repeat;
  width: 29px;
  height: 29px;
  position: absolute;
  right: 20px;
  top: 12px;
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  transition: all 0.5s ease;
}

.accordion-box > dt:before {
  content: "Q.";
  margin-right: 10px;
}

.accordion-box > dd {
  background: url(../img/common/bg_wrapper.jpg);
  margin: 6px 20px 0;
  border-radius: 3px;
  padding: 40px 60px;
  display: none;
}

/*================================================
* policy-contents */
.policy-list {
  margin: 30px 0 0;
}

.policy-list > dt {
  background-color: rgba(193, 133, 133, 0.27);
  font-size: 17px;
  color: #600000;
  padding: 8px 70px;
}

.policy-list > dd {
  padding: 28px 0 40px 80px;
}

.count {
  width: 32px;
  display: inline-block;
  margin-left: -32px;
}

.minus-indent-list > li {
  text-indent: -3.3em;
}

.minus-indent-list > li:not(:last-child) {
  margin-bottom: 0.5em;
}

.minus-indent-list-content {
  text-indent: 0;
  margin: 10px 0 0;
}

.list > li {
  font-size: 14px;
  text-indent: -15px;
  padding-left: 15px;
}

.list > li:not(:last-child) {
  margin-bottom: 8px;
}

#access-map-introduction {
  width: 573px;
  height: 263px;
}

#access-map-company,
#access-map-ichibanboshi {
  width: 507px;
  height: 263px;
}

.animsition-loading {
  background: url(../img/common/icon_loading.png) 0 0 no-repeat;
  border: none;
  width: 87px;
  height: 76px;
  border-radius: 0;
  -webkit-animation-duration: 5s;
          animation-duration: 5s;
}

.summer .loading {
  background: url(../img/common/bg_illust/summer/summer_right.png) right top no-repeat, url(../img/common/bg_illust/summer/summer_left.png) left bottom no-repeat, url(../img/common/bg_wrapper.jpg) center top repeat;
}

.summer .header {
  background: url(../img/common/bg_illust/summer/summer_right.png) left center no-repeat, url(../img/common/bg_illust/summer/summer_right.png) 110% 100% no-repeat;
  background-size: 500px auto , 500px auto;
}

.summer .front-section-01 {
  background: url(../img/index/bg_verticalarea.png) center 100px no-repeat, url(../img/common/bg_illust/summer/summer_left.png) -50px 190px no-repeat, url(../img/common/bg_illust/summer/summer_right.png) right 100px no-repeat;
}

.summer .introduction-footer {
  background-image: url(../img/common/bg_illust/summer/summer_left.png);
  background-position: -40px 20px;
}

.summer .section-bg-order {
  background: url(../img/common/bg_illust/summer/summer_right.png) right 1375px no-repeat;
}

.summer .section-bg-product {
  background: url(../img/common/bg_illust/summer/summer_left.png) 100% 94% no-repeat;
}

.summer .section-bg-order-company.section-bg-order {
  background: url(../img/common/bg_illust/summer/summer_right.png) 110% 1415px no-repeat;
  background-size: 450px auto;
}

.summer .reason-bg {
  background: url(../img/common/bg_illust/summer/summer_left.png) 0 270px no-repeat;
}

.summer .break-box-illust-01 {
  background-image: url(../img/common/bg_illust/summer/summer_right.png);
  background-position: 115% 100%;
  background-size: 430px auto;
}

.summer .break-box-illust-02 {
  background-image: url(../img/common/bg_illust/summer/summer_left.png);
  background-size: 400px auto;
  background-position: -10% -50%;
}

.summer .section-bg-ichibanboshi {
  background: url(../img/common/bg_illust/summer/summer_right.png) 100% 1085px no-repeat;
  background-size: 600px auto;
}

.autumn .loading {
  background: url(../img/common/bg_illust/autumn/autumn_right.png) right top no-repeat, url(../img/common/bg_illust/autumn/autumn_left.png) left bottom no-repeat, url(../img/common/bg_wrapper.jpg) center top repeat;
}

.autumn .header {
  background: url(../img/common/bg_illust/autumn/autumn_left_top.png) -10px -170px no-repeat, url(../img/common/bg_illust/autumn/autumn_right.png) 103% 42% no-repeat;
  background-size: 500px auto , 500px auto;
}

.autumn .front-section-01 {
  background: url(../img/index/bg_verticalarea.png) center 100px no-repeat, url(../img/common/bg_illust/autumn/autumn_left.png) -50px 190px no-repeat, url(../img/common/bg_illust/autumn/autumn_right.png) right 100px no-repeat;
}

.autumn .introduction-footer {
  background-image: url(../img/common/bg_illust/autumn/autumn_left.png);
  background-position: -40px 20px;
}

.autumn .section-bg-order {
  background: url(../img/common/bg_illust/autumn/autumn_right.png) right 1375px no-repeat;
}

.autumn .section-bg-product {
  background: url(../img/common/bg_illust/autumn/autumn_right_middle.png) 100% 94% no-repeat;
}

.autumn .section-bg-order-company.section-bg-order {
  background: url(../img/common/bg_illust/autumn/autumn_right.png) 110% 1415px no-repeat;
  background-size: 450px auto;
}

.autumn .reason-bg {
  background: url(../img/common/bg_illust/autumn/autumn_left.png) 0 270px no-repeat;
}

.autumn .break-box-illust-01 {
  background-image: url(../img/common/bg_illust/autumn/autumn_right.png);
  background-position: 115% 100%;
  background-size: 430px auto;
}

.autumn .break-box-illust-02 {
  background-image: url(../img/common/bg_illust/autumn/autumn_left.png);
  background-size: 400px auto;
  background-position: -10% -50%;
}

.autumn .section-bg-ichibanboshi {
  background: url(../img/common/bg_illust/autumn/autumn_right.png) 100% 1085px no-repeat;
  background-size: 600px auto;
}

.winter .loading {
  background: url(../img/common/bg_illust/winter/winter_right.png) 90% center no-repeat, url(../img/common/bg_illust/winter/winter_left.png) 10% center no-repeat, url(../img/common/bg_wrapper.jpg) center top repeat;
}

.winter .header {
  background: url(../img/common/bg_illust/winter/winter_left_header.png) 60px center no-repeat, url(../img/common/bg_illust/winter/winter_right_header.png) 90% center no-repeat;
}

.winter .front-section-01 {
  background: url(../img/index/bg_verticalarea.png) center 100px no-repeat, url(../img/common/bg_illust/winter/winter_left.png) 0 190px no-repeat, url(../img/common/bg_illust/winter/winter_right.png) right 100px no-repeat;
}

.winter .introduction-footer {
  background-image: url(../img/common/bg_illust/winter/winter_left.png);
  background-position: 0 20px;
}

.winter .section-bg-order {
  background: url(../img/common/bg_illust/winter/winter_right.png) right 1375px no-repeat;
}

.winter .section-bg-product {
  background: url(../img/common/bg_illust/winter/winter_right.png) 100% 94% no-repeat;
}

.winter .section-bg-order-company.section-bg-order {
  background: url(../img/common/bg_illust/winter/winter_right.png) 110% 1415px no-repeat;
  background-size: 450px auto;
}

.winter .reason-bg {
  background: url(../img/common/bg_illust/winter/winter_left.png) 0 center no-repeat;
}

.winter .break-box-illust-01 {
  background-image: url(../img/common/bg_illust/winter/winter_right_header.png);
  background-position: right bottom;
}

.winter .break-box-illust-02 {
  background-image: url(../img/common/bg_illust/winter/winter_left_header.png);
}

.winter .section-bg-ichibanboshi {
  background: url(../img/common/bg_illust/winter/winter_right.png) 100% 1085px no-repeat;
}
