@charset "UTF-8";
/* Scss Document */
* {
  margin: 0;
  padding: 0;
  transition: 0.3s;
  font-family: kozuka-gothic-pro, sans-serif; }

.pc {
  display: block !important; }

.sp {
  display: none !important; }

.hov_non {
  opacity: 1 !important; }

h1 {
  font-size: 34px;
  line-height: 34px; }

a {
  text-decoration: none;
  transition: 0.3s;
  color: #323232;
  word-break: normal; }

a:hover {
  opacity: 0.6; }

img {
  vertical-align: bottom; }

textarea {
  font-family: kozuka-gothic-pro, sans-serif;
  font-size: 1rem; }

input::placeholder {
  color: #c8c8c8; }

body {
  width: 100%;
  min-width: 1024px;
  font-size: 16px;
  color: #323232;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  text-align: justify;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  animation: fadeIn 2.5s ease 0s 1 normal;
  -webkit-animation: fadeIn 2.5s ease 0s 1 normal; }

@media only screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; } }
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.header_wrap nav .nav_wrap ul li .goog-te-gadget-simple a.goog-te-menu-value {
  color: #232323;
  font-size: 13px; }

.flexWrap, .picList {
  display: flex;
  justify-content: center; }

#motion_page .flexWrap {
  justify-content: flex-start;
  flex-wrap: wrap; }
  #motion_page .flexWrap.cafe {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: nowrap; }

#motion_page .mainContents-r {
  width: 75%; }

p {
  letter-spacing: 0.12rem; }

.btn {
  text-align: center;
  font-size: 0.875rem;
  margin-left: auto;
  margin-right: auto; }

.btn a, .btn button {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #EDEBE3; }

.btn button {
  cursor: pointer;
  width: 100%;
  min-width: auto;
  max-width: 386px;
  height: 62px; }

.btn button:hover {
  opacity: 0.6; }

.sec .subsc {
  text-align: center;
  line-height: 1.4rem; }

.sec .subsc.top_subsc {
  text-align: center;
  line-height: 2.6rem; }

.sec .btn {
  width: 186px;
  height: 32px;
  line-height: 32px; }

span.new {
  display: inline-block;
  font-size: 9px;
  color: #fff;
  width: 26px;
  height: 12px;
  font-weight: 500;
  background-color: #867D53;
  line-height: 14px;
  text-align: center; }

span.arrow {
  display: block;
  position: absolute;
  width: 10px;
  height: 10px;
  top: 2px;
  right: -15px; }

span.arrow:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #C8C8C8;
  border-right: 1px solid #C8C8C8; }

span.arrow:after {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  position: absolute;
  top: 1px;
  left: 0px;
  background-image: linear-gradient(to top left, transparent 47%, #C8C8C8 47%, #C8C8C8 55%, transparent 55%, transparent); }

.s_menu {
  width: 25%;
  padding-right: 54px; }

.s_menu .s_menu-item {
  margin-bottom: 52px;
  font-weight: 500; }

.s_menu .s_menu-item .ctg_lst {
  font-size: 0.875rem;
  margin-bottom: 25px;
  display: block; }

.s_menu .s_menu-item li {
  font-size: 1.125rem;
  line-height: 1.4rem;
  margin-bottom: 16px;
  text-align: left; }

.s_menu input[type="text"] {
  width: 100%;
  max-width: 200px;
  border-color: #000; }

h2 {
  font-size: 2.375rem;
  font-weight: normal;
  text-align: center;
  font-weight: 200; }

h2:after {
  content: '';
  display: block;
  width: 14px;
  padding-bottom: 30px;
  border-bottom: 1px solid #646464;
  margin: 0 auto; }

.pagetitle {
  font-size: 1.75rem;
  text-align: left !important;
  font-weight: 300;
  margin-bottom: 62px !important; }

.pagetitle:after {
  content: '';
  display: block;
  width: 14px;
  padding-bottom: 20px;
  border-bottom: 1px solid #646464;
  margin-right: auto; }

.subh_03 {
  font-size: 1rem;
  font-weight: 500;
  text-align: left;
  margin-bottom: 26px; }

.subh_03:after {
  content: none; }

p.txt {
  line-height: 1.875rem;
  margin-bottom: 52px; }

div.card {
  align-self: stretch;
  position: relative;
  width: 25%; }

div.card span.card {
  display: block; }

div.card span.card:hover {
  opacity: 0.6; }

div.card span.card .img_wrap {
  display: block;
  width: 100%;
  position: relative;
  overflow: hidden; }

div.card span.card .img_wrap:before {
  content: "";
  padding-top: 100%;
  display: block; }

div.card span.card .img_wrap img {
  height: 100%;
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }

div.card span.card div.subsc {
  width: 100%;
  max-width: 285px;
  text-align: left;
  padding: 20px 15px; }

div.card span.card div.subsc h3 {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5rem; }

div.card span.card div.subsc span.date {
  display: block;
  margin-top: 15px; }

.tagEnd {
  display: inline-block;
  margin-top: 10px;
  background-color: #787878;
  padding: 0px 8px;
  font-size: 0.65rem;
  color: #fff;
  line-height: 1.4rem; }

ul.ctg_area li.ctg_n {
  color: #867D53;
  text-decoration: underline;
  font-size: 0.875rem;
  line-height: 1.375rem;
  margin-right: 5px;
  display: inline-block; }

ul.ctg_area li.ctg_n:last-child {
  margin-right: 0; }

.text_writer {
  letter-spacing: 0.0rem !important;
  margin-top: 0px !important;
  margin-bottom: 0px !important; }

.text_writer:before {
  font-size: 0.8rem !important;
  padding-right: 5px !important;
  content: "" !important;
  font-family: 'icomoon' !important; }

span.date_event {
  position: unset !Important;
  margin-top: 0px !Important; }

span.date_event p.date_event_text {
  line-height: 1.4rem !Important;
  margin-top: 0px !Important;
  margin-bottom: 10px !Important;
  font-size: 1.2rem !Important;
  font-weight: 500 !Important;
  letter-spacing: 0.02rem !Important; }

span.date_event span.dayoftheweek {
  font-size: 0.7rem !Important; }

div.card {
  width: calc(100%/3);
  margin-bottom: 35px; }

div.card div.subsc h2 {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5rem;
  text-align: left; }

div.card div.subsc h2:after {
  content: none; }

div.card div.subsc h2.ttl_column {
  margin-bottom: 10px; }

div.card.top {
  margin-bottom: 0px; }

div.listWrap:first-of-type .list {
  border-top: 1px solid #C8C8C8; }

.list {
  padding: 8px;
  border-bottom: 1px solid #C8C8C8; }

.list a.ctg {
  display: block;
  margin-bottom: 6px; }

.list h3 {
  font-weight: 500;
  line-height: 1.5rem;
  font-size: 1rem;
  margin-bottom: 4px; }

.picList {
  justify-content: flex-start; }

.picList .flexWrap {
  justify-content: flex-start;
  width: 100%; }

.picList span.card {
  display: block;
  width: 100%;
  margin-bottom: 10px; }

.picList span.card .img_wrap {
  display: block;
  width: 200px;
  height: 110px;
  position: relative;
  overflow: hidden; }

.picList span.card .img_wrap img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }

.picList span.card .subsc {
  width: 100%;
  min-width: 260px;
  text-align: left;
  padding: 0 12px;
  line-height: 1.2rem; }

.picList span.card .subsc a h3:hover {
  opacity: 0.6; }

.bookCard {
  width: calc(100%/4); }

.bookCard a {
  display: block;
  width: 100%;
  text-align: center; }

.bookCard .img_container {
  width: 100%;
  position: relative;
  overflow: hidden; }

.bookCard .img_container:before {
  display: block;
  content: '';
  padding-top: 100%; }

.bookCard .img_container .imgWrap {
  width: 80%;
  height: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }

.bookCard .img_container .imgWrap img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  font-family: 'object-fit: contain;'; }

.bookCard h3.title {
  width: 100%;
  margin-bottom: 14px;
  padding: 0 12px; }

.bookCard span {
  display: block; }

.bookCard span.name {
  font-size: 0.875rem;
  margin-bottom: 22px; }

.plusOne, .plusTwo {
  display: none; }

@media screen and (min-width: 1681px) {
  .plusTwo {
    display: block; } }
@media screen and (min-width: 1441px) {
  .plusOne {
    display: block; }

  #TOP .sec.events {
    padding: 0 60px; } }
a.ctg {
  color: #867D53;
  text-decoration: underline;
  font-size: 0.875rem;
  line-height: 1.375rem;
  margin-left: 5px; }

a.ctg:first-child {
  margin-left: 0; }

span.date {
  font-size: 0.75rem; }

span.date_event p.date_event_card_text {
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.02rem; }

h3 {
  font-weight: 500;
  line-height: 1.5rem;
  font-size: 1rem; }

.shadow {
  box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.4); }

input {
  border-radius: 0; }

input[type="email"] {
  width: 100%;
  max-width: 320px; }

button {
  width: 100%;
  max-width: 100px;
  height: 34px;
  border-radius: 0;
  border: none;
  background-color: #EDEBE3;
  cursor: pointer; }

/*Radio Check*/
label.radio, label.radio_text {
  position: relative;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  box-sizing: border-box; }

label.radio {
  width: 14px;
  height: 14px;
  border: 1px solid #666666;
  border-radius: 100%; }

label.radio_text {
  min-height: calc(14px + 5px);
  margin-right: calc(14px + 5px);
  padding-left: calc(14px + 5px);
  line-height: calc(14px + 5px); }

/** before after **/
label.radio:before, label.radio_text:before, label.radio_text:after {
  content: '';
  position: absolute;
  box-sizing: border-box; }

label.radio:before, label.radio_text:before {
  border-radius: 100%; }

label.radio:before {
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto; }

label.radio_text:before, label.radio_text:after {
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto; }

label.radio:before {
  display: block;
  width: 6px;
  height: 6px;
  z-index: 1;
  background-color: #a49b71; }

label.radio_text:before {
  width: 14px;
  height: 14px;
  border: 1px solid #666666;
  left: 0px;
  top: -2px;
  z-index: 3; }

label.radio_text:after {
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: #a49b71;
  top: -2px;
  left: 4px;
  z-index: 1; }

/** input **/
label.radio input[type="radio"], label.radio_text input[type="radio"] {
  -moz-appearance: none;
  -webkit-appearance: none;
  position: absolute;
  z-index: 2;
  margin: 0px;
  width: 21px;
  height: 21px;
  box-sizing: border-box;
  outline: none; }

label.radio input[type="radio"], label.radio_text input[type="radio"] {
  left: -6px;
  width: 14px;
  height: 14px;
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto;
  margin-left: -14px;
  border-radius: 100%; }

label.radio input[type="radio"] {
  display: block;
  box-shadow: 14px 0px #FFF; }

label.radio_text input[type="radio"] {
  box-shadow: 20px 0px #FFF; }

/** checked forcus */
label.radio_text input[type="radio"]:checked,
label.radio input[type="radio"]:checked {
  box-shadow: none; }

label.radio_text input[type="radio"]:focus,
label.radio input[type="radio"]:focus {
  opacity: 0.2; }

label.radio_text input[type="radio"]:focus {
  box-shadow: 14px 0px #FFF; }

button.slick-prev.slick-arrow, button.slick-next.slick-arrow {
  width: 37px;
  height: 37px; }

.slick-prev:before, .slick-next:before {
  font-family: 'icomoon' !important;
  color: #323232;
  display: block;
  line-height: 37px;
  width: 37px;
  height: 37px;
  background-color: #fff;
  border-radius: 37px;
  opacity: 1; }

.slick-prev:before {
  content: "\e900"; }

.slick-next:before {
  content: "\e901"; }

.slick-prev, .slick-next {
  bottom: 48px; }

.slick-prev {
  right: 100px; }

.slick-next {
  right: 50px; }

/*=====================
	Common
=====================*/
main {
  width: 100%; }

header {
  width: 100%;
  min-width: 1024px;
  display: block;
  z-index: 1000;
  transition: .6s;
  background: rgba(20, 10, 0, 0.4);
  padding: 20px;
  position: fixed; }

.nav_sp {
  display: none; }

.header_wrap {
  width: 100%;
  max-width: 1920px;
  min-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: flex-end; }

.header_wrap .header_logo {
  display: block;
  width: 238px;
  height: 53px; }

.header_wrap nav {
  width: 100%; }

.header_wrap nav #nav_btn {
  display: none; }

.header_wrap nav .nav_wrap {
  height: 100%;
  display: block; }

.header_wrap nav .nav_wrap > ul {
  padding: 0 0 0 0;
  height: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center; }

.header_wrap nav .nav_wrap > ul > li {
  margin: 0 30px 0 0;
  padding: 0 0;
  transition: all .2s ease-in;
  position: relative; }

.header_wrap nav .nav_wrap > ul > li > a:after {
  font-size: 20px;
  opacity: 0;
  content: "・";
  display: block;
  position: absolute;
  bottom: -24px;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.3s;
  color: #fff; }

.header_wrap nav .nav_wrap > ul > li.gt > a:after {
  content: none; }

.header_wrap nav .nav_wrap > ul > li > a:hover:after {
  opacity: 1; }

.header_wrap nav .nav_wrap > ul > li > a {
  color: #fff;
  font-size: 16px;
  line-height: 16px;
  font-weight: 400;
  opacity: 1; }

header .header_wrap nav .nav_wrap ul li.gnav.ad_sub {
  position: relative;
  transition: all 0;
  padding-top: 10px;
  padding-bottom: 10px;
  transition: all 0.3s;
  display: block; }
  header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > a::after {
    bottom: -14px; }
  header .header_wrap nav .nav_wrap ul li.gnav.ad_sub:hover > ul {
    visibility: visible;
    opacity: 1; }
    header .header_wrap nav .nav_wrap ul li.gnav.ad_sub:hover > ul > li a {
      visibility: visible;
      opacity: 1; }
  header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul {
    height: auto;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: 0s;
    top: 32px;
    left: 0;
    padding: 0; }
    header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li {
      margin: 0;
      position: static;
      float: none;
      display: block;
      white-space: nowrap; }
      header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li + li > a {
        border-top: none; }
      header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li > a {
        width: auto;
        border: #c8c8c8 solid 1px;
        padding: 11px 11px 9px;
        display: block;
        color: #000;
        font-size: 14px;
        background-color: #fff;
        visibility: hidden;
        opacity: 0;
        transition: 0.5s; }
        header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li > a:hover {
          background-color: #edebe3; }
  @media only screen and (max-width: 768px) {
    header .header_wrap nav .nav_wrap ul li.gnav.ad_sub {
      display: block;
      padding-bottom: 22%; }
      header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > a {
        display: block;
        clear: both; }
        header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > a::after {
          bottom: -24px; }
      header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul {
        width: 100%;
        margin-top: 2px;
        border: none !important;
        display: flex !important;
        justify-content: center;
        visibility: visible !important;
        opacity: 1 !important; }
        header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li {
          line-height: 1; }
          header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li + li {
            margin-top: 0;
            margin-left: 20px;
            position: relative; }
            header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li + li::before {
              position: absolute;
              top: 1px;
              left: -13px;
              content: "/";
              color: #fff; }
          header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li a {
            margin: 0;
            padding: 0;
            background-color: inherit;
            color: #fff;
            font-size: 13px;
            border: none !important;
            visibility: visible !important;
            opacity: 1 !important; }
            header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li a:hover {
              background-color: transparent; }
            header .header_wrap nav .nav_wrap ul li.gnav.ad_sub > ul > li a::after {
              content: none; } }

.header_wrap nav .nav_wrap ul li.gnav a.current:after {
  opacity: 1; }

.header_wrap nav .nav_wrap ul li.gnav.store {
  margin-right: 40px; }

.header_wrap nav .nav_wrap ul li.gnav.store a.current:after {
  opacity: 0; }

.header_wrap nav .nav_wrap ul li.gnav.store a.current:hover:after {
  opacity: 1 !important; }

.header_wrap nav .nav_wrap ul li:last-of-type {
  margin: 0; }

.header_wrap nav .nav_wrap ul .sns_link_r:hover:after {
  opacity: 0; }

.header_wrap nav .nav_wrap ul .sns_link_r a span {
  vertical-align: -5px; }

.header_wrap nav .nav_wrap ul .sns_link_r a:hover {
  opacity: 0.6; }

#hello_area .slide_area .slide {
  position: relative; }

#hello_area .slide_area .slide img {
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  object-position: top; }

#hello_area .slide_area .slide .infoArea {
  position: absolute;
  bottom: 0;
  padding: 24px;
  background-color: rgba(237, 235, 227, 0.9);
  font-size: 0.875rem;
  width: 100%;
  text-align: center; }

.sec, .flexWrap.double {
  width: 100%;
  max-width: 1920px;
  min-width: 1024px;
  padding: 0 150px;
  margin: 150px auto 0; }

.sec h1, .flexWrap.double h1 {
  margin-bottom: 20px;
  text-align: center; }

.flexWrap.double .sec {
  width: 50%;
  max-width: 50%;
  min-width: 50%;
  margin: 0;
  padding: 0; }

.col3 a {
  width: 250px;
  background: #00aa;
  margin-bottom: 40px; }

.col3 a img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

.col3 a .text_area {
  padding: 20px 15px 40px; }

.col3 a .text_area p {
  color: #fff; }

.col3 a .text_area .sub_title + .title {
  margin-top: 7px; }

.col3 a .text_area .title {
  font-size: 24px; }

.col3 a .text_area .title + p {
  margin-top: 14px; }

.col3 .empty-cell {
  width: 250px; }

#motion_page.single .mainContents-r .titleArea {
  margin-bottom: 58px; }

#motion_page.single .mainContents-r .titleArea .ctgArea {
  margin-bottom: 14px; }

#motion_page.single .mainContents-r .articleTitle {
  font-size: 1.562rem;
  font-weight: 500;
  text-align: left;
  margin-bottom: 14px;
  margin-top: 0; }

#motion_page.single .mainContents-r h1 {
  font-size: 1.25rem;
  font-weight: 500;
  margin-top: 70px;
  text-align: left; }

#motion_page.single .mainContents-r h2 {
  font-size: 1rem;
  margin-top: 70px;
  font-weight: 500;
  text-align: left; }

#motion_page.single .mainContents-r h2:after {
  content: none; }

