@charset "utf-8";
::-moz-selection {
  background: #0d221e;
  color: #fff;
}

::selection {
  background: #0d221e;
  color: #fff;
}

/* Basic
------------------------------------------ */
* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
section,
header,
footer,
nav,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
pre,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
  font-size: 100%;
}

input,
textarea {
  font-size: 100%;
  vertical-align: middle;
}

body,
div,
p,
address,
dl,
dt,
dd,
ul,
ol,
li {
  margin: 0;
  padding: 0;
}

img {
  display: inline-block;
  border: none;
  max-width: 100%;
  height: auto;
}

caption {
  text-align: left;
}
table {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
}

fieldset {
  border: 0;
}
input {
  line-height: normal;
}

ol,
ul {
  list-style-type: none;
}

label {
  cursor: pointer;
}
address {
  font-style: normal;
}

/*hr { display: none; visibility: hidden; height: 0; border: 0; }*/

article,
aside,
header,
hgroup,
footer,
nav,
section,
dialog,
figure {
  display: block;
}

a[name] {
  color: #000;
}
a[name]:hover {
  color: #000;
  text-decoration: none !important;
  outline: 0 !important;
}
/* a:hover {
  color: #06c4ff;
} */
a img {
  color: #000;
}

.navskip,
.hide {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  font-size: 0;
}
em {
  font-weight: bold;
  font-style: normal;
}

body {
  background: #fff;
  color: #222;
  font-family: YakuHanJP, "Rubik", "Noto Sans JP", "メイリオ", sans-serif;
  font-weight: 400;
  line-height: 2;
  text-align: left;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
body.menuSpOpened {
  padding-right: 15px;
  overflow: hidden;
}
body.menuSpOpened.iPad {
  padding-right: 0;
}
@media screen and (max-width: 767px) {
  body.menuSpOpened {
    padding-right: 0;
  }
}

/* Link */
a {
  color: #222;
  text-decoration: none;
  word-wrap: break-word;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a.telNo01 {
  color: #222;
}
a.telNo01:hover {
  opacity: 1;
  cursor: default;
}
@media screen and (max-width: 767px) {
  a.telNo01 {
    color: #0059e9;
    text-decoration: underline;
  }
}

/* Form
------------------------------------------ */
button,
select,
textarea,
input {
  font-family: inherit;
}

/* IME : For Windows IE */
.imeA {
  ime-mode: active;
}
.imeD {
  ime-mode: disabled;
}

/* select */
select {
  outline: none;
}

/* password */
input[type="password"] {
  height: 1.2em;
  font-family: arial;
  ime-mode: disabled;
}

/* button */
input[type="submit"],
input[type="reset"],
input[type="button"],
input[type="image"] {
  cursor: pointer;
}

/* radio */
input[type="checkbox"],
input[type="radio"] {
  margin: 0 10px 0 0;
  padding: 0;
  vertical-align: 1px;
}

/* iOS style reset */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

/* Margin
------------------------------------------ */
.mgt0 {
  margin-top: 0 !important;
}
.mgt10 {
  margin-top: 10px !important;
}

/* Padding
------------------------------------------ */
.pdt0 {
  padding-top: 0 !important;
}

/* Layout
------------------------------------------ */
.floatL {
  float: left;
}
.floatR {
  float: right;
}
.clearboth {
  clear: both;
}
br.clear {
  margin: 0;
  padding: 0;
  clear: both;
  line-height: 0;
  font-size: 0;
}

.alL {
  text-align: left !important;
}
.alC {
  text-align: center !important;
}
.alR {
  text-align: right !important;
}

.vaT {
  vertical-align: top !important;
}
.vaM {
  vertical-align: middle !important;
}
.vaB {
  vertical-align: bottom !important;
}

.bold {
  font-weight: bold !important;
}
.txtRed {
  color: #e53c17 !important;
}
.txtGreen {
  color: #1a821f !important;
}
.textS {
  font-size: 14px;
}
.textM {
  font-size: 16px;
}
.textL {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .textS {
    font-size: 12px;
  }
  .textM {
    font-size: 14px;
  }
  .textL {
    font-size: 16px;
  }
}

/* Clearfix
------------------------------------------ */
/* clearfix */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/* Text
------------------------------------------ */
.nowrap {
  white-space: nowrap !important;
}
.bold {
  font-weight: bold !important;
}
.normal {
  font-weight: normal !important;
}

/* pc sp
------------------------------------------ */
.pc {
  display: block;
}
.pcInline {
  display: inline-block;
}
.spInline,
.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .pcInline,
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .spInline {
    display: inline-block;
  }
}

/* wp human reset
------------------------------------------ */
h1,
h2,
h3 {
  border: none;
}
h1:after {
  display: none;
}

/* wrapper
------------------------------------------ */
@media screen and (max-width: 767px) {
  #wrapper {
    overflow: hidden;
  }
}

/* header
------------------------------------------ */
#sw-header {
  position: absolute;
  top: 20px;
  right: 30px;
  z-index: 10;
}
body.home #sw-header {
  top: 30px;
  right: 30px;
}
body.menuSpOpened #sw-header {
  right: 37px;
}
body.menuSpOpened.iPad #sw-header {
  right: 22px;
}
#sw-header .logo01 {
  line-height: 0;
}
body:not(.-is-touch) #sw-header .logo01 a:hover {
  opacity: 0.7;
}
/* kurata */
#sw-header .logo01 a {
  line-height: 1;
  display: block;
  text-align: center;
  width: 200px;
}
#sw-header .logo01 img {
  width: 100%;
}
#sw-header .logo01 .tagline01 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
  -webkit-transform: scale(0.94);
  transform: scale(0.94);
  -webkit-transform-origin: top left;
  transform-origin: top left;
  line-height: 1.4;
  margin-top: 8px;
  margin-left: -2px;
  width: 120%;
  text-align: left;
}
@media screen and (max-width: 767px) {
  body.home #sw-header,
  #sw-header {
    position: absolute;
    top: 10px;
    /* right: 12.85vw; */
    right: 13.1vw;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: top right;
    transform-origin: top right;
  }
  body.menuSpOpened #sw-header {
    right: 2.6666vw;
  }
  #sw-header .logo01 {
    width: 34.6vw;
  }
  body.menuSpOpened.iPad #sw-header {
    right: 2.6666vw;
  }
  #sw-header .logo01 a {
    width: auto;
  }
  #sw-header .logo01 a:hover {
    opacity: 1;
    display: block;
  }
  #sw-header .logo01 img {
    width: 100%;
    height: auto;
  }
  #sw-header .logo01 .tagline01 {
    display: none;
  }
}
@media screen and (max-width: 374px) {
  #sw-header {
    position: absolute;
    top: 23px;
    right: 10px;
    right: 2.6666vw;
  }
  body.menuSpOpened #sw-header {
    right: 10px;
  }
}

/* menuBtn
------------------------------------------ */
#menuBtn {
  position: fixed;
  right: 15px;
  right: 34px;
  bottom: 35px;
  z-index: 10;
  mix-blend-mode: multiply;
}
body.menuSpOpened #menuBtn {
  right: 30px;
}
body.menuSpOpened.iPad #menuBtn {
  right: 15px;
}
#menuBtn a {
  display: block;
  line-height: 0;
  position: relative;
  z-index: 999;
}
#menuBtn a .trigger {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  width: 80px;
  height: 40px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#menuBtn a .trigger span {
  position: relative;
  display: block;
  width: 50px;
  height: 3px;
  background-color: #16f0f1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#menuBtn a .trigger span:nth-of-type(1) {
  left: 15px;
  margin-bottom: 5px;
}
#menuBtn a .trigger span:nth-of-type(2) {
  left: -15px;
  margin-top: 4px;
}
#menuBtn a:hover .trigger span:nth-of-type(1) {
  left: -15px;
}
#menuBtn a:hover .trigger span:nth-of-type(2) {
  left: 15px;
}
@media screen and (max-width: 767px) {
  #menuBtn {
    position: fixed;
    bottom: 55px;
    right: 25px;
  }
  body.menuSpOpened #menuBtn {
    right: 15px;
  }
}

/* menuSp
------------------------------------------ */
/* menuSpBg01 */
#menuSpBg01 {
  position: fixed;
  top: 0;
  left: 25%;
  width: 75%;
  height: 100%;
  background: #222;
  z-index: 100;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);

  -webkit-transform: translate3d(200%, 0, 0);
  transform: translate3d(200%, 0, 0);
}
#menuSpBg01.opened {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
@media screen and (max-width: 767px) {
  #menuSpBg01 {
    left: 0;
    width: 100%;
  }
}

/* menuSpBg02 */
#menuSpBg02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 25%;
  height: 100%;
  pointer-events: none;
  /* background: #FFF; */
  z-index: 102;
  /* -webkit-transition: all 0.5s ease;
	transition: all 0.5s ease; */
  /* -webkit-transform: translate3d(0, 100vh, 0);
	transform: translate3d(0, 100vh, 0); */
}
#menuSpBg02 .menuSpBg02Inner01 {
  width: 25%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: flex;
  background: #222;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  clip: rect(100vh, 100vw, 100vh, 0vw);
}
#menuSpBg02 .menuSpBg02Inner02 {
  width: 25%;
  height: 100%;
  position: fixed;
  display: -webkit-box;
  display: flex;
  top: 0;
  left: 0;
  background: #fff;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  clip: rect(100vh, 100vw, 100vh, 0vw);
}

/* メニューの黒背景表示 */
#menuSpBg02.opened {
  pointer-events: all;
}
#menuSpBg02.opened .menuSpBg02Inner01 {
  -webkit-animation: menuOpenedClip 0.3s forwards
    cubic-bezier(0.645, 0.045, 0.355, 1);
  animation: menuOpenedClip 0.3s forwards cubic-bezier(0.645, 0.045, 0.355, 1);
}
/* メニューの白背景表示 */
#menuSpBg02.opened .menuSpBg02Inner02 {
  -webkit-animation: 0.3s menuOpenedClip 0.4s forwards
    cubic-bezier(0.645, 0.045, 0.355, 1);
  animation: 0.3s menuOpenedClip 0.4s forwards
    cubic-bezier(0.645, 0.045, 0.355, 1);
}

#menuSpBg02.closed .menuSpBg02Inner01 {
  clip: rect(0vh, 100vw, 100vh, 0vw);
  -webkit-animation: 0.2s menuClosedClip 0.2s forwards
    cubic-bezier(0.645, 0.045, 0.355, 1);
  animation: 0.2s menuClosedClip 0.2s forwards
    cubic-bezier(0.645, 0.045, 0.355, 1);
}
#menuSpBg02.closed .menuSpBg02Inner02 {
  clip: rect(0vh, 100vw, 100vh, 0vw);
  -webkit-animation: menuClosedClip 0.2s forwards
    cubic-bezier(0.645, 0.045, 0.355, 1);
  animation: menuClosedClip 0.2s forwards cubic-bezier(0.645, 0.045, 0.355, 1);
}
@-webkit-keyframes menuOpenedClip {
  0% {
    clip: rect(100vh, 100vw, 100vh, 0vw);
  }
  100% {
    clip: rect(0vh, 100vw, 100vh, 0vw);
  }
}
@keyframes menuOpenedClip {
  0% {
    clip: rect(100vh, 100vw, 100vh, 0vw);
  }
  100% {
    clip: rect(0vh, 100vw, 100vh, 0vw);
  }
}
@-webkit-keyframes menuOpenedClipDown {
  0% {
    clip: rect(0vh, 100vw, 0vh, 0vw);
  }
  100% {
    clip: rect(0vh, 100vw, 100vh, 0vw);
  }
}
@keyframes menuOpenedClipDown {
  0% {
    clip: rect(0vh, 100vw, 0vh, 0vw);
  }
  100% {
    clip: rect(0vh, 100vw, 100vh, 0vw);
  }
}
@-webkit-keyframes menuClosedClip {
  0% {
    clip: rect(0vh, 100vw, 100vh, 0vw);
  }
  100% {
    clip: rect(0vh, 100vw, 0vh, 0vw);
  }
}
@keyframes menuClosedClip {
  0% {
    clip: rect(0vh, 100vw, 100vh, 0vw);
  }
  100% {
    clip: rect(0vh, 100vw, 0vh, 0vw);
  }
}
#menuSpBg02 > .vessel {
  text-align: center;
}
#menuSpBg02 .logo01 {
  line-height: 0;
  text-align: center;
}
body:not(.-is-touch) #menuSpBg02 .logo01 a:hover {
  opacity: 0.7;
}
#menuSpBg02 .logo01 img {
  width: 170px;
}
#menuSpBg02 .tagline01 {
  margin-top: 9px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  #menuSpBg02 {
    display: none;
  }
}

/* menuSp */
#menuSp {
  display: none;

  position: fixed;
  top: 0;
  right: 0;
  width: calc(100% - 25%);
  height: 100%;
  background: #222;
  color: #fff;
  overflow: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* For Firefox */
  z-index: 101;
}
#menuSp::-webkit-scrollbar {
  width: 6px;
}
#menuSp::-webkit-scrollbar-track {
  background: #ddd;
}
#menuSp::-webkit-scrollbar-thumb {
  background: #666;
}
#menuSp a {
  color: #fff;
}
body:not(.-is-touch) #menuSp a:hover {
  color: #06c4ff;
}
#menuSp > .vessel {
  padding: 60px 5% 60px 5%;
}
/* kurata */
#menuSp .close01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: fixed;
  top: 0;
  right: 0;
  width: 5%;
  height: 100%;
  background: #111;
  font-size: 12px;
  font-family: "Rubik";
  letter-spacing: 0.5em;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
