@charset "UTF-8";
/*
Theme Name:国際ピアノデュオ協会
Description:
Theme URI: 
Author: HIRAKU WADA (mallet DESIGN)
Author URI: https://mallet-design.com
Version: 
License: 
License URI: 
*/
/* 1.0 Document Setup
--------------------------------------------------------------*/
/*===================================================
     0.CSS Reset / YUI 3.5.0 - reset.css
===================================================*/
/**
 * YUI 3.5.0 - reset.css (http://developer.yahoo.com/yui/3/cssreset/)
 * http://cssreset.com
 * Copyright 2012 Yahoo! Inc. All rights reserved.
 * http://yuilibrary.com/license/
 */
/*
	TODO will need to remove settings on HTML since we can't namespace it.
	TODO with the prefix, should I group by selector or property for weight savings?
*/
html {
  color: #333;
  font-size: 62.5%;
}

/*
	TODO remove settings on BODY since we can't namespace it.
*/
/*
	TODO test putting a class on HEAD.
		- Fails on FF.
*/
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

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

fieldset,
img {
  border: 0;
}

/*
	TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit...
*/
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before,
q:after {
  content: "";
}

abbr,
acronym {
  border: 0;
  font-variant: normal;
}

/* to preserve line-height and selector appearance */
sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/*to enable resizing for IE*/
input,
textarea,
select {
  *font-size: 100%;
}

/*because legend doesn't inherit in IE */
legend {
  color: #000;
}

/* YUI CSS Detection Stamp */
#yui3-css-stamp.cssreset {
  display: none;
}

.clearfix {
  width: 100%;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

#wpadminbar a {
  color: #fff !important;
}

/*===================================================
     Font
===================================================*/
h1, h2 {
  font-size: 3.6rem !important;
  font-size: clamp(2rem, 3vw, 3.6rem) !important;
  min-height: 0vw;
}

/*===================================================
     Color
===================================================*/
/* -----------------------------------------------------------------
    media query
----------------------------------------------------------------- */
/*===================================================
    1.	Document Setup
===================================================*/
body {
  font-size: 1.6rem !important;
  font-size: clamp(1.1rem, 1.8vw, 1.6rem) !important;
  min-height: 0vw;
  color: #333 !important;
  font-family: "IBM Plex Sans JP", sans-serif !important;
  font-weight: 400;
  letter-spacing: 1.5px;
  line-height: 1.8 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #e5e3df;
}

.t8px {
  font-size: 0.8em;
}

.t9px {
  font-size: 0.9em;
}

.t11px {
  font-size: 1.1em;
}

.t12px {
  font-size: 1.2em;
}

.t13px {
  font-size: 1.3em;
}

.t14px {
  font-size: 1.4em;
}

.t15px {
  font-size: 1.5em;
}

.t16px {
  font-size: 1.6em;
}

.t17px {
  font-size: 1.7em;
}

.t18px {
  font-size: 1.8em;
}

.t19px {
  font-size: 1.9em;
}

.t20px {
  font-size: 2em;
}

.ta_left {
  text-align: left !important;
}

.ta_right {
  text-align: right;
}

.wrapper {
  width: 100%;
  overflow: hidden;
}

input {
  cursor: pointer;
}

/*for Webkit*/
input::-webkit-input-placeholder {
  color: #000;
}

/*for Firefox*/
input:-moz-placeholder {
  color: #000;
}

a {
  text-decoration: none;
  color: #333 !important;
  cursor: pointer;
}

a:hover {
  /*filter: alpha(opacity=60);
  -moz-opacity:0.6;
  opacity:0.6;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;*/
  border: none !important;
  text-decoration: none !important;
}

input:focus {
  outline: none;
}

select::-ms-expand {
  display: none;
}

.center {
  text-align: center;
}

.object-fit-img {
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover; object-position: top;";
}

.fade_off {
  opacity: 0;
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
}

.fade_on {
  opacity: 1;
}