#motion_page.single .mainContents-r h3 {
  margin-top: 28px; }

#motion_page.single .mainContents-r a {
  text-decoration: underline; }

#motion_page.single .mainContents-r p {
  font-size: 1rem;
  line-height: 1.875rem;
  margin-top: 26px;
  letter-spacing: 0; }

#motion_page.single .mainContents-r p.cap {
  font-size: 0.875rem;
  text-align: center;
  margin-top: 10px; }

#motion_page.single .mainContents-r p.cap + img {
  margin-top: 24px; }

#motion_page.single .mainContents-r p.cap + p {
  margin-top: 50px; }

#motion_page.single .mainContents-r img {
  max-width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 70px; }

#motion_page.single .mainContents-r img + img {
  margin-top: 5px; }

#motion_page.single .mainContents-r img + p {
  margin-top: 70px; }

#motion_page.single .writer {
  margin-top: 104px;
  padding: 30px;
  border: 1px solid #C8C8C8; }

#motion_page.single .writer .w-wrap {
  display: flex; }

#motion_page.single .writer .w-wrap .imgWrap {
  width: 100px;
  height: 100px;
  position: relative;
  overflow: hidden; }

#motion_page.single .writer .w-wrap .imgWrap:before {
  content: "";
  padding-top: 100%;
  display: block; }

#motion_page.single .writer .w-wrap .imgWrap img {
  width: 100px;
  margin-top: 0px;
  height: 100%;
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }

#motion_page.single .writer .w-wrap .prof {
  width: 85%;
  padding-left: 30px; }

#motion_page.single .writer .w-wrap .prof .name {
  font-size: 1rem;
  font-weight: 500; }

#motion_page.single .writer .w-wrap .prof p {
  font-size: 0.875rem;
  line-height: 1.25rem; }

#motion_page.single .snsArea-b {
  display: flex;
  margin-top: 104px; }

#motion_page.single .snsArea-b .twt, #motion_page.single .snsArea-b .fcb {
  margin-right: 10px; }

#motion_page.single .nvArea-b {
  margin: 50px auto 30px auto; }

#motion_page.single .nvArea-b ul {
  display: flex;
  justify-content: center; }

#motion_page.single .nvArea-b ul li {
  font-size: 1.125rem; }

#motion_page.single .nvArea-b ul li a {
  color: #867D53;
  text-decoration: underline; }