body:not(.-is-touch) #menuSp .close01:hover {
  cursor: pointer;
  letter-spacing: 0.7em;
}
#menuSp .close01 a {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  flex-direction: row-reverse;
  -webkit-box-align: baseline;
  align-items: baseline;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  margin: -30px 6px 0 0;
}
#menuSp .close01 a:after {
  content: "";
  width: 12px;
  height: 9px;
  display: block;
  background: url(img_cmn/icn_close_01.svg) no-repeat 4% 50%;
  background-size: cover;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  margin-right: 16px;
}
#menuSp .close01 a .close01Text01 {
  display: inline-block;
}
body:not(.-is-touch) #menuSp .close01 a:hover {
  color: #fff;
}
#menuSp .nav01 {
  font-size: 12px;
  font-family: "Rubik", "Noto Sans JP", "メイリオ", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#menuSp .nav01 .nav01Ul01:after {
  content: "";
  display: block;
  clear: both;
}
#menuSp .nav01 .nav01Ul01 .nav01Items01 {
  float: left;
  width: 20%;
}
#menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(6) {
  margin-top: 40px;
  width: 40%;
}
#menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(7) {
  margin-top: 40px;
  width: 60%;
}
#menuSp .nav01 .nav01Head01 {
  font-weight: 700;
}
#menuSp .nav01 .nav01Ul02 {
  margin-top: 13px;
  margin-right: 40px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: start;
  align-items: flex-start;
}
#menuSp .nav01 .nav01Ul01 .nav01Items01:nth-child(7) .nav01Ul02,
#menuSp .nav01 .nav01Ul01 .nav01Items01:nth-child(5) .nav01Ul02 {
  margin-right: 0;
}
#menuSp .nav01 .nav01Ul02 .nav01Items02 + .nav01Items02 {
  margin-top: 8px;
}
#menuSp .nav01 .nav01Ul03 {
  margin-top: 6px;
}
#menuSp .nav01 .nav01Ul03 .nav01Items03 {
  position: relative;
  padding-left: 12px;
}
#menuSp .nav01 .nav01Ul03 .nav01Items03::before {
  content: "";
  position: absolute;
  top: 0.7em;
  left: 0;
  display: block;
  width: 5px;
  height: 1px;
  background: #ccc;
}
#menuSp .nav01 .nav01Ul03 .nav01Items03 + .nav01Items03 {
  margin-top: 9px;
}
#menuSp .search01 {
  margin-top: 40px;
}
#menuSp .nav02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;

  margin: 40px 40px 0 0;
  font-size: 12px;
  font-family: "Rubik", "Noto Sans JP", "メイリオ", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#menuSp .nav02 .nav0201 {
  -webkit-box-ordinal-group: 3;
  order: 2;
}
#menuSp .nav02 .nav0202 {
  -webkit-box-ordinal-group: 2;
  order: 1;
}
#menuSp .nav02 .nav02Ul01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  margin-top: 40px;
}
#menuSp .nav02 .nav02Ul01 .nav02Items01 + .nav02Items01 {
  margin-left: 25px;
}
#menuSp .nav02 .nav02Ul02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  flex-wrap: wrap;

  height: 30px;
}
#menuSp .nav02 .nav02Ul02 .nav02Items02.isTwitter a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(img_cmn/btn_twitter_02.svg) no-repeat;
  background-size: 30px 30px;
  border-radius: 15px;
  text-indent: -9999px;
  overflow: hidden;
}
body:not(.-is-touch) #menuSp .nav02 .nav02Ul02 .nav02Items02.isTwitter a:hover {
  background-color: #fff;
  background-image: url(img_cmn/img_twitter_03.svg);
}
#menuSp .nav02 .nav02Ul02 .nav02Items02.isFacebook {
  margin-left: 26px;
}
#menuSp .nav02 .nav02Ul02 .nav02Items02.isFacebook a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(img_cmn/btn_facebook_02.svg) no-repeat;
  border-radius: 15px;
  background-size: 30px 30px;
  text-indent: -9999px;
  overflow: hidden;
}
body:not(.-is-touch) #menuSp .nav02 .nav02Ul02 .nav02Items02.isFacebook a:hover {
  background-color: #fff;
  background-image: url(img_cmn/img_facebook_03.svg);
}
#menuSp .nav02 .nav02Ul02 .nav02Items02.isShop {
  margin-left: 25px;
}
#menuSp .nav02 .nav02Ul02 .nav02Items02.isShop a {
  display: block;
  padding-left: 30px;
  background: url(img_cmn/icn_sw_02.svg) no-repeat 0 0;
  background-size: 24px 16px;
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: 0;
}
body:not(.-is-touch) #menuSp .nav02 .nav02Ul02 .nav02Items02.isShop a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  #menuSp {
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  #menuSp::-webkit-scrollbar {
    width: 0;
  }
  body:not(.-is-touch) #menuSp a:hover {
    color: #fff;
  }
  #menuSp > .vessel {
    padding: 42px 30px 30px 30px;
  }
  #menuSp .close01 {
    position: fixed;
    bottom: 50px;
    top: auto;
    right: 0;
    margin-top: -70px;
    width: 55px;
    height: 150px;
    font-size: 10px;
    background: transparent;
    background-color: #000;
  }
  #menuSp .close01 a {
    -webkit-box-align: center;
    align-items: center;
    width: 150px;
    height: 55px;
    padding-bottom: 0;
    margin: 0;
  }
  #menuSp .close01 a:after {
    margin-right: 40px;
  }
  #menuSp .nav01 .nav01Head01 {
    width: 100%;
  }
  #menuSp .nav01 a {
    display: block;
    padding: 6px 0;
  }
  #menuSp .nav01 .nav01Ul01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    flex-wrap: wrap;
  }
  #menuSp .nav01 .nav01Ul01 .nav01Items01 {
    float: none;
    margin-top: 40px;
    margin-left: 8%;
    width: 28%;
  }
  #menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(3),
  #menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(2),
  #menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(1) {
    margin-top: 0;
  }
  #menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(3n + 1) {
    margin-left: 0;
  }
  #menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(6) {
    margin-left: 0;
    width: 100%;
  }
  #menuSp .nav01 .nav01Ul01 .nav01Items01:nth-of-type(7) {
    width: 100%;
  }
  #menuSp .nav01 .nav01Ul02 {
    margin-top: 4px;
    margin-right: 0;
    -webkit-box-align: stretch;
    align-items: stretch;
  }
  #menuSp .nav01 .nav01Ul02 .nav01Items02 + .nav01Items02 {
    margin-top: 0;
  }
  #menuSp .nav01 .nav01Ul03 {
    margin-top: 3px;
  }
  #menuSp .nav01 .nav01Ul03 .nav01Items03::before {
    content: "";
    position: absolute;
    top: 1.2em;
  }
  #menuSp .nav01 .nav01Ul03 .nav01Items03 + .nav01Items03 {
    margin-top: 4px;
  }
  #menuSp .search01 {
    margin-top: 40px;
  }
  #menuSp .nav02 {
    margin: 50px 0 0 0;
  }
  #menuSp .nav02 .nav0201 {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  #menuSp .nav02 .nav0202 {
    -webkit-box-ordinal-group: 3;
    order: 2;

    margin: 50px 0 0 0;
    width: auto;
  }
  #menuSp .nav02 .nav02Ul01 {
    display: block;

    margin-top: 0;
    text-align: center;
  }
  #menuSp .nav02 .nav02Ul01 .nav02Items01 + .nav02Items01 {
    margin: 20px 0 0 0;
  }
  #menuSp .nav02 .nav02Ul02 {
    -webkit-box-pack: center;
    justify-content: center;
  }
  #menuSp .nav02 .nav02Ul02 .nav02Items02.isShop {
    width: 100%;
    margin: 30px 0 0 0;
    padding-bottom: 30px;
    text-align: center;
  }
  #menuSp .nav02 .nav02Ul02 .nav02Items02.isShop a {
    display: inline-block;
  }
}

/* layout
------------------------------------------ */
/* container */
#sw-container {
  position: relative;
}

/* contents */
#sw-contents {
  position: relative;
}
/* kurata */
#sw-contents #sw-side {
  position: fixed;
  top: 0;
  left: 0;
  width: 40%;
  width: calc((100vw - 15px) * 0.4);
  width: 37vw;
  height: 100%;
  overflow: hidden;
}
#sw-contents #sw-main {
  margin-left: calc(37vw + 50px);
  margin-left: 40%;
}
#sw-contents #sw-main .mainVessel {
  padding: 31.65vh 3.75% 0 0;
}
@media screen and (max-height: 500px) {
  .-is-pc #sw-contents #sw-main .mainVessel {
    padding: 160px 3.75% 0 0;
  }
}
@media screen and (max-width: 767px) {
  #sw-contents #sw-side {
    position: relative;
    top: auto;
    left: auto;
    width: 100vw;
    height: auto;
  }
  #sw-contents #sw-main {
    margin: 0 0 0 0;
  }
  #sw-contents #sw-main .mainVessel {
    padding: 35px 20px 0 20px;
  }
}

/* footer
------------------------------------------ */
/* footer */
#footer {
  margin-top: 100px;
  background: #f3f3f3;
}
#footer a {
  color: #222;
  position: relative;
  z-index: 2;
}
body:not(.-is-touch) #footer a:hover {
  color: #06c4ff;
}
#footer .logo01 {
  line-height: 0;
  text-align: center;
}
body:not(.-is-touch) #footer .logo01 a:hover {
  opacity: 0.7;
}
#footer .logo01 img {
  width: 180px;
}
#footer .tagline01 {
  margin-top: 9px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  color: #222;
  text-align: center;
}
#footer .lo01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
}
#footer .lo01 .lo0101 {
  padding: 60px 0 0 0;
  width: 25%;
  text-align: center;
}
#footer .lo01 .lo0102 {
  -webkit-box-flex: 1;
  flex: 1;

  padding: 60px 5% 70px 5%;
}
#footer .nav01 {
  font-size: 12px;
  font-family: "Rubik", "Noto Sans JP", "メイリオ", sans-serif;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
#footer .nav01 .nav01Ul01:after {
  content: "";
  display: block;
  clear: both;
}
#footer .nav01 .nav01Ul01 .nav01Items01 {
  float: left;
  width: 20%;
}
#footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(6) {
  margin-top: 39px;
  width: 40%;
}
#footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(7) {
  margin-top: 39px;
  width: 60%;
}
#footer .nav01 .nav01Head01 {
  font-weight: 700;
}
#footer .nav01 .nav01Ul02 {
  margin-top: 11px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: start;
  align-items: flex-start;
}
#footer .nav01 .nav01Ul02 .nav01Items02 + .nav01Items02 {
  margin-top: 9px;
}
#footer .nav01 .nav01Ul03 {
  margin-top: 8px;
}
#footer .nav01 .nav01Ul03 .nav01Items03 {
  position: relative;
  padding-left: 12px;
}
#footer .nav01 .nav01Ul03 .nav01Items03::before {
  content: "";
  position: absolute;
  top: 0.9em;
  left: 0;
  display: block;
  width: 5px;
  height: 1px;
  background: #ccc;
}
#footer .nav01 .nav01Ul03 .nav01Items03 + .nav01Items03 {
  margin-top: 9px;
}
#footer .nav02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  text-align: center;
}
#footer .nav02 .nav0201 {
  -webkit-box-ordinal-group: 3;
  order: 2;
}
#footer .nav02 .nav02Ul01 {
  margin-top: 41px;
  font-size: 12px;
}
#footer .nav02 .nav02Ul01 .nav02Items01 {
  margin-top: 3px;
}
#footer .nav02 .nav02Ul01 .nav02Items01:first-child {
  margin-top: 0;
}
#footer .nav02 .nav0202 {
  -webkit-box-ordinal-group: 2;
  order: 1;
}
#footer .nav02 .nav02Ul02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  margin-top: 48px;
}
#footer .nav02 .nav02Ul02 .nav02Items02.isTwitter a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(img_cmn/btn_twitter_01.svg) no-repeat;
  background-size: 30px 30px;
  border-radius: 15px;
  text-indent: -9999px;
  overflow: hidden;
}
body:not(.-is-touch) #footer .nav02 .nav02Ul02 .nav02Items02.isTwitter a:hover {
  background-image: url(img_cmn/img_twitter_02.svg);
  background-color: #222;
}
#footer .nav02 .nav02Ul02 .nav02Items02.isFacebook {
  margin-left: 25px;
}
#footer .nav02 .nav02Ul02 .nav02Items02.isFacebook a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(img_cmn/btn_facebook_01.svg) no-repeat;
  background-size: 30px 30px;
  border-radius: 15px;
  text-indent: -9999px;
  overflow: hidden;
}
body:not(.-is-touch) #footer .nav02 .nav02Ul02 .nav02Items02.isFacebook a:hover {
  background-color: #222;
  background-image: url(img_cmn/img_facebook_02.svg);
}
#footer .nav02 .nav02Shop01 {
  margin-top: 24px;
}
#footer .nav02 .nav02Shop01 a {
  display: inline-block;
  padding: 1px 0 0 30px;
  background: url(./img_cmn/icn_sw_01.svg) no-repeat 0 0;
  background-size: 25px 17px;
  font-size: 11px;
  font-weight: 700;
  line-height: 17px;
  letter-spacing: 0;
}
body:not(.-is-touch) #footer .nav02 .nav02Shop01 a:hover {
  color: #222;
  opacity: 0.7;
}
#footer .copyright01 {
  margin-top: 25px;
  color: #888;
  font-size: 10px;
  font-family: "Rubik";
  line-height: 1.5;
  text-align: center;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}
#footer .search01 {
  margin-top: 38px;
}
@media screen and (max-width: 767px) {
  #footer {
    margin-top: 90px;
    padding: 0 30px;
    background: #fff;
  }
  #footer .logo01 img {
    width: 160px;
  }
  #footer a:hover {
    color: #222;
  }
  #footer .tagline01 {
    margin-top: 8px;
    font-size: 10px;
  }
  #footer .lo01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
  }
  #footer .lo01 .lo0101 {
    -webkit-box-ordinal-group: 3;
    order: 2;

    padding: 0;
    width: auto;
  }
  #footer .lo01 .lo0102 {
    -webkit-box-ordinal-group: 2;
    order: 1;

    width: auto;
    padding: 0;
  }
  #footer .nav01 .nav01Ul01 {
    margin-top: 40px;
  }
  #footer .nav01 .nav01Ul01 .nav01Items01 {
    margin: 38px 0 0 8%;
    width: 28%;
  }
  #footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(3),
  #footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(2),
  #footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(1) {
    margin-top: 0;
  }
  #footer .nav01 .nav01Ul01 .nav01Items01:nth-child(3n + 1) {
    margin-left: 0;
  }
  #footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(6) {
    margin-top: 38px;
    margin-left: 0;
    width: 100%;
  }
  #footer .nav01 .nav01Ul01 .nav01Items01:nth-of-type(7) {
    margin-top: 38px;
    width: 100%;
  }
  #footer .nav01 a {
    display: block;
    padding: 6px 0;
  }
  #footer .nav01 .nav01Ul02 {
    margin-top: 4px;
  }
  #footer .nav01 .nav01Ul02 .nav01Items02 + .nav01Items02 {
    margin-top: 0;
  }
  #footer .nav01 .nav01Ul03 {
    margin-top: 3px;
  }
  #footer .nav01 .nav01Ul03 .nav01Items03::before {
    content: "";
    position: absolute;
    top: 1.4em;
  }
  #footer .nav01 .nav01Ul03 .nav01Items03 + .nav01Items03 {
    margin-top: 4px;
  }
  #footer .nav02 .nav0201 {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  #footer .nav02 .nav02Ul01 {
    margin-top: 50px;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  #footer .nav02 .nav02Ul01 .nav02Items01 {
    margin-top: 20px;
  }
  #footer .nav02 .nav02Ul01 .nav02Items01:first-child {
    margin-top: 0;
  }
  #footer .nav02 .nav0202 {
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  #footer .nav02 .nav02Shop01 {
    margin-top: 24px;
  }
  #footer .copyright01 {
    margin-top: 23px;
    padding-bottom: 30px;
  }
  #footer .search01 {
    margin-top: 39px;
  }
}

/* footerSimple */
#footerSimple {
  margin-top: 100px;
  /* padding: 0 3.75%; */
  padding: 0 calc(3.75% + 50px) 0 3.75%;
}
#footerSimple .logo01 {
  line-height: 0;
  text-align: center;
}
#footerSimple .logo01 img {
  width: 180px;
}
#footerSimple .tagline01 {
  margin-top: 9px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