/*===================================================
     Utility
===================================================*/
/* padding-top
-------------------------------------------------- */
.pt0 {
  padding-top: 0px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt100 {
  padding-top: 100px !important;
}

/* padding-bottom
-------------------------------------------------- */
.pb0 {
  padding-bottom: 0px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

/* padding-Left
-------------------------------------------------- */
.pl10 {
  padding-left: 10px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pl60px {
  padding-left: 60px !important;
}

/* padding-Right
-------------------------------------------------- */
.pr10 {
  padding-right: 10px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr50 {
  padding-right: 50px !important;
}

/* margin-top
-------------------------------------------------- */
.mt0 {
  margin-top: 0px !important;
}

/* margin-bottom
-------------------------------------------------- */
.mb0 {
  margin-bottom: 0px !important;
}

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

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

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

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

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

.u-df {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-dfc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.u-dfsb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/* pc   --------------------------------*/
@media screen and (min-width: 813px) {
  .sp {
    display: none !important;
  }
}
/* sp   --------------------------------*/
@media screen and (max-width: 812px) {
  body {
    font-size: 12px;
  }

  .pc {
    display: none !important;
  }
}
/* edge   --------------------------------*/
@supports (-ms-ime-align: auto) {
  /* Edge のみ適用される */
  body {
    -webkit-font-feature-settings: "pkna";
            font-feature-settings: "pkna";
  }
}
/*  -------------------------------------
	Slick
  -------------------------------------*/
.slick-next:before {
  content: "" !important;
  background: url(assets/img/icon/icon_next.svg) no-repeat;
  background-size: contain;
  width: 15px;
  height: 30px;
  display: block;
}
@media only screen and (max-width:768px) {
  .slick-next:before {
    width: 10px;
    height: 20px;
  }
}
@media only screen and (max-width:768px) {
  .slick-next {
    right: -20px !important;
  }
}

.slick-prev:before {
  content: "" !important;
  background: url(assets/img/icon/icon_prev.svg) no-repeat;
  background-size: contain;
  width: 15px;
  height: 30px;
  display: block;
}
@media only screen and (max-width:768px) {
  .slick-prev:before {
    width: 10px;
    height: 20px;
  }
}
@media only screen and (max-width:768px) {
  .slick-prev {
    left: -10px !important;
  }
}

.single .slider-nav .slick-list, .page .slider-nav .slick-list {
  padding: 0 !important;
  margin-top: 1em;
}
.single .slider-nav .slick-slide, .page .slider-nav .slick-slide {
  padding: 0 0.5em;
}

/*  -------------------------------------
	タブ実装
  -------------------------------------*/
@-webkit-keyframes fadeIn {
  0% {
    -webkit-opacity: 0;
    opacity: 0;
  }
  100% {
    -webkit-opacity: 1;
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.tab_box .btn_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:991px) {
  .tab_box .btn_area {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.tab_box .btn_area .tab_btn {
  text-align: center;
  cursor: pointer;
  font-weight: normal;
  color: #999;
  margin: 0 0 20px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.4em;
  letter-spacing: 0.05em;
  padding-bottom: 10px;
  margin: 0 1em 30px;
  -webkit-transition: 0.6s all;
  transition: 0.6s all;
}
@media only screen and (max-width:480px) {
  .tab_box .btn_area .tab_btn {
    margin: 0 1em 0.5em;
    padding-bottom: 0;
  }
}
.tab_box .btn_area .tab_btn.active {
  -webkit-animation: fadeIn 0.8s ease-in-out;
          animation: fadeIn 0.8s ease-in-out;
  color: #000;
}
.tab_box .btn_area .tab_btn:hover {
  color: #000;
}
.tab_box .tab_panel {
  display: none;
}
.tab_box .tab_panel.active {
  display: block;
  -webkit-animation: fadeIn 0.8s ease-in-out;
          animation: fadeIn 0.8s ease-in-out;
}
.tab_box .tab_panel.active p.lead {
  font-size: clamp(1.3rem, 2vw, 1.8rem) !important;
  min-height: 0vw;
  font-weight: 700;
}
.tab_box .panel_area .p-article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.tab_box .panel_area .p-article__contents {
  -ms-flex-preferred-size: 31.3%;
      flex-basis: 31.3%;
  max-width: 31.3%;
  margin: 0 0 3%;
}
.tab_box .panel_area .p-article__contents a {
  position: relative;
  display: block;
}
.tab_box .panel_area .p-article__contents a:before {
  content: "";
  display: none;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10;
  -webkit-transition: 0.6s all;
  transition: 0.6s all;
}
.tab_box .panel_area .p-article__detail {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 10;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 30px;
  font-size: 1.875rem;
  color: #fff;
  opacity: 0;
  -webkit-transition: 0.6s all;
  transition: 0.6s all;
  z-index: 2;
  width: 90%;
  text-align: center;
}
@media only screen and (max-width:1200px) {
  .tab_box .panel_area .p-article__detail {
    position: static;
    color: #000;
    width: 100%;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1;
    padding: 0.5em 0;
  }
}
.tab_box .panel_area .p-article__contents a {
  -webkit-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
}
.tab_box .panel_area .p-article__contents a:hover {
  opacity: 1;
}
.tab_box .panel_area .p-article__contents a:hover:before {
  opacity: 0.3;
  -webkit-transition: 0.6s all;
  transition: 0.6s all;
  z-index: 1;
}
.tab_box .panel_area .p-article__contents a:hover .p-article__detail {
  opacity: 1;
  -webkit-transition: 0.6s all;
  transition: 0.6s all;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.tab_box .panel_area {
  /* border: solid 1px #e3ebf3;
   padding: 20px;*/
}

/*  -------------------------------------
	BlockRevealers
  -------------------------------------*/
.content__image {
  width: 100%;
  display: block;
}

.content__image-wrap--half {
  width: 50vw;
}

.block-revealer__element {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  pointer-events: none;
  opacity: 0;
  z-index: 5;
}

.content__title__inner, .block-revealer__content {
  opacity: 0;
}

.block-revealer {
  opacity: 1;
}

/*  -------------------------------------
	search
  -------------------------------------*/
.search-wrap {
  position: fixed;
  background: #fff;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.35s, visibility 0.35s, height 0.35s;
  transition: opacity 0.35s, visibility 0.35s, height 0.35s;
  z-index: 103;
}
.search-wrap #form {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding: 0;
  width: 360px;
  /*-webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:480px) {
  .search-wrap #form {
    width: 70%;
    top: 40%;
  }
}
.search-wrap #form ::-webkit-input-placeholder {
  color: #999;
}
.search-wrap #form ::-moz-placeholder {
  color: #999;
}
.search-wrap #form :-ms-input-placeholder {
  color: #999;
}
.search-wrap #form ::-ms-input-placeholder {
  color: #999;
}
.search-wrap #form ::placeholder {
  color: #999;
}
.search-wrap #form input {
  padding: 0 0.5em;
  width: 80%;
  background: none;
  border: none;
  border-bottom: 1px solid #cfcdc0;
}
.search-wrap #form button {
  background: none;
  border: none;
}
.search-wrap #form #s-btn img {
  width: 16px;
  height: 16px;
}
.search-wrap #search-close {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  bottom: 30px;
  cursor: pointer;
  border: none;
  border-radius: 20px;
  padding: 0 20px;
  font-family: "Jost", sans-serif;
}
@media only screen and (max-width:480px) {
  .search-wrap #search-close {
    font-size: 12px;
  }
}
@media only screen and (max-width:480px) {
  .search-wrap {
    margin-top: 0;
  }
}
.search-wrap.open {
  opacity: 1;
  visibility: visible;
  height: 30%;
}
.search-wrap.open #search-close {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  bottom: 30px;
  cursor: pointer;
  border: none;
  border-radius: 20px;
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #a2a197;
}
.search-wrap.open #search-close:after {
  content: "×";
  margin-left: 0.5em;
}
@media only screen and (max-width:480px) {
  .search-wrap.open #search-close {
    font-size: 12px;
  }
}
.search-wrap.open #form {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding: 0;
  width: 360px;
  /*-webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:480px) {
  .search-wrap.open #form {
    width: 70%;
    top: 40%;
  }
}
.search-wrap.open #form ::-webkit-input-placeholder {
  color: #999;
}
.search-wrap.open #form ::-moz-placeholder {
  color: #999;
}
.search-wrap.open #form :-ms-input-placeholder {
  color: #999;
}
.search-wrap.open #form ::-ms-input-placeholder {
  color: #999;
}
.search-wrap.open #form ::placeholder {
  color: #999;
}
.search-wrap.open #form input {
  padding: 0 0.5em;
  width: 80%;
}
.search-wrap.open #form button {
  background: none;
  border: none;
}
.search-wrap.open #form #s-btn img {
  width: 16px;
  height: 16px;
}

/*  -------------------------------------
	wp-pagenavi
  -------------------------------------*/
.wp-pagenavi, .all-page-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 60px 0 0;
}
@media only screen and (max-width:687px) {
  .wp-pagenavi, .all-page-pager {
    margin: 45px 0 0;
  }
}
.wp-pagenavi .current, .wp-pagenavi a:hover, .all-page-pager .current, .all-page-pager a:hover {
  background: rgba(153, 125, 70, 0.3);
  font-weight: 400;
}
.wp-pagenavi span, .wp-pagenavi a, .all-page-pager span, .all-page-pager a {
  font-family: "Jost", sans-serif;
  width: 30px;
  height: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 1em;
  color: #3b7747 !important;
}
@media only screen and (max-width:768px) {
  .wp-pagenavi span, .wp-pagenavi a, .all-page-pager span, .all-page-pager a {
    font-size: 11px;
    width: 20px;
    height: 20px;
  }
}
.wp-pagenavi a.nextpostslink, .all-page-pager a.nextpostslink {
  margin-right: 0;
}

.all-page-pager span.page-numbers {
  width: 30px;
  height: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 1em;
}
@media only screen and (max-width:768px) {
  .all-page-pager span.page-numbers {
    font-size: 12px;
  }
}

/*  -------------------------------------
	グーテンベルク　投稿スタイル
  -------------------------------------*/
body .is-layout-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .is-layout-flex figure {
  margin: 0 1em;
}

body .is-layout-flex {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.wp-container-1.wp-container-1, .wp-container-2.wp-container-2 {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

body .is-layout-flex > * {
  margin: 0;
}

/*  -------------------------------------
	Top svgアニメーション
  -------------------------------------*/
.svg-wrapper {
  width: 600px;
  height: 600px;
  margin-top: 0;
  position: absolute;
  right: -60px;
  opacity: 0;
  /* 初期は非表示 */
}
@media only screen and (max-width:1200px) {
  .svg-wrapper {
    width: 450px;
    height: 450px;
  }
}
@media only screen and (max-width:991px) {
  .svg-wrapper {
    width: 400px;
    height: 400px;
  }
}
@media only screen and (max-width:768px) {
  .svg-wrapper {
    width: 300px;
    height: 300px;
  }
}
.svg-wrapper svg {
  width: 100%;
  height: auto;
  display: block;
}
.svg-wrapper svg path {
  stroke-dasharray: 1071;
  /* パス長に合わせる */
  stroke-dashoffset: 1071;
  /* ここが隠れている状態 */
}

/*  -------------------------------------
	デイトピッカー表示位置調整
  -------------------------------------*/
#ui-datepicker-div {
  margin-top: -50%;
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}

/* 2.0 structure
--------------------------------------------------------------*/
/*  -------------------------------------
	Wrapper 
  -------------------------------------*/
.wrapper {
  position: relative;
}
@media only screen and (max-width:1200px) {
  .wrapper {
    padding-top: 0px;
  }
}

/*  -------------------------------------
	Header 
  -------------------------------------*/
.l-header {
  width: 100%;
  position: fixed;
  z-index: 2;
  background: #e5e3df;
}
.l-header__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 30px;
}
@media only screen and (max-width:812px) {
  .l-header__inner {
    padding: 15px;
  }
}
@media only screen and (max-width:480px) {
  .l-header__inner {
    padding: 15px;
  }
}
.l-header__logo {
  display: block;
}
.l-header__logo img {
  width: 270px;
  height: auto;
  display: inline-block;
  -webkit-transition: all 500ms 0s ease-in;
  transition: all 500ms 0s ease-in;
  line-height: 1em;
}
@media only screen and (max-width:1200px) {
  .l-header__logo img {
    width: 250px;
  }
}
@media only screen and (max-width:969px) {
  .l-header__logo img {
    width: 180px;
  }
}
@media only screen and (max-width:768px) {
  .l-header__logo img {
    width: 140px;
  }
}
@media only screen and (max-width:480px) {
  .l-header__logo img {
    width: 130px;
  }
}
.l-header__sub_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.l-header__sub_menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 0 0 1em;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
  min-height: 0vw;
  font-weight: 400;
}
.l-header__sub_menu ul li {
  margin: 0 0 0 1.5em;
  font-weight: 400;
}
.l-header__sub_menu ul.langselect {
  margin-left: 1em;
}
.l-header__sub_menu ul.langselect li:first-child:after {
  content: "｜";
}
.l-header__sub_menu ul.langselect li:last-child {
  margin-left: 0;
}
.l-header__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
ul.langselect.sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 0 0 1em;
  font-size: clamp(1.2rem, 2vw, 1.4rem);
  min-height: 0vw;
  font-weight: 400;
  margin-right: 4em;
}
ul.langselect.sp li {
  margin: 0 0 0 1.5em;
  font-weight: 400;
}
ul.langselect.sp li:first-child:after {
  content: "｜";
}
ul.langselect.sp li:last-child {
  margin-left: 0;
}

nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
}
@media only screen and (max-width:1200px) {
  nav ul {
    padding: 18px 0;
  }
}
nav ul ul {
  display: block;
}
nav ul li {
  font-size: 2rem;
  font-size: clamp(1.4rem, 2vw, 1.7rem);
  min-height: 0vw;
  font-weight: 500;
  letter-spacing: 0.08em;
  margin: 0 0 0 1.5em;
  line-height: 1em;
  letter-spacing: 0.05em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media only screen and (max-width:991px) {
  nav ul li {
    font-size: clamp(1.3rem, 2vw, 1.6rem);
    letter-spacing: 0.01em;
  }
}
@media only screen and (max-width:812px) {
  nav ul li {
    margin: 0;
  }
}
nav ul li a {
  position: relative;
}
nav ul li a:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  width: 0%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 1px;
  background: #9a7e47;
  -webkit-transition: 0.35s;
  transition: 0.35s;
}
nav ul li a:hover:after {
  width: 100%;
}
nav ul li.menu-parent-item > a:before {
  content: "";
  position: absolute;
  right: -12px;
  top: 50%;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #9a7e47;
  border-right: 1px solid #9a7e47;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item > a:before {
    top: 17px;
    right: 3px;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    margin-top: -12px;
  }
}
nav ul li.menu-parent-item.active > a:before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
nav ul li.menu-parent-item img {
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  objectfit: contain;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  vertical-align: bottom;
}
nav ul li.menu-parent-item img:hover {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
nav ul li.menu-parent-item dt {
  overflow: hidden;
  margin: 0 0 10px 0;
}
@media only screen and (max-width:1200px) {
  nav ul li.menu-parent-item dt {
    height: 12vh;
  }
}
nav ul li.menu-parent-item dd {
  font-size: clamp(1.1rem, 2vw, 1.8rem);
  min-height: 0vw;
}
nav ul li.menu-parent-item ul {
  position: absolute;
  left: 5%;
  top: 125px;
  z-index: 4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  /*形状を指定*/
  background: #f4f3f0;
  padding: 2% 1% 0;
  width: 90%;
  /*はじめは非表示*/
  visibility: hidden;
  opacity: 0;
  /*アニメーション設定*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item ul {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    visibility: visible;
    /*JSで制御するため一旦表示*/
    opacity: 1;
    /*JSで制御するため一旦表示*/
    display: none;
    /*JSのslidetoggleで表示させるため非表示に*/
    -webkit-transition: none;
    transition: none;
    /*JSで制御するためCSSのアニメーションを切る*/
  }
}
nav ul li.menu-parent-item ul li {
  width: 23%;
  margin: 0 1% 1%;
  text-align: center;
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item ul li {
    width: 100%;
    text-align: left;
    padding: 1% 0;
  }
}
nav ul li.menu-parent-item ul li a {
  color: #fff;
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item ul li a {
    padding: 0;
  }
}
nav ul li.menu-parent-item ul li a:after {
  width: 0;
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item ul li dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0;
  }
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item ul li dl dt {
    width: 23%;
    height: auto;
    margin: 0;
  }
}
@media only screen and (max-width:812px) {
  nav ul li.menu-parent-item ul li dl dd {
    width: 64%;
  }
}
nav ul li.menu-parent-item:hover > ul {
  visibility: visible;
  opacity: 1;
}

body.sticky .button_container {
  -webkit-animation-name: fadeDownAnime;
          animation-name: fadeDownAnime;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 1;
  z-index: 100;
}
body.sticky .l-header {
  -webkit-animation-name: fadeDownAnime;
          animation-name: fadeDownAnime;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  position: fixed;
  z-index: 1;
  background: rgba(230, 228, 224, 0.95);
  -webkit-box-shadow: 0 0 5px 5px #9d9d9d24;
          box-shadow: 0 0 5px 5px #9d9d9d24;
}
@media only screen and (max-width:812px) {
  body.sticky .l-header {
    -webkit-animation: inherit;
            animation: inherit;
    opacity: 1;
  }
}
@media only screen and (max-width:768px) {
  body.sticky .l-header {
    height: 75px;
  }
}
body.sticky .l-header__inner {
  padding-top: 15px;
}
body.sticky .l-header__sub_menu ul {
  margin-bottom: 0.5em;
}
body.sticky .l-header nav {
  -webkit-animation-name: fadeInLogo;
          animation-name: fadeInLogo;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 1;
}
body.sticky .l-header nav ul {
  padding: 10px 0 20px;
}

@-webkit-keyframes fadeDownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-100px);
            transform: translateY(-100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fadeDownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-100px);
            transform: translateY(-100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fadeInLogo {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeInLogo {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*  -------------------------------------
	sidebar
  -------------------------------------*/
.l-sidebar {
  margin-right: 30px;
}
@media only screen and (max-width:991px) {
  .l-sidebar {
    margin: 90px 0 0;
  }
}
@media only screen and (max-width:768px) {
  .l-sidebar {
    margin-top: 60px;
  }
}
@media only screen and (max-width:480px) {
  .l-sidebar {
    margin-top: 45px;
  }
}
.l-sidebar .widget {
  margin-bottom: 90px;
}
@media only screen and (max-width:991px) {
  .l-sidebar .widget:last-of-type {
    margin-bottom: 0;
  }
}
@media only screen and (max-width:768px) {
  .l-sidebar .widget {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width:480px) {
  .l-sidebar .widget {
    margin-bottom: 45px;
  }
}
.l-sidebar .widget h3 {
  font-size: clamp(1.5rem, 2vw, 2.1rem);
  min-height: 0vw;
  font-weight: 700;
  padding: 0 0 15px;
  margin: 0 0 15px;
  line-height: 1.6em;
  border-bottom: 1px solid #ccc;
}
.l-sidebar .widget ul li {
  margin: 0 0 0.5em;
}
.l-sidebar .widget ul li:last-child {
  margin-bottom: 0;
}

/*  -------------------------------------
	Footer
  -------------------------------------*/
.l-footer {
  background: #706e6e;
  color: #fff;
  padding: 60px 0 !important;
}
@media only screen and (max-width:480px) {
  .l-footer {
    padding: 40px 0 20px !important;
  }
}
.l-footer .container {
  padding-top: 45px;
}
@media only screen and (max-width:812px) {
  .l-footer .container {
    margin-left: 0;
    margin-right: 0;
  }
}
@media only screen and (max-width:480px) {
  .l-footer .container {
    padding-top: 0px;
  }
}
@media only screen and (max-width:480px) {
  .l-footer .container .container {
    padding-left: 0;
    padding-right: 0;
  }
}
.l-footer__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.l-footer__content {
  width: 80%;
}
@media only screen and (max-width:768px) {
  .l-footer__content {
    width: calc(100% - 120px);
  }
}
@media only screen and (max-width:480px) {
  .l-footer__content {
    width: calc(100% - 80px);
  }
}
.l-footer__logo img {
  width: 90px;
  height: auto;
}
@media only screen and (max-width:991px) {
  .l-footer__logo img {
    width: 70px;
  }
}
@media only screen and (max-width:768px) {
  .l-footer__logo img {
    width: 60px;
  }
}
@media only screen and (max-width:480px) {
  .l-footer__logo img {
    width: 45px;
  }
}
.l-footer__nav {
  margin-bottom: 3em;
}
.l-footer__nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media only screen and (max-width:768px) {
  .l-footer__nav ul {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 0;
  }
}
.l-footer__nav ul li {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 400;
  letter-spacing: 0.1em;
  margin: 0 1.5em 0 0;
  padding: 0;
  text-align: left;
}
@media only screen and (max-width:991px) {
  .l-footer__nav ul li {
    font-size: clamp(1.2rem, 2vw, 1.3rem);
  }
}
@media only screen and (max-width:768px) {
  .l-footer__nav ul li {
    margin: 0 1.5em 1.5em 0;
  }
}
.l-footer__nav ul li:last-child {
  margin-right: 0;
}
.l-footer__nav ul li a {
  color: #fff !important;
}
.l-footer__subnav {
  margin-top: 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
}
@media only screen and (max-width:812px) {
  .l-footer__subnav {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media only screen and (max-width:768px) {
  .l-footer__subnav {
    margin-top: 1em;
    padding: 0;
  }
}
@media only screen and (max-width:480px) {
  .l-footer__subnav {
    margin-bottom: 3em;
    text-align: right;
  }
}
.l-footer__subnav li {
  font-weight: 500;
  font-size: clamp(1.0rem, 1.5vw, 1.4rem);
  min-height: 0vw;
  margin: 0 1.5em 0 0;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media only screen and (max-width:768px) {
  .l-footer__subnav li {
    font-size: 12px !important;
  }
}
@media only screen and (max-width:480px) {
  .l-footer__subnav li {
    font-size: 10px !important;
    margin: 0 1em 0 0;
  }
}
.l-footer__subnav li:last-child {
  margin-right: 0;
}
.l-footer__copyright {
  text-align: right;
}
.l-footer__copyright p {
  font-family: "Jost", sans-serif;
  font-size: clamp(1rem, 2vw, 1.2rem);
  min-height: 0vw;
  font-weight: 400;
}
@media only screen and (max-width:687px) {
  .l-footer__copyright p {
    font-size: 10px;
  }
}

/* 3.0 section
--------------------------------------------------------------*/
/* 4.0 contents
--------------------------------------------------------------*/
/*  -------------------------------------
	Content
  -------------------------------------*/
.content {
  padding: 120px 0;
}
@media only screen and (max-width:1200px) {
  .content {
    padding: 90px 0;
  }
}
@media only screen and (max-width:768px) {
  .content {
    padding: 60px 0;
  }
}
@media only screen and (max-width:480px) {
  .content {
    padding: 45px 0;
  }
}
.content .c-title {
  font-weight: 700;
  margin: 0 0 30px;
  font-family: "Jost", sans-serif;
  letter-spacing: 0.05em;
  font-size: clamp(2.4rem, 3vw, 4.8rem) !important;
  min-height: 0vw;
}
.content .c-title span.sub-title {
  font-family: "IBM Plex Sans JP", sans-serif;
  display: block;
  font-size: 40%;
  font-weight: 400;
  margin: 0.5em 0 0;
}
@media only screen and (max-width:480px) {
  .content .c-title {
    margin: 0 0 20px;
  }
}
.content p.c-sub_title {
  margin: 0 0 60px;
  font-family: "EB Garamond", serif;
  color: #9a7e47;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  min-height: 0vw;
}
@media only screen and (max-width:1200px) {
  .content p.c-sub_title {
    margin: 0 0 30px;
  }
}
@media only screen and (max-width:768px) {
  .content p.c-sub_title {
    margin: 0 0 20px;
  }
}
.content .content__txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.content .content__txt h3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  margin: 0 0 20px;
  line-height: 1.4em;
}
@media only screen and (max-width:991px) {
  .content .content__txt h3 {
    font-size: 18px;
  }
}
@media only screen and (max-width:768px) {
  .content .content__txt h3 {
    font-size: 15px;
    margin: 0 0 10px;
  }
}
@media only screen and (max-width:991px) {
  .content .content__txt p {
    font-size: 14px;
  }
}
@media only screen and (max-width:768px) {
  .content .content__txt p {
    font-size: 12px;
  }
}
.content .meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 1em 0 0.5em;
  font-size: 80%;
}
.content .meta .cat {
  color: #037dc1 !important;
  border: 1px solid #037dc1;
  background: #fff;
  border-radius: 5px;
  padding: 0 0.5em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.content .meta .c-post-date {
  color: #777;
  font-family: "Jost", sans-serif;
}
.content .p-tag {
  margin: 90px auto 0;
  text-align: center;
  width: 60%;
}
@media only screen and (max-width:768px) {
  .content .p-tag {
    width: 80%;
    margin: 60px auto 0;
  }
}
@media only screen and (max-width:480px) {
  .content .p-tag {
    margin: 30px auto 0;
    width: 100%;
  }
}
.content .p-tag__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.content .p-tag__menu li a {
  background: #fff;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 2em;
  margin: 0 0.4em 0.8em;
  border-radius: 30px;
  min-width: 100px;
}
@media only screen and (max-width:480px) {
  .content .p-tag__menu li a {
    height: 30px;
  }
}
.content .p-tag .c-tag-title {
  font-weight: 700;
  font-size: clamp(1.6rem, 2vw, 2.4rem);
  min-height: 0vw;
  margin: 0 0 30px;
  line-height: 1em;
}
.content .p-tag .c-tag-sub_title {
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  min-height: 0vw;
  font-family: "EB Garamond", serif;
  line-height: 1em;
  margin: 0 0 30px;
}

/*  -------------------------------------
	part-common
  -------------------------------------*/
.part-common {
  width: 1300px;
  margin: 0 auto;
}
@media only screen and (max-width:1360px) {
  .part-common {
    width: calc(100% - 60px);
  }
}
@media only screen and (max-width:768px) {
  .part-common {
    width: calc(100% - 30px);
  }
}

/*  -------------------------------------
	p-page_title
  -------------------------------------*/
.p-page_title {
  padding-bottom: 0;
}
.p-page_title .c-title {
  margin: 0;
  font-size: clamp(2.4rem, 2.5vw, 4.8rem) !important;
  min-height: 0vw;
  letter-spacing: 0.1em;
}

/*  -------------------------------------
	linkBtn
  -------------------------------------*/
.linkBtn {
  width: auto;
  max-width: 240px;
  height: 60px;
  border-radius: 40px;
  border: 1px solid #333;
  color: #333 !important;
  font-weight: 400;
  padding: 4px 30px;
  font-family: "Jost", sans-serif, "IBM Plex Sans JP", sans-serif;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  min-height: 0vw;
  margin: 30px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media only screen and (max-width:991px) {
  .linkBtn {
    height: 55px;
    max-width: 220px;
    padding: 4px 20px;
    font-size: clamp(1.2rem, 2vw, 1.4rem);
  }
}
@media only screen and (max-width:768px) {
  .linkBtn {
    height: 50px;
  }
}
@media only screen and (max-width:480px) {
  .linkBtn {
    height: 40px;
    max-width: 160px;
  }
}
.linkBtn:hover span {
  color: #fff !important;
  z-index: 999;
  -webkit-transition: 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
}

.lang-en .linkBtn {
  max-width: 100% !important;
}

/*== 背景が流れる（左から右） */
.bgleft:before {
  content: "";
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  /*色や形状*/
  background: #085274;
  /*背景色*/
  width: 100%;
  height: 100%;
  /*アニメーション*/
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
}

/*hoverした際の形状*/
.bgleft:hover:before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  color: #000 !important;
}

/*  -------------------------------------
	Home
  -------------------------------------*/
.home .part-common h2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-size: clamp(1.6rem, 2vw, 3rem) !important;
  min-height: 0vw;
  font-weight: 400;
}
.home .part-common .en-title {
  font-family: "Jost", sans-serif;
  color: #9a7e47;
  margin-bottom: 0.5em;
}

/*  -------------------------------------
	Top
  -------------------------------------*/
#top {
  padding-top: 0px;
  padding-bottom: 0;
  margin-top: 140px;
  /*border-bottom: 1px solid $line-color;*/
}
@media only screen and (max-width:812px) {
  #top {
    margin-top: 80px;
  }
}
@media only screen and (max-width:768px) {
  #top {
    margin-top: 70px;
  }
}
@media only screen and (max-width:480px) {
  #top {
    margin-top: 60px;
  }
}
#top .slide_wrap {
  position: relative;
}
#top .slide_wrap:before {
  background: rgba(33, 33, 33, 0.5);
  content: "";
  background: -webkit-gradient(linear, left bottom, left top, from(black), color-stop(50%, rgba(0, 0, 0, 0.3)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(0deg, black 0%, rgba(0, 0, 0, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.7 !important;
  position: absolute !important;
  height: 60% !important;
  width: 100% !important;
  left: 0px !important;
  bottom: 0px !important;
  z-index: 2;
}
#top .slick1 {
  overflow: hidden;
  position: relative;
}
#top .slick1 div {
  height: calc(100vh - 240px);
  margin: 0;
}
@media only screen and (max-width:1499px) {
  #top .slick1 div {
    height: 750px;
  }
}
@media only screen and (max-width:1360px) {
  #top .slick1 div {
    height: 550px;
  }
}
@media only screen and (max-width:1200px) {
  #top .slick1 div {
    height: 500px;
  }
}
@media only screen and (max-width:991px) {
  #top .slick1 div {
    height: 500px;
  }
}
@media only screen and (max-width:768px) {
  #top .slick1 div {
    height: 400px;
  }
}
@media only screen and (max-width:767px) {
  #top .slick1 div {
    border-radius: 0;
  }
}
@media only screen and (max-width:480px) {
  #top .slick1 div {
    width: 100%;
    height: 250px;
  }
}
#top .slick1 div.img01 {
  background-image: url(assets/img/slide/slide1.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
#top .slick1 div.img02 {
  background-image: url(assets/img/slide/slide2.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
#top .slick1 div.img03 {
  background-image: url(assets/img/slide/slide3.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
#top .slick1 div.img04 {
  background-image: url(assets/img/slide/slide4.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
#top .slick1 div.img05 {
  background-image: url(assets/img/slide/slide5.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
#top .slick1 div.img06 {
  background-image: url(assets/img/slide/slide6.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
#top .slick-dotted.slick-slider {
  margin-bottom: 0px !important;
}
#top .slogan {
  position: absolute;
  left: 60px;
  bottom: 60px;
  z-index: 2;
  width: calc(100% - 120px);
}
@media only screen and (max-width:991px) {
  #top .slogan {
    left: 45px;
    bottom: 45px;
    width: calc(100% - 90px);
  }
}
@media only screen and (max-width:768px) {
  #top .slogan {
    left: 30px;
    bottom: 30px;
    width: calc(100% - 60px);
  }
}
@media only screen and (max-width:480px) {
  #top .slogan {
    left: 15px;
    bottom: 15px;
    width: calc(100% - 30px);
  }
}
#top .slogan p {
  font-size: clamp(1.8rem, 2.5vw, 4.5rem);
  min-height: 0vw;
  line-height: 1.4em;
  margin: 0;
}
#top .slogan p a {
  color: #fff !important;
}
#top .news-topics {
  width: 100%;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #f4f3f0;
}
@media only screen and (max-width:1200px) {
  #top .news-topics {
    height: 70px;
  }
}
#top .news-topics .topics-ttl {
  max-width: 15%;
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Jost", sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  min-height: 0vw;
  line-height: 1em;
}
@media only screen and (max-width:991px) {
  #top .news-topics .topics-ttl {
    max-width: 20%;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
  }
}
@media only screen and (max-width:768px) {
  #top .news-topics .topics-ttl {
    font-size: 12px;
    max-width: 20%;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
  }
}
#top .news-topics .topics-ttl p {
  margin: 0;
}
#top .news-topics .topics-txt {
  max-width: 85%;
  -ms-flex-preferred-size: 85%;
      flex-basis: 85%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width:991px) {
  #top .news-topics .topics-txt {
    max-width: 80%;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
  }
}
@media only screen and (max-width:768px) {
  #top .news-topics .topics-txt {
    max-width: 80%;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
  }
}
#top .news-topics .topics-txt .ticker {
  width: 100%;
}
#top .news-topics .topics-txt .ticker ul {
  height: 60px;
  width: 100%;
}
#top .news-topics .topics-txt .ticker ul li {
  height: 100px;
  position: relative;
  width: 100%;
  display: none;
}
@media only screen and (max-width:1200px) {
  #top .news-topics .topics-txt .ticker ul li {
    height: 70px;
  }
}
#top .news-topics .topics-txt .ticker ul li a {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  width: 100%;
}
@media only screen and (max-width:768px) {
  #top .news-topics .topics-txt .ticker ul li a {
    margin-top: -13px;
  }
}
#top .news-topics .topics-txt .ticker ul li a dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
@media only screen and (max-width:768px) {
  #top .news-topics .topics-txt .ticker ul li a dl {
    display: block;
  }
}
#top .news-topics .topics-txt .ticker ul li a dl dt {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  max-width: 15%;
  font-family: "Jost", sans-serif;
  font-weight: 400;
}
@media only screen and (max-width:991px) {
  #top .news-topics .topics-txt .ticker ul li a dl dt {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
    font-size: 14px;
  }
}
@media only screen and (max-width:768px) {
  #top .news-topics .topics-txt .ticker ul li a dl dt {
    font-size: 11px;
    max-width: 100%;
  }
}
#top .news-topics .topics-txt .ticker ul li a dl dd {
  -ms-flex-preferred-size: 85%;
      flex-basis: 85%;
  max-width: 85%;
}
@media only screen and (max-width:991px) {
  #top .news-topics .topics-txt .ticker ul li a dl dd {
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
    font-size: 14px;
  }
}
@media only screen and (max-width:768px) {
  #top .news-topics .topics-txt .ticker ul li a dl dd {
    font-size: 12px;
    max-width: 100%;
  }
}