#motion_page.single .nvArea-b ul li.prev, #motion_page.single .nvArea-b ul li.txt-lrg {
  margin-right: 88px; }

footer {
  padding: 0 20px; }

footer .rightContactLink {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position: fixed;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000; }

footer .rightContactLink a {
  font-size: 1.25rem;
  color: #867D53;
  padding-left: 6px;
  border-left: 2px solid #867D53; }

footer .wrapFtImg {
  height: 34vh;
  min-height: 420px;
  background-image: url("../img/common/cntct_bg.jpg");
  overflow: hidden;
  background-position: bottom center;
  background-size: cover; }

footer .sec.contact {
  padding-bottom: 20px; }

footer .sec.contact img {
  width: 100%; }

footer .sec.contact .flexWrap {
  margin-bottom: 50px; }

footer .sec.contact h2 {
  margin-bottom: 20px; }

footer .sec.contact h2:after {
  content: none; }

footer .sec.contact .subsc {
  font-size: 0.937rem;
  margin-bottom: 54px; }

footer .sec.contact .tell {
  margin-right: 25pxpx;
  position: relative;
  text-align: center; }

footer .sec.contact .tell span {
  display: block; }

footer .sec.contact .tell.pc {
  font-size: 2.5rem; }

footer .sec.contact .tell.pc span {
  margin-top: 5px;
  font-size: 0.937rem; }

footer .sec.contact .tell.pc::before {
  content: '\f095';
  font-family: 'icomoon' !important;
  position: absolute;
  left: -45px;
  top: 8px; }

footer .sec.contact .contact.btn {
  margin-left: 25px;
  margin-right: 0; }

footer .sec.contact .contact.btn .btnArea {
  margin-top: 0 !important; }

footer .sec.contact .contact.btn .btnArea .btn {
  margin-left: 0;
  margin-right: 0;
  width: 286px;
  height: 62px;
  line-height: 62px;
  font-weight: 500; }

footer .sns_link_r {
  margin-top: 20px;
  justify-content: flex-start;
  text-align: left; }

footer .footer_nav {
  margin-top: 20px;
  margin-bottom: 50px;
  font-size: 0.875rem;
  line-height: 13px;
  font-weight: 400;
  display: flex;
  justify-content: center; }

footer .footer_nav li a {
  color: #7C7349;
  margin: 0 24px;
  padding: 2px 0; }

footer .footer_nav li a.ft_store {
  display: inline-block;
  position: relative;
  margin-right: 40px; }

footer .fugenshaInfo {
  font-size: 0.875rem;
  margin-right: 15%; }

footer .fugenshaInfo .logo_Wrap {
  width: 100%;
  max-width: 300px;
  margin-bottom: 40px; }

footer .fugenshaInfo .logo_Wrap img {
  width: 100%; }

footer .fugenshaInfo .access {
  margin-bottom: 14px; }

footer .fugenshaInfo .info table {
  border-collapse: separate;
  border-spacing: 0 20px; }

footer .fugenshaInfo .info table tr {
  margin-bottom: 20px; }

footer .fugenshaInfo .info table th {
  vertical-align: top;
  font-weight: normal;
  line-height: 1.375rem; }

footer .fugenshaInfo .info table td {
  padding-left: 5px;
  line-height: 1.375rem; }

footer .link_mail .linkWrap {
  display: flex;
  margin-bottom: 55px;
  justify-content: center;
  align-items: center; }

footer .link_mail .linkWrap a {
  display: block;
  width: 100%;
  max-width: 240px;
  height: auto;
  max-height: 100px;
  position: relative; }

footer .link_mail .linkWrap a img {
  width: 100%; }

footer .link_mail .linkWrap a:first-child {
  margin-right: 22px; }

footer .link_mail .linkWrap a span.arrow {
  top: 4px;
  right: 4px; }

footer .link_mail .mail .mlmg {
  font-size: 1.125rem;
  margin-bottom: 28px; }

footer .link_mail .mail .mlmg.subsc {
  font-size: 0.75rem;
  line-height: 1.25rem;
  margin-bottom: 18px; }

footer .link_mail .mail .mlmg.subsc a {
  text-decoration: underline; }

footer .footer_logo {
  display: block;
  text-align: center;
  margin-top: 36px; }

footer .footer_logo img {
  width: 100px;
  height: 30px; }

footer .copyright {
  text-align: center;
  font-size: 10px;
  line-height: 1rem;
  margin-top: 30px;
  letter-spacing: 1px;
  margin-bottom: 42px; }

footer .copyright.wrapCopylright {
  text-align: left;
  margin-top: -12px;
  margin-bottom: 30px;
  padding-left: 30px; }

.sns_link span {
  margin-left: 8px; }

.sns_link span:before {
  font-size: 14px;
  color: #787878; }

.sns_link_r span {
  display: inline-block;
  margin-left: 8px; }

.sns_link_r span:before {
  font-size: 26px;
  color: #646464; }

/*=====================
	Top
=====================*/
#TOP .sec.about {
  background-image: url("../img/top/ab_bk_img.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  padding: 170px;
  margin: 20px auto 0 auto; }

#TOP .sec.about h2 {
  margin-bottom: 108px; }

#TOP .sec.about .subsc {
  margin-bottom: 82px; }

#TOP .sec.artists {
  margin-top: 30px; }
  #TOP .sec.artists .ad_list {
    max-width: inherit;
    margin-top: 85px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    #TOP .sec.artists .ad_list > li {
      max-width: 180px;
      width: 12.5%; }
      #TOP .sec.artists .ad_list > li > a {
        display: block;
        width: 100%;
        text-align: center; }
        #TOP .sec.artists .ad_list > li > a .ad_img {
          width: 100%;
          margin-bottom: 20px;
          position: relative;
          overflow: hidden; }
          #TOP .sec.artists .ad_list > li > a .ad_img::before {
            display: block;
            content: '';
            padding-top: 100%; }
          #TOP .sec.artists .ad_list > li > a .ad_img .ad_imgwrap {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translateY(-50%) translateX(-50%);
            -webkit-transform: translateY(-50%) translateX(-50%); }
            #TOP .sec.artists .ad_list > li > a .ad_img .ad_imgwrap img {
              height: 100%;
              width: 100%;
              object-fit: cover;
              font-family: "object-fit: cover;"; }
        #TOP .sec.artists .ad_list > li > a .ad_txt .ad_ttl {
          margin-bottom: 13px;
          font-size: 14px;
          color: #646464;
          font-weight: normal; }
        #TOP .sec.artists .ad_list > li > a .ad_txt .ad_en {
          margin-bottom: 7px;
          font-size: 16px;
          font-weight: 500; }
        #TOP .sec.artists .ad_list > li > a .ad_txt .ad_jp {
          font-size: 14px; }
  #TOP .sec.artists .btnArea {
    margin-top: 65px; }
  @media only screen and (max-width: 1440px) {
    #TOP .sec.artists .ad_list > li {
      width: 16%; }
      #TOP .sec.artists .ad_list > li:nth-child(6) {
        display: none; } }
  @media only screen and (max-width: 1024px) {
    #TOP .sec.artists .ad_list > li {
      width: 21.25%; }
      #TOP .sec.artists .ad_list > li:nth-child(5) {
        display: none; } }
  @media only screen and (max-width: 768px) {
    #TOP .sec.artists {
      margin-top: 90px; }
      #TOP .sec.artists .ad_list {
        margin-top: 55px;
        display: block; }
        #TOP .sec.artists .ad_list > li {
          width: 100%;
          max-width: inherit; }
          #TOP .sec.artists .ad_list > li:nth-child(5) {
            display: block; }
          #TOP .sec.artists .ad_list > li:nth-child(6) {
            display: block; }
          #TOP .sec.artists .ad_list > li + li {
            margin-top: 10px; }
          #TOP .sec.artists .ad_list > li > a {
            text-align: left;
            display: flex;
            align-items: center; }
            #TOP .sec.artists .ad_list > li > a .ad_img {
              width: 24vw;
              margin-bottom: 0; }
            #TOP .sec.artists .ad_list > li > a .ad_txt {
              flex: 1;
              padding-left: 15px; }
              #TOP .sec.artists .ad_list > li > a .ad_txt .ad_ttl {
                margin-bottom: 10px;
                font-size: 12px;
                line-height: 1.2;
                color: #000; }
              #TOP .sec.artists .ad_list > li > a .ad_txt .ad_en {
                margin-bottom: 4px;
                line-height: 1.2; }
              #TOP .sec.artists .ad_list > li > a .ad_txt .ad_jp {
                font-size: 13px;
                line-height: 1.2; } }

#TOP .sec.events h2.ttl {
  margin-bottom: 90px; }

#TOP .flexWrap.double .sec.news, #TOP .flexWrap.double .sec.columns {
  width: 50%;
  align-self: stretch; }

#TOP .flexWrap.double .sec.news {
  padding-right: 35px; }

#TOP .flexWrap.double .sec.columns {
  padding-left: 35px; }

#TOP .flexWrap.double h2 {
  margin-bottom: 48px; }

#TOP .bg {
  background-color: #EBEAE9;
  width: 100vw;
  background-image: url("../img/top/top_bk_bg.jpg");
  background-size: cover;
  background-position: bottom;
  background-repeat: no-repeat; }

#TOP .sec.publications {
  padding-top: 50px;
  padding-bottom: 170px; }

#TOP .sec.publications h2 {
  margin-bottom: 50px; }

#TOP .sec.publications .subsc {
  line-height: 1.75rem;
  text-align: left; }

#TOP .sec.publications .subsc p {
  padding-top: 66px; }

#TOP .sec.publications .btnArea .btn {
  margin-left: 0; }

#TOP .sec.publications .btnArea .btn a {
  color: #323232; }

#TOP .sec.store h2 {
  margin-bottom: 36px; }

#TOP .sec.store .btn a.more.store {
  position: relative; }

#TOP .sec.store .btn a.more.store span.arrow {
  top: 4px;
  right: 4px; }

#TOP .sec.calender h2, #TOP .sec.sns h2 {
  text-align: left;
  font-size: 1.25rem;
  font-weight: 500;
  margin-bottom: 30px; }

#TOP .sec.calender h2:after, #TOP .sec.sns h2:after {
  content: none; }

#TOP .sec.calender .googlecal iframe {
  width: 100%;
  height: 600px !important; }