#footerSimple .nav01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  margin-top: 50px;
  font-size: 12px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
}
#footerSimple .nav01 li {
  margin-right: 25px;
}
#footerSimple .nav01 li:last-child {
  margin-right: 0;
}
#footerSimple .nav02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;

  text-align: center;
}
#footerSimple .nav02 .nav0201 {
  -webkit-box-ordinal-group: 3;
  order: 2;
}
#footerSimple .nav02 .nav02Ul01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  margin-top: 41px;
  font-size: 12px;
}
#footerSimple .nav02 .nav02Ul01 .nav02Items01 {
  margin-right: 20px;
}
#footerSimple .nav02 .nav02Ul01 .nav02Items01:last-child {
  margin-right: 0;
}
body:not(.-is-touch) #footerSimple .nav02 .nav02Ul01 .nav02Items01 a:hover {
  color: #06c4ff;
}
#footerSimple .nav02 .nav0202 {
  -webkit-box-ordinal-group: 2;
  order: 1;
}
#footerSimple .nav02 .nav02Ul02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  margin-top: 42px;
}
#footerSimple .nav02 .nav02Ul02 .nav02Items02.isTwitter a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(img_cmn/btn_twitter_01.svg) no-repeat;
  background-size: 30px 30px;
  text-indent: -9999px;
  overflow: hidden;
  border-radius: 15px;
}
body:not(.-is-touch) #footerSimple .nav02 .nav02Ul02 .nav02Items02.isTwitter a:hover {
  background-color: #000;
  background-image: url(img_cmn/img_twitter_02.svg);
}
#footerSimple .nav02 .nav02Ul02 .nav02Items02.isFacebook {
  margin-left: 25px;
}
#footerSimple .nav02 .nav02Ul02 .nav02Items02.isFacebook a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(img_cmn/btn_facebook_01.svg) no-repeat;
  background-size: 30px 30px;
  text-indent: -9999px;
  overflow: hidden;
  border-radius: 15px;
}
body:not(.-is-touch) #footerSimple .nav02 .nav02Ul02 .nav02Items02.isFacebook a:hover {
  background: #000;
  background-image: url(img_cmn/img_facebook_02.svg);
}
#footerSimple .nav02 .nav02Shop01 {
  margin-top: 21px;
}
#footerSimple .nav02 .nav02Shop01 a {
  display: inline-block;
  padding: 1px 0 0 30px;
  background: url(./img_cmn/icn_sw_01.svg) no-repeat 0 0;
  background-size: 25px 17px;
  font-size: 11px;
  font-weight: 700;
  line-height: 17px;
  letter-spacing: 0;
}
body:not(.-is-touch) #footerSimple .nav02 .nav02Shop01 a:hover {
  color: #222;
  opacity: 0.7;
}
#footerSimple .copyright01 {
  margin-top: 27px;
  padding-bottom: 20px;
  color: #888;
  font-size: 10px;
  font-family: "Rubik";
  line-height: 1.5;
  text-align: center;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  #footerSimple {
    margin-top: 90px;
    padding: 0 3.75%;
  }
  #footerSimple .logo01 img {
    width: 160px;
  }
  #footerSimple .tagline01 {
    margin-top: 8px;
    font-size: 10px;
  }
  #footerSimple .nav01 {
    -webkit-box-pack: start;
    justify-content: flex-start;
    flex-wrap: wrap;

    margin: 33px 10px 0 10px;
  }
  #footerSimple .nav01 li {
    width: 28%;
    margin: 15px 0 0 8%;
    margin-right: 0;
    border-bottom: 1px solid #333;
  }
  #footerSimple .nav01 li:last-child {
    margin-right: 0;
  }
  #footerSimple .nav01 li:nth-child(3n + 1) {
    margin: 15px 0 0 0;
  }
  #footerSimple .nav01 li:nth-child(3),
  #footerSimple .nav01 li:nth-child(2),
  #footerSimple .nav01 li:nth-child(1) {
    margin-top: 0;
  }
  #footerSimple .nav01 li a {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;

    height: 46px;
  }
  #footerSimple .nav01 li a:hover {
    color: #222;
  }
  #footerSimple .nav02 .nav0201 {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  #footerSimple .nav02 .nav02Ul01 {
    display: block;

    margin-top: 48px;
    text-indent: 0.05em;
    letter-spacing: 0.05em;
  }
  #footerSimple .nav02 .nav02Ul01 .nav02Items01 {
    margin: 0 0 14px 0;
  }
  #footerSimple .nav02 .nav02Ul01 .nav02Items01:last-child {
    margin: 0;
  }
  #footerSimple .nav02 .nav02Ul01 .nav02Items01 a:hover {
    color: #222;
  }
  #footerSimple .nav02 .nav0202 {
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  #footerSimple .nav02 .nav02Ul02 {
    margin-top: 46px;
  }
  #footerSimple .copyright01 {
    margin-top: 24px;
    padding-bottom: 30px;
  }
}

/* common
------------------------------------------ */
/* searchMod01 */
.searchMod01 {
  color: #222;
}
.searchMod01.isDark {
  color: #fff;
}
.searchMod01 .searchHead01 {
  font-size: 10px;
  font-family: "Rubik";
  font-weight: 400;
}
.searchMod01 .searchVessel01 {
  position: relative;
  margin-top: 1px;
  border-bottom: 1px solid #c7c7c7;
  width: 300px;
  line-height: 0;
}
.searchMod01 .searchVessel01 label::after {
  content: "";
  position: absolute;
  top: 11px;
  right: 2px;
  display: block;
  width: 13px;
  height: 13px;
  background: url(img_cmn/icn_search_01.svg) no-repeat;
  background-size: 13px 13px;
  pointer-events: none;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform .2s ease-in-out;
  transition: -webkit-transform .2s ease-in-out;
  transition: transform .2s ease-in-out;
  transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out;
}
.searchMod01 .searchVessel01 label:hover::after {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
}
.searchMod01.isDark .searchVessel01 label{
  display: block;
  height: 100%;
}
.searchMod01.isDark .searchVessel01 label::after {
  background: url(img_cmn/icn_search_02.svg) no-repeat;
  background-size: 13px 13px;
}
.searchMod01 input {
  display: inline-block;
  padding: 0 40px 0 0 !important;
  border: none !important;
  border-radius: 0 !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  width: 100%;
  height: 40px;
  background: transparent;
  font-size: 14px;
  line-height: 1.5 !important;
  outline: none;
  /* cursor: pointer; */
}
.searchMod01 input::before {
  display: none;
}
.searchMod01.isDark input {
  border-color: #fff;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .searchMod01 .searchVessel01 {
    width: 100%;
  }
}

/* coverMod01 */
/* kurata */
.coverMod01 {
  position: relative;
  display: block;
  padding-top: 60%;
  width: 100%;
  height: 0;
  line-height: 0;
  text-align: center;
  overflow: hidden;
  z-index: 1;
}
.coverMod01.isRatio58 {
  padding-top: 58%;
}
.coverMod01 .coverBg01 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 2;
}
.coverMod01 .coverBg01 img {
  width: 100%;
  height: 100%;
}
.coverMod01 .coverImage01 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
}
.coverMod01 .coverImage01 img {
  width: 100%;
  height: auto;
}

/* slideBoxMod01 */
.slideBoxMod01 {
  position: relative;
  display: block;
  height: 100vh;
  color: #fff;
  z-index: 1;
}
a.slideBoxMod01:hover {
  color: #fff;
}
.slideBoxMod01 .slideBoxImage01 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 2;
}
.slideBoxMod01 .slideBoxImage01 img {
  width: 100%;
  height: 100%;
}
.slideBoxMod01 .slideBoxMain01 {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 8px 20px 40px 40px;
  width: 100%;
  display: block;
  background: -webkit-gradient(
    linear,
    left top, left bottom,
    from(rgba(0, 0, 0, 0)),
    to(rgba(0, 0, 0, 0.7))
  );
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.7) 100%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.7) 100%
  );
  z-index: 3;
}
.slideBoxMod01 .slideBoxHead01 {
  display: block;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.5;
}
body.-is-safari.-is-pc .slideBoxMod01 .slideBoxHead01,
body.-is-safari.-is-ipad .slideBoxMod01 .slideBoxHead01,
body.-is-firefox.-is-pc .slideBoxMod01 .slideBoxHead01 {
  line-height: 1.75;
}
.slideBoxMod01 .slideBoxHead01 em {
  background-color: rgba(0, 0, 0, 0.7);
}
.slideBoxMod01 .slideBoxDate01 {
  display: block;
  margin: 12px 0 0 0;
  color: #ccc;
  font-size: 13px;
  font-family: "Oswald";
  line-height: 1.38;
  letter-spacing: 0.05em;
}
.slideBoxMod01 .slideBoxCat01 {
  display: block;
  margin: 5px 0 0 0;
  color: #ccc;
  font-size: 13px;
  font-family: "Oswald";
  line-height: 1.38;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.slideBoxMod01 object:after {
  content: "/";
  display: inline-block;
  padding: 0 5px;
}
.slideBoxMod01 .slideBoxCat01 object:last-child:after {
  display: none;
}
.slideBoxMod01 object a {
  color: #ccc;
}
body:not(.-is-touch) .slideBoxMod01 object a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  /* kurata */
  .slideBoxMod01 {
    height: 116vw;
  }
  .slideBoxMod01 .slideBoxMain01 {
    padding: 0 9.3% 20px 5.3%;
    width: 83vw;
  }
  .slideBoxMod01 .slideBoxHead01 {
    font-size: 18px;
    line-height: 1.8;
    width: calc(100vw - 55px);
  }
  body.-is-pc .slideBoxMod01 .slideBoxHead01 {
    line-height: 1.4;
  }
  .slideBoxMod01 .slideBoxHead01 em {
    padding: 1px 0;
  }
  .slideBoxMod01 .slideBoxDate01 {
    margin: 9px 0 0 0;
    font-size: 12px;
  }
  .slideBoxMod01 .slideBoxCat01 {
    margin: 3px 0 0 0;
    font-size: 12px;
  }
}

/* sliderMain */
.sliderMain .swiper-pagination {
  position: absolute;
  width: 62px;
  height: 100vh;
  top: 0;
  left: 0;
  text-align: left;
  -webkit-transform: none;
  transform: none;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
}
.sliderMain.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 27px;
  left: 17px;
  width: 2px;
}
.sliderMain .swiper-pagination-bullets .swiper-pagination-bullet {
  display: block;
  margin: 0;
  width: 2px;
  height: 25vh;
  border-radius: 0;
  background-color: #000;
  opacity: 1;
  -webkit-box-flex: 1;
  flex: 1;
  -webkit-transition: 0.8s;
  transition: 0.8s;
  /* cursor: pointer; */
}
.sliderMain .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #00ffdc;
}
@media screen and (max-width: 767px) {
  .sliderMain .swiper-pagination {
    height: 116vw;
  }
  .sliderMain.swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 10px;
    left: auto;
    right: 13px;
  }
  .sliderMain .swiper-pagination-bullet {
    height: 17px;
  }
}

/* slideBoxMod02 */
.slideBoxMod02 {
  position: relative;
  display: block;
  color: #fff;
  z-index: 1;
}
a.slideBoxMod02:hover {
  color: #fff;
}
.slideBoxMod02 .slideBoxBg01 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 2;
}
.slideBoxMod02 .slideBoxBg01 img {
  width: 100%;
  height: 100%;
}
.slideBoxMod02 .slideBoxImage01 {
  position: relative;
  display: block;
  padding-top: 133.3333%;
  width: 100%;
  height: 0;
  line-height: 0;
  text-align: center;
  z-index: 3;
}
.slideBoxMod02 .slideBoxImage01 .slideBoxImage01Vessel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.slideBoxMod02 .slideBoxImage01 img {
  width: auto;
  height: 100%;
}
.slideBoxMod02 .slideBoxMain01 {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 0 15px 20px 15px;
  width: 100%;
  display: block;
  background: -webkit-gradient(
    linear,
    left top, left bottom,
    from(rgba(0, 0, 0, 0)),
    to(rgba(0, 0, 0, 0.7))
  );
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.7) 100%
  );
  background: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.7) 100%
  );
  z-index: 4;
}
.slideBoxMod02 .slideBoxHead01 {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}
body.-is-safari.-is-pc .slideBoxMod02 .slideBoxHead01,
body.-is-safari.-is-ipad .slideBoxMod02 .slideBoxHead01,
body.-is-firefox.-is-pc .slideBoxMod02 .slideBoxHead01
 {
  line-height: 1.7;
}

.slideBoxMod02 .slideBoxHead01 em {
  background-color: rgba(0, 0, 0, 0.7);
}
.slideBoxMod02 .slideBoxDate01 {
  display: block;
  margin-top: 10px;
  color: #ccc;
  font-size: 12px;
  font-family: "Oswald";
  line-height: 1.38;
  letter-spacing: 0.05em;
}
.slideBoxMod02 .slideBoxCat01 {
  display: block;
  margin-top: 2px;
  color: #ccc;
  font-size: 12px;
  font-family: "Oswald";
  font-weight: 500;
  line-height: 1.38;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.slideBoxMod02 .slideBoxCat01 object:after {
  content: "/";
  display: inline-block;
  padding: 0 5px;
}
.slideBoxMod02 .slideBoxCat01 object:last-child:after {
  display: none;
}
.slideBoxMod02 object a {
  color: #ccc;
}
body:not(.-is-touch) .slideBoxMod02 object a:hover {
  color: #06c4ff;
}
@media screen and (max-width: 767px) {
  .slideBoxMod02 .slideBoxMain01 {
    padding: 0 10px 12px 8px;
  }
  .slideBoxMod02 .slideBoxHead01 {
    font-size: 14px;
    line-height: 1.8;
  }
  body.-is-pc .slideBoxMod02 .slideBoxHead01 {
    line-height: 1.4;
  }
  .slideBoxMod02 .slideBoxDate01 {
    margin: 5px 0 0 0;
    font-size: 12px;
  }
  .slideBoxMod02 .slideBoxCat01 {
    margin: 2px 0 0 0;
    font-size: 12px;
  }
  .slideBoxMod02 object a:hover {
    color: #ccc;
  }
}

/* sliderPickup */
/* kurata */
.wrapSection.wrapSectionPickUp {
  padding-bottom: 92px;
  padding-left: 0;
}
.wrapSection.wrapSectionPickUp .headMod01 {
  line-height: 1;
  position: relative;
  z-index: 10;
}
.wrapSection.wrapSectionPickUp .headMod01 img {
  position: relative;
  left: 4px;
  vertical-align: bottom;
  top: 7px;
}

.swiper-container.sliderPickup {
  margin-top: 0;
  margin-right: -4%;
  padding-bottom: 44px;
}
.sliderPickup .swiper-slide {
  margin-right: 20px;
  /* width: 306px; */
  width: 22.6vw;
  max-width: 306px;
}
.sliderPickup .swiper-slide:last-child {
  margin-right: 0;
}
.sliderPickup .swiper-scrollbar {
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(100% - 4%);
  height: 4px;
  border-radius: 0;
  background: #ddd;
}
.sliderPickup .swiper-scrollbar-drag {
  background-color: #00ffdc;
  border-radius: 0;
}
.pickup-scrollbar {
  width: 135px;
  height: 1px;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  right: -3.75%;
}
.pickup-scrollbar:after {
  position: relative;
  display: block;
  content: "";
  width: 135px;
  height: 1px;
  background-color: #000;
  -webkit-animation: pickupScrollbar 3s ease-in infinite forwards;
  animation: pickupScrollbar 3s ease-in infinite forwards;
}
@-webkit-keyframes pickupScrollbar {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  5% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  85% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  89% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes pickupScrollbar {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  5% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  85% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  89% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@media screen and (max-width: 767px) {
  .wrapSection.wrapSectionPickUp .headMod01 img {
    top: 5.5vw;
    width: 35.4vw;
    left: 0;
  }
  .swiper-container.sliderPickup {
    margin-top: 14px;
    margin-right: -20px;
    padding-bottom: 0;
  }
  #articleContents .swiper-container.sliderPickup {
    width: 93.4vw;
  }
  .sliderPickup .swiper-slide {
    margin-right: 18px;
    width: 189px;
  }
  .sliderPickup .swiper-slide:last-child {
    margin-right: 20px;
  }
  .pickup-scrollbar {
    right: -20px;
  }
  #articleContents .pickup-scrollbar{
    right: -6.6vw;
  }
}

/* custom_html */
#custom_html-10,
#custom_html-6,
#custom_html-4,
#custom_html-2 {
  margin-top: 70px;
}
.widgettitle {
  display: none;
}
@media screen and (max-width: 767px) {
  #custom_html-10,
  #custom_html-6,
  #custom_html-4,
  #custom_html-2 {
    margin-top: 50px;
  }
}