#top .slick1 .slick-slide:not(.slick-current):before {
  background: rgba(33, 33, 33, 0.4);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 1;
}

/*  -------------------------------------
	Top-about
  -------------------------------------*/
#top-about .top-about-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media only screen and (max-width:768px) {
  #top-about .top-about-content {
    display: block;
  }
}
#top-about .top-about-content__img, #top-about .top-about-content__text {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
@media only screen and (max-width:768px) {
  #top-about .top-about-content__text {
    width: 60%;
    margin: 0 auto;
  }
}
@media only screen and (max-width:687px) {
  #top-about .top-about-content__text {
    width: 70%;
  }
}
@media only screen and (max-width:480px) {
  #top-about .top-about-content__text {
    width: 100%;
  }
}
#top-about .top-about-content__text ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media only screen and (max-width:768px) {
  #top-about .top-about-content__text ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#top-about .top-about-content__text ul li {
  margin-right: 1em;
}
@media only screen and (max-width:768px) {
  #top-about .top-about-content__text ul li {
    margin: 0 0.5em;
  }
}
@media only screen and (max-width:768px) {
  #top-about .top-about-content__img img {
    width: 60%;
    margin: 0 auto 3em;
    display: block;
  }
}
@media only screen and (max-width:687px) {
  #top-about .top-about-content__img img {
    width: 70%;
  }
}
@media only screen and (max-width:480px) {
  #top-about .top-about-content__img img {
    width: 100%;
  }
}

/*  -------------------------------------
	Top-concours
  -------------------------------------*/
#top-concours {
  background: #f4f3f0;
  position: relative;
}
#top-concours:before {
  content: "";
  background: url(assets/img/top/top_concours_img2.svg) no-repeat;
  height: 240px;
  width: 45%;
  background-size: contain;
  display: block;
  position: absolute;
  top: 160px;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
}
@media only screen and (max-width:1360px) {
  #top-concours:before {
    width: 50%;
    left: -30px;
  }
}
@media only screen and (max-width:991px) {
  #top-concours:before {
    top: 160px;
  }
}
@media only screen and (max-width:768px) {
  #top-concours:before {
    width: 80%;
    left: 0;
    top: 120px;
  }
}
@media only screen and (max-width:480px) {
  #top-concours:before {
    width: 90%;
  }
}
#top-concours.is-inview:before {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
#top-concours .top-concours-content, #top-concours .top-concours-department {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:768px) {
  #top-concours .top-concours-content, #top-concours .top-concours-department {
    display: block;
  }
}
#top-concours .top-concours-content__img, #top-concours .top-concours-content__text, #top-concours .top-concours-department__img, #top-concours .top-concours-department__text {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
@media only screen and (max-width:768px) {
  #top-concours .top-concours-content__img img, #top-concours .top-concours-department__img img {
    width: 60%;
    margin: 0 auto 3em;
    display: block;
  }
}
@media only screen and (max-width:687px) {
  #top-concours .top-concours-content__img img, #top-concours .top-concours-department__img img {
    width: 70%;
  }
}
@media only screen and (max-width:480px) {
  #top-concours .top-concours-content__img img, #top-concours .top-concours-department__img img {
    width: 100%;
  }
}
@media only screen and (max-width:768px) {
  #top-concours .top-concours-content__text, #top-concours .top-concours-department__text {
    width: 60%;
    margin: 0 auto;
  }
  #top-concours .top-concours-content__text a.linkBtn, #top-concours .top-concours-department__text a.linkBtn {
    margin: 30px auto 0;
  }
}
@media only screen and (max-width:687px) {
  #top-concours .top-concours-content__text, #top-concours .top-concours-department__text {
    width: 70%;
  }
}
@media only screen and (max-width:480px) {
  #top-concours .top-concours-content__text, #top-concours .top-concours-department__text {
    width: 100%;
  }
}
#top-concours .top-concours-department {
  margin-top: 90px;
}
#top-concours .top-concours-department__content {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
@media only screen and (max-width:768px) {
  #top-concours .top-concours-department__content {
    width: 60%;
    margin: 0 auto;
  }
}
@media only screen and (max-width:687px) {
  #top-concours .top-concours-department__content {
    width: 70%;
  }
}
@media only screen and (max-width:480px) {
  #top-concours .top-concours-department__content {
    width: 100%;
  }
}
#top-concours .top-concours-department__content p {
  font-size: clamp(1.4rem, 2vw, 2rem) !important;
  min-height: 0vw;
  text-align: center;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  margin-top: 20px;
}
#top-concours .top-concours-department__content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#top-concours .top-concours-department__content ul li {
  margin: 0 0.5em;
}
#top-concours .top-concours-department__content ul li a {
  margin-top: 20px;
}
#top-concours .top-concours-department__content:first-of-type {
  position: relative;
}
@media only screen and (max-width:768px) {
  #top-concours .top-concours-department__content:first-of-type {
    margin-bottom: 3em;
  }
}
#top-concours .top-concours-department__content:first-of-type:after {
  content: "";
  width: 1px;
  height: 100%;
  background: #c2c1be;
  display: block;
  position: absolute;
  top: 0;
  right: -8.5%;
  opacity: 0;
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}
@media only screen and (max-width:768px) {
  #top-concours .top-concours-department__content:first-of-type:after {
    display: none;
  }
}
#top-concours.is-inview .top-concours-department__content:first-of-type:after {
  opacity: 1;
}

/*  -------------------------------------
	Top-news
  -------------------------------------*/
#top-news .top-news-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width:812px) {
  #top-news .top-news-content {
    display: block;
  }
}
#top-news .top-news-content__title {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
}
@media only screen and (max-width:969px) {
  #top-news .top-news-content__title {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
  }
}
@media only screen and (max-width:812px) {
  #top-news .top-news-content__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 3em;
  }
  #top-news .top-news-content__title .title-wrap h2 {
    margin-bottom: 0;
  }
  #top-news .top-news-content__title .linkBtn {
    margin-top: 0;
    height: 30px;
    font-size: clamp(1.2rem, 2vw, 1.3rem);
  }
}
#top-news .top-news-content__list {
  -ms-flex-preferred-size: 70%;
      flex-basis: 70%;
}
@media only screen and (max-width:969px) {
  #top-news .top-news-content__list {
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
  }
}
#top-news dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #c2c1be;
  margin: 0;
}
@media only screen and (max-width:480px) {
  #top-news dl {
    display: block;
    margin-bottom: 1em;
  }
}
#top-news dl dt {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  font-family: "Jost", sans-serif;
  font-weight: 400;
  color: #777;
  padding: 2em 0;
  position: relative;
}
@media only screen and (max-width:480px) {
  #top-news dl dt {
    padding: 0;
    margin-bottom: 0.5em;
  }
}
#top-news dl dd {
  -ms-flex-preferred-size: 85%;
      flex-basis: 85%;
  padding-left: 2em;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width:480px) {
  #top-news dl dd {
    padding-left: 0;
    padding-bottom: 1em;
  }
}
#top-news dl dd span.p-title {
  -ms-flex-preferred-size: 85%;
      flex-basis: 85%;
}
@media only screen and (max-width:991px) {
  #top-news dl dd span.p-title {
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
  }
}
#top-news dl dd a.p-more {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  font-size: clamp(1.1rem, 2vw, 1.4rem);
  letter-spacing: 0.1em;
  min-height: 0vw;
  text-align: right;
}
@media only screen and (max-width:991px) {
  #top-news dl dd a.p-more {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
  }
}

/*  -------------------------------------
	Top-others
  -------------------------------------*/
#top-others {
  background: #f4f3f0;
}
#top-others .top-others-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#top-others .top-others-content__info {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
#top-others .top-others-content__info:first-of-type {
  position: relative;
}
#top-others .top-others-content__info:first-of-type:after {
  content: "";
  width: 1px;
  height: 100%;
  background: #9a7e47;
  display: block;
  position: absolute;
  top: 0;
  right: -8.5%;
  opacity: 0;
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
#top-others .top-others-content__info a.imgLink {
  overflow: hidden;
  display: block;
  margin-bottom: 1.5em;
}
#top-others .top-others-content__info a.imgLink img {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#top-others .top-others-content__info a.imgLink img:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#top-others .top-others-content__info h2 {
  font-size: clamp(1.4rem, 2vw, 2.4rem) !important;
  min-height: 0vw;
  text-align: center;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
#top-others .top-others-content__info p.en-title {
  color: #9a7e47;
  font-family: "Jost", sans-serif;
  text-align: center;
  margin: 0 0 0.5em;
  line-height: 1em;
  font-size: clamp(1rem, 2vw, 1.6rem) !important;
}
#top-others .top-others-content__info a.linkBtn {
  margin: 30px auto 0;
}
@media only screen and (max-width:480px) {
  #top-others .top-others-content__info a.linkBtn {
    margin: 20px auto 0;
    max-width: 120px;
  }
}
#top-others.is-inview .top-others-content__info:first-of-type:after {
  opacity: 1;
}

/*  -------------------------------------
	Top-sponsor
  -------------------------------------*/
#top-sponsor .top-sponsor-content h2, #top-sponsor .top-sponsor-content .en-title {
  text-align: center;
}
#top-sponsor .top-sponsor-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 45px;
}
@media only screen and (max-width:991px) {
  #top-sponsor .top-sponsor-content ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#top-sponsor .top-sponsor-content ul li {
  -ms-flex-preferred-size: calc(100% / 3);
      flex-basis: calc(100% / 3);
  text-align: center;
  margin-bottom: 3em;
  font-size: clamp(1.2rem, 2vw, 1.6rem) !important;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.01em;
}
@media only screen and (max-width:1360px) {
  #top-sponsor .top-sponsor-content ul li {
    font-size: clamp(1.2rem, 2vw, 1.4rem) !important;
  }
}
@media only screen and (max-width:1200px) {
  #top-sponsor .top-sponsor-content ul li {
    font-size: clamp(1.2rem, 2vw, 1.3rem) !important;
  }
}
@media only screen and (max-width:991px) {
  #top-sponsor .top-sponsor-content ul li {
    -ms-flex-preferred-size: calc(100% / 3);
        flex-basis: calc(100% / 3);
  }
}
@media only screen and (max-width:768px) {
  #top-sponsor .top-sponsor-content ul li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}
@media only screen and (max-width:480px) {
  #top-sponsor .top-sponsor-content ul li {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  #top-sponsor .top-sponsor-content ul li:last-child {
    margin-bottom: 0;
  }
  #top-sponsor .top-sponsor-content ul li:last-child img {
    max-width: 50%;
  }
}
#top-sponsor .top-sponsor-content ul li img {
  max-width: 50%;
  height: 80px;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  margin: 0 auto 1em;
}
@media only screen and (max-width:991px) {
  #top-sponsor .top-sponsor-content ul li img {
    height: 60px;
    max-width: 50%;
  }
}
@media only screen and (max-width:480px) {
  #top-sponsor .top-sponsor-content ul li img {
    max-width: 40%;
  }
}

/*  -------------------------------------
	page
  -------------------------------------*/