#TOP .sec.sns .insta, #TOP .sec.sns .twitr, #TOP .sec.sns .fcbk {
  width: 340px;
  height: 428px; }

#TOP .sec.sns .insta, #TOP .sec.sns .twitr {
  margin-right: 60px;
  border: 1px solid #C8C8C8; }

#TOP .sec.sns .insta .titleWrap {
  height: 44px;
  line-height: 44px;
  padding-left: 10px; }

#TOP .sec.sns .insta .titleWrap span {
  font-size: 0.75rem;
  margin-left: 5px; }

#TOP .sec.sns .insta .titleWrap span.inst {
  margin-left: 0;
  font-size: 1.312rem; }

#TOP .sec.sns .insta .titleWrap a {
  font-size: 0.75rem;
  color: #2b7bb9;
  font-weight: 500;
  margin-left: 5px; }

#TOP .sec.sns .insta iframe {
  margin-bottom: 10px; }

#TOP .sec.sns .insta p {
  font-size: 0.875rem;
  letter-spacing: 1;
  padding-left: 6px; }

#TOP .sec.sns .insta p a {
  color: #2b7bb9;
  text-decoration: underline; }

#TOP .btnArea {
  margin-top: 64px; }
  #TOP .btnArea.ad_two {
    display: flex;
    justify-content: center; }
    #TOP .btnArea.ad_two .btn {
      width: 135px;
      margin-left: 8px;
      margin-right: 8px; }
    @media only screen and (max-width: 768px) {
      #TOP .btnArea.ad_two {
        display: block; }
        #TOP .btnArea.ad_two .btn {
          width: 186px;
          margin-left: auto;
          margin-right: auto; }
          #TOP .btnArea.ad_two .btn + .btn {
            margin-top: 8px; } }

#TOP .btnArea {
  margin-top: 20px; }

/*=====================
	ABOUT
=====================*/
#ABOUT .sec.aboutFirst {
  margin-top: 0;
  padding-top: 150px; }

#ABOUT .slide_area {
  width: 100%;
  max-width: 900px;
  height: 100%;
  max-height: 560px;
  margin: 0 auto 120px auto; }

#ABOUT .slide_area .slide {
  width: 100%;
  max-width: 900px;
  height: 100%;
  max-height: 560px;
  position: relative;
  overflow: hidden; }

#ABOUT .slide_area .slide img {
  width: 100%;
  height: -webkit-fill-available;
  height: -moz-available;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

#ABOUT .slick-dots {
  text-align: center;
  bottom: -36px; }

#ABOUT .slick-dots li {
  display: inline-block;
  margin: 0 10px; }

#ABOUT .slick-dots li button {
  position: relative;
  text-indent: -9999px; }

#ABOUT .slick-dots li button:before {
  content: '';
  width: 30px;
  height: 2px;
  background-color: #A49B71;
  text-indent: 0px;
  position: absolute;
  top: 0;
  left: 0; }

#ABOUT .slick-dots li.slick-active button:before {
  content: ''; }

#ABOUT .about_title {
  font-size: 2.125rem;
  line-height: 3.375rem;
  font-weight: 200;
  margin-bottom: 65px; }

#ABOUT h2.subh_03 {
  font-size: 1.375rem; }

#ABOUT .aboutFirst p.txt {
  line-height: 1.75rem;
  padding: 0 120px; }

#ABOUT .howToUse .flexWrap {
  align-items: center; }

#ABOUT .howToUse .flexWrap.rev .imgWrap {
  order: 2; }

#ABOUT .howToUse .flexWrap.rev .desc {
  order: 1; }

#ABOUT .howToUse .imgWrap {
  width: 40%;
  max-width: 445px; }

#ABOUT .howToUse .imgWrap.w550 {
  width: 550px;
  max-width: 550px; }

#ABOUT .howToUse .imgWrap.w550 img {
  width: 550px; }

#ABOUT .howToUse .imgWrap img {
  width: 100%;
  object-fit: contain;
  font-family: 'object-fit: contain;'; }

#ABOUT .howToUse .desc {
  text-align: center;
  width: 60%; }

#ABOUT .howToUse .desc h3 {
  font-size: 1.875rem;
  line-height: 3.375rem;
  font-weight: 200;
  margin-bottom: 54px; }

#ABOUT .howToUse .desc .txt {
  line-height: 1.75rem;
  margin-bottom: 35px; }

#ABOUT .howToUse .desc .txt a {
  color: #867D53;
  text-decoration: underline; }

#ABOUT .aboutInfo .gMap {
  width: 100%;
  height: 400px;
  margin-bottom: 60px; }

#ABOUT .aboutInfo .gMap iframe {
  width: 100%;
  height: 100%; }

#ABOUT .aboutInfo .gMap .g_link {
  margin-top: 10px;
  text-align: right; }

#ABOUT .aboutInfo .gMap .g_link a {
  color: #867D53;
  display: inline-block;
  margin-right: 15px;
  position: relative; }

#ABOUT .aboutInfo .gMap .g_link a span {
  text-decoration: underline; }

#ABOUT .aboutWap .flexWrap {
  justify-content: space-between; }

#ABOUT .aboutWap .desc {
  width: 50%;
  margin-right: 30px; }

#ABOUT .aboutWap .desc h3 {
  margin-bottom: 22px; }

#ABOUT .aboutWap .desc h3 {
  margin-bottom: 45px;
  font-size: 1.125rem; }

#ABOUT .aboutWap .desc h3 a {
  text-decoration: underline;
  display: inline-block;
  position: relative; }

#ABOUT .aboutWap .desc .txt {
  letter-spacing: 0;
  line-height: 1.5rem;
  margin-right: 0px; }

#ABOUT .aboutWap .wapInfo {
  width: 100%; }

#ABOUT .aboutWap .wapInfo dl {
  display: flex;
  align-items: flex-start; }

#ABOUT .aboutWap .wapInfo dl dt {
  width: 30%; }

#ABOUT .aboutWap .wapInfo dl dd {
  margin-top: -5px;
  width: 70%; }

#ABOUT .aboutWap .wapImg {
  width: 50%;
  max-width: 350px;
  height: auto; }

#ABOUT .aboutWap .wapImg img {
  width: 100%; }

#ABOUT dt {
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 10px; }

#ABOUT dd {
  margin-bottom: 26px;
  line-height: 1.5rem; }

#ABOUT dd .small {
  font-size: 0.875rem; }

/*=====================
	EVENTS & NEWS & COLUMNS 
=====================*/
#EVENTS .sec:first-child, #NEWS .sec:first-child, #COLUMNS .sec:first-child {
  margin-top: 0;
  padding-top: 150px; }

#NEWS .news-list div.listWrap:last-of-type {
  margin-bottom: 30px; }

#motion_page .ctg_title {
  font-size: 1.375rem;
  font-weight: 500;
  margin-bottom: 60px; }

#motion_page .ctg_detail {
  margin-top: -30px;
  margin-bottom: 50px;
  line-height: 1.45rem; }

/*=====================
	PUBLICATIONS
=====================*/
#PUBLICATIONS .sec:first-child {
  margin-top: 0;
  padding-top: 150px; }

#PUBLICATIONS .sec.pnv {
  margin-top: 30px; }

#PUBLICATIONS .pub_bk_wrap {
  display: flex;
  align-items: center;
  margin-bottom: 50px; }

#PUBLICATIONS .pub_bk_wrap .img_Wrap {
  width: 500px;
  height: 358px;
  position: relative;
  overflow: hidden; }

#PUBLICATIONS .pub_bk_wrap .img_Wrap img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }

#PUBLICATIONS .pub_bk_wrap .desc {
  padding: 10px 30px; }

#PUBLICATIONS .pub_bk_wrap .desc .title {
  margin-bottom: 20px; }

#PUBLICATIONS .pub_bk_wrap .desc .title .sub {
  display: block;
  opacity: 0.8;
  margin-bottom: 12px; }

#PUBLICATIONS .pub_bk_wrap .desc .title .bktitle {
  display: block;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.65rem; }

#PUBLICATIONS .pub_bk_wrap .desc ul {
  margin-bottom: 40px; }

#PUBLICATIONS .pub_bk_wrap .desc ul li {
  font-size: 0.75rem;
  margin-bottom: 5px;
  letter-spacing: 1px;
  line-height: 1.2rem; }

#PUBLICATIONS .pub_bk_wrap .desc .btn {
  margin-left: 0;
  margin-right: 0; }

#PUBLICATIONS .pub_bk_wrap .desc .btn a {
  font-weight: 500; }

/*=====================
	#ARTISTS 
=====================*/
#ARTISTS .sec .ad_pglink {
  display: none; }
#ARTISTS .sec:first-child {
  margin-top: 0;
  padding-top: 150px; }
#ARTISTS .sec .ad_ttl {
  margin-bottom: 12px;
  text-align: left;
  font-size: 22px;
  font-weight: 500;
  padding: 0; }
  #ARTISTS .sec .ad_ttl::after {
    content: none; }
  #ARTISTS .sec .ad_ttl span {
    margin-left: 0.5em;
    font-size: 16px;
    font-weight: normal; }
#ARTISTS .sec .ad_list {
  display: flex;
  flex-wrap: wrap; }
  #ARTISTS .sec .ad_list + .ad_ttl {
    margin-top: 85px; }
  #ARTISTS .sec .ad_list > li {
    margin-top: 26px;
    width: 32%;
    margin-left: 2%; }
    #ARTISTS .sec .ad_list > li:nth-child(3n + 1) {
      margin-left: 0; }
    #ARTISTS .sec .ad_list > li a {
      display: flex;
      align-items: center; }
      #ARTISTS .sec .ad_list > li a .ad_img img {
        width: 4vw;
        height: 4vw;
        min-height: 50px;
        min-width: 50px;
        object-fit: cover;
        font-family: "object-fit: cover;"; }
      #ARTISTS .sec .ad_list > li a .ad_txt {
        padding-left: 22px;
        flex: 1;
        display: block; }
        #ARTISTS .sec .ad_list > li a .ad_txt .ad_en {
          margin: 0 0  0.35em 0;
          padding: 0;
          font-size: 18px;
          font-weight: 500;
          line-height: 1; }
        #ARTISTS .sec .ad_list > li a .ad_txt .ad_jp {
          margin: 0;
          padding: 0;
          font-size: 14px;
          line-height: 1;
          display: inline-block;
          margin-right: -1px;
          white-space: nowrap; }
          #ARTISTS .sec .ad_list > li a .ad_txt .ad_jp:after {
            content: ".";
            width: 0;
            font-size: 0;
            color: transparent;
            margin-right: 1px; }