/* headMod01 */
.headMod01 {
  margin-top: 70px;
  font-size: 20px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
  text-transform: uppercase;
}
#sw-main .headMod01:first-child {
  margin-top: 0;
}
.headMod01.isShop {
  padding-left: 55px;
  background: url(./img_cmn/icn_sw_01.svg) no-repeat 0 0;
  background-size: 44px 30px;
}
.swiper-container.sliderPickup + .headMod01 {
  margin-top: 58px;
}
@media screen and (max-width: 767px) {
  .headMod01 {
    margin-top: 50px;
    font-size: 16px;
  }
  .headMod01 .scrollLine01 {
    display: none;
  }
  #sw-main .headMod01:first-child {
    margin-top: 0;
  }
  .headMod01.isShop {
    padding-top: 5px;
    min-height: 30px;
  }
  .swiper-container.sliderPickup + .headMod01 {
    margin-top: 55px;
  }
}

/* articleListMod01 */
/* kurata */
.articleListMod01 .articleListUl01 {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.articleListMod01 .articleListUl01:after {
  content: "";
  display: block;
  clear: both;
}
.articleListMod01 .articleListItems01 {
  /* float: left; */
  margin: 50px 0 0 2%;
  width: calc((100% - 4%) / 3);
}
.articleListMod01 .articleListItems01:nth-child(3n + 1) {
  margin-left: 0;
}
.articleListMod01 .articleListItems01:nth-of-type(3),
.articleListMod01 .articleListItems01:nth-of-type(2),
.articleListMod01 .articleListItems01:nth-of-type(1) {
  margin-top: 0;
}
.articleListMod01 .articleListBox01 {
  display: block;
}
.articleListMod01 .articleListImage01 {
  position: relative;
  display: block;
  padding-top: 133.3333%;
  width: 100%;
  height: 0;
  line-height: 0;
  text-align: center;
  overflow: hidden;
  z-index: 1;
}
.articleListMod01 .articleListImage01 .articleListBg01 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 2;
}
.articleListMod01 .articleListImage01 .articleListBg01 img {
  width: 100%;
  height: 100%;
}
.articleListMod01 .articleListImage01 .articleListImage01Vessel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
}
.articleListMod01 .articleListImage01 .articleListImage01Vessel img {
  width: auto;
  height: 100%;
}
/* kurata */
.articleListMod01 .articleListDate01 {
  position: absolute;
  display: block;
  line-height: 0;
  z-index: 4;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
  left: 0;
  bottom: auto;
  padding: 0.3em 0.25em;
  background-color: rgba(0, 0, 0, 0.7);
}
.articleListMod01 .articleListDate01 em {
  color: #ccc;
  font-size: 13px;
  font-family: "Oswald";
  font-weight: 500;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.05em;
}
.articleListMod01 .articleListHead01 {
  display: block;
  margin-top: 15px;
  padding-right: 10px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}
.articleListMod01 .articleListCat01 {
  display: block;
  margin-top: 5px;
  color: #bbb;
  font-size: 13px;
  font-family: "Oswald";
  font-weight: 500;
  line-height: 1.29;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.articleListMod01 object:after {
  content: "/";
  display: inline-block;
  padding: 0 5px;
}
.articleListMod01 object:last-child:after {
  display: none;
}
.articleListMod01 object a {
  color: #bbb;
}
.articleListMod01 .articleListCat01 a.category-ja {
  font-weight: 700;
}
body:not(.-is-touch) .articleListMod01 object a:hover {
  color: #06c4ff;
}
@media screen and (max-width: 767px) {
  .articleListMod01 {
    margin-top: 14px;
  }
  body.archive .articleListMod01 {
    margin-top: 0;
  }
  .articleListMod01 .articleListUl01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .articleListMod01 .articleListItems01 {
    float: none;
    margin: 35px 0 0 4.5%;
    width: 47.75%;
  }
  .articleListMod01 .articleListItems01:nth-child(3n + 1) {
    margin-left: 4.5%;
  }
  .articleListMod01 .articleListItems01:nth-child(2n + 1) {
    margin-left: 0;
  }
  .articleListMod01 .articleListItems01:nth-of-type(2),
  .articleListMod01 .articleListItems01:nth-of-type(1) {
    margin-top: 0;
  }
  .articleListMod01 .articleListItems01:nth-of-type(3) {
    margin-top: 35px;
  }
  .articleListMod01 .articleListDate01 em {
    font-size: 12px;
    font-weight: 400;
  }
  .articleListMod01 .articleListHead01 {
    margin-top: 8px;
    font-size: 12px;
    font-weight: 400;
  }
  .articleListMod01 .articleListCat01 {
    margin-top: 5px;
    font-size: 12px;
    line-height: 1.38;
    font-weight: 400;
  }
}

/* shopListMod01 */
.shopListMod01 {
  margin-top: 35px;
}
.shopListMod01 .shopListItems01 + .shopListItems01 {
  margin-top: 35px;
}
.shopListMod01 .shopListBox01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
}
/* kurata */
.shopListMod01 .shopListSide01 {
  width: 23.37%;
}
.shopListMod01 .shopListMain01 {
  width: calc(76.63% - 24px);
}
.shopListMod01 .shopListHead01 {
  display: block;
  padding-top: 9px;
  color: #343434;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.43;
}
.shopListMod01 .shopListText01 {
  display: block;
  margin-top: 8px;
  color: #888;
  font-size: 12px;
  line-height: 1.67;
}
@media screen and (max-width: 767px) {
  .shopListMod01 {
    margin-top: 25px;
  }
  .shopListMod01 .shopListUl01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .shopListMod01 .shopListItems01 {
    margin: 25px 0 0 4.5%;
    width: 47.75%;
  }
  .shopListMod01 .shopListItems01 + .shopListItems01 {
    margin-top: 25px;
  }
  .shopListMod01 .shopListItems01:nth-child(2n + 1) {
    margin-left: 0;
  }
  .shopListMod01 .shopListItems01:nth-of-type(2),
  .shopListMod01 .shopListItems01:nth-of-type(1) {
    margin-top: 0;
  }
  .shopListMod01 .shopListBox01 {
    display: block;
  }
  .shopListMod01 .shopListSide01 {
    width: auto;
  }
  .shopListMod01 .shopListMain01 {
    width: auto;
  }
  .shopListMod01 .shopListHead01 {
    padding-top: 8px;
    font-size: 12px;
    line-height: 1.5;
  }
  .shopListMod01 .shopListText01 {
    margin-top: 6px;
    font-size: 11px;
    line-height: 1.55;
  }
}

/* seriesListMod01 */
/* kurat */
.seriesListMod01 .seriesListUl01:after {
  content: "";
  display: block;
  clear: both;
}
.seriesListMod01 .seriesListItems01 {
  float: left;
  margin: 40px 0 0 2%;
  width: calc((100% - 4%) / 3);
}
.seriesListMod01 .seriesListItems01:nth-child(3n + 1) {
  margin-left: 0;
}
.seriesListMod01 .seriesListItems01:nth-of-type(3),
.seriesListMod01 .seriesListItems01:nth-of-type(2),
.seriesListMod01 .seriesListItems01:nth-of-type(1) {
  margin-top: 0;
}
.seriesListMod01 .seriesListBox01 {
  display: block;
}
.seriesListMod01 .seriesListHead01 {
  display: block;
  margin-top: 20px;
  color: #343434;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.54;
}
@media screen and (max-width: 767px) {
  .seriesListMod01 {
    margin-top: 14px;
  }
  .seriesListMod01 .seriesListUl01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .seriesListMod01 .seriesListItems01 {
    float: none;
    margin: 25px 0 0 4.5%;
    width: 47.75%;
  }
  .seriesListMod01 .seriesListItems01:nth-child(3n + 1) {
    margin-left: 4.5%;
  }
  .seriesListMod01 .seriesListItems01:nth-child(2n + 1) {
    margin-left: 0;
  }
  .seriesListMod01 .seriesListItems01:nth-of-type(2),
  .seriesListMod01 .seriesListItems01:nth-of-type(1) {
    margin-top: 0;
  }
  .seriesListMod01 .seriesListItems01:nth-of-type(3) {
    margin-top: 25px;
  }
  .seriesListMod01 .seriesListHead01 {
    margin-top: 8px;
    font-size: 12px;
    line-height: 1.5;
  }
}

/* selectListMod01 */
/* kurata */
.selectListMod01 .selectListUl01:after {
  content: "";
  display: block;
  clear: both;
}
.selectListMod01 .selectListItems01 {
  float: left;
  margin: 40px 0 0 2%;
  width: calc((100% - 4%) / 3);
}
.selectListMod01 .selectListItems01:nth-child(3n + 1) {
  margin-left: 0;
}
.selectListMod01 .selectListItems01:nth-of-type(3),
.selectListMod01 .selectListItems01:nth-of-type(2),
.selectListMod01 .selectListItems01:nth-of-type(1) {
  margin-top: 0;
}
.selectListMod01 .selectListBox01 {
  display: block;
}
.selectListMod01 .selectListDate01 {
  position: relative;
  display: block;
  margin: -10px 0 0 4px;
  line-height: 0;
  z-index: 4;
}
.selectListMod01 .selectListDate01 em {
  display: inline-block;
  padding: 0 6px;
  height: 20px;
  background: #333;
  color: #fff;
  font-size: 11px;
  font-family: "Rubik";
  font-weight: 400;
  line-height: 20px;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}
.selectListMod01 .selectListHead01 {
  display: block;
  margin-top: 14px;
  color: #343434;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.54;
}
.selectListMod01 .selectListCat01 {
  display: block;
  margin-top: 7px;
  color: #bbb;
  font-size: 11px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.selectListMod01 object a {
  color: #bbb;
}
body:not(.-is-touch) .selectListMod01 object a:hover {
  color: #06c4ff;
}
@media screen and (max-width: 767px) {
  .selectListMod01 {
    margin-top: 14px;
  }
  .selectListMod01 .selectListUl01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .selectListMod01 .selectListItems01 {
    float: none;
    margin: 25px 0 0 4.5%;
    width: 47.75%;
  }
  .selectListMod01 .selectListItems01:nth-child(3n + 1) {
    margin-left: 4.5%;
  }
  .selectListMod01 .selectListItems01:nth-child(2n + 1) {
    margin-left: 0;
  }
  .selectListMod01 .selectListItems01:nth-of-type(2),
  .selectListMod01 .selectListItems01:nth-of-type(1) {
    margin-top: 0;
  }
  .selectListMod01 .selectListItems01:nth-of-type(3) {
    margin-top: 25px;
  }
  .selectListMod01 .selectListDate01 {
    margin-left: 7px;
  }
  .selectListMod01 .selectListHead01 {
    margin-top: 8px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
  }
  .selectListMod01.isWackAudiion .selectListHead01 {
    font-weight: 700;
  }
  .selectListMod01 .selectListCat01 {
    margin-top: 8px;
  }
}

/* moreMod01 */
/* kurata */
.moreMod01 {
  margin-top: 50px;
  text-align: right;
}
.selectListMod01 + .moreMod01 {
  margin-top: 34px;
}
@media screen and (max-width: 767px) {
  .moreMod01 {
    margin-top: 35px;
  }
  .selectListMod01 + .moreMod01 {
    margin-top: 35px;
  }
}

/* buttonMod01 */
/* kurata */
span.buttonMod01,
a.buttonMod01 {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  align-items: center;
  border: 1px solid #707070;
  width: 280px;
  height: 50px;
  color: #343434;
  font-size: 12px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}
body:not(.-is-touch) span.buttonMod01:hover,
body:not(.-is-touch) a.buttonMod01:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  /* kurata */
  span.buttonMod01,
  a.buttonMod01 {
    width: 72.6%;
    max-width: 250px;
    height: 44px;
    font-size: 10px;
  }
}

/* listNoMod01 */
.listNoMod01 > li > .vessel {
  display: table;
  width: 100%;
}
.listNoMod01 > li > .vessel > .text,
.listNoMod01 > li > .vessel > .no {
  display: table-cell;
  vertical-align: top;
}
.listNoMod01 > li > .vessel > .no {
  width: 1em;
  white-space: nowrap;
}

/* article
------------------------------------------ */
/* article */
#article {
  position: relative;
}
#articleContents {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  margin: 0 0 0 9.8%;
}
#articleContents #articleMain {
  width: 65.6%;
}
#articleContents #articleMainVessel {
  margin: 0 auto;
  width: 100%;
  max-width: 1000px;
  overflow: hidden;
}
#articleContents #articleSide {
  padding: 0 50px 0 0;
  width: 25.5%;
  position: relative;
}
#articleSideSpace {
  height: 100vh;
}
@media screen and (max-width: 767px) {
  #articleContents {
    display: block;
    margin: 0 6.6%;
  }
  #articleContents #articleMain {
    width: auto;
  }
  #articleContents #articleMainVessel {
    width: auto;
  }
  #articleContents #articleSide {
    padding: 0;
    width: auto;
  }
}
/* articleHeader */
#articleHeader {
  position: relative;
  padding-bottom: 70px;
}
#articleHeader .logo01 {
  position: absolute;
  z-index: 100;
  width: 170px;
  top: 22px;
  right: 68px;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}
body:not(.-is-touch) #articleHeader .logo01 a:hover {
  opacity: 0.7;
}
#articleHeader.logo01 img {
  width: 121px;
  height: 43px;
}
/* kurata */
#articleHeader .lo01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-pack: start;
  justify-content: flex-start;
  /* align-items: stretch; */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  /* kurata */
  /* width: calc(100% - 100px); */
}
#articleHeader .lo01 .lo0101 {
  width: 50%;
  line-height: 0;
  position: relative;
  z-index: 1;
}

/* //kurata */
#articleHeader .lo01 .lo0101 #js-articleHeaderImageBefore,
#articleHeader .lo01 .lo0101 #js-articleHeaderImageAfter {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
}
#articleHeader .lo01 .lo0101 #js-articleHeaderImageBefore {
  background-color: #222;
  /* background-color: #ff0586; */
  /* background-color: #eee; */
}
#articleHeader .lo01 .lo0101 #js-articleHeaderImageAfter {
  z-index: 100;
  background-color: #16f0f1;
  /* background-color: #000; */
}

/* 横 */
#articleHeader.articleHeaderHorizontal
  .lo01
  .lo0101
  #js-articleHeaderImageAfter {
  clip: rect(0vw, 100vw, 100vh, 0vw);
}
#articleHeader.articleHeaderHorizontal
  .lo01
  .lo0101
  #js-articleHeaderImageAfter {
  clip: rect(0vw, 100vw, 100vh, 0vw);
}

/* 縦 */
#articleHeader.articleHeaderVertical
  .lo01
  .lo0101
  #js-articleHeaderImageBefore {
  clip: rect(0vw, 100vw, 100vh, 0vw);
}
#articleHeader.articleHeaderVertical .lo01 .lo0101 #js-articleHeaderImageAfter {
  clip: rect(0vw, 100vw, 100vh, 0vw);
}

#articleHeader .lo01 .lo0101 img {
  width: 100%;
  height: auto;
}
#articleHeader .lo01 .lo0102 {
  padding: 150px 60px 0 50px;
  width: 50%;
  position: relative;
  z-index: 2;
}

#articleHeader .headMain01 {
  margin: 0 0 0 -78px;
  font-size: 27px;
  font-weight: 700;
  line-height: 1.56;
}
body.-is-pc.-is-safari #articleHeader .headMain01,
body.-is-ipad.-is-safari #articleHeader .headMain01,
body.-is-pc.-is-firefox #articleHeader .headMain01
 {
  line-height: 1.9;
}