.page .p-pankuzu, .archive .p-pankuzu, .single .p-pankuzu {
  padding: 22px 0;
  line-height: 1em;
  font-family: "Jost", sans-serif;
  margin-bottom: 60px;
}
.page .p-page-title .col-sm-12, .archive .p-page-title .col-sm-12, .single .p-page-title .col-sm-12 {
  margin: 120px 0 0;
}
.page .p-page-title .col-sm-12 h1, .archive .p-page-title .col-sm-12 h1, .single .p-page-title .col-sm-12 h1 {
  margin: 0;
  text-align: left;
}
.page .part-common h1, .archive .part-common h1, .single .part-common h1 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-size: clamp(2em, 3vw, 4.8rem) !important;
  text-align: left;
  min-height: 0vw;
  font-weight: 400;
  padding: 0;
  margin: 0;
  line-height: 1.4em;
}
.page .part-common .en-title, .archive .part-common .en-title, .single .part-common .en-title {
  font-family: "Jost", sans-serif;
  color: #9a7e47;
  margin-bottom: 0.5em;
  font-size: clamp(1.5em, 3vw, 2.2rem) !important;
}
.page .part-common .tag-list, .archive .part-common .tag-list, .single .part-common .tag-list {
  margin-top: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.page .part-common .tag-list li, .archive .part-common .tag-list li, .single .part-common .tag-list li {
  margin-right: 0.5em;
}
.page .part-common .tag-list li a, .archive .part-common .tag-list li a, .single .part-common .tag-list li a {
  border: 1px solid #333;
  border-radius: 30px;
  padding: 2px 10px;
}
.page .page-top, .archive .page-top, .single .page-top {
  margin-top: 120px;
}
.page .page-lead, .archive .page-lead, .single .page-lead {
  padding-top: 0;
}
.page .page-lead p, .archive .page-lead p, .single .page-lead p {
  width: 70%;
  line-height: 2em;
}
@media only screen and (max-width:991px) {
  .page .page-lead p, .archive .page-lead p, .single .page-lead p {
    width: 80%;
  }
}
@media only screen and (max-width:768px) {
  .page .page-lead p, .archive .page-lead p, .single .page-lead p {
    width: 100%;
  }
}

/*  -------------------------------------
	archive
  -------------------------------------*/
.archive #archive-content, .all-news #archive-content, .all-news-en #archive-content {
  padding-top: 0px;
}
.archive #archive-content ul.tab-menu, .all-news #archive-content ul.tab-menu, .all-news-en #archive-content ul.tab-menu {
  border-bottom: 1px solid #c2c1be;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.archive #archive-content ul.tab-menu li, .all-news #archive-content ul.tab-menu li, .all-news-en #archive-content ul.tab-menu li {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  margin: 0 0 3em;
  padding: 0;
  text-align: center;
}
.archive #archive-content ul.tab-menu li a, .all-news #archive-content ul.tab-menu li a, .all-news-en #archive-content ul.tab-menu li a {
  color: #999 !important;
}
.archive #archive-content ul.tab-menu li.current-cat a, .all-news #archive-content ul.tab-menu li.current-cat a, .all-news-en #archive-content ul.tab-menu li.current-cat a {
  color: #333 !important;
}
@media only screen and (max-width:687px) {
  .archive #archive-content ul.tab-menu li, .all-news #archive-content ul.tab-menu li, .all-news-en #archive-content ul.tab-menu li {
    -ms-flex-preferred-size: 31.3%;
        flex-basis: 31.3%;
  }
}
.archive #archive-content dl, .all-news #archive-content dl, .all-news-en #archive-content dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-bottom: 1px solid #c2c1be;
  padding: 3em 0;
  margin: 0;
}
@media only screen and (max-width:1200px) {
  .archive #archive-content dl, .all-news #archive-content dl, .all-news-en #archive-content dl {
    padding: 2em 0;
  }
}
@media only screen and (max-width:687px) {
  .archive #archive-content dl, .all-news #archive-content dl, .all-news-en #archive-content dl {
    display: block;
  }
}
.archive #archive-content dl dt, .all-news #archive-content dl dt, .all-news-en #archive-content dl dt {
  -ms-flex-preferred-size: 10%;
      flex-basis: 10%;
  max-width: 10%;
  font-weight: 400;
  font-family: "Jost", sans-serif;
}
@media only screen and (max-width:1200px) {
  .archive #archive-content dl dt, .all-news #archive-content dl dt, .all-news-en #archive-content dl dt {
    -ms-flex-preferred-size: 15%;
        flex-basis: 15%;
    max-width: 15%;
  }
}
@media only screen and (max-width:687px) {
  .archive #archive-content dl dt, .all-news #archive-content dl dt, .all-news-en #archive-content dl dt {
    margin-bottom: 1em;
  }
}
.archive #archive-content dl dd, .all-news #archive-content dl dd, .all-news-en #archive-content dl dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-preferred-size: 90%;
      flex-basis: 90%;
}
@media only screen and (max-width:1200px) {
  .archive #archive-content dl dd, .all-news #archive-content dl dd, .all-news-en #archive-content dl dd {
    -ms-flex-preferred-size: 85%;
        flex-basis: 85%;
  }
}
.archive #archive-content dl dd a.p-cat, .all-news #archive-content dl dd a.p-cat, .all-news-en #archive-content dl dd a.p-cat {
  border: 1px solid #333;
  border-radius: 30px;
  font-size: clamp(1.1rem, 3vw, 1.3rem) !important;
  padding: 2px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-preferred-size: 155px;
      flex-basis: 155px;
}
@media only screen and (max-width:687px) {
  .archive #archive-content dl dd a.p-cat, .all-news #archive-content dl dd a.p-cat, .all-news-en #archive-content dl dd a.p-cat {
    font-size: clamp(1.1rem, 2vw, 1.2rem) !important;
    -ms-flex-preferred-size: 100px;
        flex-basis: 100px;
  }
}
@media only screen and (max-width:687px) {
  .archive #archive-content dl dd a.p-cat, .all-news #archive-content dl dd a.p-cat, .all-news-en #archive-content dl dd a.p-cat {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
}
.archive #archive-content dl dd span.p-title, .all-news #archive-content dl dd span.p-title, .all-news-en #archive-content dl dd span.p-title {
  -ms-flex-preferred-size: calc(100% - 275px);
      flex-basis: calc(100% - 275px);
  padding: 0 2.5em;
  font-size: clamp(1.3rem, 2vw, 1.6rem) !important;
  line-height: 1.6em;
}
@media only screen and (max-width:1200px) {
  .archive #archive-content dl dd span.p-title, .all-news #archive-content dl dd span.p-title, .all-news-en #archive-content dl dd span.p-title {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    padding: 0;
    margin: 1em 0;
  }
}
.archive #archive-content dl dd a.p-more, .all-news #archive-content dl dd a.p-more, .all-news-en #archive-content dl dd a.p-more {
  -ms-flex-preferred-size: 120px;
      flex-basis: 120px;
  font-size: clamp(1.1rem, 2vw, 1.3rem) !important;
  text-align: right;
}
@media only screen and (max-width:1200px) {
  .archive #archive-content dl dd a.p-more, .all-news #archive-content dl dd a.p-more, .all-news-en #archive-content dl dd a.p-more {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
.archive #archive-content dl dd.post-cat, .all-news #archive-content dl dd.post-cat, .all-news-en #archive-content dl dd.post-cat {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  max-width: 15%;
}
@media only screen and (max-width:991px) {
  .archive #archive-content dl dd.post-cat, .all-news #archive-content dl dd.post-cat, .all-news-en #archive-content dl dd.post-cat {
    -ms-flex-preferred-size: 17%;
        flex-basis: 17%;
    max-width: 17%;
  }
}
@media only screen and (max-width:768px) {
  .archive #archive-content dl dd.post-cat, .all-news #archive-content dl dd.post-cat, .all-news-en #archive-content dl dd.post-cat {
    -ms-flex-preferred-size: 85%;
        flex-basis: 85%;
    max-width: 85%;
  }
}
@media only screen and (max-width:480px) {
  .archive #archive-content dl dd.post-cat, .all-news #archive-content dl dd.post-cat, .all-news-en #archive-content dl dd.post-cat {
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
}
.archive #archive-content dl dd.post-cat a, .all-news #archive-content dl dd.post-cat a, .all-news-en #archive-content dl dd.post-cat a {
  color: #9a7e47 !important;
  border: 1px solid #9a7e47;
  padding: 5px 10px;
  border-radius: 10px;
  margin: 0.5em;
  font-size: clamp(1.1rem, 1.5vw, 1.3rem);
  letter-spacing: 0.1em;
  min-height: 0vw;
  display: inline-block;
}
@media only screen and (max-width:768px) {
  .archive #archive-content dl dd.post-cat a, .all-news #archive-content dl dd.post-cat a, .all-news-en #archive-content dl dd.post-cat a {
    padding: 2px 5px;
  }
}
.archive #archive-content dl dd.post-ttl, .all-news #archive-content dl dd.post-ttl, .all-news-en #archive-content dl dd.post-ttl {
  -ms-flex-preferred-size: 70%;
      flex-basis: 70%;
  max-width: 70%;
  font-size: clamp(1.4rem, 1.5vw, 1.8rem);
}
@media only screen and (max-width:991px) {
  .archive #archive-content dl dd.post-ttl, .all-news #archive-content dl dd.post-ttl, .all-news-en #archive-content dl dd.post-ttl {
    -ms-flex-preferred-size: 68%;
        flex-basis: 68%;
    max-width: 68%;
  }
}
@media only screen and (max-width:768px) {
  .archive #archive-content dl dd.post-ttl, .all-news #archive-content dl dd.post-ttl, .all-news-en #archive-content dl dd.post-ttl {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    margin-top: 1em;
  }
}

/*  -------------------------------------
	single
  -------------------------------------*/
.single .page-top p.en-title {
  line-height: 1em;
}
.single .page-top p.en-title span {
  display: inline-block;
  position: relative;
  padding-left: 90px;
  margin-left: 30px;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
}
@media only screen and (max-width:480px) {
  .single .page-top p.en-title span {
    padding-left: 65px;
    margin-left: 20px;
  }
}
.single .page-top p.en-title span:before {
  content: "";
  width: 60px;
  height: 1px;
  display: inline-block;
  background: #9a7e47;
  position: absolute;
  left: 0;
  top: 50%;
}
@media only screen and (max-width:480px) {
  .single .page-top p.en-title span:before {
    width: 45px;
  }
}
.single #single-content .entry-content {
  margin: 0;
}
.single #single-content .entry-content img {
  margin: 1em 0;
  width: 100%;
}
.single #single-content .entry-content img.tall-image {
  width: 50%;
  height: auto;
  display: block;
  margin: 3em auto;
}
@media only screen and (max-width:480px) {
  .single #single-content .entry-content img.tall-image {
    width: 70%;
  }
}
.single #single-content .entry-content a {
  color: #06c !important;
  border-bottom: 1px solid #06c;
}
.single #single-content .category-wrap {
  background: #f4f3f0;
  padding: 60px 0;
  margin-top: 120px;
}
@media only screen and (max-width:1200px) {
  .single #single-content .category-wrap {
    margin-top: 90px;
  }
}
@media only screen and (max-width:768px) {
  .single #single-content .category-wrap {
    margin-top: 60px;
  }
}
@media only screen and (max-width:480px) {
  .single #single-content .category-wrap {
    margin-top: 45px;
    padding: 30px 0;
  }
}
.single #single-content .category-wrap h2 {
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 30px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  color: #9a7e47;
}
@media only screen and (max-width:480px) {
  .single #single-content .category-wrap h2 {
    margin: 0 0 20px;
  }
}
.single #single-content .category-wrap h2:before {
  content: "";
  background: #9a7e47;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
@media only screen and (max-width:480px) {
  .single #single-content .category-wrap h2:before {
    width: 20px;
    padding-left: 30px;
  }
}
.single #single-content .category-wrap ul li {
  font-size: clamp(1.1rem, 2vw, 1.7rem) !important;
  margin: 0 0 0.5em;
}
.single #single-content .category-wrap ul li:last-child {
  margin-bottom: 0;
}

/*  -------------------------------------
	page:about
  -------------------------------------*/
.about #about-menu, .about-en #about-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 0;
}
@media only screen and (max-width:768px) {
  .about #about-menu, .about-en #about-menu {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.about #about-menu .about-menu-content, .about-en #about-menu .about-menu-content {
  -ms-flex-preferred-size: 31.3%;
      flex-basis: 31.3%;
  margin-right: 3%;
  margin-bottom: 4%;
  position: relative;
}
.about #about-menu .about-menu-content:after, .about-en #about-menu .about-menu-content:after {
  content: "";
  width: 1px;
  height: 100%;
  background: #c2c1be;
  display: block;
  position: absolute;
  top: 0;
  right: -5%;
  opacity: 0;
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
@media only screen and (max-width:768px) {
  .about #about-menu .about-menu-content, .about-en #about-menu .about-menu-content {
    -ms-flex-preferred-size: 48%;
        flex-basis: 48%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}
@media only screen and (max-width:768px) {
  .about #about-menu .about-menu-content:nth-of-type(2):after, .about #about-menu .about-menu-content:nth-of-type(4):after, .about-en #about-menu .about-menu-content:nth-of-type(2):after, .about-en #about-menu .about-menu-content:nth-of-type(4):after {
    display: none;
  }
}
.about #about-menu .about-menu-content:nth-of-type(3), .about-en #about-menu .about-menu-content:nth-of-type(3) {
  margin-right: 0;
}
.about #about-menu .about-menu-content:nth-of-type(3):after, .about-en #about-menu .about-menu-content:nth-of-type(3):after {
  display: none;
}
@media only screen and (max-width:768px) {
  .about #about-menu .about-menu-content:nth-of-type(3):after, .about-en #about-menu .about-menu-content:nth-of-type(3):after {
    content: "";
    width: 1px;
    height: 100%;
    background: #c2c1be;
    display: block;
    position: absolute;
    top: 0;
    right: -5%;
  }
}
@media only screen and (max-width:768px) {
  .about #about-menu .about-menu-content:nth-of-type(3), .about-en #about-menu .about-menu-content:nth-of-type(3) {
    margin-right: 0;
  }
}
.about #about-menu .about-menu-content__text .title, .about-en #about-menu .about-menu-content__text .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: 20px;
}
@media only screen and (max-width:768px) {
  .about #about-menu .about-menu-content__text .title, .about-en #about-menu .about-menu-content__text .title {
    display: block;
  }
}
.about #about-menu .about-menu-content__text .title h2, .about-en #about-menu .about-menu-content__text .title h2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  margin: 0 0.5em 0 0;
  font-size: clamp(1.5rem, 2vw, 2rem) !important;
  font-weight: 400;
  min-height: 0vw;
  line-height: 1em;
}
.about #about-menu .about-menu-content__text .title .en-title, .about-en #about-menu .about-menu-content__text .title .en-title {
  font-family: "Jost", sans-serif;
  color: #9a7e47;
  font-size: 12px !important;
  margin: 0;
}
@media only screen and (max-width:768px) {
  .about #about-menu .about-menu-content__text .title .en-title, .about-en #about-menu .about-menu-content__text .title .en-title {
    font-size: 10px !important;
    margin-bottom: 0.5em;
  }
}
.about #about-menu .about-menu-content__text a.linkBtn, .about-en #about-menu .about-menu-content__text a.linkBtn {
  max-width: 160px;
}
@media only screen and (max-width:480px) {
  .about #about-menu .about-menu-content__text a.linkBtn, .about-en #about-menu .about-menu-content__text a.linkBtn {
    max-width: 120px;
  }
}
.about #about-menu .about-menu-content__img a, .about-en #about-menu .about-menu-content__img a {
  overflow: hidden;
  display: block;
}
.about #about-menu .about-menu-content__img a img, .about-en #about-menu .about-menu-content__img a img {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.about #about-menu .about-menu-content__img a img:hover, .about-en #about-menu .about-menu-content__img a img:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.about #about-menu.is-inview .about-menu-content:after, .about-en #about-menu.is-inview .about-menu-content:after {
  opacity: 1;
}

/*  -------------------------------------
	page:message
  -------------------------------------*/
.message #message-top, .message-en #message-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-left: 10%;
  padding-top: 0;
}
@media only screen and (max-width:480px) {
  .message #message-top, .message-en #message-top {
    padding-left: 0;
  }
}
.message #message-top .p-name, .message-en #message-top .p-name {
  -ms-flex-preferred-size: 30%;
      flex-basis: 30%;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-weight: 500;
}
@media only screen and (max-width:480px) {
  .message #message-top .p-name, .message-en #message-top .p-name {
    -ms-flex-preferred-size: 35%;
        flex-basis: 35%;
  }
}
.message #message-top .p-name p, .message-en #message-top .p-name p {
  font-size: clamp(1.2rem, 2vw, 2rem) !important;
}
.message #message-top .p-name h2, .message-en #message-top .p-name h2 {
  font-size: clamp(1.6rem, 2vw, 3.6rem) !important;
  margin: 0.25em 0 0;
}
.message #message-top .message-img, .message-en #message-top .message-img {
  -ms-flex-preferred-size: 70%;
      flex-basis: 70%;
}
@media only screen and (max-width:480px) {
  .message #message-top .message-img, .message-en #message-top .message-img {
    -ms-flex-preferred-size: 65%;
        flex-basis: 65%;
  }
}
.message #message-content, .message-en #message-content {
  padding-left: 10%;
  padding-top: 0;
}
@media only screen and (max-width:480px) {
  .message #message-content, .message-en #message-content {
    padding-left: 0;
  }
}
.message #message-content p, .message-en #message-content p {
  line-height: 2.2em;
  font-size: clamp(1.3rem, 2vw, 1.8rem) !important;
  letter-spacing: 0.12em;
}
@media only screen and (max-width:1200px) {
  .message #message-content p, .message-en #message-content p {
    font-size: clamp(1.3rem, 2vw, 1.7rem) !important;
  }
}
@media only screen and (max-width:991px) {
  .message #message-content p, .message-en #message-content p {
    font-size: clamp(1.3rem, 2vw, 1.6rem) !important;
  }
}
@media only screen and (max-width:480px) {
  .message #message-content p, .message-en #message-content p {
    font-size: 12px !important;
  }
}

/*  -------------------------------------
	page:philosophy
  -------------------------------------*/