@media only screen and (max-width: 1240px) {
  #ARTISTS .sec .ad_list > li {
    width: 48%;
    margin-left: 4% !important; }
    #ARTISTS .sec .ad_list > li:nth-child(2n + 1) {
      margin-left: 0 !important; } }
@media only screen and (max-width: 768px) {
  #ARTISTS .sec:first-child {
    padding-top: 94px; }
  #ARTISTS .sec .ad_list > li {
    margin-top: 10px; }
  #ARTISTS .sec .ad_pglink {
    margin-top: -20px;
    margin-bottom: 50px;
    display: block; }
    #ARTISTS .sec .ad_pglink .tag {
      margin-bottom: 4px;
      font-size: 14px;
      font-weight: 500; }
    #ARTISTS .sec .ad_pglink > ul {
      display: flex; }
      #ARTISTS .sec .ad_pglink > ul > li {
        font-size: 16px;
        font-weight: 500; }
        #ARTISTS .sec .ad_pglink > ul > li a {
          display: block; }
        #ARTISTS .sec .ad_pglink > ul > li + li {
          margin-left: 13px; }
  #ARTISTS .sec .ad_ttl {
    margin-top: -80px;
    margin-bottom: 30px;
    padding-top: 80px; }
  #ARTISTS .sec .ad_list {
    display: block; }
    #ARTISTS .sec .ad_list + .ad_ttl {
      margin-top: -20px; }
    #ARTISTS .sec .ad_list > li {
      width: 100%;
      margin-left: 0 !important; }
      #ARTISTS .sec .ad_list > li a .ad_img img {
        width: 24vw;
        height: 24vw; }
      #ARTISTS .sec .ad_list > li a .ad_txt {
        padding-left: 4vw; }
        #ARTISTS .sec .ad_list > li a .ad_txt .ad_en {
          margin: 0 0  0.25em 0;
          font-size: 16px; }
        #ARTISTS .sec .ad_list > li a .ad_txt .ad_jp {
          font-size: 13px; } }

#ARTISTS .sec .ad_dtlblock {
  display: flex; }
  #ARTISTS .sec .ad_dtlblock .ad_nav {
    width: 20.7vw;
    max-width: 257px;
    display: block; }
    #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box {
      padding-bottom: 45px; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box + .ad_box {
        padding-top: 40px;
        border-top: #dcdcdc solid 1px; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_ttl {
        font-size: 14px;
        margin-bottom: 1.0em; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_en {
        margin-bottom: 0.4em;
        font-size: 22px; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_jp {
        font-size: 16px; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info {
        margin-top: 25px; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li {
          font-size: 14px;
          margin-right: 30px; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li a {
            position: relative;
            text-decoration: underline; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li + li {
            margin-top: 0.7em; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li span.arrow {
            display: block;
            position: absolute;
            width: 10px;
            height: 10px;
            top: 2px;
            right: -15px; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li span.arrow:before {
            content: "";
            display: block;
            width: 10px;
            height: 10px;
            border-top: 1px solid #323232;
            border-right: 1px solid #323232; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li span.arrow:after {
            content: "";
            display: block;
            width: 9px;
            height: 9px;
            position: absolute;
            top: 1px;
            left: 0px;
            background-image: linear-gradient(to top left, transparent 47%, #323232 47%, #323232 55%, transparent 55%, transparent); }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info .sns_link_r {
          margin-left: 0 !important; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info .sns_link_r::after {
            content: "";
            clear: both;
            display: block; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info .sns_link_r li {
            float: left; }
            #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info .sns_link_r li + li {
              margin-left: 8px; }
            #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info .sns_link_r li span {
              margin: 0; }
            #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info .sns_link_r li a {
              display: block; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link {
        font-weight: 500; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li {
          font-size: 18px; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li + li {
            margin-top: 0.9em; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li > ul {
            margin-top: 0.8em; }
            #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li > ul > li {
              margin-top: 0.4em;
              font-size: 14px;
              line-height: 1.4; }
              #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li > ul > li::before {
                width: 0.6em;
                content: "-";
                display: block;
                text-align: center; }
              #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li > ul > li > a {
                margin-top: -1.3em;
                padding-left: 0.9em;
                display: block;
                text-decoration: underline; }
  #ARTISTS .sec .ad_dtlblock .ad_cts {
    margin-left: 90px;
    flex: 1; }
    #ARTISTS .sec .ad_dtlblock .ad_cts h2 {
      font-size: 22px;
      text-align: left;
      font-weight: 500; }
      #ARTISTS .sec .ad_dtlblock .ad_cts h2::after {
        content: none; }
    #ARTISTS .sec .ad_dtlblock .ad_cts .ad_img {
      margin-bottom: 75px;
      text-align: center; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_img img {
        height: 340px; }
    #ARTISTS .sec .ad_dtlblock .ad_cts p {
      line-height: 1.875; }
      #ARTISTS .sec .ad_dtlblock .ad_cts p.ad_en {
        margin-top: 3em; }
    #ARTISTS .sec .ad_dtlblock .ad_cts .ad_link {
      text-align: center;
      margin-top: 7em; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_link a {
        color: #867d53;
        text-decoration: underline; }
    #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works {
      display: flex;
      flex-wrap: wrap; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works + h2 {
        margin-top: 80px; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li {
        width: 22.375%;
        height: 180px;
        margin-top: 47px;
        margin-left: 3.5%;
        text-align: center; }
        #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li:nth-child(4n + 1) {
          margin-left: 0; }
        #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li > a img {
          width: 180px;
          height: 180px;
          object-fit: contain;
          font-family: "object-fit: contain;"; }
        #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li > a .caption {
          display: none; }
@media only screen and (max-width: 1440px) {
  #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li {
    width: 31%;
    margin-left: 3.5% !important; }
    #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li:nth-child(3n + 1) {
      margin-left: 0 !important; } }
@media only screen and (max-width: 1240px) {
  #ARTISTS .sec .ad_dtlblock .ad_cts .ad_nav {
    width: 20.7vw;
    max-width: auto; }
  #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li > a img {
    width: auto;
    max-width: 100%; } }
@media only screen and (max-width: 1024px) {
  #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li {
    width: 31%;
    margin-left: 3.5% !important; }
    #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li:nth-child(3n + 1) {
      margin-left: 0 !important; }
    #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li > a img {
      width: 180px;
      max-width: inherit; } }
@media only screen and (max-width: 768px) {
  #ARTISTS .sec .ad_dtlblock {
    display: block; }
    #ARTISTS .sec .ad_dtlblock .ad_nav {
      width: 100%;
      max-width: inherit; }
      #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box {
        padding-bottom: 25px; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box + .ad_box {
          padding-top: 25px; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_ttl {
          margin-bottom: 0.25em;
          font-size: 12px; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_en {
          margin-bottom: 0.25em;
          line-height: 1;
          font-size: 19px; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_jp {
          line-height: 1;
          font-size: 13px; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info {
          margin-top: 15px; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info.ad_infolink {
            display: flex;
            align-items: center; }
            #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info.ad_infolink > li .sns_link_r {
              margin-left: 23px; }
              #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info.ad_infolink > li .sns_link_r li:first-child {
                margin-left: 0; }
              #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info.ad_infolink > li .sns_link_r li span:before {
                font-size: 19px; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li {
            font-size: 13px; }
            #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_info > li + li {
              margin-top: 0.2em; }
        #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li {
          font-size: 16px; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li + li {
            margin-top: 0.7em; }
          #ARTISTS .sec .ad_dtlblock .ad_nav .ad_box .ad_link > li > ul {
            margin-top: 0.6em; }
    #ARTISTS .sec .ad_dtlblock .ad_cts {
      margin-left: 0;
      padding-top: 40px;
      flex: none; }
      #ARTISTS .sec .ad_dtlblock .ad_cts.ad_artwork {
        border-top: #dcdcdc solid 1px; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_img {
        margin-bottom: 10vw; }
        #ARTISTS .sec .ad_dtlblock .ad_cts .ad_img img {
          height: 45.333vw; }
      #ARTISTS .sec .ad_dtlblock .ad_cts p {
        line-height: 1.5; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_link {
        margin-top: 4em; }
      #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works {
        justify-content: space-between; }
        #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li {
          margin-top: 8vw;
          width: 46vw;
          height: 46vw;
          margin-left: 0% !important; }
          #ARTISTS .sec .ad_dtlblock .ad_cts .ad_works > li > a img {
            width: 46vw;
            height: 46vw;
            max-width: inherit;
            max-height: inherit; } }

/*=====================
	PRIVACY & CONTACT
=====================*/
#PRIVACY .sec:first-child, #CONTACT .sec:first-child {
  margin-top: 0;
  padding-top: 150px; }

#PRIVACY .sec ul {
  margin: -68px 0 52px 18px;
  line-height: 1.4rem; }

#PRIVACY .sec ul li {
  margin-bottom: 5px;
  position: relative; }

#PRIVACY .sec ul li:before {
  content: "・";
  position: absolute;
  left: -14px; }

#PRIVACY .sec .subh_03.fugensha {
  font-size: 0.9rem;
  margin-bottom: 10px; }

#PRIVACY .sec .txt.small {
  font-size: 14px;
  line-height: 22px; }

#CONTACT .sec.form .btn {
  width: 100%; }

#CONTACT .sec.form button {
  width: 100%;
  margin: 0 auto;
  font-size: 1.125rem; }

#CONTACT .sec.form .cnfm button {
  margin: 0; }
  #CONTACT .sec.form .cnfm button:first-of-type {
    margin-right: 30px; }

#CONTACT .btnArea.cnfm .btn {
  display: flex;
  justify-content: center; }

#CONTACT .sec.form.thanks p.thanks {
  line-height: 2rem;
  margin-bottom: 120px; }

#CONTACT main table {
  border-collapse: separate;
  border-spacing: 0 38px;
  margin-bottom: 50px; }

#CONTACT main table th {
  min-width: 245px;
  font-weight: 400;
  vertical-align: top;
  padding-top: 10px;
  text-align: left; }

#CONTACT main table td {
  width: 75%; }

#CONTACT main table td ul {
  padding-top: 10px; }

#CONTACT main table td li {
  margin-bottom: 16px; }