/* kurata */
#articleHeader .headMain01 em {
  display: inline;
  padding: 0.1em;
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
}
#articleHeader .category01:after {
  content: "";
  display: block;
  clear: both;
}
#articleHeader .category01 li {
  float: left;
  color: #bbb;
  font-size: 12px;
  font-family: "Oswald";
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
#articleHeader .category01 li:not(:last-child)::after {
  content: "/";
  display: inline-block;
  padding: 0 0.3em;
}
#articleHeader .category01 li a {
  color: #bbb;
}
#articleHeader .category01 li a.category-ja {
  font-weight: 700;
}
body:not(.-is-touch) #articleHeader .category01 li a:hover {
  color: #06c4ff;
}
#articleHeader .text01 {
  font-size: 12px;
  line-height: 1.8;
}
body:not(.-is-touch) #articleHeader .text01 a:hover {
  color: #06c4ff;
}
#articleHeader .author01 {
  margin-top: 20px;
  text-transform: uppercase;
}
#articleHeader .share01 {
  margin-top: 30px;
}

/* articleHeaderHorizontal */
#articleHeader.articleHeaderHorizontal .lo01 .lo0101 {
  width: 70%;
}
#articleHeader.articleHeaderHorizontal .lo01 .lo0102 {
  width: 30%;
  padding: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: start;
  align-items: flex-start;
  padding: 10% 50px 0 3.7%;
  max-height: 100vh;
  -webkit-box-pack: center;
  justify-content: center;
}
#articleHeader .headMain01 {
  border: none;
}
#articleHeader.articleHeaderHorizontal .headMain01 {
  position: absolute;
  width: 84.6%;
  /* bottom: -2.3em; */
  bottom: -0.7em;
  right: 12px;
  margin-left: auto;
}

#articleHeader .headMain01 #headMainTitleMask {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 1;
}
#articleHeader.articleHeaderHorizontal .headMain01::after,
#articleHeader.articleHeaderVertical .headMain01::after {
  display: none;
}
#articleHeader .headMain01 #headMainTitleMask {
  clip: rect(0vw, 100vw, 100vw, 0vw);
}

/* #articleHeader.js-imageLoaded.articleHeaderVertical .headMain01 {
  left: 20%;
} */

#articleHeader.articleHeaderHorizontal .articleHeaderImage {
  max-height: 100vh;
  overflow: hidden;
}

/* articleHeaderVertical */
#articleHeader.articleHeaderVertical .headMain01 {
  margin: 0 0 0 -20%;
  /* left: 20%; */
  width: 120%;
  position: relative;
  z-index: 1;
}
#articleHeader.articleHeaderVertical .category01 {
  margin-top: 36px;
}
#articleHeader.articleHeaderVertical .lo01 .lo0101 {
  width: 50%;
}
#articleHeader.articleHeaderVertical .lo01 .lo0102 {
  width: 50%;
  padding: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: start;
  align-items: flex-start;
  padding: 10% 120px 0 40px;
  max-height: 100vh;
  -webkit-box-pack: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #articleHeader {
    padding-bottom: 20px;
    z-index: 1;
    max-width: 100vw;
    overflow: hidden;
  }
  #articleHeader .logo01 {
    position: absolute;
    width: 97px;
    top: 10px;
    right: 9.8vw;
    z-index: 3;
  }
  #articleHeader.logo01 img {
    width: 109px;
    height: 39px;
  }
  #articleHeader .lo01 {
    display: block;
    position: relative;
    width: auto;
    z-index: 2;
  }
  #articleHeader .lo01 .lo0101 {
    width: calc(100% - 40px);
  }
  #articleHeader.articleHeaderHorizontal .lo01 .lo0101 {
    width: 87.3%;
  }
  #articleHeader.articleHeaderHorizontal
    .lo01
    .lo0101
    #js-articleHeaderImageAfter {
    -webkit-animation: eyeCatchClipHorizontalSp 0.8s forwards
      cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: eyeCatchClipHorizontalSp 0.8s forwards
      cubic-bezier(0.645, 0.045, 0.355, 1);
  }
  @-webkit-keyframes eyeCatchClipHorizontalSp {
    0% {
      clip: rect(0vw, 100vw, 100vw, 0vw);
    }
    100% {
      clip: rect(0vw, 100vw, 100vw, 89.3vw);
    }
  }
  @keyframes eyeCatchClipHorizontalSp {
    0% {
      clip: rect(0vw, 100vw, 100vw, 0vw);
    }
    100% {
      clip: rect(0vw, 100vw, 100vw, 89.3vw);
    }
  }
  #articleHeader.js-imageLoaded.articleHeaderVertical .headMain01 {
    left: 0 !important;
  }
  #articleHeader.articleHeaderVertical .lo01 .lo0101 {
    width: 87.3%;
  }
  #articleHeader .lo01 .lo0102 {
    position: relative;
    padding: 0 15px;
    width: auto;
    z-index: 3;
  }
  #articleHeader.articleHeaderHorizontal .lo01 .lo0102 {
    padding: 0;
    width: 100%;
    margin-top: 10px;
    -webkit-box-align: stretch;
    align-items: stretch;
  }
  #articleHeader.articleHeaderVertical .lo01 .lo0102 {
    padding: 0;
    width: 100%;
    top: -1.2em;
  }
  #articleHeader.articleHeaderVertical .category01 {
    padding: 0 5.3%;
    margin-top: 10px;
  }
  #articleHeader .headMain01 {
    margin: -14px 0 0 0;
    font-size: 18px;
    line-height: 1.9;
  }
  body.-is-pc #articleHeader .headMain01 {
    line-height: 1.7;
  }
  #articleHeader.articleHeaderHorizontal .headMain01 {
    width: calc(100vw - 40px);
    width: 88vw;
    left: 20px;
    left: 5.3vw;
    position: relative;
    bottom: 0;
  }
  #articleHeader.articleHeaderVertical .headMain01 {
    width: 100%;
    position: relative;
    margin: 0;
    padding: 0 5.3%;
  }
  #articleHeader .headMain01 em {
    background-color: rgba(0, 0, 0, 0.7);
  }
  #articleHeader .category01 {
    padding: 0 5.3%;
  }
  #articleHeader .category01:after {
    content: "";
    display: block;
    clear: both;
  }
  #articleHeader .category01 li:not(:last-child)::after {
    content: "/";
    padding: 0 0.3em;
  }
  #articleHeader .lo02 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    margin-top: 45px;
    width: 100%;
    padding: 0 6.6%;
  }
  #articleHeader .lo02 .lo0202 {
    margin-left: auto;
    width: 111px;
  }
  #articleHeader .text01 {
    font-size: 11px;
  }
  #articleHeader .author01 {
    margin-top: 0;
  }
  #articleHeader .share01 {
    margin-top: 0;
    -webkit-box-pack: end;
    justify-content: flex-end;
  }
}

/* video-container */
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.video-container embed,
.video-container iframe,
.video-container object,
.video-container video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* image-container */
.image-container {
  position: relative;
}
.image-container img {
  display: block;
  width: 100%;
  height: auto;
}

/* image-caption */
.image-caption {
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 0.8125em;
  line-height: 1.3em;
  font-style: italic;
  padding: 8px 10px;
  position: absolute;
  bottom: 8px;
  left: 8px;
  margin-right: 8px;
  border-radius: 2px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.4),
    0 1px 0 rgba(255, 255, 255, 0.03);
}

/* wp-caption-text */
#post .wp-caption-text {
  margin: 0 0 27px 0;
  padding: 8px 0;
  color: #aaa;
  font-size: 13px;
  line-height: 2.2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #post .wp-caption-text {
    padding: 4px 0;
    font-size: 12px;
    margin-bottom: 24px;
  }
}

/* wp-caption */
#post .wp-caption {
  max-width: 100%;
  line-height: 0;
}
#post .wp-caption img {
  margin: 0;
  max-width: 100%;
  width: 100%;
  height: auto;
}
#post .wp-caption.alignleft {
  margin-right: 20px;
}
#post .wp-caption.alignright {
  margin-left: 20px;
}
#post .wp-caption.alignnone {
  width: 100% !important;
  overflow: hidden;
}
#post .wp-caption.alignnone img {
  margin: 0 auto;
  max-width: 100% !important;
}

/* post */
#post {
  color: #343434;
  font-size: 15px;
  line-height: 2.2;
}
#post p:first-child img,
#post .wp-caption:first-child {
  display: none;
}
/* kurata */
#post a {
  border-bottom: dotted 1px #222;
  padding-bottom: 1px;
  position: relative;
}
#post a::after {
  content: "";
  height: 1px;
  width: 0;
  display: block;
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #222;
  -webkit-transition: .15s ease-in-out;
  transition: .15s ease-in-out;
}
body:not(.-is-touch) #post a:hover::after {
  width: 100%;
}


#post hr {
  margin-bottom: 35px;
  border: 0;
  background: #ddd;
  border-bottom: 1px solid #ddd;
  height: 1px;
}
#post p + hr {
  margin-bottom: 30px;
}
#post h3 {
  margin: 80px 0 50px 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
  border: none;
}
#post hr + h3 {
  margin-top: 50px;
}
#post h4 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}
#post p + h4 {
  margin-bottom: 44px;
}
#post iframe {
  max-width: 100%;
}
#post > div {
  margin-bottom: 35px;
  max-width: 100%;
}
#post em {
  font-weight: normal;
}
#post h4 + div.video-container {
  margin-bottom: 22px;
}
#post p + p,
#post .amazonjs_item + p {
  margin-bottom: 35px;
}
#post .twitter-tweet + p{
  margin-bottom: 25px;
}
#post hr + p {
  margin-bottom: 44px;
}
#post h3 + p {
  margin-bottom: 36px;
}
#post .wp-caption + p {
  margin-bottom: 37px;
}
#post blockquote + p {
  margin-bottom: 20px;
}
#post .video-container + p {
  margin-bottom: 0;
  /* height: 0; */
}
#post blockquote {
  position: relative;
  display: block;
  margin-bottom: 17px;
  padding: 7px 45px 0 35px;
  background: url(img_cmn/bg_blockquote_01.svg) no-repeat 6px 0;
  background-size: 20px 20px;
}
#post .video-container + blockquote {
  margin-bottom: 35px;
}
#post blockquote::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 7px;
  display: block;
  width: 20px;
  height: 20px;
  background: url(img_cmn/bg_blockquote_02.svg) no-repeat;
  background-size: 20px 20px;
}
#post p img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#post .postProfileBox01 {
  margin-bottom: 80px;
  padding: 24px 30px;
  border: 1px solid #ddd;
}
#post div[style="border: 1px solid #cccccc; padding: 10px; background: #ffffff;"]{
  padding: 30px !important;
}

@media screen and (max-width: 767px) {
  #post {
    font-size: 14px;
    line-height: 2;
  }
  #post hr {
    margin-bottom: 28px;
  }
  #post p + hr {
    margin-bottom: 19px;
  }
  #post h3 {
    margin: 50px 0 28px 0;
    font-size: 16px;
    line-height: 1.5;
  }
  #post hr + h3 {
    margin-top: 30px;
  }
  #post h4 {
    font-size: 15px;
  }
  #post p + h4 {
    margin-bottom: 38px;
  }
  #post > div {
    margin-bottom: 28px;
  }
  #post h4 + div.video-container {
    margin-bottom: 13px;
  }
  #post p + p,
  #post .amazonjs_item + p {
    margin-bottom: 28px;
  }
  #post .twitter-tweet + p{
    margin-bottom: 18px;
  }
  #post hr + p {
    margin-bottom: 28px;
  }
  #post h3 + p {
    margin-bottom: 26px;
  }
  #post .wp-caption + p {
    margin-bottom: 24px;
  }
  #post .postProfileBox01 {
    margin-bottom: 50px;
    padding: 15px 20px;
  }
  #post div[style="border: 1px solid #cccccc; padding: 10px; background: #ffffff;"]{
    padding: 20px !important;
  }
}

/* shareMod01 */
.shareMod01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  margin-top: 80px;
}
.shareMod01 li {
  width: calc((100% - 22px) / 2);
}
.shareMod01 li a {
  display: block;
  border: 1px solid #c7c7c7;
  border-radius: 21.5px;
  -webkit-border-radius: 21.5px;
  -moz-border-radius: 21.5px;
  height: 43px;
  text-indent: -9999px;
  overflow: hidden;
}
.shareMod01 li.twitter a {
  background: url(img_cmn/img_twitter_01.svg) no-repeat 50% 50%;
  background-size: 40px 40px;
}
.shareMod01 li.facebook a {
  background: url(img_cmn/img_facebook_01.svg) no-repeat 50% 50%;
  background-size: 40px 40px;
}
body:not(.-is-touch) .shareMod01 li a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .shareMod01 {
    margin-top: 50px;
  }
  .shareMod01 li {
    width: calc((100% - 15px) / 2);
  }
  .shareMod01 li a {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    height: 40px;
  }
}

/* sharedaddy 200227 */
div.sharedaddy h3.sd-title {
  display: none;
}

#post div.sharedaddy {
  margin-top: 80px;
}
#post div.sharedaddy .sd-content ul {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
}
#post div.sharedaddy .sd-content ul li {
  width: 100%;
}
#post div.sharedaddy .sd-content ul li:not(:first-child) {
  margin-left: 15px;
}
#post div.sharedaddy .sd-content ul li.share-end {
  display: none;
}
#post div.sharedaddy .sd-content ul li a {
  display: block;
  border: 2px solid #333;
  border-radius: 22px;
  -webkit-border-radius: 22px;
  -moz-border-radius: 22px;
  background: transparent;
  height: 44px;
  text-indent: -9999px;
  overflow: hidden;
}
#post div.sharedaddy .sd-content ul li.share-twitter a {
  background: url(img_cmn/img_twitter_01.svg) no-repeat 50% 50%;
  background-size: 40px 40px;
}
#post div.sharedaddy .sd-content ul li.share-facebook a {
  background: url(img_cmn/img_facebook_01.svg) no-repeat 50% 50%;
  background-size: 40px 40px;
}
body:not(.-is-touch) #post div.sharedaddy .sd-content ul li.share-twitter a:hover {
  background-image: url(img_cmn/img_twitter_04.svg);
  background-color: #333;
  opacity: 1;
  border: none;
}
body:not(.-is-touch) #post div.sharedaddy .sd-content ul li.share-facebook a:hover {
  background-image: url(img_cmn/img_facebook_04.svg);
  background-color: #333;
  opacity: 1;
  border: none;
}
@media screen and (max-width: 767px) {
  #post div.sharedaddy {
    margin-top: 50px;
  }
  #post div.sharedaddy .sd-content ul li {
    width: calc(50% - 5px);
    padding: 0;
    margin: 0;
  }
  #post div.sharedaddy .sd-content ul li:not(:first-child) {
    margin-left: 0;
  }
  #post div.sharedaddy .sd-content ul li a {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    height: 40px;
    padding: 0;
  }
}

/* shareMod02 */
.shareMod02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
}
.shareMod02 li:not(:first-child) {
  margin-left: 15px;
}
.shareMod02 li a {
  display: block;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  width: 40px;
  height: 40px;
  /* background-color: #efefef; */
  border: 2px solid #333;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  text-indent: -9999px;
  overflow: hidden;
}
.shareMod02 li.twitter a {
  background-image: url(img_cmn/img_twitter_01.svg);
  background-size: 40px 40px;
}
.shareMod02 li.facebook a {
  background-image: url(img_cmn/img_facebook_01.svg);
  background-size: 40px 40px;
}
body:not(.-is-touch) .shareMod02 li.twitter a:hover {
  background-image: url(img_cmn/img_twitter_04.svg);
  background-color: #333;
}
body:not(.-is-touch) .shareMod02 li.facebook a:hover {
  background-image: url(img_cmn/img_facebook_04.svg);
  background-color: #333;
}