.philosophy #philosophy-top, .philosophy-en #philosophy-top {
  padding-top: 0;
}
.philosophy #philosophy-top img, .philosophy-en #philosophy-top img {
  width: 100%;
}
.philosophy .philosophy-content, .philosophy-en .philosophy-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 0;
}
@media only screen and (max-width:1200px) {
  .philosophy .philosophy-content, .philosophy-en .philosophy-content {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media only screen and (max-width:687px) {
  .philosophy .philosophy-content, .philosophy-en .philosophy-content {
    display: block;
  }
}
.philosophy .philosophy-content__img, .philosophy-en .philosophy-content__img {
  -ms-flex-preferred-size: 48%;
      flex-basis: 48%;
}
@media only screen and (max-width:687px) {
  .philosophy .philosophy-content__img, .philosophy-en .philosophy-content__img {
    margin-bottom: 3em;
  }
}
.philosophy .philosophy-content__text, .philosophy-en .philosophy-content__text {
  -ms-flex-preferred-size: 48%;
      flex-basis: 48%;
}
.philosophy .philosophy-content__text p.lead, .philosophy-en .philosophy-content__text p.lead {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-weight: 600;
  font-size: clamp(2rem, 2vw, 3rem) !important;
  line-height: 1.6em;
}
.philosophy .philosophy-content__text p, .philosophy-en .philosophy-content__text p {
  font-size: clamp(1.3rem, 2vw, 1.7rem) !important;
  line-height: 2em;
}
@media only screen and (max-width:1200px) {
  .philosophy .philosophy-content__text p, .philosophy-en .philosophy-content__text p {
    font-size: clamp(1.3rem, 2vw, 1.6rem) !important;
  }
}
@media only screen and (max-width:991px) {
  .philosophy .philosophy-content__text p, .philosophy-en .philosophy-content__text p {
    font-size: clamp(1.3rem, 2vw, 1.5rem) !important;
  }
}

/*  -------------------------------------
	page:business
  -------------------------------------*/
.business .business-menu, .business-en .business-menu, .concours .business-menu, .concours-en .business-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 0;
}
@media only screen and (max-width:687px) {
  .business .business-menu, .business-en .business-menu, .concours .business-menu, .concours-en .business-menu {
    display: block;
  }
}
.business .business-menu .business-menu-content, .business-en .business-menu .business-menu-content, .concours .business-menu .business-menu-content, .concours-en .business-menu .business-menu-content {
  -ms-flex-preferred-size: 48%;
      flex-basis: 48%;
  margin-bottom: 4%;
}
@media only screen and (max-width:687px) {
  .business .business-menu .business-menu-content, .business-en .business-menu .business-menu-content, .concours .business-menu .business-menu-content, .concours-en .business-menu .business-menu-content {
    margin-bottom: 45px;
  }
  .business .business-menu .business-menu-content:last-of-type, .business-en .business-menu .business-menu-content:last-of-type, .concours .business-menu .business-menu-content:last-of-type, .concours-en .business-menu .business-menu-content:last-of-type {
    margin-bottom: 0;
  }
}
.business .business-menu .business-menu-content__img img, .business-en .business-menu .business-menu-content__img img, .concours .business-menu .business-menu-content__img img, .concours-en .business-menu .business-menu-content__img img {
  width: 100%;
}
.business .business-menu .business-menu-content__text .title, .business-en .business-menu .business-menu-content__text .title, .concours .business-menu .business-menu-content__text .title, .concours-en .business-menu .business-menu-content__text .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin: 20px 0;
}
@media only screen and (max-width:969px) {
  .business .business-menu .business-menu-content__text .title, .business-en .business-menu .business-menu-content__text .title, .concours .business-menu .business-menu-content__text .title, .concours-en .business-menu .business-menu-content__text .title {
    display: block;
    margin-top: 10px;
  }
}
.business .business-menu .business-menu-content__text .title h2, .business-en .business-menu .business-menu-content__text .title h2, .concours .business-menu .business-menu-content__text .title h2, .concours-en .business-menu .business-menu-content__text .title h2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  margin: 0 0.5em 0 0;
  font-size: clamp(1.3rem, 2vw, 2rem) !important;
  font-weight: 400;
  min-height: 0vw;
  line-height: 1em;
}
.business .business-menu .business-menu-content__text .title .en-title, .business-en .business-menu .business-menu-content__text .title .en-title, .concours .business-menu .business-menu-content__text .title .en-title, .concours-en .business-menu .business-menu-content__text .title .en-title {
  font-family: "Jost", sans-serif;
  color: #9a7e47;
  font-size: 12px !important;
  margin: 0;
}
@media only screen and (max-width:768px) {
  .business .business-menu .business-menu-content__text .title .en-title, .business-en .business-menu .business-menu-content__text .title .en-title, .concours .business-menu .business-menu-content__text .title .en-title, .concours-en .business-menu .business-menu-content__text .title .en-title {
    font-size: 10px !important;
    margin-bottom: 0.5em;
  }
}
@media only screen and (max-width:768px) {
  .business .business-menu .business-menu-content__text a.linkBtn, .business-en .business-menu .business-menu-content__text a.linkBtn, .concours .business-menu .business-menu-content__text a.linkBtn, .concours-en .business-menu .business-menu-content__text a.linkBtn {
    max-width: 160px;
  }
}
.business .business-menu .business-menu-content__text ul, .business-en .business-menu .business-menu-content__text ul, .concours .business-menu .business-menu-content__text ul, .concours-en .business-menu .business-menu-content__text ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.business .business-menu .business-menu-content__text ul li, .business-en .business-menu .business-menu-content__text ul li, .concours .business-menu .business-menu-content__text ul li, .concours-en .business-menu .business-menu-content__text ul li {
  margin-right: 1em;
}
.business .business-menu .business-menu-content:nth-child(1), .business .business-menu .business-menu-content:nth-child(3), .business-en .business-menu .business-menu-content:nth-child(1), .business-en .business-menu .business-menu-content:nth-child(3), .concours .business-menu .business-menu-content:nth-child(1), .concours .business-menu .business-menu-content:nth-child(3), .concours-en .business-menu .business-menu-content:nth-child(1), .concours-en .business-menu .business-menu-content:nth-child(3) {
  position: relative;
}
.business .business-menu .business-menu-content:nth-child(1):after, .business .business-menu .business-menu-content:nth-child(3):after, .business-en .business-menu .business-menu-content:nth-child(1):after, .business-en .business-menu .business-menu-content:nth-child(3):after, .concours .business-menu .business-menu-content:nth-child(1):after, .concours .business-menu .business-menu-content:nth-child(3):after, .concours-en .business-menu .business-menu-content:nth-child(1):after, .concours-en .business-menu .business-menu-content:nth-child(3):after {
  content: "";
  width: 1px;
  height: 100%;
  background: #c2c1be;
  display: block;
  position: absolute;
  top: 0;
  right: -4%;
  opacity: 0;
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
@media only screen and (max-width:687px) {
  .business .business-menu .business-menu-content:nth-child(1):after, .business .business-menu .business-menu-content:nth-child(3):after, .business-en .business-menu .business-menu-content:nth-child(1):after, .business-en .business-menu .business-menu-content:nth-child(3):after, .concours .business-menu .business-menu-content:nth-child(1):after, .concours .business-menu .business-menu-content:nth-child(3):after, .concours-en .business-menu .business-menu-content:nth-child(1):after, .concours-en .business-menu .business-menu-content:nth-child(3):after {
    display: none;
  }
}
.business .business-menu.is-inview .business-menu-content:nth-child(1):after, .business .business-menu.is-inview .business-menu-content:nth-child(3):after, .business-en .business-menu.is-inview .business-menu-content:nth-child(1):after, .business-en .business-menu.is-inview .business-menu-content:nth-child(3):after, .concours .business-menu.is-inview .business-menu-content:nth-child(1):after, .concours .business-menu.is-inview .business-menu-content:nth-child(3):after, .concours-en .business-menu.is-inview .business-menu-content:nth-child(1):after, .concours-en .business-menu.is-inview .business-menu-content:nth-child(3):after {
  opacity: 1;
}
.business #concours-info, .business-en #concours-info, .concours #concours-info, .concours-en #concours-info {
  background: #f4f3f0;
}
.business #concours-info h2, .business-en #concours-info h2, .concours #concours-info h2, .concours-en #concours-info h2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 45px;
}
.business #concours-info h2:before, .business-en #concours-info h2:before, .concours #concours-info h2:before, .concours-en #concours-info h2:before {
  content: "";
  background: #333;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
.business #concours-info dl, .business-en #concours-info dl, .concours #concours-info dl, .concours-en #concours-info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #c2c1be;
  margin: 0;
}
@media only screen and (max-width:480px) {
  .business #concours-info dl, .business-en #concours-info dl, .concours #concours-info dl, .concours-en #concours-info dl {
    display: block;
    margin-bottom: 1em;
  }
}
.business #concours-info dl dt, .business-en #concours-info dl dt, .concours #concours-info dl dt, .concours-en #concours-info dl dt {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  font-family: "Jost", sans-serif;
  font-weight: 400;
  color: #777;
  padding: 2em 0;
  position: relative;
}
@media only screen and (max-width:480px) {
  .business #concours-info dl dt, .business-en #concours-info dl dt, .concours #concours-info dl dt, .concours-en #concours-info dl dt {
    padding: 0;
    margin-bottom: 0.5em;
  }
}
.business #concours-info dl dd, .business-en #concours-info dl dd, .concours #concours-info dl dd, .concours-en #concours-info dl dd {
  -ms-flex-preferred-size: 85%;
      flex-basis: 85%;
  padding-left: 2em;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width:480px) {
  .business #concours-info dl dd, .business-en #concours-info dl dd, .concours #concours-info dl dd, .concours-en #concours-info dl dd {
    padding-left: 0;
    padding-bottom: 1em;
  }
}
.business #concours-info dl dd span.p-title, .business-en #concours-info dl dd span.p-title, .concours #concours-info dl dd span.p-title, .concours-en #concours-info dl dd span.p-title {
  -ms-flex-preferred-size: 85%;
      flex-basis: 85%;
}
@media only screen and (max-width:991px) {
  .business #concours-info dl dd span.p-title, .business-en #concours-info dl dd span.p-title, .concours #concours-info dl dd span.p-title, .concours-en #concours-info dl dd span.p-title {
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
  }
}
.business #concours-info dl dd a.p-more, .business-en #concours-info dl dd a.p-more, .concours #concours-info dl dd a.p-more, .concours-en #concours-info dl dd a.p-more {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  font-size: clamp(1.1rem, 2vw, 1.4rem);
  letter-spacing: 0.1em;
  min-height: 0vw;
  text-align: right;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media only screen and (max-width:991px) {
  .business #concours-info dl dd a.p-more, .business-en #concours-info dl dd a.p-more, .concours #concours-info dl dd a.p-more, .concours-en #concours-info dl dd a.p-more {
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
  }
}
.business #concours-info dl dd a.p-more:hover, .business-en #concours-info dl dd a.p-more:hover, .concours #concours-info dl dd a.p-more:hover, .concours-en #concours-info dl dd a.p-more:hover {
  opacity: 0.6;
}

.concours-en .linkBtn {
  max-width: 260px;
}
@media only screen and (max-width:768px) {
  .concours-en .linkBtn {
    max-width: 220px !important;
  }
}
@media only screen and (max-width:1200px) {
  .concours-en .business-menu .business-menu-content__text ul {
    display: block;
  }
  .concours-en .business-menu .business-menu-content__text ul li:last-child a {
    margin-top: 15px;
  }
}

/*  -------------------------------------
	page:membership / member-service
  -------------------------------------*/
.membership .page-lead p span, .membership-en .page-lead p span, .member-service .page-lead p span, .member-service-en .page-lead p span {
  display: block;
}
@media only screen and (max-width:687px) {
  .membership .page-lead p span, .membership-en .page-lead p span, .member-service .page-lead p span, .member-service-en .page-lead p span {
    display: inline-block;
  }
}
@media only screen and (max-width:1360px) {
  .membership .page-lead p, .membership-en .page-lead p, .member-service .page-lead p, .member-service-en .page-lead p {
    width: 80%;
  }
}
@media only screen and (max-width:1200px) {
  .membership .page-lead p, .membership-en .page-lead p, .member-service .page-lead p, .member-service-en .page-lead p {
    width: 100%;
  }
}
.membership .membership-desc, .membership-en .membership-desc, .member-service .membership-desc, .member-service-en .membership-desc {
  border-top: 1px solid #c2c1be;
  padding: 60px 0;
}
@media only screen and (max-width:480px) {
  .membership .membership-desc, .membership-en .membership-desc, .member-service .membership-desc, .member-service-en .membership-desc {
    padding: 45px 0;
  }
}
.membership .membership-desc .membership-desc-content, .membership-en .membership-desc .membership-desc-content, .member-service .membership-desc .membership-desc-content, .member-service-en .membership-desc .membership-desc-content {
  border-bottom: 1px solid #c2c1be;
  padding-bottom: 60px;
  margin-bottom: 60px;
}
@media only screen and (max-width:480px) {
  .membership .membership-desc .membership-desc-content, .membership-en .membership-desc .membership-desc-content, .member-service .membership-desc .membership-desc-content, .member-service-en .membership-desc .membership-desc-content {
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
}
.membership .membership-desc .membership-desc-content:last-of-type, .membership-en .membership-desc .membership-desc-content:last-of-type, .member-service .membership-desc .membership-desc-content:last-of-type, .member-service-en .membership-desc .membership-desc-content:last-of-type {
  border-bottom: none;
  padding-bottom: 0px;
  margin-bottom: 0px;
}
.membership .membership-desc .membership-desc-content h2, .membership-en .membership-desc .membership-desc-content h2, .member-service .membership-desc .membership-desc-content h2, .member-service-en .membership-desc .membership-desc-content h2 {
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 45px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width:480px) {
  .membership .membership-desc .membership-desc-content h2, .membership-en .membership-desc .membership-desc-content h2, .member-service .membership-desc .membership-desc-content h2, .member-service-en .membership-desc .membership-desc-content h2 {
    margin: 0 0 20px;
    padding-left: 30px;
  }
}
.membership .membership-desc .membership-desc-content h2:before, .membership-en .membership-desc .membership-desc-content h2:before, .member-service .membership-desc .membership-desc-content h2:before, .member-service-en .membership-desc .membership-desc-content h2:before {
  content: "";
  background: #333;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
@media only screen and (max-width:480px) {
  .membership .membership-desc .membership-desc-content h2:before, .membership-en .membership-desc .membership-desc-content h2:before, .member-service .membership-desc .membership-desc-content h2:before, .member-service-en .membership-desc .membership-desc-content h2:before {
    width: 20px;
  }
}
.membership .membership-desc .membership-desc-content ul li, .membership-en .membership-desc .membership-desc-content ul li, .member-service .membership-desc .membership-desc-content ul li, .member-service-en .membership-desc .membership-desc-content ul li {
  position: relative;
  padding-left: 1.5em;
  margin: 0 0 1em;
}
.membership .membership-desc .membership-desc-content ul li:last-child, .membership-en .membership-desc .membership-desc-content ul li:last-child, .member-service .membership-desc .membership-desc-content ul li:last-child, .member-service-en .membership-desc .membership-desc-content ul li:last-child {
  margin-bottom: 0;
}
.membership .membership-desc .membership-desc-content ul li span.number, .membership-en .membership-desc .membership-desc-content ul li span.number, .member-service .membership-desc .membership-desc-content ul li span.number, .member-service-en .membership-desc .membership-desc-content ul li span.number {
  font-family: "Jost", sans-serif;
  color: #9a7e47;
  position: absolute;
  left: 0;
  top: -1px;
}
.membership .membership-desc .membership-desc-content dl, .membership-en .membership-desc .membership-desc-content dl, .member-service .membership-desc .membership-desc-content dl, .member-service-en .membership-desc .membership-desc-content dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.membership .membership-desc .membership-desc-content dl dt, .membership-en .membership-desc .membership-desc-content dl dt, .member-service .membership-desc .membership-desc-content dl dt, .member-service-en .membership-desc .membership-desc-content dl dt {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  font-weight: 400;
}
.membership .membership-desc .membership-desc-content dl dt span, .membership-en .membership-desc .membership-desc-content dl dt span, .member-service .membership-desc .membership-desc-content dl dt span, .member-service-en .membership-desc .membership-desc-content dl dt span {
  font-size: 80%;
}
.membership .membership-desc .membership-desc-content dl dd, .membership-en .membership-desc .membership-desc-content dl dd, .member-service .membership-desc .membership-desc-content dl dd, .member-service-en .membership-desc .membership-desc-content dl dd {
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
}
.membership .membership-apply, .membership .member-service-apply, .membership-en .membership-apply, .membership-en .member-service-apply, .member-service .membership-apply, .member-service .member-service-apply, .member-service-en .membership-apply, .member-service-en .member-service-apply {
  background: #f4f3f0;
}
.membership .membership-apply h2, .membership .member-service-apply h2, .membership-en .membership-apply h2, .membership-en .member-service-apply h2, .member-service .membership-apply h2, .member-service .member-service-apply h2, .member-service-en .membership-apply h2, .member-service-en .member-service-apply h2 {
  text-align: center;
  margin: 0;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-weight: 500;
  font-size: clamp(1.8rem, 3vw, 3rem) !important;
  margin: 0 0 60px;
}
@media only screen and (max-width:480px) {
  .membership .membership-apply h2, .membership .member-service-apply h2, .membership-en .membership-apply h2, .membership-en .member-service-apply h2, .member-service .membership-apply h2, .member-service .member-service-apply h2, .member-service-en .membership-apply h2, .member-service-en .member-service-apply h2 {
    margin: 0 0 30px;
  }
}
.membership .membership-apply dl, .membership .member-service-apply dl, .membership-en .membership-apply dl, .membership-en .member-service-apply dl, .member-service .membership-apply dl, .member-service .member-service-apply dl, .member-service-en .membership-apply dl, .member-service-en .member-service-apply dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 20px 0;
  border-bottom: 1px solid #c2c1be;
  margin: 0;
}
@media only screen and (max-width:768px) {
  .membership .membership-apply dl, .membership .member-service-apply dl, .membership-en .membership-apply dl, .membership-en .member-service-apply dl, .member-service .membership-apply dl, .member-service .member-service-apply dl, .member-service-en .membership-apply dl, .member-service-en .member-service-apply dl {
    display: block;
  }
}
@media only screen and (max-width:480px) {
  .membership .membership-apply dl, .membership .member-service-apply dl, .membership-en .membership-apply dl, .membership-en .member-service-apply dl, .member-service .membership-apply dl, .member-service .member-service-apply dl, .member-service-en .membership-apply dl, .member-service-en .member-service-apply dl {
    padding: 20px 0;
  }
}
.membership .membership-apply dl dt, .membership .member-service-apply dl dt, .membership-en .membership-apply dl dt, .membership-en .member-service-apply dl dt, .member-service .membership-apply dl dt, .member-service .member-service-apply dl dt, .member-service-en .membership-apply dl dt, .member-service-en .member-service-apply dl dt {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  font-weight: 500;
}
@media only screen and (max-width:991px) {
  .membership .membership-apply dl dt, .membership .member-service-apply dl dt, .membership-en .membership-apply dl dt, .membership-en .member-service-apply dl dt, .member-service .membership-apply dl dt, .member-service .member-service-apply dl dt, .member-service-en .membership-apply dl dt, .member-service-en .member-service-apply dl dt {
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
  }
}
@media only screen and (max-width:768px) {
  .membership .membership-apply dl dt, .membership .member-service-apply dl dt, .membership-en .membership-apply dl dt, .membership-en .member-service-apply dl dt, .member-service .membership-apply dl dt, .member-service .member-service-apply dl dt, .member-service-en .membership-apply dl dt, .member-service-en .member-service-apply dl dt {
    margin-bottom: 0.5em;
  }
}
.membership .membership-apply dl dd, .membership .member-service-apply dl dd, .membership-en .membership-apply dl dd, .membership-en .member-service-apply dl dd, .member-service .membership-apply dl dd, .member-service .member-service-apply dl dd, .member-service-en .membership-apply dl dd, .member-service-en .member-service-apply dl dd {
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
}
@media only screen and (max-width:991px) {
  .membership .membership-apply dl dd, .membership .member-service-apply dl dd, .membership-en .membership-apply dl dd, .membership-en .member-service-apply dl dd, .member-service .membership-apply dl dd, .member-service .member-service-apply dl dd, .member-service-en .membership-apply dl dd, .member-service-en .member-service-apply dl dd {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    max-width: 70%;
  }
}
@media only screen and (max-width:768px) {
  .membership .membership-apply dl dd, .membership .member-service-apply dl dd, .membership-en .membership-apply dl dd, .membership-en .member-service-apply dl dd, .member-service .membership-apply dl dd, .member-service .member-service-apply dl dd, .member-service-en .membership-apply dl dd, .member-service-en .member-service-apply dl dd {
    max-width: 100%;
  }
}
.membership .membership-apply dl dd input, .membership .member-service-apply dl dd input, .membership-en .membership-apply dl dd input, .membership-en .member-service-apply dl dd input, .member-service .membership-apply dl dd input, .member-service .member-service-apply dl dd input, .member-service-en .membership-apply dl dd input, .member-service-en .member-service-apply dl dd input {
  border: none;
  width: 100%;
  background: rgba(255, 255, 255, 0.8);
  padding: 20px 1em;
}
@media only screen and (max-width:480px) {
  .membership .membership-apply dl dd input, .membership .member-service-apply dl dd input, .membership-en .membership-apply dl dd input, .membership-en .member-service-apply dl dd input, .member-service .membership-apply dl dd input, .member-service .member-service-apply dl dd input, .member-service-en .membership-apply dl dd input, .member-service-en .member-service-apply dl dd input {
    padding: 10px 1em;
  }
}
.membership .membership-apply dl dd textarea, .membership .member-service-apply dl dd textarea, .membership-en .membership-apply dl dd textarea, .membership-en .member-service-apply dl dd textarea, .member-service .membership-apply dl dd textarea, .member-service .member-service-apply dl dd textarea, .member-service-en .membership-apply dl dd textarea, .member-service-en .member-service-apply dl dd textarea {
  background: rgba(255, 255, 255, 0.8);
  border: none;
  width: 100%;
  height: 250px;
  padding: 1em;
  border-radius: 10px;
}
@media only screen and (max-width:768px) {
  .membership .membership-apply dl dd textarea, .membership .member-service-apply dl dd textarea, .membership-en .membership-apply dl dd textarea, .membership-en .member-service-apply dl dd textarea, .member-service .membership-apply dl dd textarea, .member-service .member-service-apply dl dd textarea, .member-service-en .membership-apply dl dd textarea, .member-service-en .member-service-apply dl dd textarea {
    margin-top: 1em;
  }
}
.membership .membership-apply dl dd span, .membership .member-service-apply dl dd span, .membership-en .membership-apply dl dd span, .membership-en .member-service-apply dl dd span, .member-service .membership-apply dl dd span, .member-service .member-service-apply dl dd span, .member-service-en .membership-apply dl dd span, .member-service-en .member-service-apply dl dd span {
  display: block;
  font-weight: normal;
}
.membership .membership-apply dl dd span label, .membership .member-service-apply dl dd span label, .membership-en .membership-apply dl dd span label, .membership-en .member-service-apply dl dd span label, .member-service .membership-apply dl dd span label, .member-service .member-service-apply dl dd span label, .member-service-en .membership-apply dl dd span label, .member-service-en .member-service-apply dl dd span label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 5px;
}
.membership .membership-apply dl dd span label input, .membership .member-service-apply dl dd span label input, .membership-en .membership-apply dl dd span label input, .membership-en .member-service-apply dl dd span label input, .member-service .membership-apply dl dd span label input, .member-service .member-service-apply dl dd span label input, .member-service-en .membership-apply dl dd span label input, .member-service-en .member-service-apply dl dd span label input {
  margin-right: 5px;
  margin-top: 0;
  width: auto;
}
.membership .membership-apply #submit-wrap, .membership .member-service-apply #submit-wrap, .membership-en .membership-apply #submit-wrap, .membership-en .member-service-apply #submit-wrap, .member-service .membership-apply #submit-wrap, .member-service .member-service-apply #submit-wrap, .member-service-en .membership-apply #submit-wrap, .member-service-en .member-service-apply #submit-wrap {
  margin: 120px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width:768px) {
  .membership .membership-apply #submit-wrap, .membership .member-service-apply #submit-wrap, .membership-en .membership-apply #submit-wrap, .membership-en .member-service-apply #submit-wrap, .member-service .membership-apply #submit-wrap, .member-service .member-service-apply #submit-wrap, .member-service-en .membership-apply #submit-wrap, .member-service-en .member-service-apply #submit-wrap {
    margin: 90px auto 0;
  }
}
@media only screen and (max-width:480px) {
  .membership .membership-apply #submit-wrap, .membership .member-service-apply #submit-wrap, .membership-en .membership-apply #submit-wrap, .membership-en .member-service-apply #submit-wrap, .member-service .membership-apply #submit-wrap, .member-service .member-service-apply #submit-wrap, .member-service-en .membership-apply #submit-wrap, .member-service-en .member-service-apply #submit-wrap {
    margin: 45px auto 0;
  }
}
.membership .membership-apply #submit-wrap input, .membership .member-service-apply #submit-wrap input, .membership-en .membership-apply #submit-wrap input, .membership-en .member-service-apply #submit-wrap input, .member-service .membership-apply #submit-wrap input, .member-service .member-service-apply #submit-wrap input, .member-service-en .membership-apply #submit-wrap input, .member-service-en .member-service-apply #submit-wrap input {
  width: 240px;
  height: 80px;
  margin: 0 1em;
  background: none;
}
@media only screen and (max-width:768px) {
  .membership .membership-apply #submit-wrap input, .membership .member-service-apply #submit-wrap input, .membership-en .membership-apply #submit-wrap input, .membership-en .member-service-apply #submit-wrap input, .member-service .membership-apply #submit-wrap input, .member-service .member-service-apply #submit-wrap input, .member-service-en .membership-apply #submit-wrap input, .member-service-en .member-service-apply #submit-wrap input {
    height: 60px;
  }
}
@media only screen and (max-width:480px) {
  .membership .membership-apply #submit-wrap input, .membership .member-service-apply #submit-wrap input, .membership-en .membership-apply #submit-wrap input, .membership-en .member-service-apply #submit-wrap input, .member-service .membership-apply #submit-wrap input, .member-service .member-service-apply #submit-wrap input, .member-service-en .membership-apply #submit-wrap input, .member-service-en .member-service-apply #submit-wrap input {
    height: 45px;
  }
}
.membership .membership-apply .caution, .membership .member-service-apply .caution, .membership-en .membership-apply .caution, .membership-en .member-service-apply .caution, .member-service .membership-apply .caution, .member-service .member-service-apply .caution, .member-service-en .membership-apply .caution, .member-service-en .member-service-apply .caution {
  border-top: 1px solid #c2c1be;
  padding: 60px 0 0;
}