#CONTACT main table td.cnfm {
  padding-top: 10px; }

#CONTACT main table td.cnfm p {
  line-height: 1.875rem; }

#CONTACT span.req {
  position: relative; }

#CONTACT span.req:after {
  content: '必須';
  display: block;
  width: 50px;
  height: 20px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  font-size: 0.875rem;
  background-color: #867D53;
  position: absolute;
  right: -70px;
  top: 0; }

#CONTACT input {
  font-size: 12px; }

#CONTACT input.wd450 {
  width: 100%;
  max-width: 450px; }

#CONTACT textarea {
  width: 100%; }

#CONTACT .small {
  display: block;
  font-size: 0.875rem;
  padding-top: 6px; }

@media screen and (min-width: 1680px) {
  background-size: 68%; }
@media screen and (min-width: 1441px) {
  #motion_page div.card {
    width: calc(100%/4); }

  #TOP .sec.about {
    background-size: 80%; } }
/*==============================================================================================
	1024 - 768
===============================================================================================*/
@media (max-width: 1024px) {
  .sec, .flexWrap.double {
    padding: 0 76px; }

  #TOP .sec.sns .insta, #TOP .sec.sns .twitr {
    margin-right: 14px; } }
/*==============================================================================================
	768 - 480
===============================================================================================*/
@media (max-width: 768px) {
  body {
    width: 100%;
    min-width: 100%;
    font-size: 13px;
    line-height: 18px;
    color: #323232; }

  .pc {
    display: none !important; }

  .sp {
    display: block !important; }

  p {
    line-height: 1.875rem;
    font-size: 0.937rem; }

  .pagetitle {
    margin-bottom: 38px !important; }

  h2 {
    font-size: 1.75rem; }

  /*=========================
  	Common Items
  =========================*/
  div.card {
    width: 50%;
    margin-bottom: 25px; }

  div.card a.card div.subsc {
    max-width: 100%;
    padding: 10px 13px; }

  div.card a.card span.date {
    position: static;
    padding: 10px 13px; }

  .picList .flexWrap {
    display: flex;
    align-items: flex-start; }

  .picList a.card {
    margin-bottom: 15px; }

  .picList a.card .subsc {
    padding-right: 0; }

  .picList a.card .subsc h3 {
    text-align: justify;
    margin: 8px 0; }

  .bookCard {
    width: 50%;
    margin-bottom: 15px; }

  .bookCard h3.title {
    margin-bottom: 7px; }

  .bookCard span.name {
    margin-bottom: 10px; }

  .s_menu {
    width: 100%;
    padding-right: 0;
    margin-bottom: 46px; }

  .s_menu .nav {
    margin-bottom: 54px; }

  .s_menu .s_menu-item {
    margin-bottom: 20px; }

  .s_menu .s_menu-item .ctg_lst {
    margin-bottom: 8px; }

  .s_menu .s_menu-item ul {
    display: flex;
    flex-wrap: wrap;
    font-size: 12px; }

  .s_menu .s_menu-item ul li {
    margin-right: 10px;
    margin-bottom: 0; }

  .s_menu .s_menu-item ul li a {
    font-size: 16px;
    line-height: 1.8rem; }

  .s_menu .s_menu-item:nth-of-type(2) {
    margin-bottom: 26px; }

  .s_menu .s_menu-item:nth-of-type(2) .ctg_lst {
    margin-bottom: 10px; }

  #motion_page .ctg_title {
    margin-bottom: 40px; }

  #motion_page .ctg_detail {
    margin-top: -20px;
    margin-bottom: 50px;
    line-height: 1.45rem; }

  #motion_page .mainContents-r {
    width: 100%; }

  #motion_page div.card {
    width: 50%; }

  #motion_page.single .writer .w-wrap {
    display: block; }

  #motion_page.single .writer .w-wrap .imgWrap {
    display: block;
    margin: 0 auto 30px auto; }

  #motion_page.single .writer .w-wrap .prof {
    width: 100%;
    padding: 0; }

  #motion_page.single .writer .w-wrap .prof .name {
    text-align: center; }

  #motion_page.single .columns .flexWrap, #motion_page.single .news .flexWrap, #motion_page.single .events .flexWrap {
    display: flex; }

  #motion_page.single .columns .flexWrap .s_menu, #motion_page.single .news .flexWrap .s_menu, #motion_page.single .events .flexWrap .s_menu {
    margin-top: 92px;
    margin-bottom: 0;
    order: 2; }

  #motion_page .card_wrap.flexWrap {
    display: flex; }

  /*=========================
  	Common
  =========================*/
  header {
    padding: 15px 15px 5px 15px;
    min-width: 100%;
    height: 60px;
    transition-property: all;
    transition-duration: 1s;
    transition-timing-function: ease; }

  header.open {
    height: 100vh;
    background-color: rgba(20, 10, 0, 0.6); }

  header.open .header_wap {
    height: 100vh; }

  header .header_wrap {
    padding: 0;
    min-width: 100%; }

  header .header_wrap .header_logo {
    padding: 0px;
    width: 100%;
    height: auto; }

  header .header_wrap .header_logo img {
    vertical-align: top;
    min-width: 115px;
    max-width: 115px; }

  header .header_wrap .header_logo.open {
    z-index: 999; }

  header .header_wrap nav {
    position: relative; }

  header .header_wrap nav > .nav_wrap {
    display: none; }

  header .header_wrap nav > .nav_wrap.open {
    display: block; }

  header .header_wrap #nav_btn.sp {
    display: block;
    cursor: pointer;
    margin: 0;
    position: absolute;
    width: 30px;
    height: 19px;
    top: 2px;
    right: 6px;
    z-index: 999; }

  header .header_wrap #nav_btn.sp .nav_line {
    backface-visibility: hidden;
    position: absolute;
    left: 0;
    border-top: 25px solid white;
    width: 2px;
    transition: 0.55s; }

  header .header_wrap #nav_btn.sp .nav_line01 {
    top: -10px;
    left: 15px;
    transform: rotate(90deg); }

  header .header_wrap #nav_btn.sp .nav_line02 {
    top: -3px;
    left: 15px;
    transform: rotate(90deg); }

  header .header_wrap #nav_btn.sp .nav_line03 {
    top: 4px;
    left: 15px;
    transform: rotate(90deg); }

  header .header_wrap #nav_btn.sp .nav_line01_open {
    backface-visibility: hidden;
    top: 0px;
    left: 20px;
    transform: rotate(43deg);
    transition: 0.55s 0.5s;
    border-top-color: #fff; }

  header .header_wrap #nav_btn.sp .nav_line02_open {
    opacity: 0; }

  header .header_wrap #nav_btn.sp .nav_line03_open {
    backface-visibility: hidden;
    top: 0px;
    left: 20px;
    transform: rotate(137deg);
    transition: 0.55s 0.5s;
    border-top-color: #fff; }

  header .header_wrap nav .nav_wrap > ul {
    display: block;
    height: auto;
    text-align: center;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    animation: fadeIn 2.5s ease 0s 1 normal;
    -webkit-animation: fadeIn 2.5s ease 0s 1 normal;
    padding-top: 15%; }

  header .header_wrap nav .nav_wrap > ul > li {
    margin: 0 0 18% 0; }

  header .header_wrap nav .nav_wrap ul li.gnav.store {
    margin-right: 0; }

  header .header_wrap nav .nav_wrap ul li.gnav.store span.arrow {
    right: 15px; }

  header .header_wrap nav .nav_wrap ul li.gnav.mbtm {
    margin-bottom: 30%; }

  header .header_wrap nav .nav_wrap ul li:hover:after {
    content: none; }

  header .header_wrap nav .nav_wrap ul li.gnav a {
    font-size: 18px; }

  header .header_wrap nav .nav_wrap ul li.gnav a.current:after {
    opacity: 0; }

  .header {
    background: rgba(255, 255, 255, 0.6);
    position: fixed;
    padding: 0px;
    height: 50px; }

  .header .header_logo {
    display: block; }

  .header nav.nav_sp {
    width: 100%; }

  .header nav.nav_sp .nav_wrap {
    height: 100%;
    display: block; }

  .header nav.nav_sp #nav_btn .nav_line {
    border-top: 25px solid black; }

  .header nav.nav_sp #nav_btn .nav_line01_open {
    border-top-color: #fff; }

  .header nav.nav_sp #nav_btn .nav_line03_open {
    border-top-color: #fff; }

  .header nav.nav_sp .sns_link_r span {
    background: #ffffff !important; }

  .header nav.nav_sp .sns_link_r span:before {
    color: #323232 !important; }

  .header nav.nav_sp .sns_link_r span:first-of-type {
    margin-left: 0; }

  .header_wrap nav .nav_wrap ul li .goog-te-gadget-simple a.goog-te-menu-value {
    color: #232323;
    font-size: 16px;
    line-height: 23px; }

  .header_wrap nav .nav_wrap ul li.goog-te-gadget-simple {
    font-size: 22pt; }

  #hello_area .slide_area .slide img {
    width: 100vw;
    height: 450px;
    object-fit: cover;
    font-family: 'object-fit: cover;'; }

  #hello_area button.slick-prev.slick-arrow, #hello_area button.slick-next.slick-arrow {
    display: none !important; }

  .sec, .flexWrap.double {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    padding: 0 10px;
    margin: 80px auto 0; }

  .sec h1, .flexWrap.double h1 {
    margin-bottom: 20px;
    text-align: center; }

  .flexWrap.double .sec {
    max-width: 100%;
    min-width: 100%; }

  .flexWrap.cafe {
    display: block !important;
    flex-wrap: wrap !important; }

  .flexWrap, .picList {
    display: block; }

  .col3 a {
    width: 49%;
    background: #00aa;
    margin-bottom: 40px; }

  .col3 a img {
    width: 100%;
    height: 130px;
    object-fit: cover;
    font-family: 'object-fit: cover;'; }

  .col3 a .text_area {
    padding: 20px 15px 40px; }

  .col3 a .text_area p {
    color: #fff; }

  .col3 a .text_area .sub_title + .title {
    margin-top: 7px; }

  .col3 a .text_area .title {
    font-size: 20px; }

  .col3 a .text_area .title + p {
    margin-top: 10px; }

  .col3 .empty-cell {
    width: 250px; }

  footer {
    padding: 0 10px; }

  footer .sec.contact {
    margin-top: 126px;
    padding: 0; }

  footer .sec.contact .tell {
    margin-right: 0; }

  footer .sec.contact .tell.sp {
    margin-bottom: 16px; }

  footer .sec.contact .tell.sp span {
    font-size: 12px; }

  footer .sec.contact .tell.sp .btnArea {
    width: 100%;
    margin-bottom: 50px; }

  footer .sec.contact .tell.sp .btnArea .btn {
    width: 100%;
    height: 62px;
    font-size: 16px; }

  footer .sec.contact .tell.sp .btnArea .btn a {
    line-height: 62px;
    background-color: #fff;
    border: 1px solid #EDEBE3;
    font-size: 1.6rem; }

  footer .sec.contact .tell:before {
    content: '\f095';
    font-size: 1.6rem;
    font-family: 'icomoon' !important;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%); }

  footer .sec.contact .tell .telnumberSmall {
    margin: 4px 0; }

  footer .sec.contact .contact.btn {
    margin: 0;
    width: 100%; }

  footer .sec.contact .contact.btn .btnArea .btn {
    width: 100%; }

  footer .sec.contact .subsc {
    line-height: 1.6rem;
    margin-bottom: 24px; }

  footer .wrapFtImg {
    height: 140px;
    min-height: auto; }

  footer .footer_nav {
    display: none; }

  footer .fugenshaInfo {
    margin-right: 0;
    margin-top: 30px; }

  footer .fugenshaInfo .logo_Wrap {
    width: 200px;
    max-width: 200px;
    margin-left: auto;
    margin-right: auto; }

  footer .link_mail {
    margin-top: 30px; }

  footer .link_mail .linkWrap a:first-child {
    margin-right: 10px; }

  footer .link_mail .mail .mlmg {
    text-align: center; }

  footer .link_mail .mail .mlmg.subsc {
    text-align: left; }

  footer .link_mail .mail input[type="email"] {
    max-width: 100%;
    margin-bottom: 10px; }

  footer .link_mail .mail button {
    display: block;
    margin: 0 auto; }

  footer .sns_link_r {
    justify-content: center;
    align-items: center;
    text-align: center; }

  footer .sns_link_r span:before {
    font-size: 34px; }

  footer .copyright.wrapCopylright {
    text-align: left;
    font-size: 10px;
    margin-top: 0px;
    padding-left: 8px; }

  /*=====================
  	TOP
  =====================*/
  #TOP .bg {
    background-repeat: no-repeat;
    background-size: cover; }

  #TOP .sec.about {
    padding: 40px 10px 0;
    background-image: none; }

  #TOP .sec.about .abImgWrap {
    width: 100%; }

  #TOP .sec.about .abImgWrap img {
    width: 100%; }

  #TOP .sec.about .subsc {
    margin-bottom: 50px; }

  #TOP .sec.about h2 {
    margin-bottom: 32px; }

  #TOP .btnArea {
    margin-top: 32px; }

  #TOP .sec.events h2.ttl {
    margin-bottom: 30px; }

  #TOP .sec.events h2 {
    margin-bottom: 0px; }

  #TOP .sec.events .flexWrap {
    flex-wrap: wrap;
    display: flex; }

  #TOP .flexWrap.double .sec.news, #TOP .flexWrap.double .sec.columns {
    width: 100%;
    align-self: stretch; }

  #TOP .flexWrap.double .sec.news {
    padding-right: 0px;
    margin-bottom: 80px; }

  #TOP .flexWrap.double .sec.columns {
    padding-left: 0px; }

  #TOP .flexWrap.double h2 {
    margin-bottom: 30px; }

  #TOP .sec.publications {
    padding-bottom: 122px; }

  #TOP .sec.publications h2 {
    margin-bottom: 30px; }

  #TOP .sec.publications .subsc p {
    padding-top: 10px;
    text-align: center;
    line-height: 1.6rem; }

  #TOP .sec.publications .btnArea {
    margin-top: 45px; }

  #TOP .sec.publications .btnArea .btn {
    margin: 0 auto; }

  #TOP .sec.store .flexWrap {
    display: flex;
    flex-wrap: wrap; }

  #TOP .sec.calender {
    overflow: hidden; }

  #TOP .sec.sns .insta, #TOP .sec.sns .twitr, #TOP .sec.sns .fcbk {
    margin: 0 auto 30px auto;
    width: 100%;
    height: auto;
    max-width: 500px; }

  /*=====================
  	ABOUT
  =====================*/
  #ABOUT .sec.aboutFirst {
    padding-top: 94px; }

  #ABOUT .slide_area {
    max-height: 290px;
    margin-bottom: 60px; }

  #ABOUT .about_title {
    font-size: 1.45rem;
    line-height: 2.4rem; }

  #ABOUT .aboutFirst .about_title {
    margin-bottom: 40px;
    text-align: left; }

  #ABOUT .aboutFirst p.txt {
    padding: 0;
    font-size: 0.937rem;
    line-height: 1.6rem; }

  #ABOUT .howToUse p.txt {
    font-size: 0.937rem;
    line-height: 1.6rem; }

  #ABOUT .howToUse .imgWrap {
    max-width: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
    height: 300px; }

  #ABOUT .howToUse .flexWrap.rev .imgWrap {
    order: inherit; }

  #ABOUT .howToUse .imgWrap.w550 {
    width: 100%;
    max-width: 100%;
    height: 300px;
    position: relative;
    overflow: hidden; }

  #ABOUT .howToUse .imgWrap.w550 img {
    height: 175%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%); }

  #ABOUT .howToUse .imgWrap img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    width: auto;
    height: 108%; }

  #ABOUT .howToUse .desc {
    width: 100%; }

  #ABOUT .howToUse .desc h3 {
    font-size: 1.625rem;
    margin-bottom: 22px; }

  #ABOUT .howToUse .desc p.txt {
    text-align: left;
    line-height: 1.6rem; }

  #ABOUT dt {
    margin-bottom: 8px; }

  #ABOUT dd {
    line-height: 1.6rem;
    margin-top: 0 !important;
    font-size: 0.937rem;
    line-height: 1.3rem;
    margin-bottom: 22px; }

  #ABOUT dd .small {
    font-size: 12px;
    display: block;
    line-height: 1rem;
    margin-top: 6px; }

  #ABOUT .aboutWap .desc {
    width: 100%; }

  #ABOUT .aboutWap .desc h3 {
    margin-bottom: 20px; }

  #ABOUT .aboutWap .desc .txt {
    margin-bottom: 40px;
    margin-right: 0;
    font-size: 0.937rem;
    line-height: 1.6rem; }

  #ABOUT .aboutWap .desc .wapInfo {
    margin-bottom: 20px;
    font-size: 0.937rem;
    line-height: 1.6rem; }

  #ABOUT .aboutWap .desc .wapInfo dl {
    display: block; }

  #ABOUT .aboutWap .desc .wapInfo dt {
    margin-bottom: 8px;
    line-height: normal; }

  #ABOUT .aboutWap .desc .wapInfo dd {
    margin-bottom: 22px;
    line-height: 1.3rem; }

  #ABOUT .aboutWap .wapImg {
    width: 100%; }

  /*=====================
  	OtherPages
  =====================*/
  #EVENTS .sec:first-child, #NEWS .sec:first-child, #COLUMNS .sec:first-child, #PUBLICATIONS .sec:first-child, #CONTACT .sec:first-child, #PRIVACY .sec:first-child {
    padding-top: 94px; }

  #PUBLICATIONS .pub_bk_wrap {
    display: block; }

  #PUBLICATIONS .pub_bk_wrap .img_Wrap {
    width: 100%; }

  #PUBLICATIONS .pub_bk_wrap .img_Wrap img {
    width: auto;
    height: 100%; }

  #PUBLICATIONS .pub_bk_wrap .desc {
    padding: 16px 10px; }

  #PUBLICATIONS .pub_bk_wrap .desc .title {
    margin-bottom: 18px; }

  #PUBLICATIONS .pub_bk_wrap .desc .title .sub {
    margin-bottom: 6px; }

  #PUBLICATIONS .pub_bk_wrap .desc ul {
    margin-bottom: 30px; }

  #PUBLICATIONS .pub_bk_wrap .desc ul li {
    margin-bottom: 6px; }

  #PUBLICATIONS .pub_bk_wrap .desc .btn {
    margin: 0 auto; }

  #CONTACT main table {
    border-collapse: separate;
    border-spacing: 0 26px;
    margin-top: -26px;
    margin-bottom: 20px; }

  #CONTACT main table, #CONTACT tbody, #CONTACT tr {
    width: 100%; }

  #CONTACT main table th, #CONTACT main table td {
    display: block;
    width: 100%; }

  #CONTACT main table th {
    height: 34px;
    padding-top: 0; }

  #CONTACT main table td li {
    margin-bottom: 6px; }

  #CONTACT span.req {
    font-size: 14px; }

  #CONTACT .small {
    font-size: 12px; }

  #CONTACT .sec.form button {
    font-size: 14px; }

  #CONTACT .btnArea.cnfm .btn {
    display: block;
    height: auto; }

  #CONTACT .btnArea.cnfm .btn button {
    margin-bottom: 10px; }

  #CONTACT .sec.form.thanks {
    margin-bottom: 140px; }

  #CONTACT .sec.form.thanks p.thanks {
    margin-bottom: 60px; } }