/* tagMod01 */
.tagMod01 {
  margin-top: 80px;
}
.tagMod01 a {
  display: inline-block;
  margin: 0 10px 10px 0;
  padding: 0 17px;
  border: 1px solid #c7c7c7;
  border-radius: 15.5px;
  -webkit-border-radius: 15.5px;
  -moz-border-radius: 15.5px;
  height: 31px;
  color: #343434;
  font-size: 12px;
  line-height: 29px;
}
body:not(.-is-touch) .tagMod01 a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .tagMod01 {
    margin-top: 50px;
  }
}

/* relatedHeadMod01 */
.relatedHeadMod01 {
  margin-top: 80px;
  font-size: 16px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .relatedHeadMod01 {
    margin-top: 50px;
  }
}

/* relatedListMod01 */
.relatedListMod01 {
  margin-top: 39px;
}
.relatedListMod01 .relatedListItems01 + .relatedListItems01 {
  margin-top: 40px;
}
.relatedListMod01 .relatedListBox01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
}
body:not(.-is-touch) .relatedListMod01 .relatedListBox01:hover {
  opacity: 0.7;
}
.relatedListMod01 .relatedListSide01 {
  width: 150px;
}
.relatedListMod01 .relatedListMain01 {
  -webkit-box-flex: 1;
  flex: 1;

  padding: 8px 0 0 15px;
}
.relatedListMod01 .relatedListHead01 {
  display: block;
  color: #343434;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.54;
}
.relatedListMod01 .relatedListDate01 {
  margin-top: 7px;
  color: #bbb;
  font-size: 11px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
}
.relatedListMod01 .relatedListSide01 .relatedListDate01 {
  display: none;
}
.relatedListMod01 .relatedListMain01 .relatedListDate01 {
  display: block;
}
.relatedListMod01 .relatedListCat01 {
  display: block;
  margin-top: 3px;
  color: #bbb;
  font-size: 11px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
}
.relatedListMod01 object a {
  color: #bbb;
}
body:not(.-is-touch) .relatedListMod01 object a:hover {
  color: #06c4ff;
}
@media screen and (max-width: 767px) {
  .relatedListMod01 {
    margin-top: 19px;
  }
  .relatedListMod01 .relatedListItems01 + .relatedListItems01 {
    margin-top: 20px;
  }
  .relatedListMod01 .relatedListBox01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
  }
  .relatedListMod01 .relatedListSide01 {
    width: 100px;
  }
  .relatedListMod01 .relatedListMain01 {
    padding: 0 0 0 14px;
  }
  .relatedListMod01 .relatedListDate01 {
    margin-top: 3px;
    color: #888;
    font-size: 10px;
    letter-spacing: 0.05em;
  }
  .relatedListMod01 .relatedListSide01 .relatedListDate01 {
    display: block;
  }
  .relatedListMod01 .relatedListMain01 .relatedListDate01 {
    display: none;
  }
  .relatedListMod01 .relatedListCat01 {
    margin-top: 7px;
    color: #888;
    letter-spacing: 0.05em;
  }
  .relatedListMod01 object a {
    color: #888;
  }
}

/* jp-relatedposts 200227 */
#article #jp-relatedposts .jp-relatedposts-items-visual {
  margin-right: 0;
}
#article #jp-relatedposts .jp-relatedposts-items-visual .jp-relatedposts-post {
  padding-right: 0;
  -moz-opacity: 1;
  opacity: 1;
}
#article #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
  float: none;
  width: auto;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
body:not(.-is-touch) #jp-relatedposts
  .jp-relatedposts-items
  .jp-relatedposts-post:hover
  .jp-relatedposts-post-title
  a {
  text-decoration: none;
}

#article #jp-relatedposts {
  padding-top: 0;
  margin: 0;
  margin-top: 40px;
}
#article #jp-relatedposts h3.jp-relatedposts-headline {
  margin: 0;
  display: block;
  float: none;
  /* text-transform: uppercase; */
  border: none;
}
#article #jp-relatedposts h3.jp-relatedposts-headline em:before {
  display: none;
}
#article #jp-relatedposts h3.jp-relatedposts-headline {
  font-size: 17px;
  font-family: "Rubik";
  font-weight: 700;
  line-height: 1.5;
  text-transform: uppercase;
}
#article .jp-relatedposts-items {
  margin-top: 39px;
  min-height: 86px;
}
#article .jp-relatedposts-items .jp-relatedposts-post + .jp-relatedposts-post {
  margin-top: 40px !important;
}
#article .jp-relatedposts-post {
  position: relative;
  padding: 0 0 0 165px;
}
#article .jp-relatedposts-post-a {
  color: #343434;
}
#article .jp-relatedposts-post > .jp-relatedposts-post-a {
  /* position: absolute; */
  top: 0;
  left: 0;
  display: block;
  width: 150px;
  height: 90px;
  line-height: 0;
  float: left;
}
#article .jp-relatedposts-post-img {
  display: block;
  width: 150px;
  height: 90px;
  -o-object-fit: cover;
  object-fit: cover;
  overflow: visible;
}
#article .jp-relatedposts-post-title,
#article .jp-relatedposts-post-excerpt,
#article .jp-relatedposts-post-context {
  padding-left: 165px;
}
#article .jp-relatedposts-post-title {
  padding: 0 0 0 165px;
  color: #343434;
  font-size: 13px !important;
  font-weight: 700;
  line-height: 1.54 !important;
}
#article 
  #jp-relatedposts
  .jp-relatedposts-items
  .jp-relatedposts-post
  .jp-relatedposts-post-title
  a {
  font-weight: 700;
}
#jp-relatedposts
  .jp-relatedposts-items
  .jp-relatedposts-post
  .jp-relatedposts-post-context,
#jp-relatedposts
  .jp-relatedposts-items
  .jp-relatedposts-post
  .jp-relatedposts-post-date {
  opacity: 1;
}
body:not(.-is-touch) #article
  #jp-relatedposts
  .jp-relatedposts-items
  .jp-relatedposts-post
  .jp-relatedposts-post-title
  a:hover {
  opacity: 0.7;
}
#article .jp-relatedposts-post-excerpt {
  display: none;
}
#article #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post-date {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.7);
  color: #ccc;
  left: 0;
  bottom: 0;
  padding: 0 6px;
  height: 20px;
  margin-top: 0;
  font-size: 11px;
  font-family: "Oswald";
  font-weight: 300;
  line-height: 20px;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
  opacity: 1;
  z-index: 100;
}
#article .jp-relatedposts-post-context a {
  display: inline-block;
  margin-top: 3px;
  color: #bbb;
  font-size: 11px !important;
  font-family: "Oswald";
  font-weight: 300;
  line-height: 1.5 !important;
  text-transform: uppercase;
}
#article .jp-relatedposts-post-context object:after {
  content: "/";
  display: inline-block;
  padding: 0 5px;
  color: #bbb;
}
#article .jp-relatedposts-post-context object:last-child::after {
  display: none;
}
body:not(.-is-touch) #article .jp-relatedposts-post-context a:hover {
  color: #06c4ff;
}

@media screen and (max-width: 767px) {
  #article #jp-relatedposts {
    margin-top: 10px;
  }
  #article #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post {
    padding-bottom: 0;
  }
  #article .jp-relatedposts-items {
    margin-top: 19px;
    min-height: 58px;
  }
  #article .jp-relatedposts-items .jp-relatedposts-post + .jp-relatedposts-post {
    margin-top: 20px !important;
  }
  #article .jp-relatedposts-post {
    padding: 0 0 0 40%;
  }
  #article .jp-relatedposts-post > .jp-relatedposts-post-a {
    /* width: 115px; */
    width: 35.38%;
    height: 69px;
    overflow: hidden;
  }
  #article .jp-relatedposts-post-img {
    width: 100% !important;
  }

  #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post-context,
  #jp-relatedposts .jp-relatedposts-items-visual h4.jp-relatedposts-post-title {
    padding: 0;
    width: 60.2%;
    margin-left: auto;
  }
  #article #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post-date {
    margin-top: 0 !important;
    font-size: 10px !important;
    bottom: auto;
    top: 60px;
  }
  #article .jp-relatedposts-post-context {
    margin-top: 7px;
    color: #888;
    letter-spacing: 0.05em;
  }
}

/* sideHeadMod01 */
.sideListMod01Wrap {
  position: relative;
  margin-top: 50px;
}
#articleSideSpace + .sideListMod01Wrap {
  margin-top: 0;
}
.sideHeadMod01 {
  font-size: 16px;
  font-family: "Rubik";
  font-weight: 700;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .sideListMod01Wrap:first-child {
    margin-top: 0;
  }
  .sideHeadMod01.sideHeadRotate01 {
    display: -webkit-box;
    display: flex;
    color: #000;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    align-items: center;
    position: absolute;
    padding-bottom: 0;
    line-height: 1;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: top right;
    transform-origin: top right;
    width: 200px;
    height: 0;
    top: 1px;
    left: -219px;
    text-transform: uppercase;
  }
}
#articleSide #articleSideSpace + .sideHeadMod01 {
  margin-top: 0;
}
.sideHeadMod01 em {
  /* display: inline-block; */
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sideHeadMod01 {
    margin-top: 50px;
    color: #353334;
    font-size: 16px;
    font-family: "Rubik";
    font-weight: 700;
    line-height: 1.5;
  }
  #articleSide .sideHeadMod01:first-child {
    margin-top: 50px;
  }
  /* kurata */
  .sideHeadMod01.isShop {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    font-size: 13px;
    font-weight: 700;
    line-height: 17px;
    letter-spacing: 0;
    -webkit-box-align: center;
    align-items: center;
    text-transform: initial;
    margin-bottom: 20px;
  }
  .sideHeadMod01.isShop::before {
    content: "";
    display: block;
    width: 40px;
    height: 27px;
    background: url(./img_cmn/icn_sw_01.svg) no-repeat 0 0;
    background-size: 40px 27px;
    margin-bottom: 10px;
  }
  .sideHeadMod01 em {
    padding: 0;
    background: transparent;
    line-height: 1.5;
  }
}

/* sideListMod01 */
.sideListMod01 {
  margin-top: 7px;
}
/* kurta */
.sideListMod01 .sideListItems01 + .sideListItems01 {
  margin-top: 30px;
}
.sideListMod01 .sideListBox01 {
  display: block;
}
.sideListMod01 .sideListImageWrap01 {
  position: relative;
  display: block;
  width: 150px;
}
.sideListMod01 .sideListImageWrap01 .sideListDate01 {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 0;
  z-index: 4;
}
.sideListMod01 .sideListImageWrap01 .sideListDate01 em {
  display: inline-block;
  padding: 0 6px;
  height: 20px;
  background-color: rgba(0, 0, 0, 0.7);
  color: #ccc;
  font-size: 11px;
  font-family: "Oswald";
  font-style: normal;
  font-weight: 300;
  line-height: 20px;
  text-indent: 0.05em;
  letter-spacing: 0.05em;
}
.sideListMod01 .sideListHead01 {
  position: relative;
  display: block;
  /* kurata */
  margin-top: 10px;
  padding-right: 30px;
  color: #343434;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
}
/* kurata */
.sideListMod01 .sideListHead01 .lineHead {
  content: "";
  position: absolute;
  top: 9px;
  right: 0;
  display: block;
  width: 15px;
  height: 1px;
  background: #222;
}
.sideListMod01 .sideListHead01 .lineHead::after {
  content: "";
  position: absolute;
  top: 0;
  left: -15px;
  display: block;
  width: 15px;
  height: 1px;
  background-color: #fff;
  -webkit-transition: left 0.2s ease-in-out;
  transition: left 0.2s ease-in-out;
}
body:not(.-is-touch) .sideListMod01 a:hover .sideListHead01 .lineHead::after {
  left: 15px;
}
.sideListMod01 .sideListText01 {
  display: block;
  margin-top: 8px;
  color: #888;
  font-size: 11px;
  line-height: 1.5;
}
.sideListMod01 .sideListCat01 {
  display: block;
  margin-top: 12px;
  color: #ccc;
  font-size: 12px;
  font-family: "Oswald";
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.sideListMod01 .sideListCat01 object:after {
  content: "/";
  display: inline-block;
  padding: 0 5px;
}
.sideListMod01 .sideListCat01 object:last-child:after {
  display: none;
}

.sideListMod01 object a {
  color: #bbb;
}
body:not(.-is-touch) .sideListMod01 object a:hover {
  color: #06c4ff;
}
@media screen and (max-width: 767px) {
  .sideListMod01 .sideListItems01 + .sideListItems01 {
    margin-top: 20px;
  }
  .sideListMod01 .sideListBox01 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
  }
  .sideListMod01 .sideListBox01 .sideListSide01 {
    width: 140px;
    width: 35.38%;
  }
  .sideListMod01 .sideListBox01 .sideListMain01 {
    -webkit-box-flex: 1;
    flex: 1;
    padding: 0 0 0 4.6%;
  }
  .sideListMod01 .sideListImageWrap01 {
    width: 100%;
  }
  .sideListMod01 .sideListImageWrap01 .sideListDate01 {
    bottom: -0.5em;
  }
  .sideListMod01 .sideListHead01 {
    margin-top: 0;
    padding-left: 0;
  }
  .sideListMod01 .sideListHead01::before {
    display: none;
  }
  .sideListMod01 .sideListText01 {
    padding-left: 0;
    font-size: 11px;
  }
  .sideListMod01 .sideListCat01 {
    margin-top: 4px;
    padding-left: 0;
  }
}

/* archives
------------------------------------------ */
/* archives */
#archives {
  position: relative;
}
#archivesContents {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  margin: 50px 0 0 9.8%;
}
#archivesContents #archivesMain {
  width: 65.6%;
}
#archivesContents #archivesMainVessel {
  margin: 0 auto;
  width: 100%;
  max-width: 1000px;
}
#archivesContents #archivesSide {
  padding: 0 35px 100px 0;
  width: 25.5%;
}
#archivesContents #archivesSide .sideListMod01{
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  #archivesContents {
    display: block;

    margin: 0 20px 0 20px;
  }
  #archivesContents #archivesMain {
    width: auto;
  }
  #archivesContents #archivesMainVessel {
    width: auto;
  }
  #archivesContents #archivesSide {
    padding: 50px 0 0 0;
    width: auto;
  }
}

/* archivesHeader */
#archivesHeader {
  position: relative;
  padding: 118px 0 36px 0;
}
#archivesHeader .main01 {
  margin-left: 9.8%;
  width: 59.3%;
}
#archivesHeader .main01 .vessel {
  margin: 0 auto;
  width: 100%;
  max-width: 1000px;
}
#archivesHeader .headMain01 {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
  border: none;
}
#archivesHeader .headMain01:after {
  display: none;
}
#archivesHeader .logo01,
body.page header .logo01 {
  position: absolute;
  z-index: 100;
  width: 170px;
  top: 22px;
  right: 68px;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}