.member-service .form-wrap {
  margin-bottom: 90px;
}
@media only screen and (max-width:480px) {
  .member-service .form-wrap {
    margin-bottom: 45px;
  }
}
.member-service .form-wrap dl dt span {
  font-size: 80%;
}

/*  -------------------------------------
	page:member-link
  -------------------------------------*/
@media only screen and (max-width:1200px) {
  .post-type-archive-member .page-lead p, .member-link .page-lead p {
    width: 90%;
  }
}
@media only screen and (max-width:991px) {
  .post-type-archive-member .page-lead p, .member-link .page-lead p {
    width: 100%;
  }
}
.post-type-archive-member .member-list, .member-link .member-list {
  border-top: 1px solid #c2c1be;
}
.post-type-archive-member .member-list .member-list-content, .member-link .member-list .member-list-content {
  border-bottom: 1px solid #c2c1be;
}
.post-type-archive-member .member-list .member-list-content h2, .member-link .member-list .member-list-content h2 {
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 60px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width:480px) {
  .post-type-archive-member .member-list .member-list-content h2, .member-link .member-list .member-list-content h2 {
    margin: 0 0 20px;
    padding-left: 30px;
  }
}
.post-type-archive-member .member-list .member-list-content h2:before, .member-link .member-list .member-list-content h2:before {
  content: "";
  background: #333;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
@media only screen and (max-width:480px) {
  .post-type-archive-member .member-list .member-list-content h2:before, .member-link .member-list .member-list-content h2:before {
    width: 20px;
  }
}
.post-type-archive-member .member-list .member-list-content ul, .member-link .member-list .member-list-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
}
@media only screen and (max-width:991px) {
  .post-type-archive-member .member-list .member-list-content ul, .member-link .member-list .member-list-content ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.post-type-archive-member .member-list .member-list-content ul li, .member-link .member-list .member-list-content ul li {
  -ms-flex-preferred-size: calc(100% / 3);
      flex-basis: calc(100% / 3);
  text-align: center;
  margin-bottom: 3em;
  font-size: clamp(1.2rem, 2vw, 1.6rem) !important;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.01em;
}
@media only screen and (max-width:1360px) {
  .post-type-archive-member .member-list .member-list-content ul li, .member-link .member-list .member-list-content ul li {
    font-size: clamp(1.2rem, 2vw, 1.4rem) !important;
  }
}
@media only screen and (max-width:1200px) {
  .post-type-archive-member .member-list .member-list-content ul li, .member-link .member-list .member-list-content ul li {
    font-size: clamp(1.2rem, 2vw, 1.3rem) !important;
  }
}
@media only screen and (max-width:991px) {
  .post-type-archive-member .member-list .member-list-content ul li, .member-link .member-list .member-list-content ul li {
    -ms-flex-preferred-size: calc(100% / 3);
        flex-basis: calc(100% / 3);
  }
}
@media only screen and (max-width:768px) {
  .post-type-archive-member .member-list .member-list-content ul li, .member-link .member-list .member-list-content ul li {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}
@media only screen and (max-width:480px) {
  .post-type-archive-member .member-list .member-list-content ul li, .member-link .member-list .member-list-content ul li {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  .post-type-archive-member .member-list .member-list-content ul li:last-child, .member-link .member-list .member-list-content ul li:last-child {
    margin-bottom: 0;
  }
  .post-type-archive-member .member-list .member-list-content ul li:last-child img, .member-link .member-list .member-list-content ul li:last-child img {
    max-width: 50%;
  }
}
.post-type-archive-member .member-list .member-list-content ul li img, .member-link .member-list .member-list-content ul li img {
  max-width: 50%;
  height: 80px;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  margin: 0 auto 1em;
}
@media only screen and (max-width:991px) {
  .post-type-archive-member .member-list .member-list-content ul li img, .member-link .member-list .member-list-content ul li img {
    height: 60px;
    max-width: 50%;
  }
}
@media only screen and (max-width:480px) {
  .post-type-archive-member .member-list .member-list-content ul li img, .member-link .member-list .member-list-content ul li img {
    max-width: 40%;
  }
}
.post-type-archive-member .member-list .member-list-content .member-wrap, .member-link .member-list .member-list-content .member-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 60px;
}
@media only screen and (max-width:687px) {
  .post-type-archive-member .member-list .member-list-content .member-wrap, .member-link .member-list .member-list-content .member-wrap {
    display: block;
  }
}
.post-type-archive-member .member-list .member-list-content .member-wrap dl, .member-link .member-list .member-list-content .member-wrap dl {
  -ms-flex-preferred-size: 48%;
      flex-basis: 48%;
  margin: 0 0 45px;
}
.post-type-archive-member .member-list .member-list-content .member-wrap dl:last-of-type, .post-type-archive-member .member-list .member-list-content .member-wrap dl:nth-last-child(2), .member-link .member-list .member-list-content .member-wrap dl:last-of-type, .member-link .member-list .member-list-content .member-wrap dl:nth-last-child(2) {
  margin-bottom: 0;
}
@media only screen and (max-width:687px) {
  .post-type-archive-member .member-list .member-list-content .member-wrap dl:nth-last-child(2), .member-link .member-list .member-list-content .member-wrap dl:nth-last-child(2) {
    margin-bottom: 45px;
  }
}
.post-type-archive-member .member-list .member-list-content .member-wrap dl dt, .member-link .member-list .member-list-content .member-wrap dl dt {
  font-weight: 400;
  margin-bottom: 1em;
}
.post-type-archive-member .member-list .member-list-content .member-wrap dl dt a, .member-link .member-list .member-list-content .member-wrap dl dt a {
  border-bottom: 1px solid #333;
  padding-bottom: 0.25em;
}

/*  -------------------------------------
	page:organization / board
  -------------------------------------*/
.organization #organization-content, .organization #board-content, .organization-en #organization-content, .organization-en #board-content, .board #organization-content, .board #board-content, .board-en #organization-content, .board-en #board-content {
  padding-top: 0;
}
.organization #organization-content img, .organization #board-content img, .organization-en #organization-content img, .organization-en #board-content img, .board #organization-content img, .board #board-content img, .board-en #organization-content img, .board-en #board-content img {
  margin-bottom: 120px;
  width: 100%;
}
@media only screen and (max-width:1200px) {
  .organization #organization-content img, .organization #board-content img, .organization-en #organization-content img, .organization-en #board-content img, .board #organization-content img, .board #board-content img, .board-en #organization-content img, .board-en #board-content img {
    margin-bottom: 90px;
  }
}
@media only screen and (max-width:991px) {
  .organization #organization-content img, .organization #board-content img, .organization-en #organization-content img, .organization-en #board-content img, .board #organization-content img, .board #board-content img, .board-en #organization-content img, .board-en #board-content img {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width:768px) {
  .organization #organization-content img, .organization #board-content img, .organization-en #organization-content img, .organization-en #board-content img, .board #organization-content img, .board #board-content img, .board-en #organization-content img, .board-en #board-content img {
    margin-bottom: 30px;
  }
}
.organization #organization-content dl, .organization #board-content dl, .organization-en #organization-content dl, .organization-en #board-content dl, .board #organization-content dl, .board #board-content dl, .board-en #organization-content dl, .board-en #board-content dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #c2c1be;
  padding: 40px 0;
  margin: 0;
}
@media only screen and (max-width:480px) {
  .organization #organization-content dl, .organization #board-content dl, .organization-en #organization-content dl, .organization-en #board-content dl, .board #organization-content dl, .board #board-content dl, .board-en #organization-content dl, .board-en #board-content dl {
    padding: 20px 0;
  }
}
.organization #organization-content dl dt, .organization #board-content dl dt, .organization-en #organization-content dl dt, .organization-en #board-content dl dt, .board #organization-content dl dt, .board #board-content dl dt, .board-en #organization-content dl dt, .board-en #board-content dl dt {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  font-weight: 500;
  line-height: 2em;
}
.organization #organization-content dl dd, .organization #board-content dl dd, .organization-en #organization-content dl dd, .organization-en #board-content dl dd, .board #organization-content dl dd, .board #board-content dl dd, .board-en #organization-content dl dd, .board-en #board-content dl dd {
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  line-height: 2em;
}

@media only screen and (max-width:768px) {
  .organization-en #organization-content dl {
    display: block;
  }
  .organization-en #organization-content dl dt {
    margin-bottom: 0.25em;
  }
}

.about-link {
  background: #f4f3f0;
}
.about-link .part-common {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.about-link__content {
  -ms-flex-preferred-size: 23%;
      flex-basis: 23%;
}
@media only screen and (max-width:480px) {
  .about-link__content {
    -ms-flex-preferred-size: 48%;
        flex-basis: 48%;
  }
  .about-link__content:nth-of-type(1), .about-link__content:nth-of-type(2) {
    margin-bottom: 4%;
  }
}
.about-link__content a {
  overflow: hidden;
  display: block;
}
.about-link__content a img {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.about-link__content a img:hover {
  webkit-transform: scale(1.1);
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.about-link__content .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: 20px;
}
@media only screen and (max-width:969px) {
  .about-link__content .title {
    display: block;
    margin-top: 10px;
  }
}
.about-link__content .title h2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  margin: 0 0.5em 0 0;
  font-size: clamp(1.3rem, 2vw, 2rem) !important;
  font-weight: 400;
  min-height: 0vw;
  line-height: 1em;
}
.about-link__content .title .en-title {
  font-family: "Jost", sans-serif;
  color: #9a7e47;
  font-size: 12px !important;
  margin: 0;
}
@media only screen and (max-width:768px) {
  .about-link__content .title .en-title {
    font-size: 10px !important;
    margin-bottom: 0.5em;
  }
}

@media only screen and (max-width:991px) {
  .board #board-content dl {
    display: block;
  }
  .board #board-content dl dt {
    margin-bottom: 0.5em;
    line-height: 1.6em;
  }
  .board #board-content dl dt br {
    display: none;
  }
}

/*  -------------------------------------
	page:history
  -------------------------------------*/
