
@import url("https://fonts.googleapis.com/css?family=Noto+Sans:400,700");
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap');
@import url("https://fonts.googleapis.com/css?family=Fjalla+One");

@charset "UTF-8";
*, *:before, *:after {
  border: 0;
  box-sizing: border-box;
  margin: 0;
  outline: 0;
  padding: 0;
  color: inherit;
  font-size: 100%;
  font: inherit;
  text-decoration: none;
  vertical-align: baseline; }

article, aside, details, dialog, figcaption, figure, footer, header, main, menu, nav, section {
  display: block; }

audio, canvas, video {
  display: inline-block; }

body {
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%; }
body.nav-fixed {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
}
br, hr {
  display: block; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none; }

input, select {
  vertical-align: middle; }

img {
  vertical-align: top;
  max-width: 100% !important }

table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show; }

/* --------------------------------------------------
 00:  Utility Style
 -------------------------------------------------- */
/* float */
.fl {
  float: left !important; }

.fr {
  float: right !important; }

/* align */
.taL {
  text-align: left !important; }

.taR {
  text-align: right !important; }

.taC {
  text-align: center !important; }

/* size */
.txXS {
  font-size: 10rem !important; }

.txSS {
  font-size: 11rem !important; }

.txS {
  font-size: 12rem !important; }

.txM {
  font-size: 13rem !important; }

.txL {
  font-size: 16rem !important; }

.txLL {
  font-size: 18rem !important; }

.txXL {
  font-size: 20rem !important; }

/* Margin Padding */
.noMargin {
  margin: 0 !important; }

.noPadding {
  padding: 0 !important; }