body.page header .logo01 a,
#archivesHeader .logo01 a {
  display: block;
}
body:not(.-is-touch) #archivesHeader .logo01 a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  #archivesHeader {
    padding: 90px 0 60px 0;
    z-index: 1;
  }
  #archivesHeader .main01 {
    margin-left: 20px;
    margin-right: 20px;
    width: auto;
  }
  #archivesHeader .main01 .vessel {
    width: auto;
  }
  #archivesHeader .headMain01 {
    font-size: 16px;
  }
  /* #archivesHeader .logo01 {
    position: absolute;
    top: 20px;
    right: 16px;
    z-index: 3;
    width: 160px;
  } */
  #archivesHeader .logo01,
  body.page header .logo01 {
    position: absolute;
    width: 97px;
    top: 10px;
    right: 9.8vw;
    z-index: 3;
  }
}

/* Amazon
------------------------------------------ */
/* amazonMod01 */
.amazonMod01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  align-items: stretch;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;

  border: 1px solid #ddd;
  padding: 29px;
}
#post div.amazonMod01 {
  margin-top: 80px;
}
.amazonMod01 .amazonImage01 {
  line-height: 0;
}
.amazonMod01 .amazonMain01 {
  -webkit-box-flex: 1;
  flex: 1;

  padding: 0 0 0 30px;
}
.amazonMod01 .amazonMain01 h4 {
  font-size: 15px;
  line-height: 1.54;
}
.amazonMod01 .amazonMain01 ul {
  margin-top: 14px;
}
.amazonMod01 .amazonMain01 ul li {
  font-size: 12px;
  line-height: 1.5;
}
.amazonMod01 .amazonMain01 ul li + li {
  margin-top: 5px;
}
.amazonMod01 .amazonMain01 ul li b {
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  #post div.amazonMod01 {
    margin-top: 50px;
  }
}

/* objectFit For IE and Edge
------------------------------------------ */
/* objectFit--cover */
.objectFit--cover {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

/* objectFit--contain */
.objectFit--contain {
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
}

/* amazonjs
------------------------------------------ */
#post .amazonjs_item {
  font-size: 12px;
  margin: 0 0 80px 0;
  padding: 30px;
  background: white;
  color: #343434;
  display: -webkit-box;
  display: flex;
}
#post * + .amazonjs_item {
  margin-top: 80px;
}
#post .amazonjs_item a {
  color: #343434;
}
body:not(.-is-touch) #post .amazonjs_item a:hover {
  color: #343434;
  opacity: 0.7;
}
#post .amazonjs_item .amazonjs_image {
  margin-right: 10px;
  float: none;
  -webkit-box-flex: 1;
  flex: 1;
}
#post .amazonjs_item .amazonjs_image img {
  max-width: 100% !important;
}
#post .amazonjs_item .amazonjs_image a {
  display: block;
  border: none;
}
#post .amazonjs_item .amazonjs_image a::after {
  display: none;
}
#post .amazonjs_item .amazonjs_info {
  display: block;
  width: 70%;
  margin: 0 !important;
}
#post .amazonjs_item .amazonjs_info h4 {
  font-size: 15px;
  line-height: 1.54;
}
#post .amazonjs_item .amazonjs_info ul {
  margin: 14px 0 0 0;
}
#post .amazonjs_item .amazonjs_info ul li + li {
  margin-top: 5px;
}
#post .amazonjs_item .amazonjs_info ul li b {
  color: #343434;
}
#post .amazonjs_item .amazonjs_info .amazonjs_price {
  color: #343434;
}
#post .amazonjs_item .amazonjs_info .amazonjs_price span {
  color: #343434;
}
#post .amazonjs_book .amazonjs_info ul,
#post .amazonjs_music .amazonjs_info ul {
  margin-top: 14px;
}
#post .amazonjs_book .amazonjs_info ul li,
#post .amazonjs_music .amazonjs_info ul li {
  line-height: 1.5em;
}
@media (max-width: 720px) {
  .amazonjs_item .amazonjs_info {
    margin-bottom: 0;
  }
}
@media (max-width: 480px) {
  .amazonjs_item img {
    width: 100%;
    max-width: 150px;
  }
  #post .amazonjs_item .amazonjs_info {
    margin-left: 0;
  }
  .amazonjs_item .amazonjs_info h4 a {
    font-size: 12px;
  }
  .amazonjs_item .amazonjs_info ul li {
    font-size: 11px;
  }
}
@media screen and (max-width: 767px) {
  #post .amazonjs_item {
    font-size: 11px;
    margin: 0 0 30px 0;
    padding: 20px;
  }
  #post * + .amazonjs_item {
    margin-top: 30px;
  }
  #post .amazonjs_item a {
    color: #343434;
  }
  #post .amazonjs_item .amazonjs_info {
    margin: 3px 0 0 0 !important;
    width: 60%;
  }
  #post .amazonjs_item .amazonjs_info h4 {
    font-size: 12px;
    line-height: 1.5;
  }
  #post .amazonjs_item .amazonjs_info ul {
    margin: 11px 0 0 0;
  }
  #post .amazonjs_item .amazonjs_info ul li + li {
    margin-top: 6px;
  }
  #post .amazonjs_item img {
    width: 100%;
    max-width: 150px;
  }
}

/* pagenavi
------------------------------------------ */
.wp-pagenavi {
  text-align: left;
  font-weight: 400;
  line-height: 1.25em;
  float: none;
  margin-right: 0;
  text-align: left;
  margin-top: 80px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  align-items: flex-start;
}
.wp-pagenavi a,
.wp-pagenavi span {
  padding: 0;
  margin: 0 5px 0 0;
  color: #333;
  /* background-color: #efefef; */
  font-size: 14px;
  font-family: "Oswald";
  font-weight: 400;
  line-height: 0;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  width: 35px;
  height: 55px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.wp-pagenavi a:last-child {
  margin-right: 0;
}
.wp-pagenavi span.pages {
  font-size: 1.0625em;
  font-weight: 400;
  display: inline-block;
  margin-bottom: 0 !important;
  border: none !important;
}
.wp-pagenavi span.pages:before {
  display: none;
}
.wp-pagenavi span.extend {
  border: none !important;
  border-bottom: none;
  border-top: none;
}
.wp-pagenavi a {
  color: #333;
  border: none;
  border-bottom: none;
  border-top: none;
}
.wp-pagenavi a::before,
.wp-pagenavi a::after,
.wp-pagenavi span::after
{ 
  content:"";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #efefef;
  z-index: -2;
}
.wp-pagenavi a::before{
  top: -100%;
  background-color: #222;
  -webkit-transition: .2s ease;
  transition: .2s ease;
  z-index: -1;
}
body.-is-touch .wp-pagenavi a::before{
  display: none;
}
body:not(.-is-touch) .wp-pagenavi a:hover::before{
  top: 0;
}
.wp-pagenavi a::after,
.wp-pagenavi span::after{
  background-color: #efefef;
}
.wp-pagenavi a.current::after,
.wp-pagenavi span.current::after{
  background-color: #222;
}
body:not(.-is-touch) .wp-pagenavi a:hover,
.wp-pagenavi a:active,
.wp-pagenavi span.current {
  color: #fff;
  /* background-color: #222; */
  border: none;
}
.wp-pagenavi .first,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .last {
  background-repeat: no-repeat;
  background-position: center;
  text-indent: -10em;
  display: block;
  overflow: hidden;
}
body:not(.-is-touch) .wp-pagenavi .first:hover,
body:not(.-is-touch) .wp-pagenavi .previouspostslink:hover,
body:not(.-is-touch) .wp-pagenavi .nextpostslink:hover,
body:not(.-is-touch) .wp-pagenavi .last:hover {
  background-position: center;
}
.wp-pagenavi .first {
  background-image: url(img_cmn/icn_pager_double.svg);
  background-size: auto 9px;
}
.wp-pagenavi .last {
  background-image: url(img_cmn/icn_pager_double_next.svg);
  background-size: auto 9px;
}
.wp-pagenavi .previouspostslink {
  background-image: url(img_cmn/icn_pager_single.svg);
  background-size: auto 9px;
}
.wp-pagenavi .nextpostslink {
  background-image: url(img_cmn/icn_pager_single_next.svg);
  background-size: auto 9px;
}
body:not(.-is-touch) .wp-pagenavi .first:hover,
body:not(.-is-touch) .wp-pagenavi .last:hover,
body:not(.-is-touch) .wp-pagenavi .previouspostslink:hover,
body:not(.-is-touch) .wp-pagenavi .nextpostslink:hover {
  background-repeat: no-repeat;
  background-position: center;
}
body:not(.-is-touch) .wp-pagenavi .first:hover {
  background-size: auto 9px;
  background-image: url(img_cmn/icn_pager_double_w.svg);
}
body:not(.-is-touch) .wp-pagenavi .previouspostslink:hover {
  background-image: url(img_cmn/icn_pager_single_w.svg);
  background-size: auto 9px;
}
body:not(.-is-touch) .wp-pagenavi .last:hover {
  background-size: auto 9px;
  background-image: url(img_cmn/icn_pager_double_next_w.svg);
}
body:not(.-is-touch) .wp-pagenavi .nextpostslink:hover {
  background-image: url(img_cmn/icn_pager_single_next_w.svg);
  background-size: auto 9px;
}

@media screen and (max-width: 767px) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    display: none;
    width: 45px;
    height: 55px;
  }
  .wp-pagenavi a.first,
  .wp-pagenavi a.previouspostslink,
  .wp-pagenavi a.nextpostslink,
  .wp-pagenavi a.last {
    display: -webkit-box;
    display: flex;
  }
  .wp-pagenavi {
    -webkit-box-pack: start;
    justify-content: start;
    position: relative;
  }
  .wp-pagenavi a.nextpostslink {
    position: absolute;
    right: 45px;
  }
  .wp-pagenavi a.nextpostslink:last-child {
    position: relative;
    margin-left: auto;
    right: 0;
  }
  .wp-pagenavi a.last {
    margin-left: auto;
  }
}

/* 404
------------------------------------------ */
.notfoundTextMod01 {
  margin-top: 20px;
  font-size: 16px;
}

/* 検索結果
------------------------------------------ */
.searchTextMod01 {
  margin-bottom: 20px;
  font-size: 16px;
}

/* contact
------------------------------------------ */
/* contactLogo */
#contactLogo {
  position: absolute;
  top: 30px;
  right: 4%;
  line-height: 0;
}
body:not(.-is-touch) #contactLogo a:hover {
  opacity: 0.7;
}
#contactLogo img {
  width: 60px;
  height: auto;
}
@media screen and (max-width: 767px) {
  #contactLogo {
    position: absolute;
    top: 20px;
    right: 20px;
  }
  #contactLogo img {
    width: 52px;
    height: auto;
  }
}

/* contactHeader */
#contactHeader {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;

  position: fixed;
  top: 0;
  left: 0;
  border-right: 1px solid #888;
  width: 40%;
  height: 100%;
}
#contactHeader .head01 {
  text-align: center;
}
#contactHeader .head01 .en {
  display: block;
  font-size: 50px;
  font-weight: 700;
  line-height: 1.1;
}
#contactHeader .head01 .en em {
  display: inline-block;
  background: #333;
  color: #fff;
}
#contactHeader .head01 .ja {
  display: block;
  margin-top: 22px;
  color: #111;
  font-size: 13px;
  font-weight: 700;
}
#contactHeader .head02 {
  width: 8em;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
}
#contactHeader .head02 em {
  display: inline;
  background: #333;
  color: #fff;
  padding: 0.1em 0;
}
@media screen and (max-width: 767px) {
  #contactHeader {
    display: block;

    position: relative;
    top: auto;
    left: auto;
    padding: 63px 80px 0 30px;
    border-right: none;
    width: auto;
    height: auto;
  }
  body.page-id-1055 #contactHeader {
    padding-top: 52px;
  }
  #contactHeader .head01 {
    text-align: left;
  }
  #contactHeader .head01 .en {
    font-size: 30px;
    line-height: 1;
  }
  #contactHeader .head01 .ja {
    margin-top: 8px;
    font-size: 12px;
  }
  #contactHeader .head02 {
    font-size: 20px;
    line-height: 1.5;
    text-align: left;
  }
}

/* contact */
#contact {
  position: relative;
  margin-left: 40%;
}
#contact > .vessel {
  overflow: hidden;
  padding: 80px 22% 80px 8%;
  color: #343434;
  font-size: 15px;
}
body.page-id-1055 #contact > .vessel {
  padding-top: 100px;
  padding-bottom: 100px;
}
#contact > .vessel h6,
#contact > .vessel h5,
#contact > .vessel h4,
#contact > .vessel h3,
#contact > .vessel h2 {
  border-left: none;
}
#contact > .vessel h3 + p,
#contact > .vessel h2 + p {
  margin-top: 35px;
}
#contact > .vessel p + p {
  margin-top: 35px;
}
body.page-id-1055 #contact > .vessel p:nth-child(2) {
  margin-top: 62px;
}
#contact .wpcf7 p {
  position: relative;
  overflow: hidden;
  color: #b4b4b4;
  font-size: 12px;
  line-height: 1.7;
}
#contact .wpcf7 p + p {
  margin-top: 35px;
}
#contact .wpcf7 p input[type="email"].wpcf7-email,
#contact .wpcf7 p input[type="text"].wpcf7-text {
  display: block;
  margin-top: 13px;
  padding: 0 12px;
  border: none;
  width: 100%;
  height: 55px;
  background: #efefef;
  outline: none;
}
#contact .wpcf7 p textarea.wpcf7-textarea {
  display: block;
  margin-top: 13px;
  padding: 12px;
  border: none;
  width: 100%;
  background: #efefef;
  outline: none;
}
#contact .wpcf7 .subimitButtonWrap {
  text-align: right;
}
#contact .wpcf7 .subimitButton {
  width: 230px;
  opacity: 1;
}
#contact .wpcf7 input.wpcf7-submit {
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  font-weight: 800;
  width: 100%;
  height: 100%;
  padding-right: 60px;
  text-align: right;
}
body:not(.-is-touch) #contact .wpcf7 .subimitButton:hover input.wpcf7-submit {
  /* color: #fff; */
  -webkit-animation: hovreActionButtonColorMoveOnce 0.3s forwards;
  animation: hovreActionButtonColorMoveOnce 0.3s forwards;
}
#contact .wpcf7 .buttonMod01 .buttonMod01Text {
  position: relative;
  width: 100%;
  height: 100%;
}
#contact div.wpcf7 .ajax-loader {
  position: absolute;
  top: 16px;
  left: 80px;
}
.subimitButtonWrap span.buttonMod01 span.buttonMod01Image,
.subimitButtonWrap a.buttonMod01 span.buttonMod01Image{
  position: absolute;
  right: 0;
}
.subimitButtonWrap span.buttonMod01 span.buttonMod01Text, 
.subimitButtonWrap a.buttonMod01 span.buttonMod01Text {
  margin-right: 0;
}
.wpcf7 div.wpcf7-response-output{
  color: #b94a48;
}
.wpcf7 span.wpcf7-form-control-wrap {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
.wpcf7 span.wpcf7-not-valid-tip{
  font-size: 1em;
  margin-top: 7px;
  padding: 5px 14px 3px 10px;
}

@media screen and (max-width: 767px) {
  #contact {
    margin-left: 0;
  }
  #contact > .vessel {
    padding: 76px 30px 100px 30px;
    font-size: 14px;
    line-height: 1.93;
  }
  body.page-id-1055 #contact > .vessel {
    padding-top: 76px;
  }
  #contact > .vessel h3 + p,
  #contact > .vessel h2 + p {
    margin-top: 29px;
  }
  #contact > .vessel p + p {
    margin-top: 29px;
  }
  body.page-id-1055 #contact > .vessel p:nth-child(2) {
    margin-top: 48px;
  }
}