.history #history-content, .history-en #history-content {
  padding-top: 0;
}
.history #history-content img, .history-en #history-content img {
  margin-bottom: 120px;
  width: 100%;
}
@media only screen and (max-width:1200px) {
  .history #history-content img, .history-en #history-content img {
    margin-bottom: 90px;
  }
}
@media only screen and (max-width:991px) {
  .history #history-content img, .history-en #history-content img {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width:768px) {
  .history #history-content img, .history-en #history-content img {
    margin-bottom: 30px;
  }
}
.history #history-content dl, .history-en #history-content dl {
  padding-bottom: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 0;
}
@media only screen and (max-width:768px) {
  .history #history-content dl, .history-en #history-content dl {
    padding-bottom: 61px;
  }
}
@media only screen and (max-width:687px) {
  .history #history-content dl, .history-en #history-content dl {
    display: block;
    padding-bottom: 40px;
  }
}
.history #history-content dl:last-of-type, .history-en #history-content dl:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
}
.history #history-content dl:after, .history-en #history-content dl:after {
  display: none;
}
.history #history-content dl dt, .history-en #history-content dl dt {
  position: relative;
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  font-weight: 400;
  font-family: "Jost", sans-serif;
  line-height: 2em;
  font-size: clamp(1.3rem, 2vw, 1.8rem) !important;
}
@media only screen and (max-width:1200px) {
  .history #history-content dl dt, .history-en #history-content dl dt {
    -ms-flex-preferred-size: 22%;
        flex-basis: 22%;
  }
}
@media only screen and (max-width:969px) {
  .history #history-content dl dt, .history-en #history-content dl dt {
    font-size: clamp(1.3rem, 2vw, 1.6rem) !important;
  }
}
@media only screen and (max-width:812px) {
  .history #history-content dl dt, .history-en #history-content dl dt {
    font-size: clamp(1.3rem, 2vw, 1.5rem) !important;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    letter-spacing: 0.02em;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
  }
}
@media only screen and (max-width:687px) {
  .history #history-content dl dt, .history-en #history-content dl dt {
    font-size: 1.8rem !important;
    letter-spacing: 0.04em;
    margin-bottom: 0.5em;
  }
}
@media only screen and (max-width:480px) {
  .history #history-content dl dt, .history-en #history-content dl dt {
    font-size: 1.6rem !important;
  }
}
.history #history-content dl dt:before, .history-en #history-content dl dt:before {
  content: "";
  background: #555;
  width: 1px;
  height: calc(100% + 213px);
  position: absolute;
  right: 28%;
  top: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
@media only screen and (max-width:1200px) {
  .history #history-content dl dt:before, .history-en #history-content dl dt:before {
    height: calc(100% + 280px);
  }
}
@media only screen and (max-width:768px) {
  .history #history-content dl dt:before, .history-en #history-content dl dt:before {
    height: calc(100% + 240px);
  }
}
@media only screen and (max-width:687px) {
  .history #history-content dl dt:before, .history-en #history-content dl dt:before {
    display: none;
  }
}
.history #history-content dl dt:after, .history-en #history-content dl dt:after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background: #000;
  position: absolute;
  right: 28%;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  margin-right: -3px;
}
@media only screen and (max-width:687px) {
  .history #history-content dl dt:after, .history-en #history-content dl dt:after {
    display: none;
  }
}
.history #history-content dl dd, .history-en #history-content dl dd {
  position: relative;
  padding-left: 90px;
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  line-height: 2em;
  font-size: clamp(1.2rem, 2vw, 1.7rem) !important;
}
@media only screen and (max-width:1200px) {
  .history #history-content dl dd, .history-en #history-content dl dd {
    -ms-flex-preferred-size: 78%;
        flex-basis: 78%;
    font-size: clamp(1.2rem, 2vw, 1.6rem) !important;
  }
}
@media only screen and (max-width:969px) {
  .history #history-content dl dd, .history-en #history-content dl dd {
    font-size: clamp(1.2rem, 2vw, 1.5rem) !important;
    padding-left: 40px;
  }
}
@media only screen and (max-width:812px) {
  .history #history-content dl dd, .history-en #history-content dl dd {
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    font-size: clamp(1.2rem, 2vw, 1.3rem) !important;
  }
}
@media only screen and (max-width:768px) {
  .history #history-content dl dd, .history-en #history-content dl dd {
    padding-left: 30px;
  }
}
@media only screen and (max-width:687px) {
  .history #history-content dl dd, .history-en #history-content dl dd {
    padding-left: 45px;
    font-size: 1.3rem !important;
    line-height: 1.8em;
  }
}
@media only screen and (max-width:480px) {
  .history #history-content dl dd, .history-en #history-content dl dd {
    padding-left: 40px;
    font-size: 1.2rem !important;
  }
}
.history #history-content dl dd:before, .history-en #history-content dl dd:before {
  content: "";
  background: #000;
  width: 45px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 15px;
}
@media only screen and (max-width:969px) {
  .history #history-content dl dd:before, .history-en #history-content dl dd:before {
    width: 20px;
  }
}
@media only screen and (max-width:768px) {
  .history #history-content dl dd:before, .history-en #history-content dl dd:before {
    width: 20px;
  }
}
@media only screen and (max-width:687px) {
  .history #history-content dl dd:before, .history-en #history-content dl dd:before {
    width: 25px;
    top: 10px;
  }
}
@media only screen and (max-width:480px) {
  .history #history-content dl dd:before, .history-en #history-content dl dd:before {
    width: 20px;
  }
}
.history #history-content dl:nth-of-type(4) dt:before, .history-en #history-content dl:nth-of-type(4) dt:before {
  height: calc(100% + 122px);
}
@media only screen and (max-width:1200px) {
  .history #history-content dl:nth-of-type(4) dt:before, .history-en #history-content dl:nth-of-type(4) dt:before {
    height: calc(100% + 170px);
  }
}
@media only screen and (max-width:480px) {
  .history #history-content dl:nth-of-type(4) dt:before, .history-en #history-content dl:nth-of-type(4) dt:before {
    height: calc(100% + 190px);
  }
}
.history #history-content dl:nth-of-type(7) dt:before, .history-en #history-content dl:nth-of-type(7) dt:before {
  height: calc(100% + 195px);
}
@media only screen and (max-width:1200px) {
  .history #history-content dl:nth-of-type(7) dt:before, .history-en #history-content dl:nth-of-type(7) dt:before {
    height: calc(100% + 190px);
  }
}
@media only screen and (max-width:768px) {
  .history #history-content dl:nth-of-type(7) dt:before, .history-en #history-content dl:nth-of-type(7) dt:before {
    height: calc(100% + 140px);
  }
}
.history #history-content dl:nth-of-type(8) dt:before, .history-en #history-content dl:nth-of-type(8) dt:before {
  display: none;
}
.history #history-content dl:last-of-type dt:before, .history-en #history-content dl:last-of-type dt:before {
  display: none;
}
.history #history-content .remarks, .history-en #history-content .remarks {
  margin-top: 90px;
  padding-top: 90px;
  border-top: 1px solid #c2c1be;
}
@media only screen and (max-width:768px) {
  .history #history-content .remarks, .history-en #history-content .remarks {
    margin-top: 60px;
    padding-top: 60px;
  }
}
@media only screen and (max-width:687px) {
  .history #history-content .remarks, .history-en #history-content .remarks {
    margin-top: 45px;
    padding-top: 45px;
  }
}
.history #history-content .remarks p, .history-en #history-content .remarks p {
  width: 70%;
  margin: 0 auto;
  line-height: 2em;
}
@media only screen and (max-width:768px) {
  .history #history-content .remarks p, .history-en #history-content .remarks p {
    width: 100%;
  }
}
@media only screen and (max-width:687px) {
  .history #history-content .remarks p, .history-en #history-content .remarks p {
    font-size: 1.3rem !important;
  }
}
@media only screen and (max-width:480px) {
  .history #history-content .remarks p, .history-en #history-content .remarks p {
    font-size: 1.2rem !important;
  }
}

/*  -------------------------------------
	archive:archive-award
  -------------------------------------*/
.post-type-archive-award #award-content {
  padding-bottom: 0;
  padding-top: 0;
}
.post-type-archive-award #award-content h2 {
  font-size: clamp(2rem, 2vw, 3rem) !important;
  font-weight: 500;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  line-height: 1.4em;
}
.post-type-archive-award #award-content .award-nav {
  margin-bottom: 3em;
}
.post-type-archive-award #award-content .award-nav ul {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.post-type-archive-award #award-content .award-nav ul li {
  margin: 0 2em 0 0;
  font-size: clamp(1.5rem, 2vw, 2rem) !important;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
.post-type-archive-award #award-content .award-nav ul li a {
  color: #999 !important;
}
.post-type-archive-award #award-content .award-nav ul li a.is-current {
  color: #333 !important;
  border-bottom: 1px solid #333;
  padding-bottom: 0.25em;
}
.post-type-archive-award #award-content .tab_box .btn_area {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 120px;
}
@media only screen and (max-width:768px) {
  .post-type-archive-award #award-content .tab_box .btn_area {
    margin-bottom: 60px;
  }
}
.post-type-archive-award .winner-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 90px;
  padding-bottom: 120px;
}
@media only screen and (max-width:768px) {
  .post-type-archive-award .winner-list {
    margin-top: 60px;
    padding-bottom: 60px;
  }
}
@media only screen and (max-width:480px) {
  .post-type-archive-award .winner-list {
    display: block;
    margin-top: 45px;
    padding-bottom: 45px;
  }
}
.post-type-archive-award .winner-list .winner-list-content {
  -ms-flex-preferred-size: 48%;
      flex-basis: 48%;
  margin-right: 4%;
  margin-bottom: 4%;
  position: relative;
}
@media only screen and (max-width:480px) {
  .post-type-archive-award .winner-list .winner-list-content {
    margin-right: 0;
    border-bottom: 1px solid #c2c1be;
    padding-bottom: 4%;
  }
  .post-type-archive-award .winner-list .winner-list-content:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
  }
}
.post-type-archive-award .winner-list .winner-list-content:after {
  content: "";
  width: 1px;
  height: 100%;
  background: #c2c1be;
  display: block;
  position: absolute;
  top: 0;
  right: -4%;
  opacity: 0;
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
@media only screen and (max-width:480px) {
  .post-type-archive-award .winner-list .winner-list-content:after {
    display: none;
  }
}
.post-type-archive-award .winner-list .winner-list-content.is-inview:after {
  opacity: 1;
}
.post-type-archive-award .winner-list .winner-list-content img {
  width: 100%;
  margin-bottom: 4%;
  aspect-ratio: 2/1;
}
.post-type-archive-award .winner-list .winner-list-content__img {
  position: relative;
}
.post-type-archive-award .winner-list .winner-list-content__img:after {
  content: "";
  background: url(assets/img/icon/icon_youtube.svg) no-repeat;
  width: 67px;
  height: 47px;
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.post-type-archive-award .winner-list .winner-list-content__text {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
.post-type-archive-award .winner-list .winner-list-content__text p.rank {
  font-weight: 500;
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
  margin: 0 0 0.3em;
  line-height: 1.4em;
}
.post-type-archive-award .winner-list .winner-list-content__text p.rank span {
  font-size: 70%;
}
.post-type-archive-award .winner-list .winner-list-content__text p.winner-name {
  font-size: clamp(1.3rem, 2vw, 1.8rem) !important;
}
.post-type-archive-award .winner-list .winner-list-content__text p.winner-name span.entry-number {
  margin-right: 1em;
}
.post-type-archive-award .winner-list .winner-list-content__text p.song-title {
  margin-top: 1em;
  font-size: clamp(1.3rem, 2vw, 1.8rem) !important;
}
.post-type-archive-award .winner-list .winner-list-content__text .remarks {
  margin-top: 1.5em;
}
.post-type-archive-award .winner-list .winner-list-content__text .remarks a {
  color: #06c !important;
  border-bottom: 1px solid #06c;
  padding-bottom: 0.25em;
}
.post-type-archive-award .winner-list .winner-list-content:first-of-type {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 4%;
  position: relative;
  border-bottom: 1px solid #c2c1be;
}
@media only screen and (max-width:768px) {
  .post-type-archive-award .winner-list .winner-list-content:first-of-type {
    display: block;
  }
}
.post-type-archive-award .winner-list .winner-list-content:first-of-type .winner-list-content__img {
  -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
}
@media only screen and (max-width:768px) {
  .post-type-archive-award .winner-list .winner-list-content:first-of-type .winner-list-content__img {
    margin-bottom: 2%;
  }
}
.post-type-archive-award .winner-list .winner-list-content:first-of-type .winner-list-content__img img {
  margin-bottom: 0;
}
.post-type-archive-award .winner-list .winner-list-content:first-of-type .winner-list-content__text {
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
  padding-right: 5%;
}
.post-type-archive-award .winner-list .winner-list-content:nth-of-type(odd) {
  margin-right: 0;
}
.post-type-archive-award .winner-list .winner-list-content:nth-of-type(odd):after {
  display: none;
}
.post-type-archive-award .winner-list .winner-list-content:nth-last-of-type(2), .post-type-archive-award .winner-list .winner-list-content:last-of-type {
  margin-bottom: 0;
}
.post-type-archive-award #concours-desc {
  background: #f4f3f0;
}
.post-type-archive-award #concours-desc .concours-desc-content {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  padding-bottom: 60px;
  margin-bottom: 60px;
  border-bottom: 1px solid #c2c1be;
}
@media only screen and (max-width:768px) {
  .post-type-archive-award #concours-desc .concours-desc-content {
    padding-bottom: 45px;
    margin-bottom: 45px;
  }
}
@media only screen and (max-width:480px) {
  .post-type-archive-award #concours-desc .concours-desc-content {
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
}
.post-type-archive-award #concours-desc .concours-desc-content:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.post-type-archive-award #concours-desc .concours-desc-content h2 {
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 45px;
}
@media only screen and (max-width:768px) {
  .post-type-archive-award #concours-desc .concours-desc-content h2 {
    margin: 0 0 30px;
  }
}
@media only screen and (max-width:480px) {
  .post-type-archive-award #concours-desc .concours-desc-content h2 {
    margin: 0 0 15px;
    padding-left: 30px;
  }
}
.post-type-archive-award #concours-desc .concours-desc-content h2:before {
  content: "";
  background: #333;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
@media only screen and (max-width:480px) {
  .post-type-archive-award #concours-desc .concours-desc-content h2:before {
    width: 20px;
  }
}
.post-type-archive-award #concours-desc .concours-desc-content p {
  font-size: clamp(1.2rem, 2vw, 1.7rem) !important;
}

/*  -------------------------------------
	page:Appeal
  -------------------------------------*/