@media (max-width: 490px) {
  #ABOUT .howToUse .imgWrap.w550 {
    height: 190px; }

  #ABOUT .howToUse .imgWrap {
    height: 220px; } }
@media (max-width: 320px) {
  .flexWrap {
    display: block; }

  div.card {
    width: 100%; }

  #motion_page div.card {
    width: 100%; }

  header .header_wrap nav .nav_wrap > ul > li {
    margin-bottom: 12%; } }
@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?dlodkg");
  src: url("fonts/icomoon.eot?dlodkg#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?dlodkg") format("truetype"), url("fonts/icomoon.woff?dlodkg") format("woff"), url("fonts/icomoon.svg?dlodkg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-target_blank:before {
  content: "\e905";
  color: #c8c8c8; }

.icon-left_icon:before {
  content: "\e900"; }

.icon-right_icon:before {
  content: "\e901"; }

.icon-facebook_icon:before {
  content: "\e902"; }

.icon-instagram_icon:before {
  content: "\e903"; }

.icon-twitter_icon:before {
  content: "\e904"; }

.icon-phone_icon:before {
  content: "\f095"; }

.icon-mail_icon:before {
  content: "\f0e0"; }

/*================================================================================
	flex
=================================================================================*/
.col_ft {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap; }

.col_sb {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

.col_sa {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap; }

.col_cnt {
  display: flex;
  justify-content: center;
  flex-wrap: wrap; }

/*================================================================================
	Adjustment
=================================================================================*/
.w200 {
  width: 200px !important; }

.w250 {
  width: 250px !important; }

.mtp0 {
  margin-top: 0px !important; }

.mtp5 {
  margin-top: 5px !important; }

.mtp10 {
  margin-top: 10px !important; }

.mtp15 {
  margin-top: 15px !important; }

.mtp20 {
  margin-top: 20px !important; }

.mtp30 {
  margin-top: 30px !important; }

.mtp40 {
  margin-top: 40px !important; }

.mtp50 {
  margin-top: 50px !important; }

.mtp60 {
  margin-top: 60px !important; }

.mtp70 {
  margin-top: 70px !important; }

.mtp80 {
  margin-top: 80px !important; }

.mtp90 {
  margin-top: 90px !important; }

.mtp100 {
  margin-top: 100px !important; }

.mrt0 {
  margin-right: 0px !important; }

.mrt10 {
  margin-right: 10px !important; }

.mrt20 {
  margin-right: 20px !important; }

.mrt30 {
  margin-right: 30px !important; }

.mrt40 {
  margin-right: 40px !important; }

.mrt50 {
  margin-right: 50px !important; }

.mrt60 {
  margin-right: 60px !important; }

.mrt70 {
  margin-right: 70px !important; }

.mrt80 {
  margin-right: 80px !important; }

.mrt90 {
  margin-right: 90px !important; }

.mrt100 {
  margin-right: 100px !important; }

.mbm0 {
  margin-bottom: 0px !important; }

.mbm5 {
  margin-bottom: 5px !important; }

.mbm10 {
  margin-bottom: 10px !important; }

.mbm20 {
  margin-bottom: 20px !important; }

.mbm30 {
  margin-bottom: 30px !important; }

.mbm40 {
  margin-bottom: 40px !important; }

.mbm50 {
  margin-bottom: 50px !important; }

.mbm60 {
  margin-bottom: 60px !important; }

.mbm70 {
  margin-bottom: 70px !important; }

.mbm80 {
  margin-bottom: 80px !important; }

.mbm90 {
  margin-bottom: 90px !important; }

.mbm100 {
  margin-bottom: 100px !important; }

.mlt0 {
  margin-left: 0px !important; }

.mlt10 {
  margin-left: 10px !important; }

.mlt20 {
  margin-left: 20px !important; }

.mlt30 {
  margin-left: 30px !important; }

.mlt40 {
  margin-left: 40px !important; }

.mlt50 {
  margin-left: 50px !important; }

.mlt60 {
  margin-left: 60px !important; }

.mlt70 {
  margin-left: 70px !important; }

.mlt80 {
  margin-left: 80px !important; }

.mlt90 {
  margin-left: 90px !important; }

.mlt100 {
  margin-left: 100px !important; }

.fb-page {
  display: block !important;
  width: 100%;
  max-width: 500px;
  height: 428px;
  margin: 0 auto; }

_:-ms-lang(x)::-ms-backdrop, footer .rightContactLink a {
  font-family: 'Meiryo UI',sans-serif; }

#motion_page.single .mainContents-r .wp-caption {
  display: inline !important; }

#motion_page.single .mainContents-r .wp-caption .wp-caption-text {
  margin-top: 5px;
  text-align: center;
  font-size: 0.875rem;
  text-align: center;
  margin-top: 10px;
  line-height: 1.2rem; }