/* contactThanks */
#contactThanks {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;

  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#contactThanks > .vessel {
  text-align: center;
}
#contactThanks .head01 {
  font-size: 50px;
  font-weight: 700;
}
#contactThanks .text01 {
  margin-top: 11px;
  font-size: 14px;
  line-height: 1.93;
}
@media screen and (max-width: 767px) {
  #contactThanks .head01 {
    font-size: 30px;
  }
  #contactThanks .text01 {
    margin-top: 21px;
    font-size: 13px;
    line-height: 2.07;
  }
}

/* contactLinkMod01 */
.contactLinkMod01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;

  padding-top: 5px;
}
@media screen and (max-width: 767px) {
  .contactLinkMod01 {
    padding-top: 0;
  }
}

/* thanksLinkMod01 */
.thanksLinkMod01 {
  position: fixed;
  top: 70%;
  right: 22%;
}
@media screen and (max-width: 767px) {
  .thanksLinkMod01 {
    position: fixed;
    right: 30px;
  }
}

/* linkBtnMod01 */
a.linkBtnMod01 {
  margin-top: 5px;
  width: 198px;
}
@media screen and (max-width: 767px) {
  a.linkBtnMod01 {
    width: 198px;
  }
}

/*****************************
統合予定
*****************************/
span.buttonMod01,
a.buttonMod01 {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
}

span.buttonMod01 span.buttonMod01Text,
a.buttonMod01 span.buttonMod01Text {
  margin-right: 17px;
}
span.buttonMod01 span.buttonMod01Image,
a.buttonMod01 span.buttonMod01Image {
  position: relative;
  margin-right: 15px;
  display: -webkit-box;
  display: flex;
}
span.buttonMod01 svg,
a.buttonMod01 svg {
  position: relative;
  right: 0;
}
span.buttonMod01 svg,
a.buttonMod01 svg,
span.buttonMod01 svg path,
a.buttonMod01 svg path {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  top: -2px;
}
body:not(.-is-touch) span.buttonMod01:hover svg,
body:not(.-is-touch) a.buttonMod01:hover svg {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  /* animation: hovreActionButtonArrowMove .8s forwards alternate; */
  right: -10px;
}
body:not(.-is-touch) span.buttonMod01:hover svg path,
body:not(.-is-touch) a.buttonMod01:hover svg path {
  -webkit-animation: hovreActionButtonArrowMoveSvg 0.3s forwards alternate;
  animation: hovreActionButtonArrowMoveSvg 0.3s forwards alternate;
}
@-webkit-keyframes hovreActionButtonArrowMove {
  0%,
  100% {
    right: 0;
  }
  50% {
    right: -15px;
  }
}
@keyframes hovreActionButtonArrowMove {
  0%,
  100% {
    right: 0;
  }
  50% {
    right: -15px;
  }
}
@-webkit-keyframes hovreActionButtonArrowMoveSvg {
  0%,
  100% {
    fill: #333;
  }
  50% {
    fill: #fff;
  }
}
@keyframes hovreActionButtonArrowMoveSvg {
  0%,
  100% {
    fill: #333;
  }
  50% {
    fill: #fff;
  }
}

.wrapSection {
  position: relative;
  padding-bottom: 70px;
  padding-left: 30px;
}
.wrapSection:last-child {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .wrapSection {
    padding-bottom: 50px;
    padding-left: 0;
  }
  .wrapSection.wrapSectionPickUp {
    padding-bottom: 50px;
  }
  /* #articleContents .wrapSection.wrapSectionPickUp {
    width: 93.4vw;
  } */
}
.wrapSection h2.isShop {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  font-size: 13px;
  font-weight: 700;
  line-height: 17px;
  letter-spacing: 0;
  -webkit-box-align: center;
  align-items: center;
}
.wrapSection h2.isShop::before {
  content: "";
  display: block;
  width: 48px;
  height: 33px;
  background: url(./img_cmn/icn_sw_01.svg) no-repeat 0 0;
  background-size: 48px;
  margin-bottom: 7px;
}

@media screen and (min-width: 768px) {
  .headRotate01 {
    top: 0;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    align-items: center;
    position: absolute;
    padding-bottom: 0;
    line-height: 1;
    text-align: right;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: right;
    transform-origin: right;
    width: 50vw;
    height: 0;
    left: -49.2vw;
  }
}
/* line:1650 */
.articleListMod01 .articleListImage01 {
  background-color: #000;
}

/*****************************/

/*
    slider
*/
#sw-side .swiper-container {
  height: 100vh;
}
#sw-side .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  -webkit-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
  transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
#sw-side .swiper-before,
#sw-side .swiper-after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100vh;
  z-index: 100;
  left: 0;
  pointer-events: none;
}
#sw-side .swiper-before {
  top: 0;
  z-index: 101;
  background-color: #222;
}
#sw-side .swiper-after {
  top: 50vh;
  background-color: #16f0f1;
}
/* active */
#sw-side .swiper-slide-active:before,
#sw-side .swiper-slide-active:after {
  opacity: 1;
}
#sw-side .swiper-slide-active:before {
  background-color: rgba(0, 0, 0, 1);
}
#sw-side .swiper-slide-active:after {
  background-color: rgba(0, 0, 0, 1);
  background-color: #16f0f1;
}
body:not(.-is-touch) #sw-side .hoverActionOverlay:hover .hoverActionOverlayImageWrap::before {
  background-color: rgba(0, 0, 0, 0.5);
}
.swiper-container.sliderPickup {
  padding-bottom: 34px;
  overflow: hidden;
}
.sliderPickup .swiper-scrollbar {
  padding: 8px 0;
  cursor: pointer;
  background-color: transparent;
}
.sliderPickup .swiper-scrollbar:after {
  content: "";
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 6px;
  left: 0;
  background: #555;
  z-index: -1;
}
.sliderPickup .swiper-scrollbar-drag {
  height: 2px;
}

@media screen and (max-width: 767px) {
  #sw-side .swiper-container {
    /* height: 51.5vh; */
    height: 116vw;
  }
  .swiper-slide {
    /* overflow: hidden; */
    width: 83vw;
  }
}

/*
    hoverActionOverlay
*/
.hoverActionOverlay {
  position: relative;
}
.hoverActionOverlayImageWrap {
  overflow: hidden;
}
.hoverActionOverlayImageWrap::before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 9999;
  left: 0;
  top: 0;
  background-color: rgba(255, 255, 255, 0);
  mix-blend-mode: soft-light;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
body:not(.-is-touch) .hoverActionOverlay:hover .hoverActionOverlayImageWrap::before {
  background-color: rgba(255, 255, 255, 0.8);
}
.hoverActionOverlay .hoverActionOverlayImageWrap img {
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
body:not(.-is-touch) .hoverActionOverlay:hover .hoverActionOverlayImageWrap img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/*
    hovreActionButton
*/
.hovreActionButtonColorMoveOnce {
  position: relative;
  display: inline-block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  overflow: hidden;
}
.hovreActionButtonColorMoveOnce::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: "";
  background-color: #111;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
}
body:not(.-is-touch) a.hovreActionButtonColorMoveOnce:hover {
  opacity: 1;
  -webkit-animation: hovreActionButtonColorMoveOnce 0.3s forwards;
  animation: hovreActionButtonColorMoveOnce 0.3s forwards;
}
body:not(.-is-touch) .hovreActionButtonColorMoveOnce:hover::before {
  -webkit-animation: hovreActionButtonColorMoveOnce-in 0.15s forwards alternate,
    hovreActionButtonColorMoveOnce-out 0.15s 0.15s forwards alternate;
  animation: hovreActionButtonColorMoveOnce-in 0.15s forwards alternate,
    hovreActionButtonColorMoveOnce-out 0.15s 0.15s forwards alternate;
}
@-webkit-keyframes hovreActionButtonColorMoveOnce {
  0%,
  100% {
    color: #111;
  }
  50% {
    color: #fff;
  }
}
@keyframes hovreActionButtonColorMoveOnce {
  0%,
  100% {
    color: #111;
  }
  50% {
    color: #fff;
  }
}
@-webkit-keyframes hovreActionButtonColorMoveOnce-in {
  0% {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
  100% {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}
@keyframes hovreActionButtonColorMoveOnce-in {
  0% {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
  100% {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}
@-webkit-keyframes hovreActionButtonColorMoveOnce-out {
  0% {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  100% {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
}
@keyframes hovreActionButtonColorMoveOnce-out {
  0% {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  100% {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
  }
}
.hovreActionMarker > * {
  position: relative;
  line-height: 1;
  padding: 0.5em 0.3em;
}
.hovreActionMarker > *::after {
  content: "";
  display: block;
  left: 0;
  top: 0;
  position: absolute;
  width: 0;
  background-color: #111;
  /* width: 100%; */
  height: 100%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: -1;
}
body:not(.-is-touch) .hovreActionMarker > *:hover::after {
  width: 100%;
}
body:not(.-is-touch) .hovreActionMarker > *:hover a {
  color: #fff;
}

/* footerのマーカー */
#menuSp .nav01Head01 {
  display: inline-block;
}
#menuSp .nav01Head01,
#menuSp .nav01Ul02 > li.hasChild > a,
#menuSp .nav01Ul02 > li:not(.hasChild),
#menuSp .nav01Ul03 > li:not(.hasChild) {
  position: relative;
  line-height: 1;
  padding: 0.5em 0.3em;
}
#menuSp .nav01Head01::after,
#menuSp .nav01Ul02 > li.hasChild > a::after,
#menuSp .nav01Ul02 > li:not(.hasChild)::after,
#menuSp .nav01Ul03 > li:not(.hasChild)::after {
  content: "";
  display: block;
  left: 0;
  top: 0;
  position: absolute;
  width: 0;
  background-color: #fff;
  /* width: 100%; */
  height: 100%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: -1;
}
body:not(.-is-touch) #menuSp .nav01Head01:hover::after,
body:not(.-is-touch) #menuSp .nav01Ul02 > li.hasChild > a:hover::after,
body:not(.-is-touch) #menuSp .nav01Ul02 > li:not(.hasChild):hover::after,
body:not(.-is-touch) #menuSp .nav01Ul03 > li:not(.hasChild):hover::after {
  width: 100%;
}
body:not(.-is-touch) #menuSp .nav01Head01:hover a,
body:not(.-is-touch) #menuSp .nav01Ul02 > li.hasChild > a:hover,
body:not(.-is-touch) #menuSp .nav01Ul02 > li:not(.hasChild):hover a,
body:not(.-is-touch) #menuSp .nav01Ul03 > li:not(.hasChild):hover a {
  color: #111;
}

/* footerのマーカー（記事ページ） */
#footer .nav01Head01 {
  display: inline-block;
}
#footer .nav01Head01,
#footer .nav01Ul02 > li.hasChild > a,
#footer .nav01Ul02 > li:not(.hasChild),
#footer .nav01Ul03 > li:not(.hasChild) {
  position: relative;
  line-height: 1;
  padding: 0.5em 0.3em;
  z-index: 2;
}
#footer .nav01Head01::after,
#footer .nav01Ul02 > li.hasChild > a::after,
#footer .nav01Ul02 > li:not(.hasChild)::after,
#footer .nav01Ul03 > li:not(.hasChild)::after {
  content: "";
  display: block;
  left: 0;
  top: 0;
  position: absolute;
  width: 0;
  background-color: #000;
  height: 100%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: -1;
}
body:not(.-is-touch) #footer .nav01Head01:hover::after,
body:not(.-is-touch) #footer .nav01Ul02 > li.hasChild > a:hover::after,
body:not(.-is-touch) #footer .nav01Ul02 > li:not(.hasChild):hover::after,
body:not(.-is-touch) #footer .nav01Ul03 > li:not(.hasChild):hover::after {
  width: 100%;
}
body:not(.-is-touch) #footer .nav01Head01:hover a,
body:not(.-is-touch) #footer .nav01Ul02 > li.hasChild > a:hover,
body:not(.-is-touch) #footer .nav01Ul02 > li:not(.hasChild):hover a,
body:not(.-is-touch) #footer .nav01Ul03 > li:not(.hasChild):hover a {
  color: #fff;
}

.lineHead01 {
  display: -webkit-box !important;
  display: flex !important;
  -webkit-box-align: start;
  align-items: flex-start;
  position: relative;
}
.lineHead01 .lineHead {
  display: block;
  content: "";
  background-color: #222;
  width: 12px;
  height: 2px;
  margin-right: 8px;
  margin-top: 0.6em;
  overflow: hidden;
  position: relative;
}
.lineHead01 .lineHead::after {
  display: block;
  content: "";
  background-color: #fff;
  width: 12px;
  height: 2px;
  margin-right: 8px;
  z-index: 2;
  position: absolute;
  left: -12px;
  -webkit-transition: left 0.2s ease-in-out;
  transition: left 0.2s ease-in-out;
}
body:not(.-is-touch) a:hover .lineHead01 .lineHead::after {
  left: 12px;
}
/* scrollLine01 */
.scrollLine01 {
  position: relative;
  width: 50px;
  height: 1px;
  overflow: hidden;
  z-index: 4;
  margin-right: 17px;
}
.headMod01 .scrollLine01 {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

.scrollLine01:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 50px;
  height: 1px;
}
.scrollLine01:before {
  background-color: #000;
  z-index: 10;
  -webkit-animation: scroll 3s infinite ease-in;
  animation: scroll 3s infinite ease-in;
}
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  5% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  92% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  94% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  5% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  92% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  94% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

/* cursor stoker */
.-is-pc .magic-cursor {
  display: block;
}
.-is-touch .magic-cursor {
  display: none;
}

.magic-cursor {
  position: absolute;
  width: 30px;
  height: 30px;
  z-index: 10000;
  pointer-events: none;
  display: block;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.magic-cursor.-is-hover .magic-cursor__ball {
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 110px;
  height: 22px;
  background-color: #16f0f1;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.magic-cursor__ball div {
  display: none;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
/* .magic-cursor.-is-hover .magic-cursor__ball div { */
.magic-cursor.-is-hover .magic-cursor__ball div {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  justify-content: space-between;
  /* content: "watch more"; */
  color: #000;
  /* display: block; */
  height: 100%;
  font-size: 10px;
  pointer-events: none;
  opacity: 1;
}
.magic-cursor.-is-hover .magic-cursor__ball div span {
  display: block;
  -webkit-box-flex: 1;
  flex: 1;
  text-align: center;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.magic-cursor__ball div:before,
.magic-cursor__ball div:after {
  content: "";
  display: block;
  width: 17px;
  height: 10px;
  background: url(img_cmn/icn_arrow_02.svg) no-repeat 50%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.magic-cursor__ball div:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.magic-cursor.-is-drag .magic-cursor__ball div span {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}
.magic-cursor.-is-drag .magic-cursor__ball div:before,
.magic-cursor.-is-drag .magic-cursor__ball div:after {
  width: 12px;
}

/* yahoo_ad_post */
.yahoo_ad_post.pc{
  display: flex;
  justify-content: space-around;
  margin: 30px 0;
}

/* yahoo ad */
.yahoo_ad_warp{
  display: none;
}
.yahoo_ad_warp.-is-view{
  display: block;
}
.yahoo_ad.pc{
  display: flex;
  justify-content: space-around;
  margin: 30px 0;
}
@media screen and (max-width: 767px) {
  /* yahoo_ad_post */
  .yahoo_ad_post{
    margin: 28px 0;
  }
  .yahoo_ad_post.pc{
    display: none;
  }

  .yahoo_ad.pc{
    display: none;
  }
  .yahoo_ad.sp{
    margin: 0 0 30px 0;
  }
}

/* Print
------------------------------------------ */
@media print {
  /* All */
  html {
    overflow: visible;
  }
}