.appeal .page-top, .appeal-en .page-top {
  padding-bottom: 60px;
}
.appeal .page-main-visual, .appeal-en .page-main-visual {
  padding-top: 0;
}
.appeal .page-main-visual img, .appeal-en .page-main-visual img {
  width: 100%;
}
.appeal .page-lead, .appeal-en .page-lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:768px) {
  .appeal .page-lead, .appeal-en .page-lead {
    display: block;
  }
}
.appeal .page-lead__img, .appeal .page-lead__text, .appeal-en .page-lead__img, .appeal-en .page-lead__text {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
@media only screen and (max-width:768px) {
  .appeal .page-lead__img, .appeal-en .page-lead__img {
    margin-bottom: 1.5em;
  }
}
.appeal .page-lead__img img, .appeal-en .page-lead__img img {
  width: 100%;
}
.appeal .page-lead__text p, .appeal-en .page-lead__text p {
  width: 100%;
}
@media only screen and (max-width:812px) {
  .appeal .page-lead__text p, .appeal-en .page-lead__text p {
    font-size: clamp(1.3rem, 2vw, 1.4rem) !important;
  }
}
.appeal .appeal-desc, .appeal-en .appeal-desc {
  background: #f4f3f0;
}
.appeal .appeal-desc .appeal-desc-content, .appeal-en .appeal-desc .appeal-desc-content {
  border-bottom: 1px solid #c2c1be;
  padding: 120px 0;
}
@media only screen and (max-width:1200px) {
  .appeal .appeal-desc .appeal-desc-content, .appeal-en .appeal-desc .appeal-desc-content {
    padding: 90px 0;
  }
}
@media only screen and (max-width:768px) {
  .appeal .appeal-desc .appeal-desc-content, .appeal-en .appeal-desc .appeal-desc-content {
    padding: 60px 0;
  }
}
@media only screen and (max-width:480px) {
  .appeal .appeal-desc .appeal-desc-content, .appeal-en .appeal-desc .appeal-desc-content {
    padding: 30px 0;
  }
}
.appeal .appeal-desc .appeal-desc-content h2, .appeal-en .appeal-desc .appeal-desc-content h2 {
  font-size: clamp(1.8rem, 2vw, 3rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 60px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  line-height: 1.4em;
}
@media only screen and (max-width:1200px) {
  .appeal .appeal-desc .appeal-desc-content h2, .appeal-en .appeal-desc .appeal-desc-content h2 {
    margin: 0 0 45px;
  }
}
@media only screen and (max-width:812px) {
  .appeal .appeal-desc .appeal-desc-content h2, .appeal-en .appeal-desc .appeal-desc-content h2 {
    margin: 0 0 30px;
  }
}
@media only screen and (max-width:480px) {
  .appeal .appeal-desc .appeal-desc-content h2, .appeal-en .appeal-desc .appeal-desc-content h2 {
    margin: 0 0 20px;
  }
}
.appeal .appeal-desc .appeal-desc-content h2:before, .appeal-en .appeal-desc .appeal-desc-content h2:before {
  content: "";
  background: #333;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
.appeal .appeal-desc .appeal-desc-content:first-of-type, .appeal-en .appeal-desc .appeal-desc-content:first-of-type {
  padding-top: 0;
}
.appeal .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__text, .appeal-en .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__text {
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
}
.appeal .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img, .appeal-en .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img {
  -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
}
@media only screen and (max-width:1200px) {
  .appeal .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img, .appeal-en .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img {
    padding-left: 5%;
  }
}
@media only screen and (max-width:768px) {
  .appeal .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img, .appeal-en .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img {
    padding-left: 0;
  }
}
.appeal .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img img, .appeal-en .appeal-desc .appeal-desc-content:first-of-type .appeal-desc-content-box__img img {
  width: 100%;
}
.appeal .appeal-desc .appeal-desc-content:last-of-type, .appeal-en .appeal-desc .appeal-desc-content:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media only screen and (max-width:768px) {
  .appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box {
    display: block;
  }
}
.appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__text, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__text {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
.appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__text p, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__text p {
  font-size: clamp(1.3rem, 2vw, 1.7rem) !important;
  line-height: 2em;
}
@media only screen and (max-width:991px) {
  .appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__text p, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__text p {
    font-size: clamp(1.3rem, 2vw, 1.6rem) !important;
  }
}
@media only screen and (max-width:812px) {
  .appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__text p, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__text p {
    font-size: clamp(1.3rem, 2vw, 1.4rem) !important;
  }
}
.appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__img, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__img {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
@media only screen and (max-width:768px) {
  .appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__img, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__img {
    margin-bottom: 1.5em;
  }
}
.appeal .appeal-desc .appeal-desc-content .appeal-desc-content-box__img img, .appeal-en .appeal-desc .appeal-desc-content .appeal-desc-content-box__img img {
  width: 100%;
}
.appeal .appeal-message, .appeal-en .appeal-message {
  background: url(assets/img/appeal/appeal-img6.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
  position: relative;
}
.appeal .appeal-message:before, .appeal-en .appeal-message:before {
  background: rgba(33, 33, 33, 0.6);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
}
.appeal .appeal-message .part-common, .appeal-en .appeal-message .part-common {
  color: #fff;
  z-index: 2;
  position: relative;
}
.appeal .appeal-message .part-common h2, .appeal-en .appeal-message .part-common h2 {
  font-size: clamp(1.8rem, 2vw, 3rem) !important;
  font-weight: 500;
  min-height: 0vw;
  position: relative;
  padding-left: 45px;
  margin: 0 0 60px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width:768px) {
  .appeal .appeal-message .part-common h2, .appeal-en .appeal-message .part-common h2 {
    margin: 0 0 30px;
  }
}
@media only screen and (max-width:480px) {
  .appeal .appeal-message .part-common h2, .appeal-en .appeal-message .part-common h2 {
    margin: 0 0 20px;
  }
}
.appeal .appeal-message .part-common h2:before, .appeal-en .appeal-message .part-common h2:before {
  content: "";
  background: #fff;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
.appeal .appeal-message .part-common p, .appeal-en .appeal-message .part-common p {
  font-size: clamp(1.3rem, 2vw, 1.7rem) !important;
  line-height: 2em;
}
@media only screen and (max-width:768px) {
  .appeal .appeal-message .part-common p, .appeal-en .appeal-message .part-common p {
    font-size: clamp(1.3rem, 2vw, 1.5rem) !important;
  }
}
@media only screen and (max-width:687px) {
  .appeal .appeal-message .part-common p br, .appeal-en .appeal-message .part-common p br {
    display: none;
  }
}

/*  -------------------------------------
	page:contact
  -------------------------------------*/
.contact .page-lead p, .contact-en .page-lead p {
  width: 100%;
}
.contact #contact-content, .contact-en #contact-content {
  padding-top: 0;
}
.contact #contact-content .form-wrap p.red, .contact-en #contact-content .form-wrap p.red {
  color: #ff0000;
  margin: 0 0 60px;
}
@media only screen and (max-width:687px) {
  .contact #contact-content .form-wrap p.red, .contact-en #contact-content .form-wrap p.red {
    margin: 0 0 30px;
  }
}
.contact #contact-content .form-wrap dl, .contact-en #contact-content .form-wrap dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid #c2c1be;
  margin: 0;
}
@media only screen and (max-width:768px) {
  .contact #contact-content .form-wrap dl, .contact-en #contact-content .form-wrap dl {
    display: block;
  }
}
@media only screen and (max-width:480px) {
  .contact #contact-content .form-wrap dl, .contact-en #contact-content .form-wrap dl {
    padding: 20px 0;
  }
}
.contact #contact-content .form-wrap dl dt, .contact-en #contact-content .form-wrap dl dt {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  font-weight: 500;
}
@media only screen and (max-width:991px) {
  .contact #contact-content .form-wrap dl dt, .contact-en #contact-content .form-wrap dl dt {
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
  }
}
@media only screen and (max-width:768px) {
  .contact #contact-content .form-wrap dl dt, .contact-en #contact-content .form-wrap dl dt {
    margin-bottom: 0.5em;
  }
}
.contact #contact-content .form-wrap dl dd, .contact-en #contact-content .form-wrap dl dd {
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
}
@media only screen and (max-width:991px) {
  .contact #contact-content .form-wrap dl dd, .contact-en #contact-content .form-wrap dl dd {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    max-width: 70%;
  }
}
@media only screen and (max-width:768px) {
  .contact #contact-content .form-wrap dl dd, .contact-en #contact-content .form-wrap dl dd {
    max-width: 100%;
  }
}
.contact #contact-content .form-wrap dl dd input, .contact-en #contact-content .form-wrap dl dd input {
  border: none;
  width: 100%;
  background: rgba(245, 245, 245, 0.6);
  padding: 20px 1em;
}
@media only screen and (max-width:480px) {
  .contact #contact-content .form-wrap dl dd input, .contact-en #contact-content .form-wrap dl dd input {
    padding: 10px 1em;
  }
}
.contact #contact-content .form-wrap dl dd textarea, .contact-en #contact-content .form-wrap dl dd textarea {
  background: rgba(245, 245, 245, 0.6);
  border: none;
  width: 100%;
  height: 250px;
  padding: 1em;
}
@media only screen and (max-width:768px) {
  .contact #contact-content .form-wrap dl dd textarea, .contact-en #contact-content .form-wrap dl dd textarea {
    margin-top: 1em;
  }
}
.contact #contact-content .form-wrap dl dd span, .contact-en #contact-content .form-wrap dl dd span {
  display: block;
  font-weight: normal;
}
.contact #contact-content .form-wrap dl dd span label, .contact-en #contact-content .form-wrap dl dd span label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 5px;
}
.contact #contact-content .form-wrap dl dd span label input, .contact-en #contact-content .form-wrap dl dd span label input {
  margin-right: 5px;
  margin-top: 0;
  width: auto;
}
.contact #contact-content .form-wrap #submit-wrap, .contact-en #contact-content .form-wrap #submit-wrap {
  margin: 120px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width:768px) {
  .contact #contact-content .form-wrap #submit-wrap, .contact-en #contact-content .form-wrap #submit-wrap {
    margin: 90px auto 0;
  }
}
@media only screen and (max-width:480px) {
  .contact #contact-content .form-wrap #submit-wrap, .contact-en #contact-content .form-wrap #submit-wrap {
    margin: 45px auto 0;
  }
}
.contact #contact-content .form-wrap #submit-wrap input, .contact-en #contact-content .form-wrap #submit-wrap input {
  width: 240px;
  height: 80px;
  margin: 0 1em;
  background: none;
}
@media only screen and (max-width:768px) {
  .contact #contact-content .form-wrap #submit-wrap input, .contact-en #contact-content .form-wrap #submit-wrap input {
    height: 60px;
  }
}
@media only screen and (max-width:480px) {
  .contact #contact-content .form-wrap #submit-wrap input, .contact-en #contact-content .form-wrap #submit-wrap input {
    height: 45px;
  }
}

/*  -------------------------------------
	page:privacy
  -------------------------------------*/
.privacy .page-lead p, .privacy-en .page-lead p {
  width: 100%;
}
.privacy #privacy-content, .privacy-en #privacy-content {
  padding-top: 0;
}
.privacy #privacy-content .p-page-content, .privacy-en #privacy-content .p-page-content {
  margin: 60px 0;
}
@media only screen and (max-width:768px) {
  .privacy #privacy-content .p-page-content, .privacy-en #privacy-content .p-page-content {
    margin: 45px 0;
  }
}
@media only screen and (max-width:480px) {
  .privacy #privacy-content .p-page-content, .privacy-en #privacy-content .p-page-content {
    margin: 30px 0;
  }
}
.privacy #privacy-content .p-page-content h3, .privacy-en #privacy-content .p-page-content h3 {
  font-size: clamp(1.4rem, 1.5vw, 2.2rem) !important;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  border-bottom: 1px solid #333;
  padding: 0 0 1em;
  margin: 0 0 1em;
}
.privacy #privacy-content .p-page-content h4, .privacy-en #privacy-content .p-page-content h4 {
  font-weight: 500;
  margin: 2em 0 1em;
  font-size: clamp(1.2rem, 2vw, 1.7rem) !important;
}
.privacy #privacy-content .p-page-content ul, .privacy-en #privacy-content .p-page-content ul {
  margin: 0 0 1em;
}
.privacy #privacy-content .p-page-content ul li, .privacy-en #privacy-content .p-page-content ul li {
  position: relative;
  padding-left: 1.5em;
  line-height: 1.4em;
  margin: 0 0 0.75em;
}
.privacy #privacy-content .p-page-content ul li:before, .privacy-en #privacy-content .p-page-content ul li:before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.privacy #privacy-content .p-page-content ul li span, .privacy-en #privacy-content .p-page-content ul li span {
  font-weight: 500;
  margin-bottom: 0.25em;
  display: block;
}
.privacy #privacy-content .p-page-content ul.p-number li:nth-child(1):before, .privacy-en #privacy-content .p-page-content ul.p-number li:nth-child(1):before {
  content: "①";
}
.privacy #privacy-content .p-page-content ul.p-number li:nth-child(2):before, .privacy-en #privacy-content .p-page-content ul.p-number li:nth-child(2):before {
  content: "②";
}
.privacy #privacy-content .p-page-content .p-date, .privacy-en #privacy-content .p-page-content .p-date {
  text-align: right;
  margin: 2em 0;
}

/*  -------------------------------------
	navigation
  -------------------------------------*/
.navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 120px 0 0;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
}
@media only screen and (max-width:1200px) {
  .navigation {
    margin-top: 90px;
  }
}
@media only screen and (max-width:768px) {
  .navigation {
    margin-top: 60px;
  }
}
@media only screen and (max-width:480px) {
  .navigation {
    margin-top: 45px;
  }
}
.navigation a {
  color: #333 !important;
}
@media only screen and (max-width:480px) {
  .navigation {
    font-size: 12px;
  }
}
.navigation .alignleft {
  position: relative;
  padding-left: 2em;
}
.navigation .alignleft:before {
  content: "";
  background: url(assets/img/icon/iconChevronL.svg) no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media only screen and (max-width:480px) {
  .navigation .alignleft:before {
    width: 12px;
    height: 12px;
  }
}
.navigation .alignright {
  position: relative;
  padding-right: 2em;
}
.navigation .alignright:before {
  content: "";
  background: url(assets/img/icon/iconChevron.svg) no-repeat;
  background-size: contain;
  width: 14px;
  height: 14px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media only screen and (max-width:480px) {
  .navigation .alignright:before {
    width: 12px;
    height: 12px;
  }
}

/* 5.0 drawer
--------------------------------------------------------------*/
h1 {
  position: relative;
  text-align: center;
}

.button_container {
  position: fixed;
  border-radius: 100%;
  height: 35px;
  width: 35px;
  cursor: pointer;
  z-index: 100;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  right: 50px;
  top: 45px;
}
@media only screen and (max-width:1200px) {
  .button_container {
    top: 37px;
  }
}
@media only screen and (max-width:969px) {
  .button_container {
    top: 10px;
    right: 8px;
  }
}
@media only screen and (max-width:768px) {
  .button_container {
    width: 30px;
    height: 30px;
    top: 12px;
    right: 15px;
  }
}
.button_container:hover {
  opacity: 0.7;
}
.button_container.active .top {
  -webkit-transform: translateY(4px) translateX(-50%) rotate(45deg);
          transform: translateY(4px) translateX(-50%) rotate(45deg);
  background: #085274;
}
@media only screen and (max-width:768px) {
  .button_container.active .top {
    -webkit-transform: translateY(4px) translateX(-50%) rotate(45deg);
            transform: translateY(4px) translateX(-50%) rotate(45deg);
  }
}
.button_container.active .middle {
  opacity: 0;
  background: #085274;
}
.button_container.active .bottom {
  -webkit-transform: translateY(-6px) translateX(-50%) rotate(-45deg);
          transform: translateY(-6px) translateX(-50%) rotate(-45deg);
  background: #085274;
}
@media only screen and (max-width:768px) {
  .button_container.active .bottom {
    -webkit-transform: translateY(-7px) translateX(-50%) rotate(-45deg);
            transform: translateY(-7px) translateX(-50%) rotate(-45deg);
  }
}
@media only screen and (max-width:687px) {
  .button_container.active .bottom {
    -webkit-transform: translateY(-5px) translateX(-50%) rotate(-45deg);
            transform: translateY(-5px) translateX(-50%) rotate(-45deg);
  }
}
.button_container.active span:nth-of-type(2) {
  top: 16px;
}
@media only screen and (max-width:768px) {
  .button_container.active span:nth-of-type(2) {
    top: 15px;
  }
}
@media only screen and (max-width:687px) {
  .button_container.active span:nth-of-type(2) {
    top: 14px;
  }
}
@media only screen and (max-width:687px) {
  .button_container.active span:nth-of-type(3) {
    top: 18px;
  }
}
.button_container span {
  background: #085274;
  border: none;
  height: 1px;
  width: 60%;
  position: absolute;
  top: 12px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
  cursor: pointer;
}
@media only screen and (max-width:768px) {
  .button_container span {
    top: 9px;
  }
}
.button_container span:nth-of-type(2) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media only screen and (max-width:768px) {
  .button_container span:nth-of-type(2) {
    top: 15px;
  }
}
.button_container span:nth-of-type(3) {
  top: 22px;
}
@media only screen and (max-width:768px) {
  .button_container span:nth-of-type(3) {
    top: 20px;
  }
}

.overlay {
  position: fixed;
  background: #fff;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.35s, visibility 0.35s, height 0.35s;
  transition: opacity 0.35s, visibility 0.35s, height 0.35s;
  overflow: hidden;
  z-index: 10;
}
.overlay.open {
  opacity: 0.95;
  visibility: visible;
  height: 100%;
  z-index: 99;
  overflow: scroll;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 5%;
}
.overlay.open li {
  -webkit-animation: fadeInRight 0.5s ease forwards;
          animation: fadeInRight 0.5s ease forwards;
  -webkit-animation-delay: 0.35s;
          animation-delay: 0.35s;
  text-align: left;
  line-height: 1.2em;
}
.overlay.open li:nth-of-type(2) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.overlay.open li:nth-of-type(3) {
  -webkit-animation-delay: 0.45s;
          animation-delay: 0.45s;
}
.overlay.open li:nth-of-type(4) {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.overlay.open li:nth-of-type(5) {
  -webkit-animation-delay: 0.55s;
          animation-delay: 0.55s;
}
.overlay.open li:nth-of-type(6) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.overlay.open li:nth-of-type(7) {
  -webkit-animation-delay: 0.65s;
          animation-delay: 0.65s;
}
.overlay.open li:nth-of-type(8) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.overlay.open li:nth-of-type(9) {
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}
.overlay.open li:nth-of-type(10) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}
.overlay.open li.menu-parent-item:hover ul {
  position: relative;
  top: 0;
}
.overlay nav {
  position: relative;
  height: auto;
  width: 100%;
  /* top: 50%;
   transform: translateY(-50%);*/
  font-size: 1.8rem;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  min-height: 0vw;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-weight: 300;
  text-align: center;
  overflow: scroll;
}
.overlay ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  height: 100%;
  width: 100%;
}
@media only screen and (min-width:769px) {
  .overlay ul {
    width: 50%;
  }
}
.overlay ul li {
  display: block;
  position: relative;
  opacity: 0;
  padding: 3% 0;
  font-weight: 500;
}
.overlay ul li a {
  display: block;
  position: relative;
  text-decoration: none;
  overflow: hidden;
  font-size: 1.7rem;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  font-weight: 400;
  color: #085274 !important;
  letter-spacing: 0.05em;
  padding-bottom: 0.25em;
}
.overlay ul li a span {
  width: 110px;
  display: inline-block;
  font-size: 18px;
}
.overlay ul li a:hover:after, .overlay ul li a:focus:after, .overlay ul li a:active:after {
  width: 100%;
}
.overlay ul li a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0%;
  width: 0%;
  -webkit-transform: translateX(0%);
          transform: translateX(0%);
  height: 1px;
  background: #085274;
  -webkit-transition: 0.35s;
  transition: 0.35s;
}
@media only screen and (max-width:812px) {
  .overlay ul li a:after {
    display: none;
  }
}
.overlay ul li ul {
  display: block;
  margin: 0.5em 0;
}
.overlay ul li ul li {
  height: auto;
  font-weight: 400;
}
.overlay ul li ul li a {
  font-size: 1.4rem;
  font-size: clamp(1.1rem, 2vw, 1.4rem);
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}