#motion_page.single .mainContents-r .wp-caption + p {
  margin-top: 50px; }

#PUBLICATIONS .sec.for-book-store .subh_03 {
  font-size: 1.375rem; }

#PUBLICATIONS .sec.for-book-store .small {
  font-size: 0.8rem; }

#PUBLICATIONS .pub_bk_wrap .desc .btn a {
  position: relative; }

#PUBLICATIONS .pub_bk_wrap .desc .btn a span.arrow {
  top: 5px;
  right: 5px; }

#motion_page .wp-pagenavi, #PUBLICATIONS .wp-pagenavi {
  clear: both;
  display: flex; }

#motion_page .wp-pagenavi a, #motion_page .wp-pagenavi span, #PUBLICATIONS .wp-pagenavi a, #PUBLICATIONS .wp-pagenavi span {
  border: none;
  display: block;
  padding: 5px 8px; }

#motion_page .wp-pagenavi a:after, #motion_page .wp-pagenavi span:after, #PUBLICATIONS .wp-pagenavi a:after, #PUBLICATIONS .wp-pagenavi span:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #323232;
  margin-top: 10px; }

#motion_page .wp-pagenavi a:hover, #motion_page .wp-pagenavi span.current, #PUBLICATIONS .wp-pagenavi a:hover, #PUBLICATIONS .wp-pagenavi span.current {
  border-color: #000; }

#motion_page .wp-pagenavi span.current, #PUBLICATIONS .wp-pagenavi span.current {
  font-weight: normal;
  opacity: 0.6; }

.mc4wp-alert, .mc4wp-success {
  margin-top: 4px;
  font-size: 0.7rem;
  color: #c8c8c8;
  letter-spacing: 0.05rem !important; }

/*recaptureバッジを非表示に*/
.grecaptcha-badge {
  display: none; }

.reCAPTCHA_txt {
  margin-top: 8px;
  font-size: 0.7rem;
  line-height: 1.0rem;
  letter-spacing: 0.05rem !important; }

.reCAPTCHA_txt a {
  text-decoration: underline; }

@media (max-width: 768px) {
  .mc4wp-alert, .mc4wp-success {
    margin-top: 4px;
    font-size: 0.7rem !important;
    color: #c8c8c8;
    letter-spacing: 0.05rem; } }
/*# sourceMappingURL=style.css.map */
.ad_en {
  letter-spacing: 0; }

.ad_language {
  margin-top: -32px;
  margin-bottom: 55px;
  display: flex; }
  .ad_language li {
    font-size: 16px; }
    .ad_language li + li::before {
      content: "/";
      margin-left: 3px;
      margin-right: 3px; }
    .ad_language li a {
      text-decoration: underline;
      color: #c8c8c8; }
      .ad_language li a.current {
        color: #867d53; }
      .ad_language li a:hover {
        color: #867d53; }
  @media only screen and (max-width: 768px) {
    .ad_language {
      margin-top: -3px;
      margin-bottom: 40px; } }

/* ---------------------------------------------------------------------

! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license 

--------------------------------------------------------------------- */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top; }

.fancybox-wrap {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 8020; }

.fancybox-skin {
  position: relative;
  color: #444;
  text-shadow: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.fancybox-opened {
  z-index: 8030; }

.fancybox-outer, .fancybox-inner {
  position: relative; }

.fancybox-inner {
  overflow: hidden; }

.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch; }

.fancybox-error {
  color: #444;
  font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  margin: 0;
  padding: 15px;
  white-space: nowrap; }

.fancybox-image, .fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%; }

.fancybox-image {
  max-width: 100%;
  max-height: 100%; }
  @media only screen and (max-width: 768px) {
    .fancybox-image {
      padding: 0; } }

.fancybox-close, .fancybox-prev span, .fancybox-next span {
  background-image: none; }

#fancybox-loading {
  display: none; }

#fancybox-loading div {
  display: none; }

.fancybox-close {
  display: none; }

.fancybox-nav {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  z-index: 8040; }

.fancybox-prev {
  left: 0; }

.fancybox-next {
  right: 0; }

.fancybox-nav span {
  position: absolute;
  top: 50%;
  width: 28px;
  height: 28px;
  margin-top: -14px;
  cursor: pointer;
  z-index: 8040;
  border-top: #000 solid 1px;
  border-right: #000 solid 1px; }

.fancybox-prev span {
  left: -50px;
  background-position: -100px -50px;
  transform: rotate(225deg); }
  @media only screen and (max-width: 768px) {
    .fancybox-prev span {
      left: -40px; } }

.fancybox-next span {
  transform: rotate(45deg);
  right: -50px;
  background-position: -100px -100px; }
  @media only screen and (max-width: 768px) {
    .fancybox-next span {
      right: -40px; } }

.fancybox-nav:hover span {
  visibility: visible; }

.fancybox-tmp {
  position: absolute;
  top: -99999px;
  left: -99999px;
  max-width: 99999px;
  max-height: 99999px;
  overflow: visible !important; }

/* Overlay helper */
.fancybox-lock {
  overflow: visible !important;
  width: auto; }

.fancybox-lock body {
  overflow: hidden !important; }

.fancybox-lock-test {
  overflow-y: hidden !important; }

.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 8010;
  background: rgba(255, 255, 255, 0.9); }

.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0; }

.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll; }

/* Title helper */
.fancybox-title {
  visibility: hidden;
  font-size: 16px;
  line-height: 1.6em;
  font-weight: normal;
  position: relative;
  text-shadow: none;
  z-index: 8050; }

.fancybox-opened .fancybox-title {
  visibility: visible; }

.fancybox-title-float-wrap {
  position: absolute;
  bottom: 0;
  right: 50%;
  margin-bottom: -30px;
  z-index: 8050;
  text-align: center; }

.fancybox-title-float-wrap .child {
  display: inline-block;
  margin-right: -100%;
  padding: 2px 20px;
  background: transparent;
  /* Fallback for web browsers that doesn't support RGBa */
  background: rgba(0, 0, 0, 0.98);
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  text-shadow: 0 1px 2px #222;
  color: #FFF;
  font-weight: bold;
  line-height: 24px;
  white-space: nowrap; }

.fancybox-title-outside-wrap {
  position: relative;
  margin-top: 23px;
  color: #fff;
  color: #000;
  text-align: center; }
  @media only screen and (max-width: 768px) {
    .fancybox-title-outside-wrap {
      margin-top: 18px; } }

.fancybox-title-inside-wrap {
  padding-top: 10px; }

.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 10px;
  background: #000;
  background: rgba(0, 0, 0, 0.8); }

/*Retina graphics!*/
/*211228 追記↓*/
.btnArea.cnfm {
  display: block; }

.g-recaptcha {
  margin: 0 auto 40px auto;
  width: 304px; }

.submit_btn:disabled {
  color: #c8c8c8; }
  .submit_btn:disabled:hover {
    opacity: 1; }