.mt0 {
  margin-top: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.mt5 {
  margin-top: 5px !important; }

.mb5 {
  margin-bottom: 5px !important; }

.pt5 {
  padding-top: 5px !important; }

.pb5 {
  padding-bottom: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.pt10 {
  padding-top: 10px !important; }

.pb10 {
  padding-bottom: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.pt15 {
  padding-top: 15px !important; }

.pb15 {
  padding-bottom: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.pt20 {
  padding-top: 20px !important; }

.pb20 {
  padding-bottom: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.pt25 {
  padding-top: 25px !important; }

.pb25 {
  padding-bottom: 25px !important; }

.mt30 {
  margin-top: 30px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.pt30 {
  padding-top: 30px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mb35 {
  margin-bottom: 35px !important; }

.pt35 {
  padding-top: 35px !important; }

.pb35 {
  padding-bottom: 35px !important; }

.mt40 {
  margin-top: 40px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.pt40 {
  padding-top: 40px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.mt45 {
  margin-top: 45px !important; }

.mb45 {
  margin-bottom: 45px !important; }

.pt45 {
  padding-top: 45px !important; }

.pb45 {
  padding-bottom: 45px !important; }

.mt50 {
  margin-top: 50px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.pt50 {
  padding-top: 50px !important; }

.pb50 {
  padding-bottom: 50px !important; }

/* Clear */
.clr {
  clear: both; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

/* display */
@media only screen and (max-width: 1199px) {
  .pc-only {
    display: none; } }

.sp-only {
  display: none; }
  @media only screen and (max-width: 1199px) {
    .sp-only {
      display: block; } }

html {
  font-size: 100%;
  color: #1b1b1b;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -webkit-font-smoothing: antialiased; }

body {
  font-family: "Noto Sans JP", "Noto Sans", "游ゴシック体", "Yu Gothic", YuGothic, Helvetica, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-size: 14px;
  line-height: 1.6; }
  @media screen and (min-width: 768px), print {
    body {
      overflow-x: hidden; } }
  @media screen and (max-width: 767px), print {
    body {
      font-size: 11px; } }

input,
select,
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border-radius: 0;
  border: 0;
  font-size: 100%;
  vertical-align: middle; }

select {
  background-color: transparent;
  text-indent: .01px;
  text-overflow: ""; }

textarea {
  font-size: 100%; }

em {
  font-style: normal; }

strong {
  font-weight: bold; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }
  @media screen and (max-width: 767px), print {
    img {
      width: 100%;
      display: block; } }

sup {
  vertical-align: super;
  font-size: smaller; }

sub {
  vertical-align: sub;
  font-size: smaller; }

a {
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: white;
  /* z-index: 10; */
  z-index: 30;
  border-bottom: 1px solid #bfbfbf; }
  @media screen and (min-width: 1200px), print {
    .header {
      height: 72px; } }
  @media screen and (max-width: 1199px), print {
    .header {
      height: 48px; } }
  .header .inner {
    max-width: 1024px;
    margin: 0 auto; }
    @media screen and (max-width: 1199px), print {
      .header .inner {
        position: relative;
        width: 100%; } }
  .header .headerlogo {
    position: absolute;
    z-index: 1; }
    @media screen and (min-width: 1200px), print {
      .header .headerlogo {
        width: 100px;
        left: 32px;
        top: 0; } }
    @media screen and (max-width: 1199px), print {
      .header .headerlogo {
        /* width: 64px; */
        width: 48px;
      } }

      .header .headerlogo_title {
        position: absolute;
        display: flex;
        align-items: center;
        top: 0;
        height: 100%;
        font-size: 60%;
        font-weight: bold;
      }
      @media screen and (min-width: 1200px), print {
        .header .headerlogo_title {
          left: 80px;
          width: 8.5vw;
        }
      }
      @media screen and (max-width: 1199px), print {
        .header .headerlogo_title {
          left: 56px;
          width: 200px;
        }
      }

  .header .subnav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (min-width: 1200px), print {
      .header .subnav {
        margin-top: 17px;
        position: absolute;
        right: 32px; } }
    @media screen and (max-width: 1199px), print {
      .header .subnav {
        position: absolute;
        right: 47px;
        top: 5px; } }
    .header .subnav .search_btn {
      cursor: pointer;
      padding: 11px;
      display: block;
      line-height: 1; }
      @media screen and (max-width: 1199px), print {
        .header .subnav .search_btn {
          z-index: 2; } }
      @media screen and (min-width: 1200px), print {
        .header .subnav .search_btn img {
          width: 18px; } }
      @media screen and (max-width: 1199px), print {
        .header .subnav .search_btn img {
          width: 16px; } }
    @media screen and (max-width: 1199px), print {
      .header .subnav .select_country {
        display: none; } }
  .header__searchbox {
    display: none; }
  .header__countrybox {
    display: none;
    position: fixed;
    z-index: 20001;
    background: #000;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100vh; }
    @media screen and (min-width: 1200px), print {
      .header__countrybox {
        color: #1b1b1b; } }
    @media screen and (max-width: 1199px), print {
      .header__countrybox {
        padding: 20px 5vw 0;
        color: #fff;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch; } }
    @media screen and (min-width: 1200px), print {
      .header__countrybox__inner {
        max-width: 1040px;
        background: #fff;
        position: absolute !important;
        top: 10%;
        left: 9%;
        right: 9%;
        bottom: 10%;
        margin: 0 auto;
        border: 40px solid #fff;
        border-right-width: 15px; }
        .header__countrybox__inner .simplebar-track.horizontal {
          display: none; }
        .header__countrybox__inner .simplebar-scrollbar:before {
          background: #bfbfbf; } }
    @media screen and (max-width: 1199px), print {
      .header__countrybox__inner .simplebar-track {
        display: none; } }
    .header__countrybox .btn-close {
      z-index: 20000;
      position: absolute;
      right: 0;
      width: 48px;
      height: 48px;
      cursor: pointer;
      cursor: pointer; }
      @media screen and (min-width: 1200px), print {
        .header__countrybox .btn-close {
          right: 28px;
          top: 28px; } }
      @media screen and (max-width: 1199px), print {
        .header__countrybox .btn-close {
          right: 4px;
          top: 4px; } }
      .header__countrybox .btn-close > span {
        position: absolute;
        left: 0;
        right: 0;
        width: 38px;
        height: 2px;
        margin: 0 auto;
        background: #fff; }
        .header__countrybox .btn-close > span:nth-child(1) {
          top: 23px;
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg); }
        .header__countrybox .btn-close > span:nth-child(2) {
          top: 23px;
          -webkit-transform: rotate(135deg);
                  transform: rotate(135deg); }
    .header__countrybox h5 {
      font-family: "Fjalla One", sans-serif;
      line-height: 1; }
      @media screen and (min-width: 1200px), print {
        .header__countrybox h5 {
          font-size: 30px;
          margin-bottom: 44px; } }
      @media screen and (max-width: 1199px), print {
        .header__countrybox h5 {
          font-size: 16px;
          margin-bottom: 44px; } }
    @media screen and (min-width: 1200px), print {
      .header__countrybox > ul {
        margin-right: 25px; } }
    .header__countrybox .toggle {
      line-height: 1;
      display: block;
      position: relative;
      font-weight: bold; }
      @media screen and (min-width: 1200px), print {
        .header__countrybox .toggle {
          font-size: 24px;
          padding-bottom: 20px;
          margin-bottom: 22px;
          border-bottom: 2px solid #bfbfbf;
          margin-right: 25px; } }
      /* @media screen and (max-width: 767px), print { */
      @media screen and (max-width: 1199px), print {
        .header__countrybox .toggle {
          width: 90.2vw;
          font-size: 20px;
          padding-bottom: 16px;
          padding-top: 16px;
          border-bottom: 1px solid #fff; } }
      .header__countrybox .toggle:before {
        content: ""; }
        @media screen and (min-width: 1200px), print {
          .header__countrybox .toggle:before {
            background: #1b1b1b;
            height: 2px;
            width: 244px;
            position: absolute;
            bottom: -2px;
            left: 0; } }
        @media screen and (max-width: 1199px), print {
          .header__countrybox .toggle:before {
            width: 6px;
            height: 6px;
            border-top: 2px solid #fff;
            border-right: 2px solid #fff;
            position: absolute;
            display: block;
            right: 2px;
            top: 50%;
            -webkit-transform: translate(0, -50%) rotate(135deg);
                    transform: translate(0, -50%) rotate(135deg);
            transition: .25s; } }
      .header__countrybox .toggle:after {
        display: none; }
      @media screen and (max-width: 1199px), print {
        .header__countrybox .toggle.on:before {
          -webkit-transform: translate(0, -50%) rotate(-45deg);
                  transform: translate(0, -50%) rotate(-45deg); } }
      .header__countrybox .toggle:hover {
        text-decoration: none; }
    @media screen and (max-width: 1199px), print {
      .header__countrybox__lowerpage {
        display: none; } }
    .header__countrybox__lowerpage ul {
      padding-top: 4px;
      margin-bottom: 40px; }
    .header__countrybox__lowerpage li {
      overflow: hidden; }
      @media screen and (min-width: 1200px), print {
        .header__countrybox__lowerpage li {
          display: inline-block;
          min-width: 115px;
          padding-right: 15px;
          margin-bottom: 20px; } }
      @media screen and (max-width: 1199px), print {
        .header__countrybox__lowerpage li {
          width: 100%;
          margin-top: 20px; } }
      .header__countrybox__lowerpage li img {
        width: 24px;
        height: auto;
        display: inline-block;
        vertical-align: top; }
      .header__countrybox__lowerpage li p {
        display: inline-block;
        line-height: 1;
        text-transform: capitalize;
        vertical-align: top; }
        @media screen and (min-width: 1200px), print {
          .header__countrybox__lowerpage li p {
            padding-left: 4px;
            padding-top: 3px;
            font-size: 12px; } }
        @media screen and (max-width: 1199px), print {
          .header__countrybox__lowerpage li p {
            font-weight: bold;
            font-size: 14px;
            padding-left: 8px; } }
      .header__countrybox__lowerpage li.multi a {
        text-decoration: underline; }

.select_country {
  font-family: "Fjalla One", sans-serif;
  padding-left: 15px;
  padding-top: 8px;
  vertical-align: middle;
  position: relative;
  cursor: pointer;
  text-align: center; }
  .select_country img {
    width: 24px;
    height: auto;
    display: inline-block;
    -webkit-transform: translate(0, -1px);
            transform: translate(0, -1px); }
  .select_country p {
    font-size: 12px;
    padding-right: 14px;
    padding-left: 9px;
    display: inline-block;
    -webkit-transform: translate(0, 1px);
            transform: translate(0, 1px);
    position: relative;
    color: #1b1b1b; }
    .select_country p:after {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 0;
      top: 4px;
      -webkit-transform: rotate(135deg);
              transform: rotate(135deg); }

.globalnav {
  color: #fff; }
  @media screen and (min-width: 1200px), print {
    .globalnav {
      /* width: 760px; */
      /* width: 800px; */
      display: block;
      margin: 0 auto; } }
  @media screen and (max-width: 1199px), print {
    .globalnav {
      position: absolute;
      top: 15px;
      height: 0;
      top: 0;
      width: 100%;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch;
      transition: height 0.5s cubic-bezier(0.67, 0, 0.11, 1.01); }
      .globalnav.on {
        height: 100vh; } }
  .globalnav__inner {
    background: #fff; }
    @media screen and (max-width: 1199px), print {
      .globalnav__inner {
        padding-top: 48px;
        padding-bottom: 80px; } }
    @media screen and (min-width: 1200px), print {
      .globalnav__inner > ul {
        text-align: center;
        display: block;
        font-size: 0; } }
    @media screen and (max-width: 1199px), print {
      .globalnav__inner > ul {
        overflow: hidden;
        width: 100%;
        padding: 28px 48px 30px; } }
    .globalnav__inner > ul > li {
      position: relative; }
      @media screen and (min-width: 1200px), print {
        .globalnav__inner > ul > li {
          display: inline-block;
          margin: 0 16px; }
          .globalnav__inner > ul > li:hover > a {
            color: #bd081c;
            text-decoration: none; }
            .globalnav__inner > ul > li:hover > a:after {
              display: block; }
        .globalnav__inner > ul > li:nth-last-child(2):before {
          content: "";
          width: 0;
          height: 20px;
          display: block;
          position: absolute;
          bottom: 22px;
          left: -16px;
          border-left: 1px solid #bfbfbf;
        }
      }
      @media screen and (max-width: 1300px), print {
        .globalnav__inner > ul > li {
          margin: 0 12px; }}
      @media screen and (max-width: 1199px), print {
        .globalnav__inner > ul > li {
          margin: 0;
          display: block;
          border-bottom: 1px solid #bfbfbf; } }
      .globalnav__inner > ul > li > a {
        color: #1b1b1b;
        display: block;
        font-family: "Fjalla One", sans-serif; }
        @media screen and (min-width: 1200px), print {
          .globalnav__inner > ul > li > a {
            font-size: 16px;
            padding: 25px 0 0;
            height: 71px;
            position: relative; }
            .globalnav__inner > ul > li > a:after {
              content: "";
              height: 2px;
              width: 100%;
              background: #bd081c;
              bottom: 20px;
              left: 0;
              position: absolute;
              display: none; } }
        @media screen and (max-width: 1199px), print {
          .globalnav__inner > ul > li > a {
            font-size: 20px;
            display: block;
            width: 100%;
            padding: 20px 0px;
            line-height: 1;
            position: relative; }
            .globalnav__inner > ul > li > a:before {
              content: "";
              width: 6px;
              height: 6px;
              border-top: 2px solid #1b1b1b;
              border-right: 2px solid #1b1b1b;
              position: absolute;
              display: block;
              right: 5px;
              top: 50%;
              -webkit-transform: translate(0, -50%) rotate(45deg);
                      transform: translate(0, -50%) rotate(45deg); }
            .globalnav__inner > ul > li > a:after {
              content: "";
              width: 6px;
              height: 6px;
              border-top: 2px solid #1b1b1b;
              border-right: 2px solid #1b1b1b;
              position: absolute;
              display: block;
              right: 10px;
              top: 50%;
              -webkit-transform: translate(0, -50%) rotate(45deg);
                      transform: translate(0, -50%) rotate(45deg); }
            .globalnav__inner > ul > li > a.toggle:before {
              content: "";
              width: 6px;
              height: 6px;
              border-top: 2px solid #1b1b1b;
              border-right: 2px solid #1b1b1b;
              position: absolute;
              display: block;
              right: 2px;
              top: 50%;
              -webkit-transform: translate(0, -50%) rotate(135deg);
                      transform: translate(0, -50%) rotate(135deg);
              transition: .25s; }
            .globalnav__inner > ul > li > a.toggle:after {
              display: none; }
            .globalnav__inner > ul > li > a.toggle.on:before {
              -webkit-transform: translate(0, -50%) rotate(-45deg);
                      transform: translate(0, -50%) rotate(-45deg); }
            .globalnav__inner > ul > li > a:hover {
              text-decoration: none; } }
      @media screen and (min-width: 1200px), print {
        .globalnav__inner > ul > li:hover .globalnav__lowerpage {
          height: auto;
          padding: 15px 25px; } }
    .globalnav__inner .select_country {
      margin-bottom: 50px;
      padding: 0; }
      .globalnav__inner .select_country:before {
        display: none; }
      .globalnav__inner .select_country img {
        -webkit-transform: translate(0, -3px);
                transform: translate(0, -3px); }
      .globalnav__inner .select_country p {
        font-size: 16px; }
        .globalnav__inner .select_country p:after {
          top: 8px; }
      @media screen and (min-width: 1200px), print {
        .globalnav__inner .select_country {
          width: 115px; } }
    .globalnav__inner .copy {
      color: #1b1b1b;
      font-size: 10px;
      text-align: center;
      font-weight: bold; }
  @media screen and (min-width: 1200px), print {
    .globalnav__lowerpage {
      height: 0px;
      padding: 0 25px;
      transition: all 0.25s cubic-bezier(0.13, 0.63, 0.18, 1);
      overflow: hidden;
      position: absolute;
      background: #1b1b1b;
      margin-top: -12px;
      -webkit-transform: translate(-50%, 0);
              transform: translate(-50%, 0);
      left: 50%;
      white-space: nowrap; } }
  @media screen and (max-width: 1199px), print {
    .globalnav__lowerpage {
      padding: 20px 0;
      border-top: 1px solid #bfbfbf;
      display: none; } }
  .globalnav__lowerpage ul {
    max-width: 900px;
    margin: 0 auto; }
  .globalnav__lowerpage li {
    margin-bottom: 5px;
    display: block; }
    .globalnav__lowerpage li:last-child {
      margin-bottom: 0; }
    @media screen and (min-width: 1200px), print {
      .globalnav__lowerpage li.sp-only {
        display: none; } }
  .globalnav__lowerpage a {
    display: block;
    width: 100%;
    text-align: left;
    font-weight: bold;
    font-size: 14px; }
    @media screen and (min-width: 1200px), print {
      .globalnav__lowerpage a {
        color: #fff; }
        .globalnav__lowerpage a:hover {
          color: #bd081c; } }
    @media screen and (max-width: 1199px), print {
      .globalnav__lowerpage a {
        color: #1b1b1b; } }

.btn-menu {
  z-index: 20000;
  position: absolute;
  right: 0;
  width: 48px;
  height: 48px;
  cursor: pointer;
  display: none; }
  @media screen and (max-width: 1199px), print {
    .btn-menu {
      display: block; } }
  .btn-menu:before {
    content: "";
    width: 1px;
    height: 8px;
    background: #bfbfbf;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%); }
  .btn-menu > span {
    position: absolute;
    left: 0;
    right: 0;
    width: 16px;
    height: 2px;
    margin: 0 auto;
    background: #000;
    transition: .25s; }
    .btn-menu > span:nth-child(1) {
      top: 17px; }
    .btn-menu > span:nth-child(2) {
      top: 23px; }
    .btn-menu > span:nth-child(3) {
      top: 29px; }
  .btn-menu.on span:nth-child(1) {
    top: 23px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  .btn-menu.on span:nth-child(2) {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }
  .btn-menu.on span:nth-child(3) {
    top: 23px;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg); }

main {
  max-width: 1920px;
  width: 100%;
  margin: 0 auto; }

  @media screen and (max-width: 767px), print {
    main {
      position: relative;
    }
  }

#pagetop {
  display: block;
  border-radius: 50%;
  background-color: black;
  box-shadow: 0px 0px 9.6px 0.4px rgba(0, 0, 0, 0.32);
  position: relative; }
  @media screen and (min-width: 768px), print {
    #pagetop {
      width: 64px;
      height: 64px;
      margin: 0 auto -32px;
      transition: .25s; }
      #pagetop:hover {
        -webkit-transform: translate(0, -8px);
                transform: translate(0, -8px); } }
  @media screen and (max-width: 767px), print {
    #pagetop {
      width: 48px;
      height: 48px;
      margin: 0 auto -24px; } }
  #pagetop:after {
    content: "";
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transform-origin: center;
            transform-origin: center;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 45%; }
    @media screen and (min-width: 768px), print {
      #pagetop:after {
        width: 12px;
        height: 12px; } }
    @media screen and (max-width: 767px), print {
      #pagetop:after {
        width: 8px;
        height: 8px; } }

.crumb {
  overflow: hidden;
  width: 100%;
  display: block; }
  @media screen and (min-width: 768px), print {
    .crumb {
      max-height: 2.2em; } }
  @media screen and (max-width: 767px), print {
    .crumb {
      max-height: 4.4em; } }
  .crumb.over {
    position: relative; }
    .crumb.over:after {
      content: "...";
      position: absolute;
      right: 0.3em;
      background: #1b1b1b;
      padding-left: 0.5em; }
      @media screen and (min-width: 768px), print {
        .crumb.over:after {
          bottom: 0.3em; } }
      @media screen and (max-width: 767px), print {
        .crumb.over:after {
          bottom: 0.6em; } }
  .crumb__links {
    line-height: 2em;
    word-break: break-all; }
    @media screen and (min-width: 768px), print {
      .crumb__links {
        font-size: 14px; } }
    .crumb__links a {
      display: inline;
      margin-right: 2.3em;
      position: relative;
      text-decoration: underline; }
      .crumb__links a:after {
        content: "";
        width: 4px;
        height: 4px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        position: absolute;
        right: -1.2em;
        top: 50%; }
        @media screen and (min-width: 768px), print {
          .crumb__links a:after {
            -webkit-transform: translate(0, 0) rotate(45deg);
                    transform: translate(0, 0) rotate(45deg); } }
        @media screen and (max-width: 767px), print {
          .crumb__links a:after {
            -webkit-transform: translate(0, -50%) rotate(45deg);
                    transform: translate(0, -50%) rotate(45deg); } }
      @media screen and (min-width: 768px), print {
        .crumb__links a:hover {
          text-decoration: none; } }

.footer {
  background-color: #1b1b1b;
  color: #fff; }
  @media screen and (min-width: 768px), print {
    .footer {
      padding-top: 60px; } }
  @media screen and (max-width: 767px), print {
    .footer {
      padding-top: 50px; } }
  .footer .inner {
    margin: 0 auto;
    max-width: 1280px; }
    @media screen and (min-width: 768px), print {
      .footer .inner {
        padding: 0 40px; } }
    @media screen and (max-width: 767px), print {
      .footer .inner {
        padding: 0 16px; } }
  .footer__category_main {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333; }
    @media screen and (min-width: 768px), print {
      .footer__category_main {
        padding-top: 17px;
        margin-top: 17px; } }
    @media screen and (max-width: 767px), print {
      .footer__category_main {
        padding-top: 22px;
        margin-top: 17px;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    @media screen and (min-width: 768px), print {
      .footer__category_main dl {
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        width: 100%; } }
    @media screen and (min-width: 768px), print {
      .footer__category_main dl:nth-child(2) {
        margin: 0 50px; } }
    @media screen and (max-width: 767px), print {
      .footer__category_main dl:nth-child(2) {
        margin: 0 15px; } }
    .footer__category_main dt {
      font-family: "Fjalla One", sans-serif;
      text-align: center;
      border-bottom: 1px solid #333; }
      @media screen and (min-width: 768px), print {
        .footer__category_main dt {
          font-size: 20px;
          padding-bottom: 15px; } }
      @media screen and (max-width: 767px), print {
        .footer__category_main dt {
          font-size: 18px;
          padding-bottom: 22px; } }
    .footer__category_main dd {
      padding: 20px 0;
      font-size: 14px; }
      @media screen and (max-width: 767px), print {
        .footer__category_main dd {
          display: none; } }
      .footer__category_main dd li {
        list-style: none; }
    .footer__category_main a {
      display: block;
      word-break: break-all; }
      @media screen and (max-width: 767px), print {
        .footer__category_main a {
          margin-bottom: 0.4em; } }
      .footer__category_main a:last-child {
        margin-bottom: 0; }
  .footer__category_sub {
    text-align: center;
    padding-bottom: 30px; }
    @media screen and (min-width: 768px), print {
      .footer__category_sub {
        margin-top: 40px; } }
    @media screen and (max-width: 767px), print {
      .footer__category_sub {
        margin-top: 25px; } }
    .footer__category_sub li {
      display: inline-block; }
      @media screen and (min-width: 768px), print {
        .footer__category_sub li {
          margin: 0 1em; } }
      @media screen and (max-width: 767px), print {
        .footer__category_sub li {
          margin: 0 8px; } }
    .footer__category_sub a {
      font-size: 20px;
      font-family: "Fjalla One", sans-serif;
      text-align: center; }
      @media screen and (min-width: 768px), print {
        .footer__category_sub a {
          font-size: 20px; } }
      @media screen and (max-width: 767px), print {
        .footer__category_sub a {
          font-size: 18px; } }
  .footer .sns_area {
    padding-bottom: 35px; }
    @media screen and (min-width: 768px), print {
      .footer .sns_area {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    @media screen and (min-width: 768px), print {
      .footer .sns_area__local {
        /* 2019/04/10 START */
        width: 50%;
        /* 2019/04/10 E N D */
        border-right: 1px solid #333;
        padding-right: 10px; }
      /* 2019/04/10 START */
      .footer .sns_area__local b, .footer .sns_area__local ul {
        text-align: right !important; }
      /* 2019/04/10 E N D */
    }
    @media screen and (max-width: 767px), print {
      .footer .sns_area__local {
        margin-bottom: 14px;
        padding-bottom: 16px;
        position: relative; }
        .footer .sns_area__local:after {
          content: "";
          height: 1px;
          width: 24px;
          background: #333;
          position: absolute;
          left: 0;
          right: 0;
          bottom: 0;
          margin: 0 auto; }
      /* 2019/04/10 START */
      .footer .sns_area__local b, .footer .sns_area__local ul {
        text-align: center !important; }
      /* 2019/04/10 E N D */
    }
    @media screen and (min-width: 768px), print {
      .footer .sns_area__world {
        /* 2019/04/10 START */
        width: 50%;
        /* 2019/04/10 E N D */
        padding-left: 10px; }
      /* 2019/04/10 START */
      .footer .sns_area__world b, .footer .sns_area__world ul {
        text-align: left !important; }
      /* 2019/04/10 E N D */
    }
    .footer .sns_area li {
      display: inline-block;
      list-style: none;
      width: 40px;
      height: 40px;
      margin: 0 2px; }
      .footer .sns_area li a {
        display: block;
        width: 40px;
        height: 40px;
        background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_other.svg) center no-repeat;
        background-size: 20px 20px; }
        .footer .sns_area li a.facebook {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_facebook.svg) center no-repeat;
          background-size: 25px 25px; }
        .footer .sns_area li a.twitter {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_twitter.svg) center no-repeat;
          background-size: 40px 40px; }
        .footer .sns_area li a.instagram {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_instagram.svg) center no-repeat;
          background-size: 24px 24px; }
        .footer .sns_area li a.youtube {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_youtube.svg) center no-repeat;
          background-size: 30px 21px; }
        .footer .sns_area li a.pinterest {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_pinterest.svg) center no-repeat;
          background-size: 25px 25px; }
        .footer .sns_area li a.googleplus {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_gplus.svg) center no-repeat;
          background-size: 40px 23px; }
        /* 2019/04/09 START */
        .footer .sns_area li a.giphy {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_giphy.svg) center no-repeat;
          background-size: 40px 23px; }
        .footer .sns_area li a.line {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_line.svg) center no-repeat;
          background-size: 40px 23px; }
        .footer .sns_area li a.vk {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_vk.svg) center no-repeat;
          background-size: 40px 23px; }
        .footer .sns_area li a.wechat {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_wechat.svg) center no-repeat;
          background-size: 40px 23px; }
        .footer .sns_area li a.weibo {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_weibo.svg) center no-repeat;
          background-size: 40px 23px; }
        .footer .sns_area li a.whatsapp {
          background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/footer_icn/icn_whatsapp.svg) center no-repeat;
          background-size: 40px 23px; }
        /* 2019/04/09 E N D */
    .footer .sns_area b {
      font-size: 14px;
      font-family: "Fjalla One", sans-serif;
      text-align: center;
      display: block;
      margin-bottom: 10px;
      letter-spacing: 0.1em; }
  .footer__bottom {
    background: #000;
    padding: 30px 0;
    position: relative; }
    .footer__bottom_links {
      padding: 0 40px; }
      @media screen and (min-width: 768px), print {
        .footer__bottom_links {
          text-align: right;
          margin: 0 auto; } }
      @media screen and (max-width: 767px), print {
        .footer__bottom_links {
          text-align: center;
          margin: 0 auto 10px; } }
      .footer__bottom_links li {
        display: inline-block;
        position: relative; }
        @media screen and (min-width: 768px), print {
          .footer__bottom_links li {
            margin: 0 12px;
            text-align: right; }
            .footer__bottom_links li:after {
              content: "";
              height: 0.8em;
              width: 1px;
              background: #333;
              left: -15px;
              top: 0.4em;
              position: absolute; } }
        @media screen and (max-width: 767px), print {
          .footer__bottom_links li {
            margin: 0 8px 10px;
            text-align: center; } }
        .footer__bottom_links li:first-child:after {
          display: none; }
      .footer__bottom_links a {
        font-size: 12px;
        font-weight: bold; }
    .footer__bottom_copy {
      margin: 0 auto;
      max-width: 1280px;
      font-size: 10px;
      width: 100%; }
      @media screen and (min-width: 768px), print {
        .footer__bottom_copy {
          top: 41px;
          position: absolute; } }
      .footer__bottom_copy p {
        display: block; }
        @media screen and (min-width: 768px), print {
          .footer__bottom_copy p {
            left: 40px;
            position: absolute;
            top: 50%;
            -webkit-transform: translate(0, -50%);
                    transform: translate(0, -50%); } }
        @media screen and (max-width: 767px), print {
          .footer__bottom_copy p {
            text-align: center; } }
      @media screen and (min-width: 768px), print {
        .footer__bottom_copy a {
          display: inline-block; } }
      @media screen and (max-width: 767px), print {
        .footer__bottom_copy a {
          display: block;
          width: 82px;
          margin: 0 auto; } }
      @media screen and (min-width: 768px), print {
        .footer__bottom_copy span {
          vertical-align: top;
          margin-top: 4px;
          margin-left: 20px;
          display: inline-block; } }
      @media screen and (max-width: 767px), print {
        .footer__bottom_copy span {
          margin-top: 20px;
          display: block; } }
  @media screen and (max-width: 767px), print {
    .footer .inner {
      margin: 0 auto;
      width: 100%; }
    .footer .copy {
      padding-right: 0;
      text-align: center; } }

.wp_btn.wp_btn__footer {
  background: transparent;
  border: 1px solid #fff;
  display: inline-block;
  padding: 0;
  width: auto; }
  @media screen and (max-width: 767px), print {
    .wp_btn.wp_btn__footer {
      margin-top: 30px; } }
  .wp_btn.wp_btn__footer a {
    display: block;
    padding: 0.2em 1.5em 0.3em;
    text-decoration: none; }

.modal_wrap.modal_form {
  background: #fff;
  max-height: initial; }
  @media screen and (min-width: 768px), print {
    .modal_wrap.modal_form {
      max-width: 1020px; }
      .modal_wrap.modal_form iframe {
        max-height: 610px; } }
  @media screen and (max-width: 767px), print {
    .modal_wrap.modal_form {
      max-height: 120vw !important;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch;
      z-index: 102 !important;}
    /* .modal_wrap.modal_form iframe {
      height: auto !important;}  */
    }

.icn_arrow {
  height: 5px;
  border-bottom: 1px solid #fff;
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  transition: all 0.25s cubic-bezier(0.6, 0.01, 0.19, 1); }
  @media screen and (min-width: 768px), print {
    .icn_arrow {
      width: 48px; } }
  @media screen and (max-width: 767px), print {
    .icn_arrow {
      width: 28px; } }
  .icn_arrow:before {
    content: "";
    width: 10px;
    height: 1px;
    background: #fff;
    position: absolute;
    -webkit-transform: rotate(35deg);
            transform: rotate(35deg);
    right: 0;
    bottom: 2px; }

.out {
  position: relative;
  padding-right: 10px; }
  .out:before {
    content: "";
    width: 6px;
    height: 6px;
    border: 1px solid #fff;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    margin-top: -1px;
    transition: background-color 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.1s; }
  .out:after {
    content: "";
    width: 6px;
    height: 6px;
    border: 1px solid #fff;
    position: absolute;
    right: 12px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    margin-top: 1px;
    transition: background-color 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.1s; }

.btn_map {
  display: block;
  background: #1b1b1b;
  color: #fff;
  text-decoration: none !important;
  text-align: center;
  font-weight: bold; }
  @media screen and (min-width: 768px), print {
    .btn_map {
      width: 88px;
      height: 40px;
      line-height: 40px; } }
  @media screen and (max-width: 767px), print {
    .btn_map {
      width: 67px;
      height: 32px;
      line-height: 33px; } }

.headline {
  font-weight: bold; }
  .headline_h1 {
    font-family: "Fjalla One", sans-serif;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .headline_h1 {
        font-size: 48px; } }
    @media screen and (max-width: 767px), print {
      .headline_h1 {
        font-size: 32px; } }
  .headline_h2 {
    font-family: "Fjalla One", sans-serif; }
    @media screen and (min-width: 768px), print {
      .headline_h2 {
        font-size: 30px; } }
    @media screen and (max-width: 767px), print {
      .headline_h2 {
        font-size: 20px; } }
  .headline_lv2 {
    border-bottom: none !important;
    font-family: "Fjalla One", sans-serif;
    font-weight: normal !important;
    line-height: 1.2; }
    @media screen and (min-width: 768px), print {
      .headline_lv2 {
        font-size: 40px;
        margin-bottom: 20px !important; } }
    @media screen and (max-width: 767px), print {
      .headline_lv2 {
        text-align: center;
        font-size: 16px;
        margin: 18px 0 !important; } }
    .headline_lv2:before {
      display: none !important; }
    .headline_lv2.type2 {
      border-bottom: 1px solid #1b1b1b; }
      @media screen and (min-width: 768px), print {
        .headline_lv2.type2 {
          font-size: 48px;
          margin-bottom: 40px;
          padding-bottom: 10px; } }
      @media screen and (max-width: 767px), print {
        .headline_lv2.type2 {
          font-size: 32px;
          margin-bottom: 20px;
          padding-bottom: 10px; } }
  .headline_h3 {
    font-family: "Fjalla One", sans-serif;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .headline_h3 {
        font-size: 26px; } }
    @media screen and (max-width: 767px), print {
      .headline_h3 {
        font-size: 18px; } }
  .headline_underline {
    margin-bottom: 18px;
    padding-bottom: 18px;
    position: relative; }
    .headline_underline:after {
      content: "";
      background: #000;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      margin: 0 auto; }
      @media screen and (min-width: 768px), print {
        .headline_underline:after {
          width: 24px;
          height: 2px; } }
      @media screen and (max-width: 767px), print {
        .headline_underline:after {
          width: 16px;
          height: 1px; } }
  .headline_dline {
    font-weight: bold;
    line-height: 1;
    border-bottom: 2px solid #bfbfbf;
    position: relative; }
    @media screen and (min-width: 768px), print {
      .headline_dline {
        font-size: 24px;
        padding-bottom: 20px; } }
    @media screen and (max-width: 767px), print {
      .headline_dline {
        font-size: 18px;
        padding-bottom: 18px; } }
    .headline_dline:before {
      content: "";
      position: absolute;
      height: 2px;
      background: #1b1b1b;
      bottom: -2px;
      left: 0; }
      @media screen and (min-width: 768px), print {
        .headline_dline:before {
          width: 306px; } }
      @media screen and (max-width: 767px), print {
        .headline_dline:before {
          width: 110px; } }
  .headline_lline {
    font-weight: bold;
    line-height: 1;
    border-left: 2px solid #1b1b1b; }
    @media screen and (min-width: 768px), print {
      .headline_lline {
        font-size: 20px;
        padding-left: 16px; } }
    @media screen and (max-width: 767px), print {
      .headline_lline {
        font-size: 16px;
        padding-left: 14px; } }

.section__title {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  /*上下中央*/ }
  @media screen and (min-width: 768px), print {
    .section__title {
      margin-bottom: 36px; } }
  @media screen and (max-width: 767px), print {
    .section__title {
      height: 55px;
      margin-bottom: 28px;
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      white-space: nowrap; } }
  @media screen and (max-width: 767px), print {
    .section__title .headline_h2 {
      position: absolute;
      left: 0;
      top: 0; } }
  .section__title .btn--more {
    font-family: "Fjalla One", sans-serif;
    line-height: 1;
    padding-top: 2px;
    position: absolute;
    right: 0; }
    @media screen and (min-width: 768px), print {
      .section__title .btn--more {
        top: 5px;
        font-size: 16px;
        padding-right: 22px; } }
    @media screen and (max-width: 767px), print {
      .section__title .btn--more {
        top: 2px;
        font-size: 12px;
        padding-right: 18px; } }
    .section__title .btn--more:hover {
      text-decoration: none;
      color: #bd081c; }
      .section__title .btn--more:hover:before, .section__title .btn--more:hover:after {
        border-color: #bd081c; }
    .section__title .btn--more:before {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 5px;
      top: 50%;
      -webkit-transform: translate(0, -50%) rotate(45deg);
              transform: translate(0, -50%) rotate(45deg); }
    .section__title .btn--more:after {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 10px;
      top: 50%;
      -webkit-transform: translate(0, -50%) rotate(45deg);
              transform: translate(0, -50%) rotate(45deg); }

.pickup {
  position: relative; }
  @media screen and (min-width: 768px), print {
    .pickup {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 100%; } }
  @media screen and (max-width: 767px), print {
    .pickup {
      height: 62vw;
      display: block; } }
  .pickup a {
    color: #fff;
    overflow: hidden; }
    .pickup a:after {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.72);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      transition: .25s; }
    .pickup a.moviepost {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      cursor: pointer; }
      .pickup a.moviepost .postlist__image {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    @media screen and (min-width: 768px), print {
      .pickup a.xphoto:hover:after {
        display: none; }
      .pickup a:hover:after {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .pickup a:hover .pickup_text_tag {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0); }
      .pickup a:hover .pickup_text_title {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0); }
      .pickup a:hover .pickup_text_writer {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0); }
      .pickup a:hover .pickup_text_date {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0); }
      .pickup a:hover .pickup_xphoto {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
        .pickup a:hover .pickup_xphoto_photo {
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          -webkit-transform: scale(1) rotateY(0deg);
                  transform: scale(1) rotateY(0deg); }
        .pickup a:hover .pickup_xphoto_name {
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0); }
        .pickup a:hover .pickup_xphoto_title {
          opacity: 1;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0); }
      .pickup a:hover .icn_arrow {
        right: 8px; }
      .pickup a:hover .photographers__texts {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .pickup a:hover .photographers__profile_photo {
        -webkit-transform: scale(1) rotateY(0deg);
                transform: scale(1) rotateY(0deg); }
      .pickup a:hover .photographers__profile_name {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0); }
      .pickup a:hover .photographers__profile_title {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0); }
      .pickup a:hover .photographers__image_texts {
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }
    @media screen and (max-width: 767px), print {
      .pickup a .icn_arrow {
        display: none; } }
  .pickup_main {
    position: relative;
    top: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    display: block;
    cursor: pointer; }
    @media screen and (min-width: 768px), print {
      .pickup_main:hover .pickup_text {
        display: block; } }
    @media screen and (max-width: 767px), print {
      .pickup_main {
        display: none; } }
    .pickup_main .postlist__image {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  @media screen and (min-width: 768px), print {
    .pickup_subposts {
      height: 100%;
      width: 350px;
      min-width: 350px; } }
  @media screen and (max-width: 767px), print {
    .pickup_subposts {
      width: 100%;
      height: 62vw;
      overflow: hidden; } }
  .pickup_subposts:nth-child(3) {
    display: none; }
    @media screen and (min-width: 1600px), print {
      .pickup_subposts:nth-child(3) {
        display: block; } }
  @media screen and (min-width: 768px), print {
    .pickup_subposts.sp_slider .pickup_subposts_box:first-child {
      display: none; } }
  .pickup_subposts_box {
    display: block;
    width: 100%;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
    @media screen and (min-width: 768px), print {
      .pickup_subposts_box {
        height: 33.333%; }
        .pickup_subposts_box .pickup_xphoto_photo {
          width: 80px;
          height: 80px; } }
    @media screen and (max-width: 767px), print {
      .pickup_subposts_box {
        height: 62vw; } }
    .pickup_subposts_box .postlist__image {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .pickup_category {
    background: #000;
    color: #fff;
    display: inline-block;
    float: right;
    padding: 2px 5px 0px;
    position: relative;
    z-index: 2;
    font-family: "Fjalla One", sans-serif; }
    @media screen and (min-width: 768px), print {
      .pickup_category {
        font-size: 14px; } }
    @media screen and (max-width: 767px), print {
      .pickup_category {
        font-size: 10px; } }
  .pickup_text {
    z-index: 2;
    position: absolute; }
    @media screen and (min-width: 768px), print {
      .pickup_text {
        width: 85%;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); } }
    @media screen and (max-width: 767px), print {
      .pickup_text {
        width: 100%;
        padding: 0 15px;
        bottom: 14px; } }
    .pickup_text_tag {
      font-size: 16px;
      color: #bd081c;
      font-family: "Fjalla One", sans-serif;
      margin-bottom: 1em;
      line-height: 1; }
      @media screen and (min-width: 768px), print {
        .pickup_text_tag {
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -webkit-transform: translate(0, 10px);
                  transform: translate(0, 10px);
          transition: all 0.25s cubic-bezier(0.13, 0.63, 0.18, 1) 0s; } }
      @media screen and (max-width: 767px), print {
        .pickup_text_tag {
          display: none; } }
    .pickup_text_title {
      line-height: 1.3; }
      @media screen and (min-width: 768px), print {
        .pickup_text_title {
          margin-bottom: 1em;
          font-weight: bold;
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -webkit-transform: translate(0, 10px);
                  transform: translate(0, 10px);
          transition: all 0.25s cubic-bezier(0.13, 0.63, 0.18, 1) 0s; } }
      @media screen and (max-width: 767px), print {
        .pickup_text_title {
          text-align: center;
          font-size: 14px;
          margin-bottom: 0.5em; } }
    .pickup_text_writer {
      font-size: 12px; }
      @media screen and (min-width: 768px), print {
        .pickup_text_writer {
          display: block;
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -webkit-transform: translate(0, 10px);
                  transform: translate(0, 10px);
          transition: all 0.25s cubic-bezier(0.13, 0.63, 0.18, 1) 0s; } }
      @media screen and (max-width: 767px), print {
        .pickup_text_writer {
          text-align: right; } }
    .pickup_text_date {
      position: absolute;
      right: 0;
      bottom: 0;
      font-size: 12px; }
      @media screen and (min-width: 768px), print {
        .pickup_text_date {
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -webkit-transform: translate(0, 10px);
                  transform: translate(0, 10px);
          transition: all 0.25s cubic-bezier(0.13, 0.63, 0.18, 1) 0s; } }
      @media screen and (max-width: 767px), print {
        .pickup_text_date {
          display: none; } }
  .pickup_xphoto {
    z-index: 2;
    position: absolute;
    text-align: center;
    transition: .25s; }
    @media screen and (min-width: 768px), print {
      .pickup_xphoto {
        width: 200px;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); } }
    @media screen and (max-width: 767px), print {
      .pickup_xphoto {
        width: 100%;
        padding: 0 15px;
        bottom: 14px; } }
    .pickup_xphoto_photo {
      width: 120px;
      height: 120px;
      margin: 0 auto 15px;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      -webkit-transform: scale(0.7) rotateY(180deg);
              transform: scale(0.7) rotateY(180deg);
      transition: all 0.5s cubic-bezier(0.13, 0.63, 0.18, 1); }
      @media screen and (max-width: 767px), print {
        .pickup_xphoto_photo {
          display: none; } }
    .pickup_xphoto_name {
      margin-bottom: 2px; }
      @media screen and (min-width: 768px), print {
        .pickup_xphoto_name {
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          -webkit-transform: translate(0, 0.7em);
                  transform: translate(0, 0.7em);
          transition: all 0.5s cubic-bezier(0.13, 0.63, 0.18, 1); } }
      @media screen and (max-width: 767px), print {
        .pickup_xphoto_name {
          font-size: 14px;
          display: inline-block; }
          .pickup_xphoto_name span {
            display: inline-block;
            line-height: 0.9;
            margin: 0 0.5em;
            padding: 0 0.5em;
            border-right: 1px solid #fff;
            border-left: 1px solid #fff; } }
    @media screen and (min-width: 768px), print {
      .pickup_xphoto_title {
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -webkit-transform: translate(0, 0.7em);
                transform: translate(0, 0.7em);
        transition: all 0.5s cubic-bezier(0.13, 0.63, 0.18, 1); } }
    @media screen and (max-width: 767px), print {
      .pickup_xphoto_title {
        font-size: 14px;
        display: inline-block; } }

@media screen and (min-width: 768px), print {
  .banner_area {
    margin: 105px 40px; } }

@media screen and (max-width: 767px), print {
  .banner_area {
    margin: 40px 16px 40px; } }

.banner_area .inner {
  text-align: center;
  margin: 0 auto;
  max-width: 1200px; }

@media screen and (min-width: 768px), print {
  .banner_area a {
    width: 49%;
    display: inline-block; } }

@media screen and (max-width: 767px), print {
  .banner_area a {
    width: 100%;
    display: block;
    margin-bottom: 16px; } }

@media screen and (min-width: 768px), print {
  .banner_area a:nth-child(2n) {
    margin-left: 1%; } }

@media screen and (min-width: 768px), print {
  .banner_area a:nth-child(2n-1) {
    margin-right: 1%; } }

.postlist ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

.postlist li {
  display: block; }
  @media screen and (min-width: 768px), print {
    .postlist li {
      width: 32%;
      margin-bottom: 2vw; } }
  @media screen and (max-width: 767px), print {
    .postlist li {
      width: 100%;
      margin-bottom: 7.5vw; } }
  @media screen and (min-width: 768px), print {
    .postlist li:nth-child(3n-1) {
      margin: 0 2%; } }
  @media screen and (max-width: 767px), print {
    .postlist li:last-child {
      margin-bottom: 0; } }
  .postlist li.new .postlist__texts_date:after {
    display: block; }

.postlist a {
  color: #000;
  position: relative;
  display: block;
  background: #000;
  overflow: hidden;
  cursor: pointer; }
  @media screen and (min-width: 768px), print {
    .postlist a:hover .postlist__image {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .postlist a:hover .icn_arrow {
      right: 8px; } }
  .postlist a.moviepost:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 16px;
    right: 16px; }
    @media screen and (min-width: 768px), print {
      .postlist a.moviepost:after {
        border-width: 8px 0 8px 12px; } }
    @media screen and (max-width: 767px), print {
      .postlist a.moviepost:after {
        border-width: 6px 0 6px 8px; } }

.postlist__image {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0.58;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=57)";
  transition: opacity 0.2s linear; }

.postlist__texts {
  z-index: 2;
  position: absolute;
  width: 85%;
  top: 50%;
  left: 7%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  color: #fff;
  will-change: opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .postlist__texts_tag {
    color: #bd081c;
    font-family: "Fjalla One", sans-serif;
    margin-bottom: 1em;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .postlist__texts_tag {
        font-size: 16px; } }
    @media screen and (max-width: 767px), print {
      .postlist__texts_tag {
        font-size: 12px; } }
  .postlist__texts_title {
    line-height: 1.3;
    margin-bottom: 1em;
    display: block;
    font-weight: bold;
    overflow: hidden;
    height: 3em;
    line-height: 1.6;
    position: relative; }
    @media screen and (min-width: 768px), print {
      .postlist__texts_title {
        font-size: 18px; } }
    @media screen and (max-width: 767px), print {
      .postlist__texts_title {
        font-size: 16px; } }
    .postlist__texts_title.over {
      padding-right: 1em; }
      .postlist__texts_title.over:after {
        content: "...";
        position: absolute;
        right: 0em;
        bottom: -0.15em;
        padding-left: 0.3em;
        padding-right: 0.3em; }
  .postlist__texts_writer {
    font-size: 12px;
    display: block; }
  .postlist__texts_date {
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 12px; }
    .postlist__texts_date:after {
      content: "NEW";
      position: absolute;
      left: -3.5em;
      top: 0;
      color: #bd081c;
      font-size: 13px;
      display: none; }

.postlist img {
  width: 100%; }

.eventlist ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

@media screen and (min-width: 768px), print {
  .eventlist li {
    width: 23.8%;
    margin-bottom: 2vw; } }

@media screen and (max-width: 767px), print {
  .eventlist li {
    width: 100%;
    margin-bottom: 7.5vw; } }

@media screen and (min-width: 768px), print {
  .eventlist li:nth-child(4n+1) {
    margin-right: 1.6%; } }

@media screen and (min-width: 768px), print {
  .eventlist li:nth-child(4n-1) {
    margin-left: 1.6%;
    margin-right: 1.6%; } }

@media screen and (max-width: 767px), print {
  .eventlist li:last-child {
    margin-bottom: 0; } }

.eventlist a {
  color: #000;
  position: relative;
  display: block;
  background: #000;
  overflow: hidden; }
  @media screen and (min-width: 768px), print {
    .eventlist a:hover .eventlist__image {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .eventlist a:hover .icn_arrow {
      right: 8px; } }
  .eventlist a.moviepost:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 0 8px 12px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 16px;
    right: 16px; }

.eventlist__image {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0.58;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=57)";
  transition: opacity 0.2s linear; }

.eventlist__texts {
  z-index: 2;
  position: absolute;
  width: 85%;
  top: 50%;
  left: 7%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  color: #fff;
  will-change: opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .eventlist__texts_tag {
    color: #bd081c;
    font-family: "Fjalla One", sans-serif;
    margin-bottom: 1em;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .eventlist__texts_tag {
        font-size: 12px; } }
    @media screen and (max-width: 767px), print {
      .eventlist__texts_tag {
        font-size: 10px; } }
  .eventlist__texts_title {
    margin-bottom: 0.7em;
    display: block;
    font-weight: bold;
    overflow: hidden;
    line-height: 1.6;
    height: 3em;
    position: relative; }
    @media screen and (min-width: 768px), print {
      .eventlist__texts_title {
        font-size: 14px; } }
    @media screen and (max-width: 767px), print {
      .eventlist__texts_title {
        font-size: 16px; } }
    .eventlist__texts_title.over {
      padding-right: 1em; }
      .eventlist__texts_title.over:after {
        content: "...";
        position: absolute;
        right: 0em;
        bottom: -0.3em;
        padding-left: 0.3em;
        padding-right: 0.3em; }
  .eventlist__texts_date {
    display: block;
    text-align: right;
    font-size: 12px; }

.eventlist img {
  width: 100%; }

.newslist ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

.newslist li {
  width: 23.8%;
  margin-bottom: 2vw; }
  .newslist li:nth-child(4n+1) {
    margin-right: 1.6%; }
  .newslist li:nth-child(4n-1) {
    margin-left: 1.6%;
    margin-right: 1.6%; }
  @media screen and (max-width: 767px), print {
    .newslist li:last-child {
      margin-bottom: 0; } }

.newslist a {
  color: #000;
  position: relative;
  display: block;
  background: #000;
  overflow: hidden; }
  @media screen and (min-width: 768px), print {
    .newslist a:hover .eventlist__image {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .newslist a:hover .icn_arrow {
      right: 8px; } }
  .newslist a.moviepost:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 0 8px 12px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 16px;
    right: 16px; }

.newslist__image {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 0.58;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=57)";
  transition: opacity 0.2s linear; }

.newslist__texts {
  z-index: 2;
  position: absolute;
  width: 85%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  will-change: opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .newslist__texts_tag {
    color: #bd081c;
    font-family: "Fjalla One", sans-serif;
    margin-bottom: 1em;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .newslist__texts_tag {
        font-size: 12px; } }
    @media screen and (max-width: 767px), print {
      .newslist__texts_tag {
        font-size: 10px; } }
  .newslist__texts_title {
    line-height: 1.3;
    margin-bottom: 0.7em;
    display: block;
    font-weight: bold; }
    @media screen and (min-width: 768px), print {
      .newslist__texts_title {
        font-size: 14px; } }
    @media screen and (max-width: 767px), print {
      .newslist__texts_title {
        font-size: 16px; } }
  .newslist__texts_date {
    display: block;
    text-align: right;
    font-size: 12px; }

.newslist img {
  width: 100%; }

/* pagenation */
@media screen and (min-width: 768px), print {
  .pagenation {
    margin: 0 auto 94px; } }

@media screen and (max-width: 767px), print {
  .pagenation {
    padding: 0;
    margin: 32px 0;
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec; } }

@media screen and (min-width: 768px), print {
  .pagenation.single {
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
    margin: 0 95px 100px; }
    .pagenation.single ul {
      padding: 30px 0; } }

@media screen and (max-width: 767px), print {
  .pagenation.single {
    margin: 0 5vw 50px; } }

@media screen and (min-width: 768px), print {
  .pagenation.single li {
    margin: 0 16px; }
    .pagenation.single li.pagerPrev a {
      margin: 0 16px; }
    .pagenation.single li.pagerNext a {
      margin: 0 16px; } }

.pagenation.single a {
  width: auto;
  height: auto;
  line-height: 1.6;
  border: none;
  position: relative;
  font-size: 16px;
  font-family: "Fjalla One", sans-serif;
  padding-left: 4px; }
  @media screen and (min-width: 768px), print {
    .pagenation.single a {
      padding-top: 3px;
      text-decoration: underline; }
      .pagenation.single a:hover {
        color: #000;
        text-decoration: none;
        background: none; } }
  @media screen and (max-width: 767px), print {
    .pagenation.single a {
      text-decoration: underline; } }

.pagenation ul {
  text-align: center;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .pagenation ul {
      padding-top: 32px; } }
  @media screen and (max-width: 767px), print {
    .pagenation ul {
      padding: 14px 0; } }

@media screen and (max-width: 767px), print {
  .pagenation.large ul {
    padding: 14px 50px; } }

@media screen and (max-width: 767px), print {
  .pagenation.large li {
    margin: 2px; } }

.pagenation li {
  display: inline-block; }
  @media screen and (min-width: 768px), print {
    .pagenation li {
      margin: 0 3px; } }
  @media screen and (max-width: 767px), print {
    .pagenation li {
      margin: 0 2px; } }
  .pagenation li.pagerPrev {
    margin: 0; }
    @media screen and (max-width: 767px), print {
      .pagenation li.pagerPrev {
        position: absolute;
        top: 50%;
        left: 14px;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%); } }
    .pagenation li.pagerPrev a {
      width: auto;
      height: auto;
      line-height: 1.6;
      border: none;
      position: relative;
      font-size: 16px;
      font-family: "Fjalla One", sans-serif;
      padding-left: 4px; }
      @media screen and (min-width: 768px), print {
        .pagenation li.pagerPrev a {
          padding-top: 3px;
          margin-right: 15px; }
          .pagenation li.pagerPrev a:hover {
            text-decoration: underline;
            color: #000;
            background: none; } }
      @media screen and (max-width: 767px), print {
        .pagenation li.pagerPrev a {
          text-decoration: underline; } }
      .pagenation li.pagerPrev a:before {
        content: "";
        width: 7px;
        height: 7px;
        border-top: 2px solid #000;
        border-right: 2px solid #000;
        position: absolute;
        left: -7px;
        margin-top: -3px;
        top: 50%;
        -webkit-transform: rotate(-135deg);
                transform: rotate(-135deg); }
      .pagenation li.pagerPrev a:after {
        content: none; }
  .pagenation li.pagerNext {
    margin: 0; }
    @media screen and (max-width: 767px), print {
      .pagenation li.pagerNext {
        position: absolute;
        top: 50%;
        right: 14px;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%); } }
    .pagenation li.pagerNext a {
      width: auto;
      height: auto;
      line-height: 1.6;
      border: none;
      position: relative;
      font-size: 16px;
      font-family: "Fjalla One", sans-serif;
      padding-right: 4px; }
      @media screen and (min-width: 768px), print {
        .pagenation li.pagerNext a {
          padding-top: 3px;
          margin-left: 15px; }
          .pagenation li.pagerNext a:hover {
            text-decoration: underline;
            color: #000;
            background: none; } }
      @media screen and (max-width: 767px), print {
        .pagenation li.pagerNext a {
          text-decoration: underline; } }
      .pagenation li.pagerNext a:before {
        content: "";
        width: 7px;
        height: 7px;
        border-top: 2px solid #000;
        border-right: 2px solid #000;
        position: absolute;
        right: -7px;
        top: 50%;
        margin-top: -3px;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
      .pagenation li.pagerNext a:after {
        content: none; }
  .pagenation li.pagerNextAll {
    margin: 0; }
    @media screen and (max-width: 767px), print {
      .pagenation li.pagerNextAll {
        position: absolute;
        bottom: -50px;
        right: 14px;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%); } }
    .pagenation li.pagerNextAll a {
      width: auto;
      height: auto;
      line-height: 1.6;
      border: none;
      position: relative;
      font-size: 16px;
      font-family: "Fjalla One", sans-serif;
      padding-right: 4px; }
      @media screen and (min-width: 768px), print {
        .pagenation li.pagerNextAll a {
          padding-top: 3px;
          margin-left: 25px; }
          .pagenation li.pagerNextAll a:hover {
            text-decoration: underline;
            color: #000;
            background: none; } }
      @media screen and (max-width: 767px), print {
        .pagenation li.pagerNextAll a {
          text-decoration: underline; } }
      .pagenation li.pagerNextAll a:before {
        content: "";
        width: 7px;
        height: 7px;
        border-top: 2px solid #000;
        border-right: 2px solid #000;
        position: absolute;
        right: -7px;
        top: 50%;
        margin-top: -3px;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
      .pagenation li.pagerNextAll a:after {
        content: "";
        width: 7px;
        height: 7px;
        border-top: 2px solid #000;
        border-right: 2px solid #000;
        position: absolute;
        right: -12px;
        top: 50%;
        margin-top: -3px;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
  .pagenation li.pagerPrevAll {
    margin: 0; }
    @media screen and (max-width: 767px), print {
      .pagenation li.pagerPrevAll {
        position: absolute;
        bottom: -50px;
        left: 14px;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%); } }
    .pagenation li.pagerPrevAll a {
      width: auto;
      height: auto;
      line-height: 1.6;
      border: none;
      position: relative;
      font-size: 16px;
      font-family: "Fjalla One", sans-serif;
      padding-left: 4px; }
      @media screen and (min-width: 768px), print {
        .pagenation li.pagerPrevAll a {
          padding-top: 3px;
          margin-right: 25px; }
          .pagenation li.pagerPrevAll a:hover {
            text-decoration: underline;
            color: #000;
            background: none; } }
      @media screen and (max-width: 767px), print {
        .pagenation li.pagerPrevAll a {
          text-decoration: underline; } }
      .pagenation li.pagerPrevAll a:before {
        content: "";
        width: 7px;
        height: 7px;
        border-top: 2px solid #000;
        border-right: 2px solid #000;
        position: absolute;
        left: -7px;
        margin-top: -3px;
        top: 50%;
        -webkit-transform: rotate(-135deg);
                transform: rotate(-135deg); }
      .pagenation li.pagerPrevAll a:after {
        content: "";
        width: 7px;
        height: 7px;
        border-top: 2px solid #000;
        border-right: 2px solid #000;
        position: absolute;
        left: -12px;
        margin-top: -3px;
        top: 50%;
        -webkit-transform: rotate(-135deg);
                transform: rotate(-135deg); }

.pagenation a, .pagenation span {
  display: block;
  border: 1px solid #bfbfbf;
  text-align: center;
  text-decoration: none; }
  @media screen and (min-width: 768px), print {
    .pagenation a, .pagenation span {
      font-size: 16px;
      width: 40px;
      height: 40px;
      line-height: 37px; } }
  @media screen and (max-width: 767px), print {
    .pagenation a, .pagenation span {
      font-size: 14px;
      width: 36px;
      height: 36px;
      line-height: 34px; } }

@media screen and (min-width: 768px), print {
  .pagenation a:hover {
    background: #000;
    color: #fff; } }

.pagenation span {
  border: 1px solid #222;
  background: #222;
  color: #fff; }

@media screen and (min-width: 768px), print {
  .photographers ul.Collage {
    padding: 24px;
    padding-bottom: 0; } }

@media screen and (max-width: 767px), print {
  .photographers ul.Collage {
    padding: 8px; } }

.photographers ul.Collage li {
  background-size: cover; }

.photographers li {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  .photographers li.new .name {
    position: relative; }
    .photographers li.new .name:before {
      content: "NEW";
      color: #bd081c;
      position: absolute;
      top: -1.3em;
      left: 0; }

.photographers a {
  display: none;
  position: relative;
  color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  .photographers a:first-child {
    display: block; }
  @media screen and (min-width: 768px), print {
    .photographers a:hover .icn_arrow {
      right: 8px; }
    .photographers a:hover .photographers__texts {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .photographers a:hover .photographers__profile_photo {
      -webkit-transform: scale(1) rotateY(0deg);
              transform: scale(1) rotateY(0deg); }
    .photographers a:hover .photographers__profile_name {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
    .photographers a:hover .photographers__profile_title {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
    .photographers a:hover .photographers__image_texts {
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

.photographers img {
  width: 100%; }
  @media screen and (max-width: 767px), print {
    .photographers img:not(.normal) {
      width: 100% !important;
      height: auto !important; } }

.photographers__image_texts {
  position: absolute;
  font-size: 12px;
  text-align: left; }
  @media screen and (min-width: 768px), print {
    .photographers__image_texts {
      transition: all 0.25s linear;
      bottom: 15px;
      left: 17px; } }
  @media screen and (max-width: 767px), print {
    .photographers__image_texts {
      bottom: 8px;
      left: 8px;
      font-size: 10px;
      line-height: 1.6; } }

.photographers__texts {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;
  top: 0;
  background: rgba(0, 0, 0, 0.5);
  word-break: break-word;
  text-align: center;
  transition: .25s; }

.photographers__profile {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .photographers__profile_photo {
    width: 64px;
    height: 64px;
    margin: 0 auto 10px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (min-width: 768px), print {
      .photographers__profile_photo {
        -webkit-transform: scale(0.7) rotateY(180deg);
                transform: scale(0.7) rotateY(180deg);
        transition: all 0.5s cubic-bezier(0.13, 0.63, 0.18, 1); } }
  .photographers__profile_name {
    font-size: 12px; }
    @media screen and (min-width: 768px), print {
      .photographers__profile_name {
        -webkit-transform: translate(0, 0.7em);
                transform: translate(0, 0.7em);
        transition: all 0.5s cubic-bezier(0.13, 0.63, 0.18, 1); } }
  @media screen and (min-width: 768px), print {
    .photographers__profile_title {
      font-size: 10px;
      -webkit-transform: translate(0, 0.7em);
              transform: translate(0, 0.7em);
      transition: all 0.5s cubic-bezier(0.13, 0.63, 0.18, 1); } }
  @media screen and (max-width: 767px), print {
    .photographers__profile_title {
      font-size: 12px; } }

.effect-parent {
  -webkit-perspective: 1300px;
  perspective: 1300px; }

/* EFFECT 2 */
.effect-2 {
  -webkit-transform: translateY(200px);
  transform: translateY(200px);
  -webkit-animation: moveUp ease forwards;
  animation: moveUp ease forwards; }

@-webkit-keyframes moveUp {
  to {
    -webkit-transform: translateY(0);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@keyframes moveUp {
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@media screen and (min-width: 768px), print {
  .countrylist {
    margin: 0 15px 74px 40px; } }

@media screen and (max-width: 767px), print {
  .countrylist {
    margin: 0 5vw 32px; } }

@media screen and (min-width: 768px), print {
  .countrylist .headline_h2 {
    margin-bottom: 48px; } }

@media screen and (max-width: 767px), print {
  .countrylist .headline_h2 {
    margin-bottom: 1em; } }

.countrylist a {
  display: block; }
  @media screen and (min-width: 768px), print {
    .countrylist a {
      position: relative; }
      .countrylist a:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 150px;
        height: 150px;
        background: #000;
        z-index: 0; }
      .countrylist a:hover .countrylist__thum {
        opacity: 0.7;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; } }

.countrylist__ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media screen and (min-width: 768px), print {
    .countrylist__ul li {
      width: 150px;
      margin-right: 25px;
      margin-bottom: 30px; } }
  @media screen and (max-width: 767px), print {
    .countrylist__ul li {
      width: 40vw;
      margin-bottom: 25px; }
      .countrylist__ul li:nth-child(2n) {
        margin-left: 5vw; } }

.countrylist__thum {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media screen and (min-width: 768px), print {
    .countrylist__thum {
      width: 150px;
      height: 150px;
      position: relative;
      z-index: 1;
      transition: .25s; } }
  @media screen and (max-width: 767px), print {
    .countrylist__thum {
      width: 42.5vw;
      height: 42.5vw; } }

.countrylist__name {
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  margin-top: 5px; }

.storelist .tag_croud ul {
  text-align: left; }
  @media screen and (min-width: 768px), print {
    .storelist .tag_croud ul {
      padding-left: 0; }
      .storelist .tag_croud ul:after {
        display: none; } }

@media screen and (min-width: 768px), print {
  .storelist .tag_croud li {
    margin-right: 8px;
    margin-bottom: 8px; } }

.storelist .tag_croud a {
  position: relative;
  padding-right: 12px;
  padding-right: 1.5em;
  border-color: #1b1b1b; }
  .storelist .tag_croud a:before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #1b1b1b;
    border-right: 2px solid #1b1b1b;
    position: absolute;
    display: block;
    right: 0px;
    top: 50%;
    -webkit-transform: translate(0, -5px) rotate(135deg);
            transform: translate(0, -5px) rotate(135deg);
    transition: all 0.25s ease-in-out; }
  .storelist .tag_croud a:before {
    right: 6px;
    border-width: 1px;
    width: 5px;
    height: 5px;
    border-color: #1b1b1b;
    -webkit-transform: translate(0, -3px) rotate(135deg);
            transform: translate(0, -3px) rotate(135deg);
    transition: none; }
  @media screen and (min-width: 768px), print {
    .storelist .tag_croud a:hover {
      color: #bd081c;
      border-color: #bd081c;
      text-decoration: none; }
      .storelist .tag_croud a:hover:before {
        border-color: #bd081c; } }

@media screen and (min-width: 768px), print {
  .storelist__segment {
    margin-bottom: 57px; } }

@media screen and (max-width: 767px), print {
  .storelist__segment {
    margin-bottom: 40px; } }

.storelist__segment .headline_h2 {
  margin-bottom: 1em; }

@media screen and (min-width: 768px), print {
  .storelist__branch {
    margin-bottom: 57px; } }

@media screen and (max-width: 767px), print {
  .storelist__branch {
    margin-bottom: 40px; } }

@media screen and (min-width: 768px), print {
  .storelist__branch .headline_dline {
    margin-bottom: 32px; } }

@media screen and (max-width: 767px), print {
  .storelist__branch .headline_dline {
    margin-bottom: 24px; } }

@media screen and (min-width: 768px), print {
  .storelist__list .headline_lline {
    margin-bottom: 33px; } }

@media screen and (max-width: 767px), print {
  .storelist__list .headline_lline {
    margin-bottom: 24px; } }

@media screen and (min-width: 768px), print {
  .storelist__list_table {
    width: 100%;
    margin-bottom: 60px; } }

@media screen and (max-width: 767px), print {
  .storelist__list_table {
    margin-bottom: 24px;
    display: block; } }

@media screen and (min-width: 768px), print {
  .storelist__list_table tr {
    border-bottom: 1px solid #bfbfbf; } }

@media screen and (max-width: 767px), print {
  .storelist__list_table tr {
    background: #eee;
    padding: 24px 22px;
    margin-bottom: 8px;
    display: block; } }

@media screen and (min-width: 768px), print {
  .storelist__list_table th {
    background: #eee;
    border-right: 1px solid #fff;
    font-size: 16px;
    font-family: "Fjalla One", sans-serif;
    text-align: center;
    height: 64px;
    line-height: 64px; }
    .storelist__list_table th:nth-child(1) {
      width: 299px; }
    .storelist__list_table th:nth-child(2) {
      width: 499px; }
    .storelist__list_table th:nth-child(3) {
      width: 199px; }
    .storelist__list_table th:nth-child(4) {
      width: 200px;
      border-right: none; } }

@media screen and (max-width: 767px), print {
  .storelist__list_table th {
    display: block; } }

.storelist__list_table td {
  position: relative; }
  @media screen and (min-width: 768px), print {
    .storelist__list_table td {
      padding: 40px 0 28px 0; }
      .storelist__list_table td:nth-child(2) {
        padding-right: 140px; }
      .storelist__list_table td:nth-child(3) {
        text-align: center; }
      .storelist__list_table td:nth-child(4) {
        text-align: center; } }
  @media screen and (max-width: 767px), print {
    .storelist__list_table td {
      display: block;
      font-size: 12px; } }

@media screen and (min-width: 768px), print {
  .storelist__list_table .genre {
    border-bottom: none; } }

@media screen and (max-width: 767px), print {
  .storelist__list_table .genre {
    display: none; } }

.storelist__list_name {
  padding-bottom: 12px; }
  .storelist__list_name b {
    font-weight: bold; }
    .storelist__list_name b.premium:before {
      content: "[PREMIUM]";
      color: #17a174;
      display: block;
      line-height: 1;
      margin-bottom: 0.6em; }
      @media screen and (min-width: 768px), print {
        .storelist__list_name b.premium:before {
          font-size: 12px; } }
      @media screen and (max-width: 767px), print {
        .storelist__list_name b.premium:before {
          font-size: 10px; } }

.storelist__list_info {
  padding-bottom: 20px; }
  .storelist__list_info a {
    text-decoration: underline; }
    @media screen and (min-width: 768px), print {
      .storelist__list_info a:hover {
        text-decoration: none; } }
  @media screen and (min-width: 768px), print {
    .storelist__list_info p {
      margin-bottom: 1.5em; } }
  @media screen and (max-width: 767px), print {
    .storelist__list_info p {
      margin-bottom: 1em; } }
  .storelist__list_info .open:before {
    content: "OPEN:";
    font-weight: bold; }
  @media screen and (min-width: 768px), print {
    .storelist__list_info .tel {
      margin-bottom: 0; } }
  .storelist__list_info .tel:before {
    content: "TEL:";
    font-weight: bold; }
  .storelist__list_info .website:before {
    content: "Website:";
    font-weight: bold; }
  @media screen and (min-width: 768px), print {
    .storelist__list_info .btn_map {
      position: absolute;
      right: 32px;
      top: 45px; }
      .storelist__list_info .btn_map:before {
        right: 18px; }
      .storelist__list_info .btn_map:after {
        right: 20px; } }
  @media screen and (max-width: 767px), print {
    .storelist__list_info .btn_map {
      margin-top: 20px; } }

@media screen and (max-width: 767px), print {
  .storelist__list_series p:before {
    content: "Series:";
    font-weight: bold; } }

@media screen and (max-width: 767px), print {
  .storelist__list_service p:before {
    content: "Service:";
    font-weight: bold; } }

.onlinestore .headline_h2 {
  margin-bottom: 1em; }

.onlinestore__list ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }

@media screen and (min-width: 768px), print {
  .onlinestore__list li {
    width: 18.334%;
    margin-right: 2.08%;
    margin-bottom: 25px; }
    .onlinestore__list li:nth-child(5n) {
      margin-right: 0; } }

@media screen and (max-width: 767px), print {
  .onlinestore__list li {
    margin-bottom: 15px;
    width: 42.5vw; }
    .onlinestore__list li:nth-child(2n) {
      margin-left: 5vw; } }

.onlinestore__list a:hover {
  text-decoration: none; }

.onlinestore__list__thum {
  border: 1px solid #bfbfbf;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  .onlinestore__list__thum img {
    width: 100%; }

.onlinestore__list__texts {
  font-weight: bold;
  text-align: center;
  padding: 10px 5px; }
  @media screen and (min-width: 768px), print {
    .onlinestore__list__texts {
      font-size: 14px;
      line-height: 1.6; } }
  @media screen and (max-width: 767px), print {
    .onlinestore__list__texts {
      font-size: 12px; } }

.tab__btns {
  text-align: center;
  margin: 0 auto;
  left: 0;
  right: 0;
  position: absolute; }
  @media screen and (min-width: 768px), print {
    .tab__btns {
      top: 5px;
      width: 400px; } }
  @media screen and (max-width: 767px), print {
    .tab__btns {
      top: 35px; } }
  .tab__btns p {
    font-family: "Fjalla One", sans-serif;
    display: inline-block;
    cursor: pointer;
    font-weight: 400;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .tab__btns p {
        font-size: 16px;
        padding-bottom: 8px;
        margin: 0 10px; } }
    @media screen and (max-width: 767px), print {
      .tab__btns p {
        margin: 0 5px;
        font-size: 12px;
        padding-bottom: 3px; } }
    .tab__btns p.on, .tab__btns p:hover {
      color: #bd081c;
      border-bottom: 2px solid #bd081c; }

.tab__links {
  text-align: center;
  margin: 0 auto;
  left: 0;
  right: 0;
  position: absolute; }
  @media screen and (min-width: 768px), print {
    .tab__links {
      top: 5px;
      width: 400px; } }
  @media screen and (max-width: 767px), print {
    .tab__links {
      top: 35px; } }
  .tab__links a {
    font-family: "Fjalla One", sans-serif;
    display: inline-block;
    cursor: pointer;
    font-weight: 400;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .tab__links a {
        font-size: 16px;
        padding-bottom: 8px;
        margin: 0 10px; } }
    @media screen and (max-width: 767px), print {
      .tab__links a {
        margin: 0 5px;
        font-size: 12px;
        padding-bottom: 3px; } }
    .tab__links a.on, .tab__links a:hover {
      color: #bd081c;
      border-bottom: 2px solid #bd081c;
      text-decoration: none; }

.tab__box {
  display: none; }
  .tab__box.on {
    display: block; }

.category_tab {
  width: 100%;
  border-bottom: 1px solid #d8d8d8; }
  @media screen and (min-width: 768px), print {
    .category_tab {
      padding-bottom: 20px;
      margin-top: 60px; } }
  @media screen and (max-width: 767px), print {
    .category_tab {
      margin-top: -15px;
      padding-bottom: 10px;
      overflow: hidden;
      -webkit-overflow-scrolling: touch;
    }
      .category_tab.on {
        overflow: visible;
        overflow-x: visible; } }
  @media screen and (max-width: 767px) and (max-width: 767px), print {
    .category_tab.pdct ul {
      white-space: normal; } }
  .category_tab ul {
    padding: 0 3%;
    width: 100%; }
    @media screen and (max-width: 767px), print {
      .category_tab ul {
        white-space: nowrap; } }
  .category_tab li {
    display: inline-block; }
    @media screen and (min-width: 768px), print {
      .category_tab li {
        margin: 0 15px;
        position: relative; }
        .category_tab li:hover > p {
          color: #bd081c; }
          .category_tab li:hover > p:before {
            border-color: #bd081c;
            transition: none; }
        .category_tab li:hover > a {
          color: #bd081c;
          text-decoration: none; }
        .category_tab li:hover .category_tab_subwrap {
          display: block !important;
          height: 300px;
          padding: 32px 20px 32px 32px; }
          .category_tab li:hover .category_tab_subwrap.short {
            height: 150px; } }
    @media screen and (max-width: 767px), print {
      .category_tab li {
        margin: 0 10px; } }
    .category_tab li:last-child {
      margin-right: 26px; }
  .category_tab p {
    cursor: pointer;
    font-family: "Fjalla One", sans-serif;
    position: relative;
    padding-right: 12px; }
    .category_tab p:before {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 0px;
      top: 50%;
      -webkit-transform: translate(0, -5px) rotate(135deg);
              transform: translate(0, -5px) rotate(135deg);
      transition: all 0.25s ease-in-out; }
    @media screen and (min-width: 768px), print {
      .category_tab p {
        font-size: 18px;
        padding-right: 16px; } }
    @media screen and (max-width: 767px), print {
      .category_tab p {
        font-size: 14px; } }
    .category_tab p.on:before {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      margin-top: -3px; }
  .category_tab li > a {
    cursor: pointer;
    font-family: "Fjalla One", sans-serif; }
    @media screen and (min-width: 768px), print {
      .category_tab li > a {
        font-size: 18px;
        padding-right: 0px; } }
    @media screen and (max-width: 767px), print {
      .category_tab li > a {
        font-size: 14px; } }
  .category_tab_subwrap {
    background: rgba(0, 0, 0, 0.9);
    z-index: 10; }
    @media screen and (max-width: 767px), print {
      .category_tab_subwrap {
        background: rgba(0, 0, 0, 0.9);
        /* 2019/04/23 START */
        z-index: 99998;
        /* 2019/04/23 E N D */ } }
    .category_tab_subwrap.test {
      display: block !important; }
    @media screen and (max-width: 767px), print {
      .category_tab_subwrap.on {
        display: block; } }
    @media screen and (min-width: 768px), print {
      .category_tab_subwrap {
        width: 47vw;
        overflow: hidden;
        height: 0;
        position: absolute;
        padding: 0px 20px 0px 32px;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        text-align: left;
        transition: .25s;
        transition-duration: 0.2s; }
        .category_tab_subwrap_inner {
          height: 236px; }
        .category_tab_subwrap.short {
          width: 25vw; } }
    @media screen and (max-width: 767px), print {
      .category_tab_subwrap {
        display: none;
        overflow: hidden;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        height: 100vh;
        padding-top: 75px;
        padding-bottom: 80px; } }
    @media screen and (min-width: 768px), print {
      .category_tab_subwrap dl {
        width: 100%;
        margin-bottom: 20px;
        padding-right: 12px; }
        .category_tab_subwrap dl:last-child {
          margin-right: 0; } }
    @media screen and (max-width: 767px), print {
      .category_tab_subwrap dl {
        margin: 0 5vw 20px; } }
    .category_tab_subwrap a {
      color: #fff;
      font-size: 14px;
      font-weight: bold;
      display: inline-block;
      border-bottom: none; }
      .category_tab_subwrap a:after {
        content: ",";
        margin: 0 0.3em;
        color: #fff; }
      .category_tab_subwrap a:last-child:after {
        display: none; }
      @media screen and (min-width: 768px), print {
        .category_tab_subwrap a {
          margin-bottom: 0.5em; }
          .category_tab_subwrap a:hover {
            color: #bd081c;
            text-decoration: none; } }
      @media screen and (max-width: 767px), print {
        .category_tab_subwrap a {
          padding: 0.7em 0; } }
    .category_tab_subwrap dt {
      font-family: "Fjalla One", sans-serif;
      font-size: 20px;
      color: #fff;
      border-bottom: 1px solid #fff;
      padding: 0.4em 0; }
      @media screen and (min-width: 768px), print {
        .category_tab_subwrap dt {
          padding-top: 0; } }
      @media screen and (max-width: 767px), print {
        .category_tab_subwrap dt {
          text-align: left;
          position: relative;
          padding-right: 12px; }
          .category_tab_subwrap dt:before {
            content: "";
            width: 6px;
            height: 6px;
            border-top: 2px solid #1b1b1b;
            border-right: 2px solid #1b1b1b;
            position: absolute;
            display: block;
            right: 0px;
            top: 50%;
            -webkit-transform: translate(0, -5px) rotate(135deg);
                    transform: translate(0, -5px) rotate(135deg);
            transition: all 0.25s ease-in-out; } }
      .category_tab_subwrap dt:before {
        right: 6px;
        border-color: #fff; }
      .category_tab_subwrap dt.on:before {
        -webkit-transform: translate(0, -4px) rotate(-45deg);
                transform: translate(0, -4px) rotate(-45deg); }
    .category_tab_subwrap dd {
      white-space: normal;
      text-align: left; }
      @media screen and (min-width: 768px), print {
        .category_tab_subwrap dd {
          padding-top: 0.7em; } }
      @media screen and (max-width: 767px), print {
        .category_tab_subwrap dd {
          padding-top: 5px;
          /* 2019/04/19 START */
          display: block;
          /* 2019/04/19 E N D */
        }
          .category_tab_subwrap dd a {
            width: auto; } }
    .category_tab_subwrap .close {
      width: 40px;
      height: 40px;
      position: absolute;
      right: 10px;
      top: 10px;
      cursor: pointer; }
      .category_tab_subwrap .close:before, .category_tab_subwrap .close:after {
        content: "";
        width: 30px;
        height: 1px;
        background: #fff;
        position: absolute;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        top: 50%;
        left: 0;
        right: 0;
        margin: 0 auto; }
      .category_tab_subwrap .close:after {
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg); }

@media screen and (min-width: 768px), print {
  .tag_croud.categories ul {
    padding-left: 100px; }
    .tag_croud.categories ul:after {
      content: "CATEGORIES:"; } }

.tag_croud ul {
  font-size: 0; }
  @media screen and (min-width: 768px), print {
    .tag_croud ul {
      text-align: left;
      padding-left: 54px;
      position: relative; }
      .tag_croud ul:after {
        content: "TAGS:";
        font-family: "Fjalla One", sans-serif;
        font-size: 18px;
        position: absolute;
        left: 0;
        top: 4px; } }
  @media screen and (max-width: 767px), print {
    .tag_croud ul {
      text-align: center; } }

.tag_croud li {
  display: inline-block;
  margin-right: 6px;
  margin-bottom: 6px; }

.tag_croud a {
  font-size: 12px !important;
  font-weight: bold;
  border: 1px solid #bfbfbf;
  padding: 1em 1.5em;
  display: block;
  line-height: 1; }

.open_btn {
  position: relative;
  padding-right: 12px;
  display: block;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  padding: 0;
  position: absolute;
  cursor: pointer; }
  .open_btn:before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #1b1b1b;
    border-right: 2px solid #1b1b1b;
    position: absolute;
    display: block;
    right: 0px;
    top: 50%;
    -webkit-transform: translate(0, -5px) rotate(135deg);
            transform: translate(0, -5px) rotate(135deg);
    transition: all 0.25s ease-in-out; }
  @media screen and (min-width: 768px), print {
    .open_btn {
      /*top: 4px;*/
      bottom: 55px;
      right: 30px; } }
  @media screen and (max-width: 767px), print {
    .open_btn {
      right: 0;
      left: 0;
      bottom: 0; } }
  .open_btn:before {
    right: 0;
    left: 0;
    margin: 0 auto; }

.formparts {
  overflow: hidden;
  border: 1px solid #1b1b1b; }
  @media screen and (min-width: 768px), print {
    .formparts {
      padding: 50px 0 45px; } }
  @media screen and (max-width: 767px), print {
    .formparts {
      padding: 30px 0 30px;
      font-size: 12px; } }
  .formparts__inner {
    background: #fff; }
    @media screen and (min-width: 768px), print {
      .formparts__inner {
        text-align: center; } }
    @media screen and (max-width: 767px), print {
      .formparts__inner {
        padding: 0px 23px; } }
  .formparts__inputbox {
    text-align: center; }
    @media screen and (min-width: 768px), print {
      .formparts__inputbox {
        width: 480px;
        margin: 18px auto 0; } }
    @media screen and (max-width: 767px), print {
      .formparts__inputbox {
        width: 100%;
        margin: 20px auto 0; } }
  .formparts hr {
    border-top: none;
    border-bottom: 1px solid #bfbfbf; }
    @media screen and (min-width: 768px), print {
      .formparts hr {
        margin: 5px 0 16px; } }
    @media screen and (max-width: 767px), print {
      .formparts hr {
        width: 200px;
        margin: 10px auto 23px; } }
  .formparts h5 {
    font-family: "Fjalla One", sans-serif; }
    @media screen and (min-width: 768px), print {
      .formparts h5 {
        margin-bottom: 25px;
        line-height: 1;
        font-size: 32px; } }
    @media screen and (max-width: 767px), print {
      .formparts h5 {
        margin-bottom: 1em;
        text-align: center;
        font-size: 18px; } }
  .formparts input {
    display: block; }
  .formparts input[type="mail"] {
    text-align: center; }
    @media screen and (min-width: 768px), print {
      .formparts input[type="mail"] {
        width: 100%;
        padding: 12px;
        font-size: 12px; } }
    @media screen and (max-width: 767px), print {
      .formparts input[type="mail"] {
        width: 200px;
        padding: 8px;
        margin: 0 auto;
        font-size: 16px; } }
  .formparts input[type="submit"] {
    /* background: #17a174; */
    background: #17a58f;
    color: #fff;
    padding: 8px;
    font-size: 13px;
    font-weight: bold;
    margin: 0 auto;
    display: block;
    cursor: pointer; }
    @media screen and (min-width: 768px), print {
      .formparts input[type="submit"] {
        width: 120px; } }
    @media screen and (max-width: 767px), print {
      .formparts input[type="submit"] {
        width: 200px; } }

.sns_area {
  position: relative; }
  .sns_area ul {
    line-height: 0;
    width: 100%;
    text-align: center; }
  /* 2019/04/09 START */
  .sns_area ul.one_icn {
    line-height: 0;
    width: 100%;
    text-align: right; }
  /* 2019/04/09 E N D */
  .sns_area li {
    border-radius: 3px;
    display: inline-block;
    overflow: hidden;
    margin: 0 10px; }
    .sns_area li a {
      display: block;
      text-align: center; }
      @media screen and (min-width: 768px), print {
        .sns_area li a:hover {
          opacity: 0.6;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; } }
    .sns_area li.fb a {
      padding-top: 1px; }
    .sns_area li.fb svg {
      width: 24px;
      height: 24px; }
    .sns_area li.tw svg {
      width: 26px;
      height: 26px; }
    .sns_area li.yt a {
      padding-top: 2px; }
    .sns_area li.yt svg {
      width: 32px;
      height: 21px; }
    .sns_area li.pin a {
      padding-top: 2px; }
    .sns_area li.pin svg {
      width: 21px;
      height: 21px; }
    .sns_area li.gp a {
      padding-top: 2px; }
    .sns_area li.gp svg {
      width: 35px;
      height: 21px; }
    .sns_area li path, .sns_area li polygon {
      fill: #fff; }

.post_share {
  position: relative; }
  .post_share ul {
    line-height: 0;
    width: 100%;
    text-align: center;
    position: relative; }
    .post_share ul:before {
      content: "Share:";
      font-size: 18px;
      font-family: "Fjalla One", sans-serif;
      display: inline-block;
      -webkit-transform: translate(0, 8px);
              transform: translate(0, 8px);
      line-height: 1;
      vertical-align: top;
      margin-right: 4px; }
  .post_share li {
    border-radius: 3px;
    display: inline-block;
    overflow: hidden;
    margin: 0 4px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    box-shadow: 0px 2px 7px 0px rgba(51, 51, 51, 0.16); }
    .post_share li a {
      display: block;
      text-align: center;
      background: #000;
      width: 32px;
      height: 32px; }
    .post_share li.fb a {
      padding-top: 7px;
      padding-left: 3px; }
    .post_share li.fb svg {
      width: 20px;
      height: 20px; }
    .post_share li.tw a {
      padding: 7px 6px; }
    .post_share li.tw svg {
      width: 19px;
      height: 19px; }
    .post_share li.yt a {
      padding-top: 2px; }
    .post_share li.yt svg {
      width: 32px;
      height: 21px; }
    .post_share li.pin a {
      padding-top: 2px; }
    .post_share li.pin svg {
      width: 21px;
      height: 21px; }
    .post_share li.gp a {
      padding-top: 2px; }
    .post_share li.gp svg {
      width: 35px;
      height: 21px; }
    .post_share li path, .post_share li polygon {
      fill: #fff; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-prev, .slick-next {
  width: 40px;
  height: 40px;
  position: absolute;
  bottom: 50px;
  left: 0;
  top: 50%;
  margin-top: -20px;
  cursor: pointer;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/icn_slidearrow.png) no-repeat center;
  background-size: 7px; }

.slick-next {
  left: auto;
  right: 0; }

.slick-prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.modal_wrap {
  position: fixed;
  z-index: 101;
  max-width: 900px;
  max-height: 506px;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000; }
  /* 2019/06/19 START */
  @media screen and (max-width: 414px), print {
    .modal_wrap {
      top: 50% !important; } }
  @media screen and (max-width: 767px), print {
    .modal_wrap {
      width: 100%;
      top: 145%; } }
  /* 2019/06/19 E N D */
  .modal_wrap iframe {
    width: 100%;
    height: 200vw; }
  @media screen and (min-width: 768px), print {
    .modal_wrap iframe {
      max-height: 506px; } }

.modal_mat {
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none; }
  .modal_mat .modal_close {
    width: 50px;
    height: 10px;
    position: absolute;
    top: 20px;
    right: 20px;
    cursor: pointer; }
    .modal_mat .modal_close:before, .modal_mat .modal_close:after {
      content: "";
      width: 35px;
      height: 2px;
      background: #fff;
      position: absolute;
      top: 50%;
      margin-top: -1px;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      left: 0;
      right: 0;
      margin: 0 auto; }
    .modal_mat .modal_close:after {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }

/* 記事詳細Products Featuredパーツ */
@media screen and (min-width: 768px), print {
  .products_featured {
    margin: 0 5vw 65px; } }

@media screen and (max-width: 767px), print {
  .products_featured {
    margin: 0 5vw 40px; } }

@media screen and (min-width: 768px), print {
  .products_featured .inner {
    width: 100%;
    margin: 0 auto; } }

@media screen and (min-width: 768px), print {
  .products_featured h4 {
    margin-bottom: 1em; } }

@media screen and (max-width: 767px), print {
  .products_featured h4 {
    margin-bottom: 1em; } }

.products_featured ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media screen and (max-width: 767px), print {
    .products_featured ul {
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; } }

.products_featured li {
  margin-bottom: 1.5em; }
  @media screen and (min-width: 768px), print {
    .products_featured li {
      width: 31.25%;
      margin-right: 3.125%; }
      .products_featured li:nth-child(3n) {
        margin-right: 0; } }
  @media screen and (max-width: 767px), print {
    .products_featured li:first-child .products_featured__thum {
      width: 90vw;
      height: 90vw; }
      .products_featured li:first-child .products_featured__thum_img {
        width: 90vw;
        height: 90vw;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat; } }

.products_featured a {
  display: block; }
  .products_featured a b {
    font-size: 16px;
    font-weight: bold; }

@media screen and (min-width: 768px), print {
  .products_featured__thum {
    width: 100%; } }

@media screen and (max-width: 767px), print {
  .products_featured__thum {
    width: 43vw;
    height: 43vw;
    margin-bottom: 0.5em; } }

.products_featured__thum_img {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  @media screen and (min-width: 768px), print {
    .products_featured__thum_img {
      width: 100%;
      height: 26vw;
      max-height: 250px; } }
  @media screen and (max-width: 767px), print {
    .products_featured__thum_img {
      width: 43vw;
      height: 43vw; } }

/* フォトグラファー詳細GEARパーツ */
@media screen and (min-width: 768px), print {
  .gearlist .inner {
    width: 100%;
    max-width: 800px;
    margin: 0 auto; } }

@media screen and (min-width: 768px), print {
  .gearlist h4 {
    margin-bottom: 1em; } }

@media screen and (max-width: 767px), print {
  .gearlist h4 {
    margin-bottom: 1em; } }

.gearlist ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media screen and (max-width: 767px), print {
    .gearlist ul {
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; } }

.gearlist li {
  margin-bottom: 1.5em; }
  @media screen and (min-width: 768px), print {
    .gearlist li {
      width: 18.5%;
      margin-right: 1.86%; }
      .gearlist li:nth-child(5n) {
        margin-right: 0; } }
  @media screen and (max-width: 767px), print {
    .gearlist li {
      margin-bottom: 1.2em; } }

.gearlist a {
  display: block; }
  .gearlist a b {
    font-size: 12px;
    font-weight: bold;
    display: block; }
    @media screen and (max-width: 767px), print {
      .gearlist a b {
        width: 43vw; } }

@media screen and (min-width: 768px), print {
  .gearlist__thum {
    width: 100%;
    margin-bottom: 0.5em; } }

@media screen and (max-width: 767px), print {
  .gearlist__thum {
    width: 43vw;
    height: 43vw;
    margin-bottom: 0.5em; } }

.gearlist__thum_img {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  @media screen and (min-width: 768px), print {
    .gearlist__thum_img {
      width: 100%;
      height: 26vw;
      max-height: 148px; } }
  @media screen and (max-width: 767px), print {
    .gearlist__thum_img {
      width: 43vw;
      height: 43vw; } }

/* プロダクト詳細用のフォトグラファースライダー */
.photographers_slider li {
  padding-bottom: 48px;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .photographers_slider li {
      margin: 0 12px; } }
  @media screen and (max-width: 767px), print {
    .photographers_slider li {
      margin: 0 4px;
      width: auto !important; } }
  .photographers_slider li.slick-active .photographers__image {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .photographers_slider li.slick-active .photographers_slider__overtexts {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .photographers_slider li .photographers__image {
    opacity: 0.5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; }
  @media screen and (min-width: 768px), print {
    .photographers_slider li .photographers_slider__overtexts {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }
  @media screen and (max-width: 767px), print {
    .photographers_slider li .photographers_slider__overtexts {
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

.photographers_slider a {
  display: block;
  position: relative;
  background: #000;
  color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media screen and (min-width: 768px), print {
    .photographers_slider a:hover .icn_arrow {
      right: 8px; }
    .photographers_slider a:hover .photographers__texts {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .photographers_slider a:hover .photographers__profile_photo {
      -webkit-transform: scale(1) rotateY(0deg);
              transform: scale(1) rotateY(0deg); }
    .photographers_slider a:hover .photographers__profile_name {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
    .photographers_slider a:hover .photographers__profile_title {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
    .photographers_slider a:hover .photographers__image_texts {
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

.photographers_slider img {
  width: auto; }
  @media screen and (min-width: 768px), print {
    .photographers_slider img {
      height: 534px; } }
  @media screen and (max-width: 767px), print {
    .photographers_slider img {
      height: 160px; } }

.photographers_slider__overtexts {
  text-align: center;
  position: absolute;
  color: #1b1b1b;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 100%;
  transition: opacity 0.5s linear; }
  @media screen and (min-width: 768px), print {
    .photographers_slider__overtexts {
      top: 540px; } }
  @media screen and (max-width: 767px), print {
    .photographers_slider__overtexts {
      top: 170px; } }

.photographers_slider .photographers__image {
  transition: opacity 0.5s linear; }

.photographers_slider .slick-prev, .photographers_slider .slick-next {
  margin-top: -44px; }

/* あとでeditar-styleに移すかも */
/* 拡大されるイメージの投稿方法について、小田さん内田さんと相談必要 */
.wp_content {
  font-size: 14px;
  line-height: 2;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .wp_content {
      max-width: 800px;
      margin: 0 auto;
      padding-bottom: 60px;
      margin-bottom: 40px; } }
  @media screen and (max-width: 767px), print {
    .wp_content {
      padding-bottom: 58px;
      margin-bottom: 30px; } }
  .wp_content *:last-child {
    margin-bottom: 0; }

@media screen and (min-width: 768px), print {
  .wp_content p {
    margin-bottom: 64px; } }

@media screen and (max-width: 767px), print {
  .wp_content p {
    margin-bottom: 48px; } }

.wp_content a,
.productspost__about__commentary a {
  color: #17a174;
  text-decoration: underline; }
  @media screen and (min-width: 768px), print {
    .wp_content a:hover,
    .productspost__about__commentary a:hover {
      text-decoration: none; } }

.wp_content .wp-caption,
.productspost__about__commentary .wp-caption {
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .wp_content .wp-caption,
    .productspost__about__commentary .wp-caption {
      margin-bottom: 64px; } }
  @media screen and (max-width: 767px), print {
    .wp_content .wp-caption,
    .productspost__about__commentary .wp-caption {
      margin-bottom: 48px; } }
  .wp_content .wp-caption img, .wp_content .wp-caption iframe,
  .productspost__about__commentary .wp-caption img,
  .productspost__about__commentary .wp-caption iframe {
    margin-bottom: 0.5em; }
  .wp_content .wp-caption-text,
  .productspost__about__commentary .wp-caption-text {
    font-size: 10px;
    max-width: 800px;
    margin: 0 auto; }
  .wp_content .wp-caption img, .wp_content .wp-caption iframe,
  .productspost__about__commentary .wp-caption img,
  .productspost__about__commentary .wp-caption iframe {
    display: block;
    width: auto;
    margin: 0 auto; }
    @media screen and (min-width: 768px), print {
      .wp_content .wp-caption img, .wp_content .wp-caption iframe,
      .productspost__about__commentary .wp-caption img,
      .productspost__about__commentary .wp-caption iframe {
        max-width: none;
        position: relative;
        width: 90vw;
        max-width: 1100px !important;
        left: 50vw;
        -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        /* 親要素の幅から解放 */
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
        /*親要素の幅分、中身をセンタリング*/ } }
    @media screen and (max-width: 767px), print {
      .wp_content .wp-caption img, .wp_content .wp-caption iframe,
      .productspost__about__commentary .wp-caption img,
      .productspost__about__commentary .wp-caption iframe {
        width: 100%; } }

.wp_content h2, .wp_content h3, .wp_content h4, .wp_content h5,
.productspost__about__commentary h2,
.productspost__about__commentary h3,
.productspost__about__commentary h4,
.productspost__about__commentary h5 {
  font-family: "Fjalla One", sans-serif;
  line-height: 1.4; }
  @media screen and (min-width: 768px), print {
    .wp_content h2, .wp_content h3, .wp_content h4, .wp_content h5,
    .productspost__about__commentary h2,
    .productspost__about__commentary h3,
    .productspost__about__commentary h4,
    .productspost__about__commentary h5 {
      margin-bottom: 2em; } }
  @media screen and (max-width: 767px), print {
    .wp_content h2, .wp_content h3, .wp_content h4, .wp_content h5,
    .productspost__about__commentary h2,
    .productspost__about__commentary h3,
    .productspost__about__commentary h4,
    .productspost__about__commentary h5 {
      margin-bottom: 25px; } }

.wp_content h4, .wp_content h5,
.productspost__about__commentary h4,
.productspost__about__commentary h5 {
  font-weight: bold; }

.wp_content h2,
.productspost__about__commentary h2 {
  padding-bottom: 0.6em;
  border-bottom: 2px solid #bfbfbf;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .wp_content h2,
    .productspost__about__commentary h2 {
      font-size: 24px;
      margin-top: 64px; } }
  @media screen and (max-width: 767px), print {
    .wp_content h2,
    .productspost__about__commentary h2 {
      font-size: 18px; } }
  .wp_content h2:before,
  .productspost__about__commentary h2:before {
    content: "";
    height: 2px;
    background: #1b1b1b;
    position: absolute;
    left: 0;
    bottom: -2px; }
    @media screen and (min-width: 768px), print {
      .wp_content h2:before,
      .productspost__about__commentary h2:before {
        width: 306px; } }
    @media screen and (max-width: 767px), print {
      .wp_content h2:before,
      .productspost__about__commentary h2:before {
        width: 110px; } }

.wp_content h3,
.productspost__about__commentary h3 {
  padding-left: 1em;
  border-left: 2px solid #1b1b1b; }
  @media screen and (min-width: 768px), print {
    .wp_content h3,
    .productspost__about__commentary h3 {
      font-size: 20px;
      padding-top: 3px; } }
  @media screen and (max-width: 767px), print {
    .wp_content h3,
    .productspost__about__commentary h3 {
      padding-top: 1px;
      font-size: 16px; } }

.wp_content h4,
.productspost__about__commentary h4 {
  background: #f3f3f3;
  padding: 1em 1.5em 0.8em; }
  @media screen and (min-width: 768px), print {
    .wp_content h4,
    .productspost__about__commentary h4 {
      font-size: 18px; } }
  @media screen and (max-width: 767px), print {
    .wp_content h4,
    .productspost__about__commentary h4 {
      font-size: 14px; } }

@media screen and (min-width: 768px), print {
  .wp_content h5,
  .productspost__about__commentary h5 {
    font-size: 16px; } }

@media screen and (max-width: 767px), print {
  .wp_content h5,
  .productspost__about__commentary h5 {
    font-size: 14px; } }

.wp_content ul,
.productspost__about__commentary ul {
  padding-left: 1.5em; }
  @media screen and (min-width: 768px), print {
    .wp_content ul,
    .productspost__about__commentary ul {
      margin-bottom: 64px; } }
  @media screen and (max-width: 767px), print {
    .wp_content ul,
    .productspost__about__commentary ul {
      margin-bottom: 48px; } }
  .wp_content ul li,
  .productspost__about__commentary ul li {
    list-style: disc; }

.wp_content ol,
.productspost__about__commentary ol {
  padding-left: 1.4em; }
  @media screen and (min-width: 768px), print {
    .wp_content ol,
    .productspost__about__commentary ol {
      margin-bottom: 64px; } }
  @media screen and (max-width: 767px), print {
    .wp_content ol,
    .productspost__about__commentary ol {
      margin-bottom: 48px; } }
  .wp_content ol li,
  .productspost__about__commentary ol li {
    list-style: decimal; }

.wp_content .alignleft,
.productspost__about__commentary .alignleft {
  float: left;
  /* 拡大イメージの応急処置 */ }
  @media screen and (min-width: 768px), print {
    .wp_content .alignleft,
    .productspost__about__commentary .alignleft {
      max-width: none;
      padding-right: 40px;
      margin-bottom: 1em; } }
  @media screen and (min-width: 768px), print {
    .wp_content .alignleft img,
    .productspost__about__commentary .alignleft img {
      left: auto;
      -webkit-transform: none;
              transform: none;
      margin-right: 0;
      margin-left: 0; } }

.wp_content .alignright,
.productspost__about__commentary .alignright {
  float: right;
  /* 拡大イメージの応急処置 */ }
  @media screen and (min-width: 768px), print {
    .wp_content .alignright,
    .productspost__about__commentary .alignright {
      max-width: none;
      padding-left: 40px;
      margin-bottom: 1em; } }
  @media screen and (min-width: 768px), print {
    .wp_content .alignright img,
    .productspost__about__commentary .alignright img {
      left: auto;
      -webkit-transform: none;
              transform: none;
      margin-right: 0;
      margin-left: 0; } }

.wp_content .aligncenter,
.productspost__about__commentary .aligncenter {
  text-align: center;
  margin: auto;
  display: block; }
  .wp_content .aligncenter img,
  .productspost__about__commentary .aligncenter img {
    display: inline-block; }

.wp_content .alignnone,
.productspost__about__commentary .alignnone {
  clear: both; }

.wp_content table,
.productspost__about__commentary table {
  width: 100%; }
  @media screen and (min-width: 768px), print {
    .wp_content table,
    .productspost__about__commentary table {
      margin-bottom: 64px; } }
  @media screen and (max-width: 767px), print {
    .wp_content table,
    .productspost__about__commentary table {
      margin-bottom: 48px; } }
  .wp_content table td, .wp_content table th,
  .productspost__about__commentary table td,
  .productspost__about__commentary table th {
    border: 1px solid #bfbfbf;
    line-height: 1.6; }
  .wp_content table th,
  .productspost__about__commentary table th {
    background: #f3f3f3;
    padding: 0.6em 1em 0.5em; }
  .wp_content table td,
  .productspost__about__commentary table td {
    padding: 0.7em 1em; }

.wp_content b,
.productspost__about__commentary b {
  font-weight: bold; }

@media screen and (min-width: 768px), print {
  .wp_content iframe,
  .productspost__about__commentary iframe {
    width: 100vw;
    max-width: 100%;
    height: 56vw;
    max-height: 450px; } }

@media screen and (max-width: 767px), print {
  .wp_content iframe,
  .productspost__about__commentary iframe {
    width: 100vw;
    max-width: 100%;
    height: 56vw; } }

.wp_content blockquote,
.productspost__about__commentary blockquote {
  background: #f3f3f3;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .wp_content blockquote,
    .productspost__about__commentary blockquote {
      margin-bottom: 64px;
      padding: 2.5em 4em 2em; } }
  @media screen and (max-width: 767px), print {
    .wp_content blockquote,
    .productspost__about__commentary blockquote {
      padding: 2.8em 2em 2em;
      margin-bottom: 48px; } }
  .wp_content blockquote:before,
  .productspost__about__commentary blockquote:before {
    content: "";
    color: #bfbfbf;
    position: absolute;
    left: 1px;
    top: 0;
    line-height: 0.8;
    background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/icn_q.png) no-repeat center;
    background-size: cover; }
    @media screen and (min-width: 768px), print {
      .wp_content blockquote:before,
      .productspost__about__commentary blockquote:before {
        font-size: 128px;
        width: 44px;
        height: 39px; } }
    @media screen and (max-width: 767px), print {
      .wp_content blockquote:before,
      .productspost__about__commentary blockquote:before {
        font-size: 104px;
        width: 37px;
        height: 32px; } }
  .wp_content blockquote:after,
  .productspost__about__commentary blockquote:after {
    content: "";
    color: #bfbfbf;
    position: absolute;
    right: 1px;
    bottom: 0;
    line-height: 0.8;
    background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/icn_q.png) no-repeat center;
    background-size: cover;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
    @media screen and (min-width: 768px), print {
      .wp_content blockquote:after,
      .productspost__about__commentary blockquote:after {
        font-size: 128px;
        width: 44px;
        height: 39px; } }
    @media screen and (max-width: 767px), print {
      .wp_content blockquote:after,
      .productspost__about__commentary blockquote:after {
        font-size: 104px;
        width: 37px;
        height: 32px; } }
  .wp_content blockquote *:last-child,
  .productspost__about__commentary blockquote *:last-child {
    margin-bottom: 0; }

.wp_btn {
  display: block;
  /* background: #17a174; */
  background: #17a58f;
  text-decoration: none !important;
  text-align: center;
  font-weight: bold;
  margin: 0 auto 1em;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .wp_btn {
      padding: 1em 2em; } }
  @media screen and (max-width: 767px), print {
    .wp_btn {
      padding: 1em; } }
  .wp_btn span {
    color: #fff; }
    @media screen and (min-width: 768px), print {
      .wp_btn span {
        font-size: 16px; } }
  .wp_btn.bg_red {
    background: #bd081c; }
  .wp_btn.bg_black {
    background: black; }
  .wp_btn.bg_white {
    background: white;
    border: 1px solid black; }
    .wp_btn.bg_white span {
      color: black; }
  @media screen and (min-width: 768px), print {
    .wp_btn__01 {
      width: 480px; } }
  @media screen and (max-width: 767px), print {
    .wp_btn__01 {
      width: 224px; } }
  .wp_btn__01_01 {
    padding-right: 4.5em;
    position: relative;
    text-align: left; }
    .wp_btn__01_01:before {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 17px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__01_01:before {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__01_01:before {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    .wp_btn__01_01:after {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 22px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__01_01:after {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__01_01:after {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    @media screen and (min-width: 768px), print {
      .wp_btn__01_01 {
        width: 480px; } }
    @media screen and (max-width: 767px), print {
      .wp_btn__01_01 {
        width: 224px; } }
    .wp_btn__01_01 span:after {
      content: "MORE";
      position: absolute;
      font-family: "Fjalla One", sans-serif;
      top: 50%;
      margin-top: -0.9em;
      font-weight: normal; }
      @media screen and (min-width: 768px), print {
        .wp_btn__01_01 span:after {
          right: 35px;
          font-size: 14px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__01_01 span:after {
          right: 30px;
          font-size: 12px; } }
    .wp_btn__01_01:before {
      border-color: #fff; }
    .wp_btn__01_01:after {
      border-color: #fff; }
  .wp_btn__01_02 {
    padding-right: 2.5em;
    position: relative; }
    .wp_btn__01_02:before {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 17px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__01_02:before {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__01_02:before {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    .wp_btn__01_02:after {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 22px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__01_02:after {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__01_02:after {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    @media screen and (min-width: 768px), print {
      .wp_btn__01_02 {
        width: 480px; } }
    @media screen and (max-width: 767px), print {
      .wp_btn__01_02 {
        width: 224px; } }
    .wp_btn__01_02:before {
      border-color: #fff; }
    .wp_btn__01_02:after {
      border-color: #fff; }
  .wp_btn__02 {
    width: 100%; }
  .wp_btn__02_01 {
    width: 100%;
    position: relative;
    padding-right: 4.5em;
    text-align: left; }
    .wp_btn__02_01:before {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 17px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__02_01:before {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__02_01:before {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    .wp_btn__02_01:after {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 22px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__02_01:after {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__02_01:after {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    .wp_btn__02_01 span:after {
      content: "MORE";
      position: absolute;
      font-family: "Fjalla One", sans-serif;
      top: 50%;
      margin-top: -0.9em;
      font-weight: normal; }
      @media screen and (min-width: 768px), print {
        .wp_btn__02_01 span:after {
          right: 35px;
          font-size: 14px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__02_01 span:after {
          right: 30px;
          font-size: 12px; } }
    .wp_btn__02_01:before {
      border-color: #fff; }
    .wp_btn__02_01:after {
      border-color: #fff; }
  .wp_btn__03 {
    display: inline-block; }
    @media screen and (min-width: 768px), print {
      .wp_btn__03 {
        width: 240px;
        font-size: 14px; } }
    @media screen and (max-width: 767px), print {
      .wp_btn__03 {
        width: 48%;
        font-size: 13px; } }
  .wp_btn__03_01 {
    display: inline-block;
    padding-right: 2.5em;
    position: relative; }
    .wp_btn__03_01:before {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 17px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__03_01:before {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__03_01:before {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    .wp_btn__03_01:after {
      content: "";
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      position: absolute;
      right: 22px;
      top: 50%;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
      @media screen and (min-width: 768px), print {
        .wp_btn__03_01:after {
          margin-top: -3px;
          width: 7px;
          height: 7px; } }
      @media screen and (max-width: 767px), print {
        .wp_btn__03_01:after {
          margin-top: -2px;
          width: 5px;
          height: 5px; } }
    @media screen and (min-width: 768px), print {
      .wp_btn__03_01 {
        width: 240px;
        font-size: 14px; } }
    @media screen and (max-width: 767px), print {
      .wp_btn__03_01 {
        width: 48%;
        font-size: 13px; } }
    .wp_btn__03_01:before {
      border-color: #fff; }
    .wp_btn__03_01:after {
      border-color: #fff; }

.wp_flexbox {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding: 0 !important; }
  .wp_flexbox li {
    line-height: 1.45;
    list-style: none !important; }
    .wp_flexbox li img {
      display: inline-block;
      max-width: 100%;
      width: 100%; }
  @media screen and (min-width: 768px), print {
    .wp_flexbox {
      margin-left: -7.5vw;
      max-width: 1100px;
      width: 90vw; }
      .wp_flexbox li {
        margin-left: 0.75vw;
        margin-right: 0.75vw;
        margin-top: 0.75vw;
        width: 100%; }
        .wp_flexbox li img {
          margin-bottom: 0.25vw; }
      .wp_flexbox.col5 li {
        width: calc((100% - 6vw) / 5); }
        .wp_flexbox.col5 li:nth-of-type(5n) {
          margin-right: 0; }
        .wp_flexbox.col5 li:nth-of-type(5n+1) {
          margin-left: 0; }
        .wp_flexbox.col5 li:nth-of-type(n+6) {
          margin-top: 1.25vw; }
      .wp_flexbox.col4 li {
        width: calc((100% - 4.5vw) / 4); }
        .wp_flexbox.col4 li:nth-of-type(4n) {
          margin-right: 0; }
        .wp_flexbox.col4 li:nth-of-type(4n+1) {
          margin-left: 0; }
        .wp_flexbox.col4 li:nth-of-type(n+5) {
          margin-top: 1.25vw; }
      .wp_flexbox.col3 li {
        width: calc((100% - 3vw) / 3); }
        .wp_flexbox.col3 li:nth-of-type(3n) {
          margin-right: 0; }
        .wp_flexbox.col3 li:nth-of-type(3n+1) {
          margin-left: 0; }
        .wp_flexbox.col3 li:nth-of-type(n+4) {
          margin-top: 1.25vw; }
      .wp_flexbox.col2 li {
        width: calc((100% - 1.5vw) / 2); }
        .wp_flexbox.col2 li:nth-of-type(2n) {
          margin-right: 0; }
        .wp_flexbox.col2 li:nth-of-type(2n+1) {
          margin-left: 0; }
        .wp_flexbox.col2 li:nth-of-type(n+3) {
          margin-top: 1.25vw; } }
  @media screen and (min-width: 1200px), print {
    .wp_flexbox {
      margin-left: -150px; } }
  @media screen and (max-width: 767px), print {
    .wp_flexbox li:nth-of-type(n+3) {
      margin-top: 4vw; }
    .wp_flexbox li img {
      margin-bottom: 2vw; }
    .wp_flexbox li,
    .wp_flexbox.col2 li {
      width: 100%; }
    .wp_flexbox.col5 li, .wp_flexbox.col4 li, .wp_flexbox.col3 li {
      width: calc((100% / 2) - 2vw); }
      .wp_flexbox.col5 li:nth-of-type(even), .wp_flexbox.col4 li:nth-of-type(even), .wp_flexbox.col3 li:nth-of-type(even) {
        margin-left: 4vw; } }

.productspost__about__commentary h3, .productspost__about__commentary h4, .productspost__about__commentary h5 {
  margin-bottom: 1em;
  margin-top: 2em; }

@media screen and (min-width: 768px), print {
  .productspost__about__commentary .wp-caption {
    margin-top: 32px; } }

@media screen and (max-width: 767px), print {
  .productspost__about__commentary .wp-caption {
    margin-top: 24px; } }

.main__products .kv_dark .productspost__mainvisual div {
  background-color: rgba(0, 0, 0, 0.2);
  height: 100%; }

.main__products .kv_light .headline_underline {
  color: #1b1b1b; }
  @media screen and (max-width: 767px), print {
    .main__products .kv_light .headline_underline {
      margin-top: 0;
      position: relative;
      top: 0; } }

@media screen and (max-width: 767px), print {
  .main__products .kv_light + .productspost__about {
    margin-top: 24px; } }

.top__firstview .inner {
  position: relative; }
  @media screen and (min-width: 768px), print {
    .top__firstview .inner {
      height: 100vh;
      padding-top: 72px;
      box-sizing: border-box; } }
  @media screen and (max-width: 767px), print {
    .top__firstview .inner {
      padding-top: 48px; } }

@media screen and (min-width: 768px), print {
  .top__xstories {
    margin-bottom: calc(105px - 2vw);
    bottom: -2vw; } }

@media screen and (max-width: 767px), print {
  .top__xstories {
    margin-bottom: 64px; } }

@media screen and (min-width: 768px), print {
  .top__xstories .inner {
    padding: 0 40px; } }

@media screen and (max-width: 767px), print {
  .top__xstories .inner {
    padding: 0 16px; } }

@media screen and (min-width: 768px), print {
  .top__xphotographers {
    margin-bottom: calc(105px - 16px); } }

@media screen and (max-width: 767px), print {
  .top__xphotographers {
    margin-bottom: 60px; } }

@media screen and (min-width: 768px), print {
  .top__xphotographers .inner {
    padding: 0 16px; } }

@media screen and (max-width: 767px), print {
  .top__xphotographers .inner {
    padding: 0 8px; } }

@media screen and (min-width: 768px), print {
  .top__xphotographers .section__title {
    margin: 0 24px 27px; } }

@media screen and (max-width: 767px), print {
  .top__xphotographers .section__title {
    margin: 0 8px; } }

.top__xphotographers .tab__wrap {
  position: relative; }

.top__xphotographers .tab__box {
  display: block;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0; }
  .top__xphotographers .tab__box.on {
    position: relative;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    z-index: 1; }

@media screen and (min-width: 768px), print {
  .top__events {
    margin-bottom: calc(105px - 2vw); } }

@media screen and (max-width: 767px), print {
  .top__events {
    margin-bottom: 60px; } }

@media screen and (min-width: 768px), print {
  .top__events .inner {
    padding: 0 40px; } }

@media screen and (max-width: 767px), print {
  .top__events .inner {
    padding: 0 16px; } }

@media screen and (min-width: 768px), print {
  .top__news {
    margin-bottom: calc(105px - 2vw); } }

@media screen and (max-width: 767px), print {
  .top__news {
    margin-bottom: 60px; } }

@media screen and (min-width: 768px), print {
  .top__news .inner {
    padding: 0 40px; } }

@media screen and (max-width: 767px), print {
  .top__news .inner {
    padding: 0 16px; } }

@media screen and (max-width: 767px), print {
  .top__news .section__title {
    height: 15px; } }

@media screen and (min-width: 768px), print {
  .top__form {
    margin-bottom: 48px; } }

@media screen and (max-width: 767px), print {
  .top__form {
    margin-bottom: 80px; } }

@media screen and (min-width: 768px), print {
  .top__form .inner {
    padding: 0 40px; } }

@media screen and (max-width: 767px), print {
  .top__form .inner {
    padding: 0 16px; } }

@media screen and (min-width: 768px), print {
  .lower__first {
    padding-top: 72px; } }

@media screen and (max-width: 767px), print {
  .lower__first {
    padding-top: 48px; } }

@media screen and (min-width: 768px), print {
  .lower__first .inner {
    padding-top: 72px; } }

@media screen and (max-width: 767px), print {
  .lower__first .inner {
    padding-top: 48px; } }

.lower__first h1 {
  display: block; }

@media screen and (min-width: 768px), print {
  .lower__contents {
    margin-bottom: 94px; } }

@media screen and (max-width: 767px), print {
  .lower__contents {
    margin-bottom: 60px; } }

.xstories__first {
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .xstories__first {
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px), print {
    .xstories__first {
      margin-bottom: 30px;
      overflow: hidden; } }
  @media screen and (min-width: 768px), print {
    .xstories__first h1 {
      width: 270px;
      margin: 0 auto 16px; }
      .xstories__first h1 img {
        width: 100%; } }
  @media screen and (max-width: 767px), print {
    .xstories__first h1 {
      width: 177px;
      margin: 0 auto 10px; } }
  @media screen and (min-width: 768px), print {
    .xstories__first h1 + p, .xstories__first h1 + .tagline {
      font-size: 14px;
      margin: 24px auto 60px; } }
  @media screen and (max-width: 767px), print {
    .xstories__first h1 + p, .xstories__first h1 + .tagline {
      font-size: 10px;
      margin: 24px auto 35px; } }
  .xstories__first .tag_croud {
    position: relative;
    display: block;
    overflow: hidden;
    transition: height 0.25s ease-out; }
    @media screen and (min-width: 768px), print {
      .xstories__first .tag_croud {
        margin: 23px auto;
        height: 38px;
        padding-right: 20px; } }
    @media screen and (max-width: 767px), print {
      .xstories__first .tag_croud {
        margin: 16px 16px 0px;
        height: 88px; } }
    .xstories__first .tag_croud__wrap {
      position: relative; }
      @media screen and (min-width: 768px), print {
        .xstories__first .tag_croud__wrap {
          padding: 0 40px 25px;
          margin: 0 auto; } }
      @media screen and (max-width: 767px), print {
        .xstories__first .tag_croud__wrap {
          padding-bottom: 25px;
          margin-bottom: 10px; } }
    .xstories__first .tag_croud ul {
      display: block; }

@media screen and (max-width: 767px), print {
  .xstories__contents {
    margin: 0 16px; } }

@media screen and (min-width: 768px), print {
  .xstories__contents .postlist {
    padding: 0 40px 18px;
    border-bottom: 1px solid #ececec; } }

.xstories__contents .section__title {
  text-transform: capitalize; }
  @media screen and (min-width: 768px), print {
    .xstories__contents .section__title {
      margin: 0 40px 0px;
      margin-bottom: 64px; } }

@media screen and (min-width: 768px), print {
  .xstoriespost__first {
    margin-bottom: 50px; } }

@media screen and (max-width: 767px), print {
  .xstoriespost__first {
    margin-bottom: 30px; } }

.xstoriespost__first .inner {
  padding-top: 0px;
  position: relative; }

.xstoriespost__mainvisual {
  z-index: 0;
  position: relative;
  width: 100%; }
  @media screen and (min-width: 768px), print {
    .xstoriespost__mainvisual {
      margin-bottom: 30px;
      padding: 58px 0 0; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__mainvisual {
      margin-bottom: 20px;
      padding: 40px 5vw 0; } }
  .xstoriespost__mainvisual_bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0.32;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=32)";
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__mainvisual_bg {
        height: 387px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__mainvisual_bg {
        height: 50vw; } }
  @media screen and (min-width: 768px), print {
    .xstoriespost__mainvisual.wide {
      height: 521px; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__mainvisual.wide {
      height: 252px; } }
  .xstoriespost__mainvisual.wide .xstoriespost__mainvisual_bg {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__mainvisual.wide .xstoriespost__mainvisual_bg {
        height: 521px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__mainvisual.wide .xstoriespost__mainvisual_bg {
        height: 252px; } }
  .xstoriespost__mainvisual img {
    position: relative; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__mainvisual img {
        width: 800px;
        height: auto;
        margin: 0 auto;
        display: block;
        box-shadow: 0px 80px 80px -80px rgba(0, 0, 0, 0.6);
        z-index: 1; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__mainvisual img {
        box-shadow: 0px 25px 25px -25px rgba(0, 0, 0, 0.6); } }

.xstoriespost__titles {
  text-align: center;
  padding: 0 0 20px;
  border-bottom: 1px solid #bfbfbf; }
  @media screen and (min-width: 768px), print {
    .xstoriespost__titles {
      width: 100%;
      max-width: 800px;
      margin: 0 auto; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__titles {
      margin: 0 5vw; } }
  .xstoriespost__titles_date {
    display: block;
    font-size: 12px;
    line-height: 1;
    position: relative; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__titles_date {
        margin-bottom: 10px;
        padding-bottom: 10px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__titles_date {
        margin-bottom: 5px;
        padding-bottom: 10px; } }
    .xstoriespost__titles_date:after {
      content: "";
      background: #000;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      margin: 0 auto;
      width: 16px;
      height: 1px; }
    .xstoriespost__titles_date span {
      margin-left: 0.6em; }
  .xstoriespost__titles h1 {
    font-family: "Fjalla One", sans-serif;
    margin-bottom: 0.8em; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__titles h1 {
        font-size: 32px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__titles h1 {
        font-size: 24px; } }

.xstoriespost__photograher {
  font-size: 12px; }
  .xstoriespost__photograher p + p {
    margin-top: 1em; }
  @media screen and (min-width: 768px), print {
    .xstoriespost__photograher {
      padding-top: 55px;
      padding-left: 221px;
      max-width: 800px;
      min-height: 270px;
      width: 100%;
      margin: 0 auto 50px;
      position: relative;
      border-bottom: 1px solid #bfbfbf; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__photograher {
      padding-top: 32px; } }
  .xstoriespost__photograher_thum {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__photograher_thum {
        width: 160px;
        height: 160px;
        position: absolute;
        top: 55px;
        left: 0; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__photograher_thum {
        margin: 0 auto 15px;
        width: 104px;
        height: 104px; } }
  .xstoriespost__photograher_data_name {
    font-family: "Fjalla One", sans-serif;
    display: block; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__photograher_data_name {
        text-align: left;
        font-size: 32px;
        line-height: 1;
        margin-bottom: 0.7em; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__photograher_data_name {
        margin-bottom: 15px;
        text-align: center;
        font-size: 20px; } }
  @media screen and (min-width: 768px), print {
    .xstoriespost__photograher_data_profile {
      margin-bottom: 40px; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__photograher_data_profile {
      margin-bottom: 32px;
      padding: 0 5vw; } }
  .xstoriespost__photograher_data_motto {
    overflow: hidden;
    height: 8em;
    transition: height 0.25s ease-out; }
    @media screen and (max-width: 767px), print {
      .xstoriespost__photograher_data_motto {
        padding: 0 5vw; } }
    .xstoriespost__photograher_data_motto dt {
      font-size: 18px;
      font-family: "Fjalla One", sans-serif;
      margin-bottom: 16px; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__photograher_data_motto dd {
        margin-bottom: 40px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__photograher_data_motto dd {
        margin-bottom: 20px; } }
    .xstoriespost__photograher_data_motto_open {
      position: relative;
      width: 40px;
      margin: 0 auto;
      display: block;
      cursor: pointer;
      padding: 0;
      padding-top: 8px;
      position: relative;
      padding-right: 12px; }
      .xstoriespost__photograher_data_motto_open:before {
        content: "";
        width: 6px;
        height: 6px;
        border-top: 2px solid #1b1b1b;
        border-right: 2px solid #1b1b1b;
        position: absolute;
        display: block;
        right: 0px;
        top: 50%;
        -webkit-transform: translate(0, -5px) rotate(135deg);
                transform: translate(0, -5px) rotate(135deg);
        transition: all 0.25s ease-in-out; }
      @media screen and (min-width: 768px), print {
        .xstoriespost__photograher_data_motto_open {
          height: 20px; } }
      @media screen and (max-width: 767px), print {
        .xstoriespost__photograher_data_motto_open {
          height: 20px; } }
      .xstoriespost__photograher_data_motto_open:before {
        left: 0;
        right: 0;
        margin: 0 auto;
        top: 35%;
        margin-top: 8px; }
      .xstoriespost__photograher_data_motto_open.open {
        -webkit-transform: rotate(180deg) translate(0, -8px);
                transform: rotate(180deg) translate(0, -8px); }
      .xstoriespost__photograher_data_motto_open.hide {
        display: none !important; }
  .xstoriespost__photograher_data_more {
    margin-bottom: 25px; }
    @media screen and (max-width: 767px), print {
      .xstoriespost__photograher_data_more {
        padding: 0 5vw; } }
    .xstoriespost__photograher_data_more dt {
      font-size: 18px;
      font-family: "Fjalla One", sans-serif;
      margin-bottom: 16px; }
    .xstoriespost__photograher_data_more dd a {
      margin-bottom: 4px;
      text-decoration: underline;
      padding-left: 1em;
      display: block;
      position: relative; }
      .xstoriespost__photograher_data_more dd a:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 4px 0 4px 5px;
        border-color: transparent transparent transparent #1b1b1b;
        position: absolute;
        left: 0;
        top: 0.5em; }
  .xstoriespost__photograher_data_links {
    position: relative; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__photograher_data_links {
        padding-bottom: 55px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__photograher_data_links {
        padding-bottom: 30px;
        margin: 0 5vw 40px;
        border-bottom: 1px solid #bfbfbf; } }
    .xstoriespost__photograher_data_links ul {
      line-height: 0;
      width: 100%;
      text-align: left;
      font-size: 0;
      margin-top: 35px; }
      .xstoriespost__photograher_data_links ul:before {
        content: "Links:";
        font-size: 18px;
        font-family: "Fjalla One", sans-serif;
        display: inline-block;
        -webkit-transform: translate(0, 5px);
                transform: translate(0, 5px);
        margin-right: 4px;
        line-height: 1;
        vertical-align: top; }
    .xstoriespost__photograher_data_links li {
      border-radius: 3px;
      display: inline-block;
      overflow: hidden;
      margin: 0 4px;
      border: 1px solid #1b1b1b;
      border-radius: 50%;
      width: 26px;
      height: 26px;
      vertical-align: top; }
      .xstoriespost__photograher_data_links li a {
        width: 24px;
        height: 24px;
        display: block;
        text-align: center; }
      .xstoriespost__photograher_data_links li path, .xstoriespost__photograher_data_links li polygon {
        fill: #1b1b1b; }
      .xstoriespost__photograher_data_links li svg {
        width: 26px;
        height: 26px; }
      .xstoriespost__photograher_data_links li.fb a {
        padding: 4px 2px; }
      .xstoriespost__photograher_data_links li.fb svg {
        width: 16px;
        height: 16px; }
      .xstoriespost__photograher_data_links li.tw a {
        padding: 3px 0px; }
      .xstoriespost__photograher_data_links li.tw svg {
        width: 16px;
        height: 17px; }
      .xstoriespost__photograher_data_links li.instagram a {
        padding: 3px 0px; }
      .xstoriespost__photograher_data_links li.instagram svg {
        width: 16px;
        height: 18px; }
      .xstoriespost__photograher_data_links li.yt a {
        padding-top: 2px; }
      .xstoriespost__photograher_data_links li.yt svg {
        width: 18px;
        height: 19px; }
      .xstoriespost__photograher_data_links li.pin a {
        padding-top: 2px; }
      .xstoriespost__photograher_data_links li.pin svg {
        width: 17px;
        height: 20px; }
      .xstoriespost__photograher_data_links li.gp a {
        padding-top: 2px; }
      .xstoriespost__photograher_data_links li.gp svg {
        width: 17px;
        height: 20px; }
      .xstoriespost__photograher_data_links li.other a {
        padding: 7px; }
      .xstoriespost__photograher_data_links li.other svg {
        width: 10px;
        height: 10px; }

@media screen and (min-width: 768px), print {
  .xstoriespost__contents {
    margin: 0 5vw 100px; } }

@media screen and (max-width: 767px), print {
  .xstoriespost__contents {
    margin: 0 5vw 60px; } }

@media screen and (min-width: 768px), print {
  .xstoriespost__contents.others {
    margin: 64px 5vw 100px; } }

@media screen and (max-width: 767px), print {
  .xstoriespost__contents.others {
    margin: 48px 5vw 60px; } }

@media screen and (min-width: 768px), print {
  .xstoriespost__categories {
    width: 100%;
    max-width: 800px;
    margin: 0 auto 40px; } }

@media screen and (max-width: 767px), print {
  .xstoriespost__categories {
    margin-bottom: 40px; } }

.xstoriespost__categories h3 {
  margin-bottom: 0.5em; }

.xstoriespost__categories li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-right: 0.5em; }
  .xstoriespost__categories li:after {
    content: ",";
    line-height: 1;
    display: block;
    position: absolute;
    right: -0.5em;
    bottom: 0.3em; }
  .xstoriespost__categories li:last-child:after {
    display: none; }

.xstoriespost__categories a {
  text-decoration: underline;
  font-size: 12px;
  display: block; }

@media screen and (min-width: 768px), print {
  .xstoriespost__tags {
    margin-bottom: 25px;
    width: 100%;
    max-width: 800px;
    margin: 0 auto; } }

@media screen and (max-width: 767px), print {
  .xstoriespost__tags {
    margin-bottom: 40px; } }

.xstoriespost__tags h3 {
  margin-bottom: 0.5em; }

.xstoriespost__tags li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-right: 0.5em; }
  .xstoriespost__tags li:after {
    content: ",";
    line-height: 1;
    display: block;
    position: absolute;
    right: -0.5em;
    bottom: 0.3em; }
  .xstoriespost__tags li:last-child:after {
    display: none; }

.xstoriespost__tags a {
  text-decoration: underline;
  font-size: 12px;
  display: block; }

@media screen and (min-width: 768px), print {
  .xstoriespost__related {
    margin: 0 5vw 40px; } }

@media screen and (max-width: 767px), print {
  .xstoriespost__related {
    margin: 0 5vw 40px; } }

@media screen and (min-width: 768px), print {
  .xstoriespost__related .inner {
    width: 100%;
    margin: 0 auto 40px; } }

.xstoriespost__related h4 {
  margin-bottom: 1em; }
/* 2019/06/19 START */
.xstoriespost__youtube {
  width: 55%;
  height: 0;
  position: relative;
  padding-top: 31%;
  margin: 0 auto 160px; }
@media screen and (max-width: 768px), print {
  .xstoriespost__youtube {
    width: 90%;
    padding-top: 50%;
    margin-bottom: 140px; } }
.xstoriespost__youtube iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }
/* 2019/06/19 E N D */
.xstoriespost__databox {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  @media screen and (min-width: 768px), print {
    .xstoriespost__databox {
      margin-bottom: 100px; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__databox {
      margin-bottom: 65px; } }
  .xstoriespost__databox:before {
    content: "";
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 0; }
  .xstoriespost__databox .inner {
    position: relative;
    z-index: 1;
    color: #fff; }
    @media screen and (min-width: 768px), print {
      .xstoriespost__databox .inner {
        max-width: 840px;
        width: 100%;
        margin: 0 auto;
        padding: 55px 20px; } }
    @media screen and (max-width: 767px), print {
      .xstoriespost__databox .inner {
        margin: 0 5vw;
        padding: 45px 0 25px; } }
  @media screen and (min-width: 768px), print {
    .xstoriespost__databox_texts {
      margin-bottom: 46px; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__databox_texts {
      margin-bottom: 38px; } }
  .xstoriespost__databox_texts .headline_h3 {
    margin-bottom: 0.8em;
    display: block; }
  @media screen and (min-width: 768px), print {
    .xstoriespost__databox_texts p {
      font-size: 14px; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__databox_texts p {
      font-size: 12px; } }
  @media screen and (min-width: 768px), print {
    .xstoriespost__databox_gear {
      margin-top: 40px; } }
  @media screen and (max-width: 767px), print {
    .xstoriespost__databox_gear {
      margin-top: 25px; } }
  .xstoriespost__databox_gear .headline_h3 {
    margin-bottom: 1em;
    display: block; }

.xphotographers__first {
  text-align: center; }
  @media screen and (max-width: 767px), print {
    .xphotographers__first {
      overflow: hidden;
      margin-bottom: 60px; } }
  @media screen and (min-width: 768px), print {
    .xphotographers__first h1 {
      width: 422px;
      margin: 0 auto 16px; }
      .xphotographers__first h1 img {
        width: 100%; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__first h1 {
      width: 266px;
      margin: 0 auto 10px;
      padding-bottom: 10px; } }
  @media screen and (min-width: 768px), print {
    .xphotographers__first h1 + p, .xphotographers__first h1 + .tagline {
      font-size: 14px;
      margin: 24px auto 60px; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__first h1 + p, .xphotographers__first h1 + .tagline {
      font-size: 10px;
      margin: 24px auto 35px; } }
  .xphotographers__first .tag_croud {
    position: relative;
    display: block;
    overflow: hidden;
    transition: height 0.25s ease-out; }
    @media screen and (min-width: 768px), print {
      .xphotographers__first .tag_croud {
        margin: 23px auto 0;
        height: 38px;
        padding-right: 20px; } }
    @media screen and (max-width: 767px), print {
      .xphotographers__first .tag_croud {
        margin: 16px 16px 0px;
        height: 88px; } }
    .xphotographers__first .tag_croud__wrap {
      position: relative; }
      @media screen and (min-width: 768px), print {
        .xphotographers__first .tag_croud__wrap {
          padding: 0 40px 25px;
          margin: 0 auto; } }
      @media screen and (max-width: 767px), print {
        .xphotographers__first .tag_croud__wrap {
          padding-bottom: 25px;
          margin-bottom: 17px; } }
    .xphotographers__first .tag_croud ul {
      display: block; }
  @media screen and (min-width: 768px), print {
    .xphotographers__first .alphabet {
      padding: 0 40px;
      margin-bottom: 64px;
      margin-top: 23px; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__first .alphabet {
      margin-bottom: 32px;
      margin-top: 16px; } }
  .xphotographers__first .alphabet .tag_croud {
    margin-top: 0; }
    @media screen and (max-width: 767px), print {
      .xphotographers__first .alphabet .tag_croud {
        overflow: hidden;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        height: 50px; } }
  @media screen and (min-width: 768px), print {
    .xphotographers__first .alphabet ul {
      padding-left: 0; }
      .xphotographers__first .alphabet ul:after {
        display: none; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__first .alphabet ul {
      text-align: left;
      white-space: nowrap; } }

.xphotographers__countrypickup {
  background: #1b1b1b; }
  @media screen and (min-width: 768px), print {
    .xphotographers__countrypickup {
      padding: 56px 16px 32px;
      margin-bottom: 105px; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__countrypickup {
      padding: 40px 8px;
      margin-bottom: 60px; } }
  .xphotographers__countrypickup .tab__wrap {
    position: relative; }
  .xphotographers__countrypickup .tab__box {
    display: block;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0; }
    .xphotographers__countrypickup .tab__box.on {
      position: relative;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      z-index: 1; }
  .xphotographers__countrypickup .section__title {
    color: #fff; }
    @media screen and (min-width: 768px), print {
      .xphotographers__countrypickup .section__title {
        margin: 0 24px 16px;
        text-transform: capitalize; } }
    @media screen and (max-width: 767px), print {
      .xphotographers__countrypickup .section__title {
        display: flex;
        display: -webkit-flex;
        display: -ms-flexbox;
        justify-content: space-between;
        -webkit-justify-content: space-between;
        align-items: flex-start;
        -webkit-align-items: flex-start;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        padding: 0 8px;
        margin-bottom: 28px;
        height: 55px;
        overflow: hidden; }
        .xphotographers__countrypickup .section__title .headline_h2 {
          position: relative; }
        .xphotographers__countrypickup .section__title .btn--more {
          position: relative;
          display: block;
          padding-bottom: 5px;} }
  /* @media screen and (max-width: 767px), print {
    .xphotographers__countrypickup .headline_h2 {
      padding: 0 8px;
      display: block;
      margin-bottom: 18px; }
    } */
  @media screen and (max-width: 767px), print {
    .xphotographers__countrypickup .btn--more {
      /* margin: 0 8px; */
      text-align: right;
      float: right; } }
  .xphotographers__countrypickup .btn--more:before {
    border-color: #fff; }
  .xphotographers__countrypickup .btn--more:after {
    border-color: #fff; }
  @media screen and (max-width: 767px), print {
    .xphotographers__countrypickup ul.Collage {
      padding: 8px;
      padding-bottom: 0; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__countrypickup .photographers__image_texts {
      left: 8px;
      right: 8px;
      bottom: 4px;
      font-size: 10px; } }

@media screen and (min-width: 768px), print {
  .xphotographers__contents {
    padding: 0px 16px;
    margin-top: 64px; } }

@media screen and (max-width: 767px), print {
  .xphotographers__contents {
    padding: 0px 8px; } }

.xphotographers__contents .section__title {
  text-transform: capitalize; }
  @media screen and (min-width: 768px), print {
    .xphotographers__contents .section__title {
      padding: 0 24px;
      margin-bottom: 20px; } }
  @media screen and (max-width: 767px), print {
    .xphotographers__contents .section__title {
      margin: 0 8px 12px; } }

.xphotographers__contents .tab__wrap {
  position: relative; }

.xphotographers__contents .tab__box {
  display: block;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0; }
  .xphotographers__contents .tab__box.on {
    position: relative;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    z-index: 1; }

@media screen and (max-width: 767px), print {
  .xphotographers__contents ul.Collage {
    padding: 8px;
    padding-bottom: 0; } }

@media screen and (min-width: 768px), print {
  .xphotographers__contents .pagenation {
    border-top: 1px solid #ececec;
    margin: 25px -16px 0; } }

@media screen and (min-width: 768px), print {
  .xphotographers__countrylist {
    margin-top: 46px; } }

@media screen and (min-width: 768px), print {
  .xphotographerspost__first {
    padding-top: 112px; } }

.xphotographerspost__first .tag_croud {
  position: relative;
  display: block;
  overflow: hidden;
  transition: height 0.25s ease-out; }
  @media screen and (min-width: 768px), print {
    .xphotographerspost__first .tag_croud {
      margin: 23px auto;
      height: 38px;
      padding-right: 20px; } }
  @media screen and (max-width: 767px), print {
    .xphotographerspost__first .tag_croud {
      margin: 16px 16px 0px;
      height: 88px; } }
  .xphotographerspost__first .tag_croud__wrap {
    position: relative; }
    @media screen and (min-width: 768px), print {
      .xphotographerspost__first .tag_croud__wrap {
        padding: 0 40px 25px;
        margin: 0 auto; } }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__first .tag_croud__wrap {
        padding-bottom: 25px;
        margin-bottom: 10px; } }
  .xphotographerspost__first .tag_croud ul {
    display: block; }

.xphotographerspost__detail {
  font-size: 12px; }
  .xphotographerspost__detail p + p {
    margin-top: 1em; }
  @media screen and (min-width: 768px), print {
    .xphotographerspost__detail {
      padding-top: 0px;
      padding-left: 221px;
      max-width: 800px;
      width: 100%;
      margin: 0 auto 55px;
      position: relative;
      min-height: 160px; } }
  .xphotographerspost__detail_thum {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (min-width: 768px), print {
      .xphotographerspost__detail_thum {
        width: 160px;
        height: 160px;
        position: absolute;
        top: 0px;
        left: 0; } }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__detail_thum {
        margin: 0 auto 15px;
        width: 104px;
        height: 104px; } }
  .xphotographerspost__detail_data_name {
    font-family: "Fjalla One", sans-serif;
    display: block; }
    @media screen and (min-width: 768px), print {
      .xphotographerspost__detail_data_name {
        text-align: left;
        font-size: 32px;
        line-height: 1;
        margin-bottom: 0.7em; } }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__detail_data_name {
        margin-bottom: 15px;
        text-align: center;
        font-size: 20px; } }
  @media screen and (min-width: 768px), print {
    .xphotographerspost__detail_data_profile {
      margin-bottom: 40px; } }
  @media screen and (max-width: 767px), print {
    .xphotographerspost__detail_data_profile {
      margin-bottom: 32px;
      padding: 0 5vw; } }
  .xphotographerspost__detail_data_motto {
    height: 8em;
    overflow: hidden;
    transition: height 0.25s ease-out; }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__detail_data_motto {
        padding: 0 5vw; } }
    .xphotographerspost__detail_data_motto dt {
      font-size: 18px;
      font-family: "Fjalla One", sans-serif; }
      @media screen and (min-width: 768px), print {
        .xphotographerspost__detail_data_motto dt {
          margin-bottom: 3px; } }
      @media screen and (max-width: 767px), print {
        .xphotographerspost__detail_data_motto dt {
          margin-bottom: 16px; } }
    @media screen and (min-width: 768px), print {
      .xphotographerspost__detail_data_motto dd {
        margin-bottom: 35px; } }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__detail_data_motto dd {
        margin-bottom: 20px; } }
    .xphotographerspost__detail_data_motto_open {
      position: relative;
      width: 40px;
      margin: 0 auto;
      display: block;
      cursor: pointer;
      padding: 0;
      padding-top: 8px;
      position: relative;
      padding-right: 12px; }
      .xphotographerspost__detail_data_motto_open:before {
        content: "";
        width: 6px;
        height: 6px;
        border-top: 2px solid #1b1b1b;
        border-right: 2px solid #1b1b1b;
        position: absolute;
        display: block;
        right: 0px;
        top: 50%;
        -webkit-transform: translate(0, -5px) rotate(135deg);
                transform: translate(0, -5px) rotate(135deg);
        transition: all 0.25s ease-in-out; }
      @media screen and (min-width: 768px), print {
        .xphotographerspost__detail_data_motto_open {
          height: 20px; } }
      @media screen and (max-width: 767px), print {
        .xphotographerspost__detail_data_motto_open {
          height: 20px; } }
      .xphotographerspost__detail_data_motto_open:before {
        left: 0;
        right: 0;
        margin: 0 auto;
        top: 35%;
        margin-top: 8px; }
      .xphotographerspost__detail_data_motto_open.open {
        -webkit-transform: rotate(180deg) translate(0, -8px);
                transform: rotate(180deg) translate(0, -8px); }
      .xphotographerspost__detail_data_motto_open.hide {
        display: none !important; }
  .xphotographerspost__detail_data_links {
    position: relative; }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__detail_data_links {
        padding-bottom: 48px;
        margin: 0 5vw 0px; } }
    .xphotographerspost__detail_data_links ul {
      line-height: 0;
      width: 100%;
      text-align: left;
      font-size: 0;
      margin-top: 35px; }
      .xphotographerspost__detail_data_links ul:before {
        content: "Links:";
        font-size: 18px;
        font-family: "Fjalla One", sans-serif;
        display: inline-block;
        -webkit-transform: translate(0, 5px);
                transform: translate(0, 5px);
        margin-right: 4px;
        line-height: 1;
        vertical-align: top; }
    .xphotographerspost__detail_data_links li {
      border-radius: 3px;
      display: inline-block;
      overflow: hidden;
      margin: 0 4px;
      border: 1px solid #1b1b1b;
      border-radius: 50%;
      width: 26px;
      height: 26px;
      vertical-align: top; }
      .xphotographerspost__detail_data_links li a {
        width: 24px;
        height: 24px;
        display: block;
        text-align: center; }
      .xphotographerspost__detail_data_links li path, .xphotographerspost__detail_data_links li polygon {
        fill: #1b1b1b; }
      .xphotographerspost__detail_data_links li svg {
        width: 26px;
        height: 26px; }
      .xphotographerspost__detail_data_links li.fb a {
        padding: 4px 2px; }
      .xphotographerspost__detail_data_links li.fb svg {
        width: 16px;
        height: 16px; }
      .xphotographerspost__detail_data_links li.tw a {
        padding: 3px 0px; }
      .xphotographerspost__detail_data_links li.tw svg {
        width: 16px;
        height: 17px; }
      .xphotographerspost__detail_data_links li.instagram a {
        padding: 3px 0px; }
      .xphotographerspost__detail_data_links li.instagram svg {
        width: 16px;
        height: 18px; }
      .xphotographerspost__detail_data_links li.yt a {
        padding-top: 2px; }
      .xphotographerspost__detail_data_links li.yt svg {
        width: 18px;
        height: 19px; }
      .xphotographerspost__detail_data_links li.pin a {
        padding-top: 2px; }
      .xphotographerspost__detail_data_links li.pin svg {
        width: 17px;
        height: 20px; }
      .xphotographerspost__detail_data_links li.gp a {
        padding-top: 2px; }
      .xphotographerspost__detail_data_links li.gp svg {
        width: 17px;
        height: 20px; }
      .xphotographerspost__detail_data_links li.other a {
        padding: 7px; }
      .xphotographerspost__detail_data_links li.other svg {
        width: 10px;
        height: 10px; }

.xphotographerspost__about {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  @media screen and (min-width: 768px), print {
    .xphotographerspost__about {
      margin-bottom: 100px; } }
  @media screen and (max-width: 767px), print {
    .xphotographerspost__about {
      margin-bottom: 65px; } }
  .xphotographerspost__about:before {
    content: "";
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 0; }
  .xphotographerspost__about .inner {
    position: relative;
    z-index: 1;
    color: #fff; }
    @media screen and (min-width: 768px), print {
      .xphotographerspost__about .inner {
        max-width: 840px;
        width: 100%;
        margin: 0 auto;
        padding: 55px 20px; } }
    @media screen and (max-width: 767px), print {
      .xphotographerspost__about .inner {
        margin: 0 5vw;
        padding: 45px 0 25px; } }
  @media screen and (min-width: 768px), print {
    .xphotographerspost__about_texts {
      margin-bottom: 46px; } }
  @media screen and (max-width: 767px), print {
    .xphotographerspost__about_texts {
      margin-bottom: 38px; } }
  .xphotographerspost__about_texts .headline_h3 {
    margin-bottom: 0.8em;
    display: block; }
  @media screen and (min-width: 768px), print {
    .xphotographerspost__about_texts p {
      font-size: 14px; } }
  @media screen and (max-width: 767px), print {
    .xphotographerspost__about_texts p {
      font-size: 12px; } }
  .xphotographerspost__about_gear .headline_h3 {
    margin-bottom: 1em;
    display: block; }

@media screen and (min-width: 768px), print {
  .xphotographerspost__galleries {
    padding: 0 16px;
    margin-bottom: 84px; } }

@media screen and (max-width: 767px), print {
  .xphotographerspost__galleries {
    margin: 0 5vw 50px; } }

@media screen and (min-width: 768px), print {
  .xphotographerspost__galleries .headline_h2 {
    margin: 0 24px; } }

@media screen and (max-width: 767px), print {
  .xphotographerspost__galleries .headline_h2 {
    margin-bottom: 1em; } }

@media screen and (min-width: 768px), print {
  .xphotographerspost__stories {
    padding: 0 40px;
    margin-bottom: 80px; } }

@media screen and (max-width: 767px), print {
  .xphotographerspost__stories {
    margin: 0 5vw 35px; } }

.xphotographerspost__stories .headline_h2 {
  margin-bottom: 1em; }

.products__first {
  width: 100%;
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .products__first {
      margin-bottom: 56px; } }
  @media screen and (max-width: 767px), print {
    .products__first {
      margin-bottom: 40px; } }
  @media screen and (min-width: 768px), print {
    .products__first h1 {
      width: 100%;
      margin: 0 auto 0;
      padding-bottom: 10px; } }
  @media screen and (max-width: 767px), print {
    .products__first h1 {
      width: 177px;
      margin: 0 auto 10px;
      padding-bottom: 10px; } }
  .products__first h1 img {
    display: block;
    margin: auto;
    width: auto; }
    @media screen and (min-width: 768px), print {
      .products__first h1 img {
        max-height: 100px;
        max-width: 400px;
        min-height: 50px; } }
    @media screen and (max-width: 767px), print {
      .products__first h1 img {
        max-height: 10vw;
        max-width: 70vw;
        min-height: 5vw; } }
  @media screen and (min-width: 768px), print {
    .products__first p, .products__first .tagline {
      width: 45%;
      margin: 24px auto 40px; }
      .products__first p:after, .products__first .tagline:after {
        background: #fff;
        height: 1px;
        margin: auto;
        width: 24px; } }
  @media screen and (max-width: 767px), print {
    .products__first p, .products__first .tagline {
      margin: 24px auto 48px;
    }
  }

  .products__first .category_tab.pdct {
    background: #eee;
    border: none;
    font-size: 14px;
    overflow: hidden;
    width: auto;
  }
  .category_tab.pdct ul {
  }
  .category_tab.pdct a {
    align-items: center;
    display: flex;
    position: relative;
  }
  .category_tab.pdct a:before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #1b1b1b;
    border-right: 2px solid #1b1b1b;
    display: block;
    transform: rotate(135deg);
    margin-right: 0.45em;
  }

  @media screen and (min-width: 768px), print {
    .products__first .category_tab.pdct {
      margin: 56px 40px;
      padding: 0 24px 14px;
    }
    .products__series .category_tab.pdct {
      border: none;
      margin: 12px auto 0;
      padding: 0 0 15px;
      text-align: left;
    }
    .products__first .category_tab.pdct li {
      margin: 0 19px 5px;
    }
    .products__series .category_tab.pdct li {
      margin: 0 30px 0 0;
    }
  }
  @media screen and (max-width: 767px), print {
    .products__first .category_tab.pdct {
      border: 1px solid #1b1b1b;
      margin: 0 5vw;
      padding: 0 16px 16px;
    }
    .category_tab.pdct li {
      display: block;
      margin: 0 7px;
      width: 100%;
    }

    .category_tab.pdct input + label {
      font-family: "fjalla One";
      padding-right: 14px;
    	position: relative;
    }
    .category_tab.pdct input + label:after {
      content: "";
    	width: 8px;
    	height: 8px;
    	border-top: 2px solid #1b1b1b;
    	border-right: 2px solid #1b1b1b;
    	position: absolute;
    	display: block;
    	right: 0;
    	top: 5px;
    	transform: rotate(135deg);
    }
    .products__first .category_tab input ~ ul {
    	max-height: 0;
    	margin-bottom: 0;
    	opacity: 0;
    	overflow: hidden;
      padding: 0;
    	transition: .45s ease-out;
    }
    .products__first .category_tab input:checked ~ ul {
      align-items: flex-start;
      background: #eee;
      display: flex;
      flex-direction: column;
    	height: auto;
    	max-height: inherit;
      padding-top: 8px;
    	opacity: 1;
    }
    .products__first .category_tab input:checked ~ ul a {
    	padding: 10px 0;
    }
  }


    .products__first .category_tab a {
      font-family: "Fjalla One", sans-serif;
    }
      @media screen and (min-width: 768px), print {
        .products__first .category_tab a {
          font-size: 18px; } }
      @media screen and (max-width: 767px), print {
        .products__first .category_tab a {
          font-size: 14px; } }
      .products__first .category_tab a:hover {
        text-decoration: none; }
        @media screen and (min-width: 768px), print {
          .products__first .category_tab a:hover {
            color: #bd081c; } }

@media screen and (min-width: 768px), print {
  .products__series {
    margin: 0 40px 40px; } }

@media screen and (max-width: 767px), print {
  .products__series {
    margin: 0 5vw 34px; } }

@media screen and (min-width: 768px), print {
  .products__series .headline_h2 {
    margin-bottom: 32px; } }

@media screen and (max-width: 767px), print {
  .products__series .headline_h2 {
    margin-bottom: 24px; } }

@media screen and (min-width: 768px), print {
  .products__series_specialbnr {
    margin-bottom: 40px; } }

@media screen and (max-width: 767px), print {
  .products__series_specialbnr {
    margin-bottom: 24px; } }

.products__series_specialbnr a {
  display: block;
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  width: 100%; }

.products__series_specialbnr img {
  width: 100%; }

.products__series_list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .products__series_list li {
    position: relative; }
    @media screen and (min-width: 768px), print {
      .products__series_list li {
        margin-bottom: 38px;
        width: 23.5%;
        margin-left: 2%; }
        .products__series_list li:nth-child(4n+1) {
          margin-left: 0; } }
    @media screen and (max-width: 767px), print {
      .products__series_list li {
        margin-bottom: 30px;
        width: 48.612%; }
        .products__series_list li:nth-child(2n) {
          margin-left: 2.776%; } }
    .products__series_list li:after {
      content: "NEW";
      position: absolute;
      color: #bd081c;
      display: none; }
      @media screen and (min-width: 768px), print {
        .products__series_list li:after {
          font-size: 14px;
          left: 10px;
          top: 10px; } }
      @media screen and (max-width: 767px), print {
        .products__series_list li:after {
          font-size: 12px;
          left: 5px;
          top: 5px; } }
    .products__series_list li.new:after {
      display: block; }
    .products__series_list li .new_text {
      color: #bd081c;
      font-size: 12px;
      margin-left: 0.25em;
      position: relative;
      top: -0.4em; }
  .products__series_list a {
    display: block; }
    .products__series_list a:hover {
      text-decoration: none; }
    .products__series_list a img {
      width: 100%; }
  .products__series_list h3 {
    font-weight: bold;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .products__series_list h3 {
        margin-bottom: 16px;
        margin-top: 16px;
        font-size: 18px; } }
    @media screen and (max-width: 767px), print {
      .products__series_list h3 {
        margin-bottom: 0.8em;
        margin-top: 1em;
        font-size: 14px;
        line-height: 23px; } }
  .products__series_list p {
    height: 3em;
    overflow: hidden;
    position: relative; }
    @media screen and (min-width: 768px), print {
      .products__series_list p {
        font-size: 12px;
        line-height: 18px; } }
    .products__series_list p.over:after {
      content: "...";
      background: #fff;
      position: absolute;
      right: 0;
      bottom: -0.15em;
      padding-left: 0.3em;
      padding-right: 0.3em; }


.products__series_list p {
  height: auto;
  text-align: right;
}
.products__series_list_btn .wp_btn {
  display: inline-block;
  /* padding: 0.75em 1em; */
  padding: 4px 16px;
  min-width: 80px;
}
.products__series_list_btn a {
  color: #fff;
  display: block;
  padding: 0 10px;
  line-height: 1.4;
}


.main__products p + p {
  margin-top: 1.25em; }

.main__products .productspost__xstories {
  margin-top: 150px; }

.main__products .headline_underline {
  color: #fff;
  font-family: "Fjalla One", sans-serif;
  margin-bottom: 0; }
  @media screen and (min-width: 768px), print {
    .main__products .headline_underline {
      font-size: 54px; } }
  @media screen and (max-width: 767px), print {
    .main__products .headline_underline {
      font-size: 32px;
      padding: 0 20px; } }

@media screen and (min-width: 768px), print {
  .main__products_cameras .headline_underline.type_svg svg {
    height: 32px; }
  .main__products_cameras .productspost__productimg {
    margin-bottom: -40px;
    max-width: 460px; }
  .main__products_cameras .no_productimg {
    margin-top: 248px; }
  .main__products_cameras .productspost__detail_whole_img {
    min-width: 450px;
    margin-top: -60px;
    margin-bottom: -80px;
    margin-right: -50px;
    margin-left: -48px; }
  .main__products_cameras .productspost__bnrs {
    margin-bottom: 0; }
  .main__products_cameras .box-wide .productspost__detail_box {
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .main__products_cameras .productspost__detail_box:nth-child(2n) {
    -webkit-flex-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit; }
  .main__products_cameras .productspost__detail_box:nth-of-type(2n) {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }

@media screen and (max-width: 767px), print {
  .main__products_cameras .productspost__mainvisual {
    position: relative; }
  .main__products_cameras .headline_underline.type_svg svg {
    height: 20px;
    max-width: 90%; }
  .main__products_cameras .productspost__productimg {
    margin-top: -28vw;
    max-width: 66vw; } }

@media screen and (min-width: 768px), print {
  .main__products_accesorries .headline_underline.type_svg svg {
    height: 32px; }
  .main__products_accesorries .productspost__productimg {
    margin-top: -20px;
    margin-bottom: -100px;
    max-width: 460px; }
  .main__products_accesorries .no_productimg {
    margin-top: 248px; }
  .main__products_accesorries .productspost__detail_whole_img {
    min-width: 450px;
    margin-top: -60px;
    margin-bottom: -80px;
    margin-right: -50px;
    margin-left: -48px; } }

@media screen and (max-width: 767px), print {
  .main__products_accesorries .productspost__mainvisual {
    position: relative; }
  .main__products_accesorries .headline_underline.type_svg svg {
    height: 20px;
    max-width: 90%; }
  .main__products_accesorries .productspost__productimg {
    margin-top: -28vw;
    max-width: 66vw; } }

@media screen and (min-width: 768px), print {
  .main__products_lenses .headline_underline.type_svg svg {
    height: 32px; }
    .main__products_lenses .headline_underline.type_svg svg.line_2 {
      height: 70px; }
  .main__products_lenses .productspost__productimg {
    margin-top: -40px;
    margin-bottom: -80px;
    max-width: 460px; }
  .main__products_lenses .no_productimg {
    margin-top: 248px; }
  .main__products_lenses .productspost__detail_whole_img {
    min-width: 450px;
    margin-top: -60px;
    margin-bottom: -80px;
    margin-right: -50px;
    margin-left: -48px; } }

@media screen and (max-width: 767px), print {
  .main__products_lenses .productspost__mainvisual {
    position: relative; }
  .main__products_lenses .headline_underline.type_svg svg {
    height: 20px;
    max-width: 90%; }
  .main__products_lenses .productspost__productimg {
    margin-top: -28vw;
    max-width: 66vw; } }

.productspost__first {
  width: 100%;
  margin-bottom: 15px; }
  .productspost__first .inner {
    position: relative;
    padding-top: 0; }
    @media screen and (min-width: 768px), print {
      .productspost__first .inner {
        padding-right: 40px;
        padding-left: 40px; } }
  .productspost__first h1 {
    display: block; }
    @media screen and (min-width: 768px), print {
      .productspost__first h1 {
        padding-top: 178px;
        padding-bottom: 24px;
        margin-bottom: 22px; } }
    @media screen and (max-width: 767px), print {
      .productspost__first h1 {
        margin-bottom: 15px;
        text-align: center;
        padding-top: 38px;
        margin-top: -25vw;
        position: absolute;
        left: 0;
        right: 0;
        top: 35vw; } }
    .productspost__first h1:after {
      background: #fff;
      display: none; }
      @media screen and (min-width: 768px), print {
        .productspost__first h1:after {
          height: 1px;
          margin: 0; } }
    .productspost__first h1 img {
      width: auto;
      margin: 0 auto; }
      @media screen and (min-width: 768px), print {
        .productspost__first h1 img {
          height: 31px; } }
      @media screen and (max-width: 767px), print {
        .productspost__first h1 img {
          height: 20px; } }
  .productspost__first p {
    color: #fff; }
    @media screen and (min-width: 768px), print {
      .productspost__first p {
        width: 370px; } }
    @media screen and (max-width: 767px), print {
      .productspost__first p {
        margin: 0 5vw 20px;
        text-align: center; }
        .productspost__first p:before {
          background: #fff;
          height: 1px;
          margin: 0;
          width: 24px; } }

.productspost__detailfirst {
  width: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media screen and (min-width: 768px), print {
    .productspost__detailfirst {
      height: 521px;
      margin-bottom: 64px; } }
  @media screen and (max-width: 767px), print {
    .productspost__detailfirst {
      height: 252px;
      margin-bottom: 48px; } }
  .productspost__detailfirst .inner {
    position: relative;
    padding-top: 0; }
    @media screen and (min-width: 768px), print {
      .productspost__detailfirst .inner {
        padding-right: 40px;
        padding-left: 40px; } }
  .productspost__detailfirst h1 {
    display: block; }
    @media screen and (min-width: 768px), print {
      .productspost__detailfirst h1 {
        padding-top: 180px;
        padding-bottom: 24px;
        margin-bottom: 22px;
        margin-bottom: 0; } }
    @media screen and (max-width: 767px), print {
      .productspost__detailfirst h1 {
        margin-bottom: 15px;
        text-align: center;
        padding-top: 60px; } }
    .productspost__detailfirst h1:after {
      background: #fff;
      display: none; }
      @media screen and (min-width: 768px), print {
        .productspost__detailfirst h1:after {
          height: 1px;
          margin: 0; } }
    .productspost__detailfirst h1 img {
      width: auto;
      margin: 0 auto; }
      @media screen and (min-width: 768px), print {
        .productspost__detailfirst h1 img {
          height: 31px; } }
      @media screen and (max-width: 767px), print {
        .productspost__detailfirst h1 img {
          height: 20px; } }
  .productspost__detailfirst p {
    color: #fff; }
    @media screen and (min-width: 768px), print {
      .productspost__detailfirst p {
        width: 45%; }
        .productspost__detailfirst p:before {
          background: #fff;
          height: 1px;
          margin: 0;
          width: 24px; } }
    @media screen and (max-width: 767px), print {
      .productspost__detailfirst p {
        margin: 0 5vw 20px;
        text-align: center; }
        .productspost__detailfirst p:before {
          background: #fff;
          height: 1px;
          margin: 0;
          width: 24px; } }

.productspost__mainvisual {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #000;
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%; }
  @media screen and (min-width: 768px), print {
    .productspost__mainvisual {
      height: 449px; } }
  @media screen and (max-width: 767px), print {
    .productspost__mainvisual {
      height: 200px; } }

.productspost__productimg {
  margin: 0 auto;
  display: block; }
  @media screen and (min-width: 768px), print {
    .productspost__productimg {
      margin-top: 20px;
      text-align: center; } }
  @media screen and (max-width: 767px), print {
    .productspost__productimg {
      width: 55.313vw; } }

.productspost__about {
  border-bottom: 1px solid #bfbfbf; }
  @media screen and (min-width: 768px), print {
    .productspost__about {
      padding: 0 0px 32px;
      max-width: 800px;
      margin: 0 auto 40px; } }
  @media screen and (max-width: 767px), print {
    .productspost__about {
      margin: 0 5vw 32px;
      font-size: 12px;
      padding-bottom: 32px; } }
  @media screen and (min-width: 768px), print {
    .productspost__about__commentary {
      line-height: 2; }
      .productspost__about__commentary .wp_btn {
        margin-top: 40px;
        margin-bottom: 40px; } }
  @media screen and (max-width: 767px), print {
    .productspost__about__commentary {
      line-height: 1.6; }
      .productspost__about__commentary .wp_btn {
        margin-top: 20px;
        margin-bottom: 20px; } }
  .productspost__about__btns ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    @media screen and (min-width: 768px), print {
      .productspost__about__btns ul {
        margin-top: 40px;
        margin-bottom: 48px; } }
    @media screen and (max-width: 767px), print {
      .productspost__about__btns ul {
        margin-top: 32px;
        margin-bottom: 32px; } }
  .productspost__about__btns li {
    display: block; }
    @media screen and (min-width: 768px), print {
      .productspost__about__btns li {
        width: 49%; }
        .productspost__about__btns li:nth-child(2n) {
          margin-left: 2%; } }
    @media screen and (max-width: 767px), print {
      .productspost__about__btns li {
        width: 100%;
        margin-bottom: 16px; }
        .productspost__about__btns li:last-child {
          margin-bottom: 0; } }
  .productspost__about__btns a {
    display: block;
    width: 100%;
    text-align: center;
    text-decoration: none;
    border: 1px solid #1b1b1b;
    font-weight: bold; }
    @media screen and (min-width: 768px), print {
      .productspost__about__btns a {
        height: 64px;
        line-height: 64px;
        font-size: 16px;
        background-size: 200% 100%;
        background-image: linear-gradient(to right, transparent 50%, black 50%);
        transition: background-position 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease 0s, background-color 0.5s ease; }
        .productspost__about__btns a:hover {
          background-position: -100% 100%;
          color: #fff; } }
    @media screen and (max-width: 767px), print {
      .productspost__about__btns a {
        height: 56px;
        line-height: 56px;
        font-size: 14px; } }
  .productspost__about__btns .learnmore {
    background-color: #000;
    color: #fff;
    position: relative;
    padding: 0; }
    @media screen and (min-width: 768px), print {
      .productspost__about__btns .learnmore {
        line-height: 1.2;
        height: 64px;
        background-image: linear-gradient(to right, transparent 50%, white 50%);
        transition: background-position 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease 0s, background-color 0.5s ease; }
        .productspost__about__btns .learnmore:hover {
          color: #000; }
        .productspost__about__btns .learnmore.out:hover:before, .productspost__about__btns .learnmore.out:hover:after {
          background-color: #000; } }
    @media screen and (max-width: 767px), print {
      .productspost__about__btns .learnmore {
        line-height: 1.6;
        height: 80px; } }
    .productspost__about__btns .learnmore span {
      display: block;
      position: absolute;
      width: 90%;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    .productspost__about__btns .learnmore:before {
      top: 12px;
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
    .productspost__about__btns .learnmore:after {
      top: 12px;
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  .productspost__about small {
    display: block;
    text-indent: -1.5em;
    padding-left: 1.5em; }
    @media screen and (min-width: 768px), print {
      .productspost__about small {
        font-size: 12px; } }

@media screen and (min-width: 768px), print {
  .productspost__bnrs {
    padding: 0 40px 0px;
    max-width: 1060px;
    margin: 0 auto 174px; } }

@media screen and (max-width: 767px), print {
  .productspost__bnrs {
    margin: 0 5vw 64px; } }

.productspost__bnrs ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media screen and (min-width: 768px), print {
    .productspost__bnrs ul {
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; } }

.productspost__bnrs li {
  display: block;
  width: 100%; }
  @media screen and (min-width: 768px), print {
    .productspost__bnrs li {
      width: 49%;
      margin-bottom: 16px; }
      .productspost__bnrs li:nth-child(2n) {
        margin-left: 2%; } }
  @media screen and (max-width: 767px), print {
    .productspost__bnrs li {
      margin-bottom: 16px; }
      .productspost__bnrs li:last-child {
        margin-bottom: 0; } }

.productspost__bnrs a {
  width: 100%;
  display: block; }
  @media screen and (min-width: 768px), print {
    .productspost__bnrs a:hover {
      opacity: 0.6;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; } }

@media screen and (min-width: 768px), print {
  .productspost__xstories {
    margin-bottom: calc(105px - 2vw);
    bottom: -2vw; } }

@media screen and (max-width: 767px), print {
  .productspost__xstories {
    margin-bottom: 64px; } }

@media screen and (min-width: 768px), print {
  .productspost__xstories .inner {
    padding: 0 40px; } }

@media screen and (max-width: 767px), print {
  .productspost__xstories .inner {
    padding: 0 16px; } }

@media screen and (min-width: 768px), print {
  .productspost__xphotographers {
    margin-bottom: calc(105px - 16px); } }

@media screen and (max-width: 767px), print {
  .productspost__xphotographers {
    margin-bottom: 60px; } }

@media screen and (min-width: 768px), print {
  .productspost__xphotographers .inner {
    padding: 0 0; } }

@media screen and (max-width: 767px), print {
  .productspost__xphotographers .inner {
    margin: 0; } }

@media screen and (min-width: 768px), print {
  .productspost__xphotographers .section__title {
    margin: 0 40px 27px; } }

@media screen and (max-width: 767px), print {
  .productspost__xphotographers .section__title {
    height: 42px;
    margin: 0 5vw; } }

@media screen and (min-width: 768px), print {
  .productspost__detail {
    padding: 0 40px 32px;
    margin-bottom: 32px;
    position: relative; }
    .productspost__detail:after {
      content: "";
      height: 1px;
      background: #bfbfbf;
      max-width: 800px;
      position: absolute;
      left: 0;
      right: 0;
      margin: 0 auto;
      bottom: 0; } }

@media screen and (max-width: 767px), print {
  .productspost__detail {
    border-bottom: 1px solid #bfbfbf;
    margin: 0 5vw;
    padding-bottom: 32px;
    margin-bottom: 32px; } }

.productspost__detail small {
  display: block;
  text-indent: -1.5em;
  padding-left: 1.5em; }
  @media screen and (min-width: 768px), print {
    .productspost__detail small {
      font-size: 12px;
      max-width: 800px;
      margin: 0 auto; } }

@media screen and (min-width: 768px), print {
  .productspost__detail_box {
    margin-bottom: 32px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
    .productspost__detail_box:nth-child(2n) {
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
    .productspost__detail_box + .headline_lv2.type2 {
      margin-top: 56px; } }

@media screen and (max-width: 767px), print {
  .productspost__detail_box {
    margin-bottom: 32px; }
    .productspost__detail_box + .headline_lv2.type2 {
      margin-top: 32px; } }

@media screen and (min-width: 768px), print {
  .productspost__detail_box_img {
    min-width: 61%; } }

.productspost__detail_box_img img {
  width: 100%; }

@media screen and (min-width: 768px), print {
  .productspost__detail_box_text {
    padding: 0 45px;
    margin-bottom: 48px; } }

.productspost__detail_box_text h4 {
  font-family: "Fjalla One", sans-serif;
  line-height: 1.2; }
  @media screen and (min-width: 768px), print {
    .productspost__detail_box_text h4 {
      font-size: 40px;
      margin-bottom: 20px; } }
  @media screen and (max-width: 767px), print {
    .productspost__detail_box_text h4 {
      text-align: center;
      font-size: 24px;
      margin: 18px 0; } }

@media screen and (min-width: 768px), print {
  .productspost__detail_box_text p {
    line-height: 1.6; } }

@media screen and (max-width: 767px), print {
  .productspost__detail_box_text p {
    font-size: 12px; } }

@media screen and (min-width: 768px), print {
  .productspost__detail_whole {
    padding: 0 0px 0;
    max-width: 800px;
    margin: 72px auto 40px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }

@media screen and (max-width: 767px), print {
  .productspost__detail_whole {
    font-size: 12px; } }

@media screen and (min-width: 768px), print {
  .productspost__detail_whole_img {
    min-width: 345px; } }

@media screen and (max-width: 767px), print {
  .productspost__detail_whole_img {
    width: 59.723%;
    margin: 0 auto; } }

@media screen and (min-width: 768px), print {
  .productspost__detail_whole ul {
    width: 100%;
    margin-top: 76px;
    margin-bottom: 0px;
    padding-right: 60px; } }

@media screen and (max-width: 767px), print {
  .productspost__detail_whole ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-top: 32px;
    margin-bottom: 32px; } }

.productspost__detail_whole li {
  display: block; }
  @media screen and (min-width: 768px), print {
    .productspost__detail_whole li {
      width: 100%;
      margin-bottom: 16px; } }
  @media screen and (max-width: 767px), print {
    .productspost__detail_whole li {
      width: 100%;
      margin-bottom: 16px; }
      .productspost__detail_whole li:last-child {
        margin-bottom: 0; } }

.productspost__detail_whole a {
  display: block;
  width: 100%;
  text-align: center;
  text-decoration: none;
  border: 1px solid #1b1b1b;
  font-weight: bold; }
  @media screen and (min-width: 768px), print {
    .productspost__detail_whole a {
      height: 64px;
      line-height: 64px;
      font-size: 16px;
      background-size: 200% 100%;
      background-image: linear-gradient(to right, transparent 50%, black 50%);
      transition: background-position 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease 0s, background-color 0.5s ease; }
      .productspost__detail_whole a:hover {
        background-position: -100% 100%;
        color: #fff; } }
  @media screen and (max-width: 767px), print {
    .productspost__detail_whole a {
      height: 56px;
      line-height: 56px;
      font-size: 14px; } }

.productspost__detail_whole .learnmore {
  background-color: #000;
  color: #fff;
  position: relative;
  padding: 0; }
  @media screen and (min-width: 768px), print {
    .productspost__detail_whole .learnmore {
      line-height: 1.2;
      height: 64px;
      background-image: linear-gradient(to right, transparent 50%, white 50%);
      transition: background-position 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease 0s, background-color 0.5s ease; }
      .productspost__detail_whole .learnmore:hover {
        color: #000; }
      .productspost__detail_whole .learnmore.out:hover:before, .productspost__detail_whole .learnmore.out:hover:after {
        background-color: #000; } }
  @media screen and (max-width: 767px), print {
    .productspost__detail_whole .learnmore {
      line-height: 1.6;
      height: 80px; } }
  .productspost__detail_whole .learnmore span {
    display: block;
    position: absolute;
    width: 90%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .productspost__detail_whole .learnmore:before {
    top: 12px;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  .productspost__detail_whole .learnmore:after {
    top: 12px;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }

.events__first {
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .events__first {
      margin-bottom: 25px; } }
  @media screen and (max-width: 767px), print {
    .events__first {
      margin-bottom: 13px;
      overflow: hidden; } }
  @media screen and (min-width: 768px), print {
    .events__first h1 {
      margin: 0 auto 16px; }
      .events__first h1 img {
        width: 100%; } }
  @media screen and (max-width: 767px), print {
    .events__first h1 {
      margin: 0 auto 10px; } }
  @media screen and (min-width: 768px), print {
    .events__first h1 + p {
      font-size: 14px;
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px), print {
    .events__first h1 + p {
      font-size: 10px;
      margin-bottom: 35px; } }
  .events__first .tag_croud {
    position: relative;
    display: block;
    overflow: hidden;
    transition: height 0.25s ease-out; }
    @media screen and (min-width: 768px), print {
      .events__first .tag_croud {
        margin: 23px auto;
        height: 38px;
        padding-right: 20px; } }
    @media screen and (max-width: 767px), print {
      .events__first .tag_croud {
        margin: 16px 16px 0px;
        height: 88px; } }
    .events__first .tag_croud__wrap {
      position: relative; }
      @media screen and (min-width: 768px), print {
        .events__first .tag_croud__wrap {
          padding: 0 40px 25px;
          margin: 0 auto; } }
      @media screen and (max-width: 767px), print {
        .events__first .tag_croud__wrap {
          padding-bottom: 25px;
          margin-bottom: 10px; } }
    .events__first .tag_croud ul {
      display: block; }
  .events__first .open_btn {
    position: relative;
    padding-right: 12px;
    display: block;
    width: 30px;
    height: 30px;
    margin: 0 auto;
    padding: 0;
    position: absolute;
    cursor: pointer; }
    .events__first .open_btn:before {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 0px;
      top: 50%;
      -webkit-transform: translate(0, -5px) rotate(135deg);
              transform: translate(0, -5px) rotate(135deg);
      transition: all 0.25s ease-in-out; }
    @media screen and (min-width: 768px), print {
      .events__first .open_btn {
        top: 4px;
        right: 30px; } }
    @media screen and (max-width: 767px), print {
      .events__first .open_btn {
        right: 0;
        left: 0;
        bottom: 0; } }
    .events__first .open_btn:before {
      right: 0;
      left: 0;
      margin: 0 auto; }

@media screen and (min-width: 768px), print {
  .events__contents {
    margin-top: 56px; } }

@media screen and (max-width: 767px), print {
  .events__contents {
    margin: 0 16px; } }

@media screen and (min-width: 768px), print {
  .events__contents .eventlist {
    padding: 0 40px 18px;
    border-bottom: 1px solid #ececec; } }

.events_date {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 16px;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .events_date:last-of-type {
    margin-bottom: 1.5em; }
  .events_date dt {
    font-family: "Fjalla One", sans-serif;
    margin-right: 10px;
    text-align: right;
    /*width: 20%;*/ }
  .events_date .events_period {
    text-align: left;
    /*width: 75%;*/ }
  .events_date .events_multiple {
    width: 100%;
    text-align: center; }

.news__first {
  text-align: center; }
  @media screen and (max-width: 767px), print {
    .news__first {
      overflow: hidden; } }
  @media screen and (min-width: 768px), print {
    .news__first h1 {
      margin: 0 auto 16px; }
      .news__first h1 img {
        width: 100%; } }
  @media screen and (max-width: 767px), print {
    .news__first h1 {
      margin: 0 auto 10px; } }
  @media screen and (min-width: 768px), print {
    .news__first h1 + p {
      font-size: 14px;
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px), print {
    .news__first h1 + p {
      font-size: 10px;
      margin-bottom: 35px; } }
  .news__first .tag_croud {
    position: relative;
    display: block;
    overflow: hidden;
    transition: height 0.25s ease-out; }
    @media screen and (min-width: 768px), print {
      .news__first .tag_croud {
        margin: 23px auto;
        height: 38px;
        padding-right: 20px; } }
    @media screen and (max-width: 767px), print {
      .news__first .tag_croud {
        margin: 16px 16px 0px;
        height: 88px; } }
    .news__first .tag_croud__wrap {
      position: relative; }
      @media screen and (min-width: 768px), print {
        .news__first .tag_croud__wrap {
          padding: 0 40px 25px;
          margin: 0 auto; } }
      @media screen and (max-width: 767px), print {
        .news__first .tag_croud__wrap {
          padding-bottom: 25px;
          margin-bottom: 10px; } }
    .news__first .tag_croud ul {
      display: block; }
  .news__first .open_btn {
    position: relative;
    padding-right: 12px;
    display: block;
    width: 30px;
    height: 30px;
    margin: 0 auto;
    padding: 0;
    position: absolute;
    cursor: pointer; }
    .news__first .open_btn:before {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 0px;
      top: 50%;
      -webkit-transform: translate(0, -5px) rotate(135deg);
              transform: translate(0, -5px) rotate(135deg);
      transition: all 0.25s ease-in-out; }
    @media screen and (min-width: 768px), print {
      .news__first .open_btn {
        top: 4px;
        right: 30px; } }
    @media screen and (max-width: 767px), print {
      .news__first .open_btn {
        right: 0;
        left: 0;
        bottom: 0; } }
    .news__first .open_btn:before {
      right: 0;
      left: 0;
      margin: 0 auto; }

@media screen and (max-width: 767px), print {
  .news__contents {
    margin: 0 16px; } }

@media screen and (min-width: 768px), print {
  .news__contents .eventlist {
    padding: 0 40px 18px;
    border-bottom: 1px solid #ececec; } }

.blog__first {
  text-align: center; }
  @media screen and (max-width: 767px), print {
    .blog__first {
      overflow: hidden; } }
  @media screen and (min-width: 768px), print {
    .blog__first h1 {
      margin: 0 auto 16px; }
      .blog__first h1 img {
        width: 100%; } }
  @media screen and (max-width: 767px), print {
    .blog__first h1 {
      margin: 0 auto 10px; } }
  @media screen and (min-width: 768px), print {
    .blog__first h1 + p {
      font-size: 14px;
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px), print {
    .blog__first h1 + p {
      font-size: 10px;
      margin-bottom: 35px; } }
  .blog__first .tag_croud {
    position: relative;
    display: block;
    overflow: hidden;
    transition: height 0.25s ease-out; }
    @media screen and (min-width: 768px), print {
      .blog__first .tag_croud {
        margin: 23px auto;
        height: 38px;
        padding-right: 20px; } }
    @media screen and (max-width: 767px), print {
      .blog__first .tag_croud {
        margin: 16px 16px 0px;
        height: 88px; } }
    .blog__first .tag_croud__wrap {
      position: relative; }
      @media screen and (min-width: 768px), print {
        .blog__first .tag_croud__wrap {
          padding: 0 40px 25px;
          margin: 0 auto; } }
      @media screen and (max-width: 767px), print {
        .blog__first .tag_croud__wrap {
          padding-bottom: 25px;
          margin-bottom: 10px; } }
    .blog__first .tag_croud ul {
      display: block; }
  .blog__first .open_btn {
    position: relative;
    padding-right: 12px;
    display: block;
    width: 30px;
    height: 30px;
    margin: 0 auto;
    padding: 0;
    position: absolute;
    cursor: pointer; }
    .blog__first .open_btn:before {
      content: "";
      width: 6px;
      height: 6px;
      border-top: 2px solid #1b1b1b;
      border-right: 2px solid #1b1b1b;
      position: absolute;
      display: block;
      right: 0px;
      top: 50%;
      -webkit-transform: translate(0, -5px) rotate(135deg);
              transform: translate(0, -5px) rotate(135deg);
      transition: all 0.25s ease-in-out; }
    @media screen and (min-width: 768px), print {
      .blog__first .open_btn {
        top: 4px;
        right: 30px; } }
    @media screen and (max-width: 767px), print {
      .blog__first .open_btn {
        right: 0;
        left: 0;
        bottom: 0; } }
    .blog__first .open_btn:before {
      right: 0;
      left: 0;
      margin: 0 auto; }

@media screen and (max-width: 767px), print {
  .blog__contents {
    margin: 0 16px; } }

@media screen and (min-width: 768px), print {
  .blog__contents .eventlist {
    padding: 0 40px 18px;
    border-bottom: 1px solid #ececec; } }

.store__first {
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .store__first {
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px), print {
    .store__first {
      overflow: hidden;
      margin: 0 5vw 40px; } }
  .store__first h1 {
    font-family: "Fjalla One", sans-serif;
    line-height: 1; }
    @media screen and (min-width: 768px), print {
      .store__first h1 {
        font-size: 30px; } }
    @media screen and (max-width: 767px), print {
      .store__first h1 {
        font-size: 22px;
        font-weight: bold; } }

@media screen and (min-width: 768px), print {
  .store__contents {
    margin: 0 40px; } }

@media screen and (max-width: 767px), print {
  .store__contents {
    margin: 0 5vw; } }

.store__contents .tab__links {
  position: relative;
  top: 0;
  margin-bottom: 40px; }
  .store__contents .tab__links a {
    border: none;
    padding-bottom: 0; }
    @media screen and (min-width: 768px), print {
      .store__contents .tab__links a {
        font-size: 18px; } }
    @media screen and (max-width: 767px), print {
      .store__contents .tab__links a {
        font-size: 14px; } }

body.compensate-for-scrollbar {
  overflow: hidden; }

.fancybox-active {
  height: auto; }

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden; }

.fancybox-container {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
  height: 100%;
  left: 0;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  width: 100%;
  z-index: 99992; }

.fancybox-container * {
  box-sizing: border-box; }

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto; }

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71); }

.fancybox-is-open .fancybox-bg {
  opacity: .87;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=87)";
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1); }

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  position: absolute;
  transition: opacity .25s, visibility 0s linear .25s;
  visibility: hidden;
  z-index: 99997; }

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  transition: opacity .25s, visibility 0s;
  visibility: visible; }

.fancybox-infobar {
  color: #ccc;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  line-height: 44px;
  mix-blend-mode: difference;
  pointer-events: none;
  text-align: center;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .fancybox-infobar:before {
    content: "[";
    margin-right: 0.3em; }
  .fancybox-infobar:after {
    content: "]";
    margin-left: 0.3em; }

.fancybox-toolbar {
  position: static; }

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  -webkit-transform: translate3d(0, 0, 0);
  z-index: 99994; }

.fancybox-is-open .fancybox-stage {
  overflow: hidden; }

.fancybox-slide {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  white-space: normal;
  width: 100%;
  z-index: 99994; }

.fancybox-slide:before {
  content: '';
  display: inline-block;
  height: 100%;
  margin-right: -.25em;
  vertical-align: middle;
  width: 0; }

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block; }

.fancybox-slide--next {
  z-index: 99995; }

.fancybox-slide--image {
  overflow: visible; }
  @media screen and (min-width: 768px), print {
    .fancybox-slide--image {
      padding: 80px 0; } }

@media only screen and (max-width: 767px) and (orientation: landscape) {
  .fancybox-slide--image {
    /* Landscapeモード（横向き）用 */
    padding: 65px 5% 50px; } }

@media only screen and (max-width: 767px) and (orientation: portrait) {
  .fancybox-slide--image {
    /* Portraitモード（縦向き）用 */
    padding: 92px 5% 130px; } }

.fancybox-slide--image:before {
  display: none; }

.fancybox-slide--html {
  padding: 6px 6px 0 6px; }

.fancybox-slide--iframe {
  padding: 44px 44px 0; }

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0 0 6px 0;
  max-width: 100%;
  overflow: auto;
  padding: 0;
  padding: 24px;
  position: relative;
  text-align: left;
  vertical-align: middle; }

.fancybox-slide--image .fancybox-content {
  -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
          animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  margin: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  z-index: 99995; }

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out; }

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in; }

.fancybox-can-drag .fancybox-content {
  cursor: grab; }

.fancybox-is-dragging .fancybox-content {
  cursor: grabbing; }

.fancybox-container [data-selectable='true'] {
  cursor: text; }

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  width: 100%; }

.fancybox-spaceball {
  z-index: 1; }

.fancybox-slide--html .fancybox-content {
  margin-bottom: 6px; }

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  margin: 0;
  overflow: visible;
  padding: 0;
  width: 100%; }

.fancybox-slide--video .fancybox-content {
  background: #000; }

.fancybox-slide--map .fancybox-content {
  background: #e5e3df; }

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
  height: calc(100% - 44px);
  margin-bottom: 44px; }

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%; }

.fancybox-iframe {
  vertical-align: top; }

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%; }

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0; }

/* Buttons */
.fancybox-button {
  background: none;
  border: 0;
  border-radius: 0;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  outline: none;
  padding: 6px;
  transition: color .2s;
  vertical-align: top;
  width: 44px; }
  .fancybox-button--close {
    position: absolute;
    z-index: 99995; }
    @media screen and (min-width: 768px), print {
      .fancybox-button--close {
        right: 20px;
        top: 20px; } }
    @media screen and (max-width: 767px), print {
      .fancybox-button--close {
        right: 0px;
        top: 10px; } }
  .fancybox-button--fullscreen {
    position: absolute;
    left: 50%;
    top: 28px;
    margin-left: -46px;
    background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/icn_full.png) center;
    background-size: 24px 24px;
    background-repeat: no-repeat;
    z-index: 99995; }
    @media screen and (max-width: 767px), print {
      .fancybox-button--fullscreen {
        display: none !important; } }
    .fancybox-button--fullscreen svg {
      display: none !important; }
  .fancybox-button--zoom {
    position: absolute;
    left: 50%;
    top: 28px;
    margin-left: 2px;
    background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/icn_zoom.png) center;
    background-size: 24px 24px;
    background-repeat: no-repeat;
    z-index: 99995; }
    @media screen and (max-width: 767px), print {
      .fancybox-button--zoom {
        display: none !important; } }
    .fancybox-button--zoom svg {
      display: none !important; }

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc; }

.fancybox-button:focus,
.fancybox-button:hover {
  color: #fff; }

.fancybox-button.disabled,
.fancybox-button.disabled:hover,
.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default; }

.fancybox-button svg {
  display: block;
  overflow: visible;
  position: relative;
  shape-rendering: geometricPrecision; }

.fancybox-button svg path {
  fill: transparent;
  stroke: currentColor;
  stroke-linejoin: round;
  stroke-width: 3; }

.fancybox-button--play svg path:nth-child(2) {
  display: none; }

.fancybox-button--pause svg path:nth-child(1) {
  display: none; }

.fancybox-button--play svg path,
.fancybox-button--share svg path,
.fancybox-button--thumbs svg path {
  fill: currentColor; }

.fancybox-button--share svg path {
  stroke-width: 1; }

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/icn_slidearrow.png) center right;
  background-repeat: no-repeat;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  padding: 6px;
  position: absolute;
  top: 50%; }
  @media screen and (min-width: 768px), print {
    .fancybox-navigation .fancybox-button {
      width: 38px;
      height: 52px;
      background-size: 14px; } }
  @media screen and (max-width: 767px), print {
    .fancybox-navigation .fancybox-button {
      margin-top: -38px;
      width: 8px;
      height: 32px;
      background-size: 8px; } }
  .fancybox-navigation .fancybox-button.disabled {
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; }
  .fancybox-navigation .fancybox-button svg {
    display: none !important; }

.fancybox-show-nav .fancybox-navigation .fancybox-button {
  transition: opacity .25s, visibility 0s, color .25s; }

.fancybox-navigation .fancybox-button:after {
  content: '';
  left: -25px;
  padding: 50px;
  position: absolute;
  top: -25px; }

.fancybox-navigation .fancybox-button--arrow_left {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }
  @media screen and (min-width: 768px), print {
    .fancybox-navigation .fancybox-button--arrow_left {
      left: 30px; } }
  @media screen and (max-width: 767px), print {
    .fancybox-navigation .fancybox-button--arrow_left {
      left: 13px; } }

@media screen and (min-width: 768px), print {
  .fancybox-navigation .fancybox-button--arrow_right {
    right: 30px; } }

@media screen and (max-width: 767px), print {
  .fancybox-navigation .fancybox-button--arrow_right {
    right: 13px; } }

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #555;
  cursor: pointer;
  height: 44px;
  margin: 0;
  padding: 6px;
  position: absolute;
  right: 0;
  top: 0;
  width: 44px;
  z-index: 10; }

.fancybox-close-small svg {
  fill: transparent;
  opacity: .8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  stroke: currentColor;
  stroke-width: 1.5;
  transition: stroke .1s; }

.fancybox-close-small:focus {
  outline: none; }

.fancybox-close-small:hover svg {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.fancybox-slide--image .fancybox-close-small,
.fancybox-slide--video .fancybox-close-small,
.fancybox-slide--iframe .fancybox-close-small {
  color: #ccc;
  padding: 5px;
  right: -12px;
  top: -44px; }

.fancybox-slide--image .fancybox-close-small:hover svg,
.fancybox-slide--video .fancybox-close-small:hover svg,
.fancybox-slide--iframe .fancybox-close-small:hover svg {
  background: transparent;
  color: #fff; }

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-drag .fancybox-close-small {
  display: none; }

/* Caption */
.fancybox-caption {
  position: static;
  bottom: 0;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  right: 0;
  /* カスタマイズ */ }
  .fancybox-caption p:nth-child(1) {
    position: absolute;
    font-weight: bold; }
    @media screen and (min-width: 768px), print {
      .fancybox-caption p:nth-child(1) {
        top: 32px;
        left: 32px;
        font-size: 14px; } }
    @media screen and (max-width: 767px), print {
      .fancybox-caption p:nth-child(1) {
        top: 20px;
        left: 5vw;
        font-size: 12px; } }
    @media screen and (min-width: 768px), print {
      .fancybox-caption p:nth-child(1) br {
        display: none; } }
    @media screen and (max-width: 767px), print {
      .fancybox-caption p:nth-child(1) span {
        display: none; } }
  .fancybox-caption p:nth-child(2) {
    position: absolute;
    z-index: 99995; }
    @media screen and (min-width: 768px), print {
      .fancybox-caption p:nth-child(2) {
        bottom: 32px;
        left: 32px; } }
    @media screen and (max-width: 767px), print {
      .fancybox-caption p:nth-child(2) {
        bottom: 20px;
        left: 5vw;
        right: 5vw;
        white-space: nowrap;
        display: none; } }
    .fancybox-caption p:nth-child(2):before {
      content: "Realted";
      font-size: 18px;
      font-family: "Fjalla One", sans-serif; }
      @media screen and (min-width: 768px), print {
        .fancybox-caption p:nth-child(2):before {
          margin-right: 1em; } }
      @media screen and (max-width: 767px), print {
        .fancybox-caption p:nth-child(2):before {
          vertical-align: top;
          margin-right: 0.5em; } }
    .fancybox-caption p:nth-child(2) a {
      text-decoration: underline;
      padding-left: 1em;
      display: inline-block;
      position: relative;
      color: #fff;
      -webkit-transform: translate(0, -0.2em);
              transform: translate(0, -0.2em); }
      @media screen and (min-width: 768px), print {
        .fancybox-caption p:nth-child(2) a {
          font-size: 12px; } }
      @media screen and (max-width: 767px), print {
        .fancybox-caption p:nth-child(2) a {
          white-space: normal;
          width: 71vw;
          font-size: 10px;
          vertical-align: top; }
          .fancybox-caption p:nth-child(2) a:first-child {
            margin-top: 6px; } }
      .fancybox-caption p:nth-child(2) a:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 4px 0 4px 5px;
        border-color: transparent transparent transparent #fff;
        position: absolute;
        left: 0;
        top: 0.5em; }
  .fancybox-caption p:nth-child(3) {
    position: absolute;
    font-size: 12px; }
    @media screen and (min-width: 768px), print {
      .fancybox-caption p:nth-child(3) {
        bottom: 32px;
        right: 32px; } }
    @media screen and (max-width: 767px), print {
      .fancybox-caption p:nth-child(3) {
        display: block;
        text-align: center;
        left: 5vw;
        right: 5vw; } }
  @media only screen and (max-width: 767px) and (orientation: landscape) {
    .fancybox-caption p:nth-child(3) {
      /* Landscapeモード（横向き）用 */
      bottom: 20px; } }
  @media only screen and (max-width: 767px) and (orientation: portrait) {
    .fancybox-caption p:nth-child(3) {
      /* Portraitモード（縦向き）用 */
      bottom: 85px; } }

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none; }

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline; }

/* Loading indicator */
.fancybox-loading {
  -webkit-animation: fancybox-rotate .8s infinite linear;
          animation: fancybox-rotate .8s infinite linear;
  background: transparent;
  border: 6px solid rgba(100, 100, 100, 0.5);
  border-radius: 100%;
  border-top-color: #fff;
  height: 60px;
  left: 50%;
  margin: -30px 0 0 -30px;
  opacity: .6;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
  padding: 0;
  position: absolute;
  top: 50%;
  width: 60px;
  z-index: 99999; }

@-webkit-keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1); }

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0); }

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0); }

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: scale3d(1.5, 1.5, 1.5);
          transform: scale3d(1.5, 1.5, 1.5); }

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
          transform: scale3d(0.5, 0.5, 0.5); }

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1); }

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: rotate(-360deg);
          transform: rotate(-360deg); }

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg); }

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg); }

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
          transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0); }

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
          transform: scale3d(0, 0, 0) translate3d(100%, 0, 0); }

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
          transform: scale3d(1, 1, 1) translate3d(0, 0, 0); }

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
          transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg); }

.fancybox-fx-tube.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
          transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg); }

.fancybox-fx-tube.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
          transform: translate3d(0, 0, 0) scale(1); }

/* Fullscreen  */
.fancybox-button--fullscreen:before {
  width: 15px;
  height: 11px;
  left: calc(50% - 7px);
  top: calc(50% - 6px);
  border: 2px solid;
  background: none; }

/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center; }

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0; }

.fancybox-share p {
  margin: 0;
  padding: 0; }

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all .2s;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  white-space: nowrap; }

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff; }

.fancybox-share__button:hover {
  text-decoration: none; }

.fancybox-share__button--fb {
  background: #3b5998; }

.fancybox-share__button--fb:hover {
  background: #344e86; }

.fancybox-share__button--pt {
  background: #bd081d; }

.fancybox-share__button--pt:hover {
  background: #aa0719; }

.fancybox-share__button--tw {
  background: #1da1f2; }

.fancybox-share__button--tw:hover {
  background: #0d95e8; }

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px; }

.fancybox-share__button svg path {
  fill: #fff; }

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%; }

/* Slideshow button */
.fancybox-button--play:before,
.fancybox-button--pause:before {
  top: calc(50% - 6px);
  left: calc(50% - 4px);
  background: transparent; }

.fancybox-button--play:before {
  width: 0;
  height: 0;
  border-top: 6px inset transparent;
  border-bottom: 6px inset transparent;
  border-left: 10px solid;
  border-radius: 1px; }

.fancybox-button--pause:before {
  width: 7px;
  height: 11px;
  border-style: solid;
  border-width: 0 2px 0 2px; }

/* Thumbs */
.fancybox-thumbs {
  background: #fff;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995; }

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden; }

.fancybox-show-thumbs .fancybox-thumbs {
  display: block; }

.fancybox-show-thumbs .fancybox-inner {
  right: 212px; }

.fancybox-thumbs > ul {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%; }

.fancybox-thumbs-x > ul {
  overflow: hidden; }

.fancybox-thumbs-y > ul::-webkit-scrollbar {
  width: 7px; }

.fancybox-thumbs-y > ul::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); }

.fancybox-thumbs-y > ul::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px; }

.fancybox-thumbs > ul > li {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px; }

.fancybox-thumbs-loading {
  background: rgba(0, 0, 0, 0.1); }

.fancybox-thumbs > ul > li {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }

.fancybox-thumbs > ul > li:before {
  border: 4px solid #4ea7f9;
  bottom: 0;
  content: '';
  left: 0;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991; }

.fancybox-thumbs .fancybox-thumbs-active:before {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

/* Styling for Small-Screen Devices */
@media all and (max-width: 800px) {
  .fancybox-thumbs {
    width: 110px; }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px; }
  .fancybox-thumbs > ul > li {
    max-width: calc(100% - 10px); } }

/*!
 *
 *         SimpleBar.js - v2.6.1
 *         Scrollbars, simpler.
 *         https://grsmto.github.io/simplebar/
 *
 *         Made by Adrien Grsmto from a fork by Jonathan Nicol
 *         Under MIT License
 *
 */
[data-simplebar] {
  position: relative;
  z-index: 0;
  overflow: hidden !important;
  max-height: inherit;
  -webkit-overflow-scrolling: touch;
  /* Trigger native scrolling for mobile, if not supported, plugin is used. */ }

[data-simplebar="init"] {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex; }

.simplebar-scroll-content {
  overflow-x: hidden !important;
  overflow-y: scroll;
  min-width: 100% !important;
  max-height: inherit !important;
  box-sizing: content-box !important; }

.simplebar-content {
  overflow-y: hidden !important;
  overflow-x: scroll;
  box-sizing: border-box !important;
  min-height: 100% !important; }

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 11px; }

.simplebar-scrollbar {
  position: absolute;
  right: 2px;
  width: 3px;
  min-height: 10px; }

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: white;
  border-radius: 2px;
  left: 0;
  right: 0;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition: opacity 0.2s linear; }

.simplebar-track:hover .simplebar-scrollbar:before,
.simplebar-track .simplebar-scrollbar.visible:before {
  /* When hovered, remove all transitions from drag handle */
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  transition: opacity 0 linear; }

.simplebar-track.vertical {
  top: 0; }

.simplebar-track.vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px; }

.simplebar-track.horizontal {
  left: 0;
  width: auto;
  height: 11px; }

.simplebar-track.horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px; }

.horizontal.simplebar-track .simplebar-scrollbar {
  right: auto;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto; }

  /* レコメンドのプラグイン部分 */
.ContextualRelatedPosts__plugin {
  display: flex;
  margin-bottom: 50px;
}

.ContextualRelatedPosts__plugin ul {
  justify-content: center;
}

@media all and (-ms-high-contrast: none) {
  _:-ms-lang(x)::-ms-backdrop, .ContextualRelatedPosts__plugin {
    display: block;
  }
  _:-ms-lang(x)::-ms-backdrop, .ContextualRelatedPosts__plugin li {
    margin: 9px !important;
  }
  _:-ms-lang(x)::-ms-backdrop, .ContextualRelatedPosts__plugin li a {
    display: block;
  } }

.ContextualRelatedPosts__plugin li {
  width: 29%;
  margin: 10px 10px !important;
}

@media screen and (max-width: 767px) {
  .ContextualRelatedPosts__plugin li {
    width: 90%;
  } }

  .elementor-element.elementor-section.products_main {
    background-size: cover;
  }

  @media screen and (max-width: 767px) {
    .prod_accessories-wrap .category_tab.pdct {
      border: 1px solid #1b1b1b;
      margin: 0 0 40px;
      padding: 0 16px 16px;
      background: #eee;
      font-size: 14px;
      overflow: hidden;
      width: auto;
      text-align: center;
    }
    .prod_accessories-wrap .category_tab input ~ ul {
    	max-height: 0;
    	margin-bottom: 0;
    	opacity: 0;
    	overflow: hidden;
      padding: 0;
    	transition: .45s ease-out;
    }
    .prod_accessories-wrap .category_tab input:checked ~ ul {
      align-items: flex-start;
      background: #eee;
      display: flex;
      flex-direction: column;
    	height: auto;
    	max-height: inherit;
      padding-top: 8px;
    	opacity: 1;
    }
    .prod_accessories-wrap .category_tab input:checked ~ ul a {
    	padding: 10px 0;
    }
    .prod_accessories-wrap .headline_h2 {
      margin-bottom: 24px;
    }
  }
  @media screen and (min-width: 768px) {
    .prod_accessories-wrap .category_tab.pdct {
      border: none;
      background: #eeeeee;
      margin: 0 0 56px 0;
      padding: 0 24px 14px;
      text-align: center;
    }
    .prod_accessories-wrap .category_tab.pdct .sp-only {
      display: none;
    }
    .prod_accessories-wrap .headline_h2 {
      margin-bottom: 24px;
    }
  }


  .products__series_link{
    border-bottom: none;
    margin-top: 0;
    text-align: center;
  }
  .products__series_link li:first-of-type {
  }
  .products__first p {
    width: auto;
  }
  .products__first p, .products__first .tagline {
    margin: 24px auto 37px;
  }
  .headline_underline {
    font-size: 48px;
    font-family: "fjalla One";
    font-weight: normal;
  }
  .products__series .headline_h3 {
      font-size: 24px;
      padding-bottom: 0.6em;
      border-bottom: 2px solid #bfbfbf;
      position: relative;
    }
    .products__series .headline_h3:after {
      content: "";
      height: 2px;
      background: #1b1b1b;
      position: absolute;
      left: 0;
      bottom: -2px;
    }
    @media screen and (min-width: 768px), print {
      .products__series .headline_h2 {
        margin-bottom: 24px;
      }
      .products__series .headline_h3 {
        margin-bottom: 2em;
        margin-top: 1.5em;
      }
      .products__series .headline_h3:after {
        width: 306px;
      }
    }
    @media screen and (max-width: 767px), print {
      .headline_underline {
        font-size: 32px;
      }
      .products__series .headline_h3 {
        font-size: 18px;
        margin-bottom: 25px;
        margin-top: 15px;
      }
      .products__series .headline_h3:after {
        width: 110px;
      }
    }
    @media screen and (min-width: 768px), print {
      label.sp-only {
        display: none;
      }
    }


main #pagetop {
  display: none;
}


.globalnav__lowerpage ul li a[target="_blank"]:after {
  content: '';
  display: inline-block;
  width: 16px;
  height: 8px;
  margin-left: 5px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;
}

.footer__category_main_wrap dt {
  font-family: "Fjalla One", sans-serif;
}
.footer__category_main_wrap dl a[target="_blank"]:after {
  content: '';
  display: inline-block;
  width: 16px;
  height: 8px;
  margin-left: 5px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;
  background-image: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/ico-blank_w.png);
}

@media screen and (min-width: 768px), print {
  .globalnav__line {
    /* margin-left: 32px !important; */
  }
  .globalnav__line:before {
    content: "";
    width: 0;
    height: 20px;
    display: block;
    position: absolute;
    bottom: 22px;
    left: -16px;
    border-left: 1px solid #bfbfbf;
  }
  .globalnav__lowerpage ul li a[target="_blank"]:after {
    background-image: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/ico-blank_w.png);
  }
  /*  */
  .footer__category_main_wrap {
    position: relative;
    display: flex;
    max-width: 1024px;
    margin: 60px auto 40px;
  }
  .footer__category_main_wrap > dl,
  .footer__category_main_wrap > div {
    width: 25%;
  }

  .footer__category_main_wrap dt {
    font-size: 20px;
    padding-bottom: 15px;
  }

  .footer__category_main_wrap > dl:nth-child(3) {
    position: absolute;
    left: 50%;
    top: 0;
  }
  .footer__category_main_wrap > dl:nth-child(4) {
    position: absolute;
    left: 50%;
    top: 2.5em;
  }
  .footer__category_main_wrap > dl:nth-child(3) dd,
  .footer__category_main_wrap > dl:nth-child(4) dd {
    display: none;
  }
  .footer__category_main_wrap .footer__category_sub {
    display: block;
    margin: 0;
    text-align: left;
    padding-top: 6.5em;
  }
  .footer__category_main_wrap .footer__category_sub li {
    display: block;
    margin-left: 0;
  }
  .footer__category_main_wrap .sns_area {
    display: block;
  }

  .footer__category_main_wrap .sns_area > div {
    border: none;
    display: block;
    margin: 0 0 1.5em;
    padding: 0;
    width: 100%;
  }
  .footer__category_main_wrap .sns_area b,
  .footer__category_main_wrap .sns_area ul {
    text-align: left !important;
  }
  .sns_area-ttl {
    font-family: "Fjalla One", sans-serif;
    font-size: 20px;
    padding-bottom: 15px;
  }
}

@media screen and (max-width: 767px), print {
  .globalnav__lowerpage ul li a[target="_blank"]:after {
    background-image: url(/wp-content/themes/fujifilm-x_jp/assets/img/common/ico-blank.png);
  }
  /*  */
  .footer__category_main_wrap {
    margin: 22px 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer__category_main_wrap dl {
    padding: 22px 0;
    width: 50%;
    text-align: center;
  }
  .footer__category_main_wrap dl:nth-child(1),
  .footer__category_main_wrap dl:nth-child(2) {
    border-top: 1px solid #333;
  }
  .footer__category_main_wrap dl:nth-child(3),
  .footer__category_main_wrap dl:nth-child(4) {
    border-bottom: 1px solid #333;
  }
  .footer__category_main_wrap dt {
    font-size: 18px;
  }
  .footer__category_main_wrap dd {
    display: none;
  }
  .sns_area-ttl {
    display: none;
  }
}



.globalnav__inner a[href*="/photographers"] + .globalnav__lowerpage li:nth-of-type(n+2){
   display: none !important;
}
