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

読み込み

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/*====================
WEBフォント
=====================*/
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP|Noto+Sans+JP:100,300,400,700,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap");
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

変数

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

その他共通

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
a {
  text-decoration: none;
  color: #8DA3D2;
}

.smp_br {
  display: none;
}

@media (max-width: 900px) {
  .smp_br {
    display: block;
  }
}
.cap_common {
  font-size: 32px;
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-align: center;
  width: 980px;
  margin: 0 auto 60px auto;
}
@media (max-width: 900px) {
  .cap_common {
    width: 100%;
    font-size: 6.93vw;
    margin-bottom: 46px;
    letter-spacing: 0.1em;
  }
}

.read_common {
  font-size: 16px;
  line-height: 2em;
  letter-spacing: 0.2em;
  margin-bottom: 58px;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
}
@media (max-width: 900px) {
  .read_common {
    text-align: justify;
    box-sizing: border-box;
    padding: 0 20px;
    font-size: 4vw;
    letter-spacing: 0.1em;
    margin-bottom: 36px;
  }
  .read_common .br {
    display: none;
  }
}

/* ===================================
入会申請ボタン
=================================== */
/* ===================================
.scroll-line
=================================== */
/* //////////////////////////////////////


body


////////////////////////////////////// */
body {
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  color: #000;
  position: relative;
}
/* //////////////////////////////////////


#console


////////////////////////////////////// */
#console {
  display: flex;
  width: 100%;
  height: 40px;
  background: #eee;
  font-family: sans-serif;
  font-size: 12px;
  position: fixed;
  z-index: 99999;
  display: none;
  /* ===================================
  .device-check
  =================================== */
  /* ===================================
  .win-width-check
  =================================== */
}
@media (max-width: 900px) {
  #console {
    display: none;
  }
}
#console .device-check {
  display: flex;
  background: #DF0101;
}
#console .device-check div {
  display: table;
  width: 100px;
  text-align: center;
  border-right: 1px solid #aaa;
  background: #eee;
}
#console .device-check div p {
  display: table-cell;
  vertical-align: middle;
}
#console .device-check div p span {
  font-size: 10px;
}
#console .device-check .pc {
  background: #FF0;
  font-weight: 600;
}
@media (max-width: 900px) {
  #console .device-check .pc {
    background: #eee;
    font-weight: 400;
  }
}
#console .device-check .smp {
  background: #eee;
  font-weight: 400;
}
@media (max-width: 900px) {
  #console .device-check .smp {
    background: #FF0;
    font-weight: 600;
  }
}
#console .win-width-check {
  display: flex;
  line-height: 40px;
}
#console .win-width-check .now-width {
  padding-left: 20px;
  font-weight: 600;
}
#console .win-width-check .now-width #ttt {
  margin-left: 6px;
}
#console .win-width-check .main-container-width {
  padding-left: 20px;
}

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


#headerBar


////////////////////////////////////// */
#headerBar {
  display: none;
}
@media (max-width: 900px) {
  #headerBar {
    display: flex;
    width: 100vw;
    height: 56px;
    box-sizing: border-box;
    background: #FFF;
    padding: 0 16px;
    position: fixed;
    z-index: 9999999;
    top: -56px;
    /*===================================
    .title
    =====================================*/
    /*===================================
    .sub-title
    =====================================*/
    /*===================================
    .navi
    =====================================*/
  }
  #headerBar .title {
    font-size: 20px;
    font-family: "Shippori Mincho", serif;
    font-weight: bold;
    line-height: 56px;
    letter-spacing: 0.1em;
  }
  #headerBar .title a {
    color: #000;
  }
  #headerBar .title a span {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.2em;
  }
  #headerBar .sub-title {
    line-height: 56px;
    padding-left: 20px;
    font-size: 14px;
  }
  #headerBar .navi {
    background: #ff0;
    /*===================================
    ハンバーガーメニューを作成
    =====================================*/
  }
  #headerBar .navi .navToggle {
    display: block;
    position: absolute; /* bodyに対しての絶対位置指定 */
    right: 20px;
    top: 20px;
    width: 26px;
    height: 17px;
    cursor: pointer;
    /*background: #eee;*/
    text-align: center;
    z-index: 10;
    /*===================================
    クリックでメニューバーがバツに変わる動き
    =====================================*/
    /* 最初のspanをマイナス45度に */
    /* 2番目と3番目のspanを45度に */
  }
  #headerBar .navi .navToggle span {
    display: block;
    position: absolute;
    width: 30px;
    border-bottom: solid 1px rgb(150, 150, 150);
    transition: 0.15s ease-in-out;
  }
  #headerBar .navi .navToggle span:nth-child(1) {
    top: 0px;
  }
  #headerBar .navi .navToggle span:nth-child(2) {
    top: 8px;
  }
  #headerBar .navi .navToggle span:nth-child(3) {
    top: 16px;
  }
  #headerBar .navi .navToggle.active span:nth-child(1) {
    top: 8px;
    left: 0;
    transform: rotate(-45deg);
  }
  #headerBar .navi .navToggle.active span:nth-child(2), #headerBar .navi .navToggle.active span:nth-child(3) {
    top: 8px;
    transform: rotate(45deg);
  }
}

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


.globalMenuSp ハンバーガーメニュークリックで出てくるメニュー


////////////////////////////////////// */
.globalMenuSp {
  position: fixed;
  z-index: 99999;
  top: 0;
  left: 0;
  text-align: center;
  transform: translateY(-100%);
  transition: all 0.3s;
  width: 100vw;
  height: 100%;
  background: #718CC7;
  overflow-y: scroll;
  /*===================================
  .member
  =====================================*/
  /*===================================
  ui
  =====================================*/
  /* このクラスを、jQueryで付与・削除する */
  /*===================================
  .sns
  =====================================*/
}
.globalMenuSp .member {
  width: 100vw;
  background: #fff;
  z-index: 999;
}
.globalMenuSp ul {
  box-sizing: border-box;
  padding: 0 40px;
  padding-top: 56px;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
.globalMenuSp ul li {
  font-family: "Noto Serif JP", serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4em;
  list-style-type: none;
  letter-spacing: 0px;
  width: calc(50% - 10px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.globalMenuSp ul li.hoge {
  line-height: 1.6em;
  width: 100%;
}
.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1.4em 0;
  text-decoration: none;
}
.globalMenuSp ul li a img {
  vertical-align: -3px;
  margin-right: 10px;
}
.globalMenuSp ul li a span {
  color: #FF0;
  font-size: 10px;
  margin-left: 6px;
  letter-spacing: 2px;
}
.globalMenuSp.active {
  transform: translateY(0%);
}
.globalMenuSp .sns {
  display: none;
  width: 250px;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  margin: 20px auto 30px auto;
}
.globalMenuSp .sns div {
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin-left: 30px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 3px;
}
.globalMenuSp .sns div:first-child {
  margin-left: 0;
}
.globalMenuSp .sns div a {
  display: block;
  color: #fff;
  text-decoration: none;
}

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


#headerBar_pc


////////////////////////////////////// */
#headerBar_pc {
  width: 100%;
  height: 70px;
  background: rgba(230, 230, 230, 0.9);
  display: flex;
  position: fixed;
  top: 0;
  z-index: 99999;
  /* ===================================
  .logo
  =================================== */
  /* ===================================
  .kyoukai
  =================================== */
  /* ===================================
  .member
  =================================== */
}
@media (max-width: 900px) {
  #headerBar_pc {
    display: none;
  }
}
#headerBar_pc .logo {
  width: 200px;
  height: 70px;
}
#headerBar_pc .logo img {
  height: 42px;
  margin: 14px 0 0 40px;
}
#headerBar_pc .kyoukai {
  font-family: "Shippori Mincho", serif;
  font-size: 22px;
  letter-spacing: 6px;
  margin-top: 20px;
}
#headerBar_pc .kyoukai span {
  font-size: 13px;
  padding-right: 2px;
}
#headerBar_pc .member {
  width: 400px;
  height: 40px;
  position: absolute;
  top: 14px;
  right: 40px;
  z-index: 999;
  display: flex;
  font-size: 15px;
  line-height: 1.4em;
  text-align: center;
}
#headerBar_pc .member .ginoshi {
  box-sizing: border-box;
  width: 200px;
  line-height: 40px;
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
#headerBar_pc .member .ginoshi a {
  display: block;
  text-decoration: none;
  color: #000;
  width: 200px;
  height: 40px;
}
#headerBar_pc .member .shop {
  box-sizing: border-box;
  width: 200px;
  line-height: 40px;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}
#headerBar_pc .member .shop a {
  display: block;
  text-decoration: none;
  color: #000;
  width: 200px;
  height: 40px;
}

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


#fvCon_pc


////////////////////////////////////// */
#fvCon_pc {
  position: relative;
  height: 100vh;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  /* ===================================
  .main
  =================================== */
  /* ===================================
  .menu
  =================================== */
  /* ===================================
  .fvBtn
  =================================== */
  /* ===================================
  .yokoku 予告表示（2024.10.16まで表示）
  =================================== */
  /* ===================================
  .cv-btn 入会申請ボタン
  =================================== */
  /* ===================================
  .scroll-line
  =================================== */
}
@media (max-width: 900px) {
  #fvCon_pc {
    display: none;
  }
}
#fvCon_pc .main {
  font-family: "Shippori Mincho", serif;
  font-size: 50px;
  line-height: 1.2em;
  letter-spacing: 8px;
  color: #FFF;
  margin-left: 70px;
  margin-top: -30px;
}
#fvCon_pc .main span {
  font-size: 26px;
}
#fvCon_pc .menu {
  position: absolute;
  left: 70px;
  bottom: 40px;
  display: flex;
}
#fvCon_pc .menu .wrap {
  margin-right: 40px;
}
#fvCon_pc .menu .wrap p {
  font-family: "Shippori Mincho", serif;
  font-size: 14px;
  color: #FFF;
  line-height: 2.6em;
}
#fvCon_pc .menu .wrap p a {
  color: #FFF;
}
#fvCon_pc .menu .wrap p a span {
  color: #FF0;
  font-size: 12px;
  margin-left: 8px;
  letter-spacing: 2px;
}
#fvCon_pc .fvBtn {
  position: absolute;
  right: 40px;
  bottom: 40px;
  width: 568px;
  height: 376px;
  background: url(../_img/pc/_keyV/fvBtn_2026.png);
  background-size: contain;
}
#fvCon_pc .fvBtn .newBtn {
  position: absolute;
  left: 30px;
  top: 86px;
  width: 508px;
  height: 90px;
}
#fvCon_pc .fvBtn .newBtn a {
  display: block;
  width: 508px;
  height: 90px;
}
#fvCon_pc .fvBtn .ginoshiBtn {
  position: absolute;
  left: 280px;
  top: 214px;
  width: 230px;
  height: 50px;
}
#fvCon_pc .fvBtn .ginoshiBtn a {
  display: block;
  width: 230px;
  height: 50px;
}
#fvCon_pc .fvBtn .kouriBtn {
  position: absolute;
  left: 280px;
  top: 274px;
  width: 230px;
  height: 50px;
}
#fvCon_pc .fvBtn .kouriBtn a {
  display: block;
  width: 230px;
  height: 50px;
}
#fvCon_pc .yokoku {
  position: absolute;
  bottom: 80px;
  right: 80px;
  width: 382px;
  height: 233px;
  background: url(../_img/pc/_keyV/yokoku.png);
  background-size: cover;
}
#fvCon_pc .cv-btn {
  width: 136px;
  height: 130px;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn {
    width: 26.267vw;
    height: 25.6vw;
  }
}
#fvCon_pc .cv-btn .btn-bg {
  width: 136px;
  height: 130px;
  background: url(../_img/pc/_keyV/btn.png);
  background-size: cover;
  animation: rotate-btn 20s linear infinite;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn .btn-bg {
    width: 26.267vw;
    height: 25.6vw;
  }
}
@keyframes rotate-btn {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#fvCon_pc .cv-btn .btn-text {
  position: absolute;
  right: 0px;
  bottom: 0px;
  display: table;
  width: 136px;
  height: 130px;
  z-index: 99;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn .btn-text {
    width: 26.67vw;
    height: 25.6vw;
  }
}
#fvCon_pc .cv-btn .btn-text a {
  display: table-cell;
  vertical-align: middle;
  font-family: "Shippori Mincho", serif;
  font-size: 22px;
  line-height: 26px;
  color: #FFF;
  text-align: center;
  animation: rotate-text 20s linear infinite;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn .btn-text a {
    font-size: 4.27vw;
    line-height: 1.4em;
    font-weight: 600;
  }
}
#fvCon_pc .cv-btn {
  position: absolute;
  right: 58px;
  bottom: 58px;
}
#fvCon_pc .cv-btn2 {
  width: 120px;
  height: 120px;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn2 {
    width: 160px;
    height: 60px;
  }
}
#fvCon_pc .cv-btn2 .btn-text {
  box-sizing: border-box;
  width: 120px;
  height: 120px;
  background: #718CC7;
  text-align: center;
  font-size: 14px;
  line-height: 1.6em;
  border-radius: 60px;
  font-family: "Noto Sans JP", sans-serif;
  padding-top: 28px;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn2 .btn-text {
    font-size: 3.2vw;
    width: 160px;
    height: 60px;
    padding-top: 11px;
    border-radius: 6px;
  }
}
#fvCon_pc .cv-btn2 .btn-text a {
  color: #FFF;
  text-decoration: underline;
}
@media (max-width: 900px) {
  #fvCon_pc .cv-btn2 .btn-text a .pc_br {
    display: none;
  }
}
#fvCon_pc .cv-btn2 {
  position: absolute;
  right: 220px;
  bottom: 62px;
}
#fvCon_pc .scroll-line {
  width: auto;
  background: #000;
  transform: rotate(-90deg);
  transform-origin: 0 100%;
}
#fvCon_pc .scroll-line:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40px; /*動く線の長さ*/
  height: 1px;
  background: #FFF;
  opacity: 0.7;
  transform-origin: 100% 50%;
  animation: scaleinout 1s linear infinite alternate;
  animation-fill-mode: both;
}
@keyframes scaleinout {
  0% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}
#fvCon_pc .scroll-line {
  position: absolute;
  right: 50%;
  bottom: 0px;
}

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


#fvCon_smp


////////////////////////////////////// */
#fvCon_smp {
  display: none;
}
@media (max-width: 900px) {
  #fvCon_smp {
    font-family: "Shippori Mincho", serif;
    color: #fff;
    position: relative;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: normal;
    /* ===================================
    .kyoukai
    =================================== */
    /* ===================================
    .main
    =================================== */
    /* ===================================
    .fvBtn（12/31まで表示）
    =================================== */
    /* ===================================
    .yokoku 予告表示（2024.10.16まで表示）
    =================================== */
    /* ===================================
    .cv-btn
    =================================== */
    /* ===================================
    .scroll-line
    =================================== */
    /*
    @include scroll-line;
    .scroll-line{
        position: absolute;
        right: 50%;
        bottom: 0px;
    }
    */
  }
  #fvCon_smp .kyoukai {
    position: absolute;
    top: 40px;
    left: 28px;
    font-size: 5.33vw;
    line-height: 1.4em;
    letter-spacing: 6px;
  }
  #fvCon_smp .kyoukai span {
    font-size: 3.47vw;
  }
  #fvCon_smp .main {
    position: absolute;
    left: 28px;
    font-size: 8vw;
    text-align: left;
    margin-top: -140px;
    line-height: 1.4em;
    letter-spacing: 0.1em;
  }
  #fvCon_smp .main span {
    font-size: 4.27vw;
  }
  #fvCon_smp .fvBtn {
    position: absolute;
    bottom: 20px;
    width: 335px;
    height: 284px;
    background: url(../_img/smp/_keyV/fvBtn_2026.png);
    background-size: contain;
  }
  #fvCon_smp .fvBtn .newBtn {
    position: absolute;
    left: 18px;
    top: 53px;
    width: 299px;
    height: 80px;
  }
  #fvCon_smp .fvBtn .newBtn a {
    display: block;
    width: 299px;
    height: 80px;
  }
  #fvCon_smp .fvBtn .ginoshiBtn {
    position: absolute;
    left: 35px;
    top: 200px;
    width: 124px;
    height: 50px;
  }
  #fvCon_smp .fvBtn .ginoshiBtn a {
    display: block;
    width: 124px;
    height: 50px;
  }
  #fvCon_smp .fvBtn .kouriBtn {
    position: absolute;
    left: 176px;
    top: 200px;
    width: 124px;
    height: 50px;
  }
  #fvCon_smp .fvBtn .kouriBtn a {
    display: block;
    width: 124px;
    height: 50px;
  }
  #fvCon_smp .yokoku {
    position: absolute;
    bottom: 20px;
    width: 335px;
    height: 202px;
    background: url(../_img/smp/_keyV/yokoku.png);
    background-size: cover;
  }
  #fvCon_smp .cv-btn {
    width: 136px;
    height: 130px;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn {
    width: 26.267vw;
    height: 25.6vw;
  }
}
@media (max-width: 900px) {
  #fvCon_smp .cv-btn .btn-bg {
    width: 136px;
    height: 130px;
    background: url(../_img/pc/_keyV/btn.png);
    background-size: cover;
    animation: rotate-btn 20s linear infinite;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn .btn-bg {
    width: 26.267vw;
    height: 25.6vw;
  }
}
@media (max-width: 900px) {
  @keyframes rotate-btn {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  #fvCon_smp .cv-btn .btn-text {
    position: absolute;
    right: 0px;
    bottom: 0px;
    display: table;
    width: 136px;
    height: 130px;
    z-index: 99;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn .btn-text {
    width: 26.67vw;
    height: 25.6vw;
  }
}
@media (max-width: 900px) {
  #fvCon_smp .cv-btn .btn-text a {
    display: table-cell;
    vertical-align: middle;
    font-family: "Shippori Mincho", serif;
    font-size: 22px;
    line-height: 26px;
    color: #FFF;
    text-align: center;
    animation: rotate-text 20s linear infinite;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn .btn-text a {
    font-size: 4.27vw;
    line-height: 1.4em;
    font-weight: 600;
  }
}
@media (max-width: 900px) {
  #fvCon_smp .cv-btn {
    position: absolute;
    right: 20px;
    bottom: 20px;
  }
  #fvCon_smp .cv-btn2 {
    width: 120px;
    height: 120px;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn2 {
    width: 160px;
    height: 60px;
  }
}
@media (max-width: 900px) {
  #fvCon_smp .cv-btn2 .btn-text {
    box-sizing: border-box;
    width: 120px;
    height: 120px;
    background: #718CC7;
    text-align: center;
    font-size: 14px;
    line-height: 1.6em;
    border-radius: 60px;
    font-family: "Noto Sans JP", sans-serif;
    padding-top: 28px;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn2 .btn-text {
    font-size: 3.2vw;
    width: 160px;
    height: 60px;
    padding-top: 11px;
    border-radius: 6px;
  }
}
@media (max-width: 900px) {
  #fvCon_smp .cv-btn2 .btn-text a {
    color: #FFF;
    text-decoration: underline;
  }
}
@media (max-width: 900px) and (max-width: 900px) {
  #fvCon_smp .cv-btn2 .btn-text a .pc_br {
    display: none;
  }
}
@media (max-width: 900px) {
  #fvCon_smp .cv-btn2 {
    position: absolute;
    right: 134px;
    bottom: 16px;
    z-index: 999;
  }
}

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


zoomslider


////////////////////////////////////// */
.zs-enabled {
  position: relative;
}

.zs-enabled .zs-slideshow, .zs-enabled .zs-slides, .zs-enabled .zs-slide {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.zs-enabled .zs-slideshow .zs-slides .zs-slide {
  background: transparent none no-repeat 50% 50%;
  background-size: cover;
  position: absolute;
  visibility: hidden;
  opacity: 0;
  transform: scale(1.2, 1.2);
}

.zs-enabled .zs-slideshow .zs-slides .zs-slide.active {
  visibility: visible;
  opacity: 1;
}

.zs-enabled .zs-slideshow .zs-bullets {
  position: absolute;
  z-index: 4;
  bottom: 20px;
  left: 0;
  width: 100%;
  text-align: center;
}

.zs-enabled .zs-slideshow .zs-bullets .zs-bullet {
  display: inline-block;
  cursor: pointer;
  border: 2px solid #ccc;
  width: 14px;
  height: 14px;
  border-radius: 8px;
  margin: 10px;
  background-color: #4a4a4a;
}

.zs-enabled .zs-slideshow .zs-bullets .zs-bullet.active {
  background-color: #ccc;
}

.zs-enabled .zs-slideshow:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  background: transparent none repeat 0 0;
}

.zs-enabled.overlay-plain .zs-slideshow:after {
  background-image: url(../_img/common/plain.png);
}

.zs-enabled.overlay-dots .zs-slideshow:after {
  background-image: url(../_img/common/dots.png);
}

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


#textCon


////////////////////////////////////// */
#textCon {
  width: 100%;
  height: 130px;
  line-height: 130px;
  font-weight: 600;
  font-size: 2.25vw;
  letter-spacing: 0.3em;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}
#textCon div {
  flex: 0 0 auto;
  padding: 24px 12px;
  font-size: 36px;
  white-space: nowrap;
  will-change: transform;
  background: #EAEAEA;
}
@media (max-width: 900px) {
  #textCon div {
    font-size: 8vw;
  }
}
#textCon div:nth-child(odd) {
  animation: loop 50s -25s linear infinite;
  backface-visibility: hidden;
  will-change: transform;
}
@media (max-width: 900px) {
  #textCon div:nth-child(odd) {
    animation: loop 30s -15s linear infinite;
  }
}
#textCon div:nth-child(even) {
  animation: loop2 50s linear infinite;
}
@media (max-width: 900px) {
  #textCon div:nth-child(even) {
    animation: loop2 30s linear infinite;
  }
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}

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


#aboutCon


////////////////////////////////////// */
#aboutCon {
  width: 100%;
  min-width: 980px;
  height: auto;
  text-align: center;
  position: relative;
  /* ===================================
  パララックス
  =================================== */
}
@media (max-width: 900px) {
  #aboutCon {
    width: 100vw;
    min-width: 100vw;
  }
}
#aboutCon .wrapper {
  width: 810px;
  margin: 0 auto;
  text-align: justify;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}
@media (max-width: 900px) {
  #aboutCon .wrapper {
    width: 100%;
  }
}
#aboutCon #parallax {
  position: relative;
  background: url(../_img/pc/aboutCon/bg.jpg);
  background-size: cover;
  padding-top: min(680px,75%);
}
@media (max-width: 900px) {
  #aboutCon #parallax {
    width: 100vw;
    height: 660px;
    padding-top: 0;
  }
}
#aboutCon #parallax .dots {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  background: url(../_img/common/dots.png);
}
#aboutCon #parallax .dots .contents {
  margin-top: 160px;
}
@media (max-width: 900px) {
  #aboutCon #parallax .dots .contents {
    margin-top: 100px;
  }
}
#aboutCon #parallax .dots .contents .cap_common {
  color: #FFF;
}
#aboutCon #parallax .dots .contents .wrapper {
  color: #FFF;
  font-size: 18px;
  line-height: 2.6em;
  letter-spacing: 0.2em;
}
@media (max-width: 900px) {
  #aboutCon #parallax .dots .contents .wrapper {
    box-sizing: border-box;
    text-align: justify;
    font-size: 4vw;
    line-height: 2.6em;
    letter-spacing: 0.1em;
    font-weight: 600;
    padding: 0 2em;
  }
  #aboutCon #parallax .dots .contents .wrapper br {
    display: none;
  }
}

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


#iconCon


////////////////////////////////////// */
#iconCon {
  width: 100%;
  min-width: 980px;
  height: auto;
  text-align: center;
  position: relative;
  letter-spacing: 0.1em;
}
@media (max-width: 900px) {
  #iconCon {
    min-width: auto;
  }
}
#iconCon .wrapper {
  display: flex;
}
@media (max-width: 900px) {
  #iconCon .wrapper {
    display: block;
  }
}
#iconCon .wrapper .left, #iconCon .wrapper .center, #iconCon .wrapper .right {
  width: 33.3333333333%;
  height: 300px;
}
@media (max-width: 900px) {
  #iconCon .wrapper .left, #iconCon .wrapper .center, #iconCon .wrapper .right {
    width: 100%;
  }
}
#iconCon .wrapper .left img.icon1, #iconCon .wrapper .center img.icon1, #iconCon .wrapper .right img.icon1 {
  margin-top: 66px;
  margin-bottom: 20px;
}
#iconCon .wrapper .left img.icon2, #iconCon .wrapper .center img.icon2, #iconCon .wrapper .right img.icon2 {
  margin-top: 86px;
  margin-bottom: 40px;
}
#iconCon .wrapper .left img.icon3, #iconCon .wrapper .center img.icon3, #iconCon .wrapper .right img.icon3 {
  margin-top: 84px;
  margin-bottom: 32px;
}
#iconCon .wrapper .left img.icon4, #iconCon .wrapper .center img.icon4, #iconCon .wrapper .right img.icon4 {
  margin-top: 86px;
  margin-bottom: 40px;
}
#iconCon .wrapper .left img.icon5, #iconCon .wrapper .center img.icon5, #iconCon .wrapper .right img.icon5 {
  margin-top: 86px;
  margin-bottom: 40px;
}
#iconCon .wrapper .left img.icon6, #iconCon .wrapper .center img.icon6, #iconCon .wrapper .right img.icon6 {
  margin-top: 76px;
  margin-bottom: 38px;
}
#iconCon .wrapper .left p, #iconCon .wrapper .center p, #iconCon .wrapper .right p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  line-height: 30px;
}
#iconCon .wrapper .bg1 {
  background: #EAEAEA;
}
#iconCon .wrapper .bg2 {
  background: #8DA3D2;
}

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


#pointsCon


////////////////////////////////////// */
#pointsCon {
  width: 100%;
  height: auto;
  background: #FFF;
  padding: 160px 0;
}
@media (max-width: 900px) {
  #pointsCon {
    padding-bottom: 260px;
    padding-top: 100px;
  }
}
#pointsCon .wrapper {
  position: relative;
  width: 100%;
  height: auto;
  background: #FFF;
  margin-bottom: 160px;
  /* ===================================
  .container
  =================================== */
  /* ===================================
  .img_
  =================================== */
}
@media (max-width: 900px) {
  #pointsCon .wrapper {
    margin-bottom: 240px;
  }
}
#pointsCon .wrapper .container {
  position: relative;
  width: 980px;
  height: 400px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container {
    position: initial;
    width: 100vw;
    height: auto;
  }
}
#pointsCon .wrapper .container .hide-bg_right {
  position: absolute;
  top: 0;
  right: 0;
  width: 620px;
  height: 400px;
  background: #FFF;
  z-index: 9;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_right {
    position: relative;
    top: 160px;
    width: 100vw;
    height: auto;
    background: none;
  }
}
#pointsCon .wrapper .container .hide-bg_right .num {
  position: absolute;
  height: 100px;
  top: -10px;
  left: 16px;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_right .num {
    position: initial;
    z-index: 999;
    margin-left: 20px;
  }
}
#pointsCon .wrapper .container .hide-bg_right .num img {
  height: 100px;
}
#pointsCon .wrapper .container .hide-bg_right .midashi {
  position: absolute;
  width: auto;
  top: 86px;
  left: 24px;
  font-family: "Noto Serif JP", serif;
  font-size: 32px;
  line-height: 50px;
  font-weight: 600;
  letter-spacing: 2px;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_right .midashi {
    position: initial;
    width: 100vw;
    font-size: 6.4vw;
    line-height: 1.6em;
    box-sizing: border-box;
    padding: 0 20px;
    margin-bottom: 20px;
    text-align: justify;
    letter-spacing: 0;
  }
  #pointsCon .wrapper .container .hide-bg_right .midashi .br {
    display: none;
  }
  #pointsCon .wrapper .container .hide-bg_right .midashi span {
    font-size: 3.47vw;
  }
}
#pointsCon .wrapper .container .hide-bg_right .honbun {
  padding-top: 212px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 32px;
  font-weight: 400;
  text-align: justify;
  margin-top: 10px;
  padding-left: 28px;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_right .honbun {
    width: 100vw;
    font-size: 15px;
    line-height: 1.8em;
    box-sizing: border-box;
    padding: 0 20px;
  }
}
#pointsCon .wrapper .container .hide-bg_right .honbun a {
  text-decoration: underline;
}
#pointsCon .wrapper .container .hide-bg_left {
  position: absolute;
  top: 0;
  left: 0;
  width: 620px;
  height: 400px;
  background: #FFF;
  z-index: 9;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_left {
    position: relative;
    top: 160px;
    width: 100vw;
    height: auto;
    background: none;
  }
}
#pointsCon .wrapper .container .hide-bg_left .num {
  position: absolute;
  top: -10px;
  right: 20px;
  height: 100px;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_left .num {
    position: initial;
    z-index: 999;
    margin-left: 20px;
  }
}
#pointsCon .wrapper .container .hide-bg_left .num img {
  height: 100px;
}
#pointsCon .wrapper .container .hide-bg_left .midashi {
  position: absolute;
  width: 980px;
  top: 86px;
  left: 0px;
  font-family: "Noto Serif JP", serif;
  font-size: 32px;
  line-height: 50px;
  font-weight: 600;
  letter-spacing: 2px;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_left .midashi {
    position: initial;
    width: 100vw;
    font-size: 6.4vw;
    line-height: 1.6em;
    box-sizing: border-box;
    padding: 0 20px;
    margin-bottom: 20px;
    text-align: justify;
    letter-spacing: 0;
  }
  #pointsCon .wrapper .container .hide-bg_left .midashi .br {
    display: none;
  }
  #pointsCon .wrapper .container .hide-bg_left .midashi span {
    font-size: 3.47vw;
  }
}
#pointsCon .wrapper .container .hide-bg_left .honbun {
  padding-top: 212px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 2em;
  font-weight: 400;
  text-align: justify;
  margin-top: 10px;
  padding-right: 28px;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .container .hide-bg_left .honbun {
    width: 100vw;
    font-size: 15px;
    line-height: 1.8em;
    box-sizing: border-box;
    padding: 0 20px;
  }
}
#pointsCon .wrapper .container .hide-bg_left .honbun a {
  text-decoration: underline;
}
#pointsCon .wrapper .img_1 {
  background: url(../_img/pc/pointsCon/img_1.jpg);
}
#pointsCon .wrapper .img_2 {
  background: url(../_img/pc/pointsCon/img_2.jpg);
}
#pointsCon .wrapper .img_3 {
  background: url(../_img/pc/pointsCon/img_3.jpg);
}
#pointsCon .wrapper .img_4 {
  background: url(../_img/pc/pointsCon/img_4.jpg);
}
#pointsCon .wrapper .img_right {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 400px;
  background-size: cover;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .img_right {
    width: 100%;
    height: 200px;
  }
}
#pointsCon .wrapper .img_left {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 400px;
  background-size: cover;
}
@media (max-width: 900px) {
  #pointsCon .wrapper .img_left {
    width: 100%;
    height: 200px;
  }
}
#pointsCon .wrapper .img_5 {
  background: url(../_img/pc/pointsCon/img_5.jpg);
  background-size: cover;
}
#pointsCon .wrapper .img_6 {
  background: url(../_img/pc/pointsCon/img_6.jpg);
  background-size: cover;
}
#pointsCon .wrapper:last-child {
  margin-bottom: 0;
}

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


#memberCon


////////////////////////////////////// */
#memberCon {
  width: 100%;
  height: auto;
  background: #EAEAEA;
  padding: 160px 0;
}
@media (max-width: 900px) {
  #memberCon {
    padding-top: 100px;
  }
}
@media (max-width: 900px) {
  #memberCon .scroll {
    overflow: auto;
    white-space: nowrap;
  }
  #memberCon .scroll::-webkit-scrollbar {
    height: 5px;
  }
  #memberCon .scroll::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  #memberCon .scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
}
#memberCon table {
  width: 980px;
  height: auto;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
}
@media (max-width: 900px) {
  #memberCon table {
    width: 100%;
  }
}
#memberCon table th {
  border-top: 2px solid rgb(0, 0, 0);
  border-bottom: 2px solid rgb(0, 0, 0);
  border-right: 1px solid rgba(0, 0, 0, 0.5);
  text-align: center;
  height: 74px;
  line-height: 74px;
  font-weight: 400;
}
#memberCon table th:last-child {
  border-right: none;
}
#memberCon table td {
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
  border-right: 1px solid rgba(0, 0, 0, 0.5);
  text-align: justify;
  line-height: 24px;
  font-weight: 400;
  padding: 16px;
  vertical-align: middle;
}
#memberCon table td span {
  color: red;
  font-weight: bold;
}
#memberCon table td:last-child {
  border-right: none;
}
#memberCon table td:first-child {
  font-weight: 600;
}
#memberCon .note {
  display: none;
}
@media (max-width: 900px) {
  #memberCon .note {
    display: block;
    font-size: 13px;
    text-align: right;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    line-height: 1.6em;
    margin: 10px 10px 0 0;
  }
}
#memberCon .pdf {
  box-sizing: border-box;
  width: 980px;
  height: 80px;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  text-align: center;
  line-height: 1.4em;
  margin-top: 40px;
  border: 1px solid #718CC7;
  padding-top: 26px;
  border-radius: 8px;
}
@media (max-width: 900px) {
  #memberCon .pdf {
    width: calc(100% - 32px);
    font-size: 16px;
    padding-top: 18px;
  }
}
#memberCon .pdf a {
  display: block;
  width: 980px;
  height: 80px;
  color: #718CC7;
  font-weight: bold;
}
@media (max-width: 900px) {
  #memberCon .pdf a {
    width: 100%;
  }
}

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


#groupCon


////////////////////////////////////// */
#groupCon {
  box-sizing: border-box;
  width: 100%;
  padding: 160px 0;
  height: auto;
}
@media (max-width: 900px) {
  #groupCon {
    padding: 100px 0;
  }
}
#groupCon table {
  width: 980px;
  height: auto;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
}
@media (max-width: 900px) {
  #groupCon table {
    box-sizing: border-box;
    padding: 0 20px;
    width: calc(100% - 40px);
  }
}
#groupCon table td {
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
  text-align: justify;
  line-height: 24px;
  font-weight: 400;
  padding: 26px;
  vertical-align: middle;
}
@media (max-width: 900px) {
  #groupCon table td {
    padding-left: 0;
  }
}
@media (max-width: 900px) {
  #groupCon table td:first-child {
    width: 60px;
  }
}

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


#qaCon


////////////////////////////////////// */
#qaCon {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  background: #8DA3D2;
  text-align: center;
  padding: 160px 0;
}
@media (max-width: 900px) {
  #qaCon {
    width: 100vw;
    padding: 100px 0;
  }
}
#qaCon .wrapper {
  width: 980px;
  margin: 0 auto;
}
@media (max-width: 900px) {
  #qaCon .wrapper {
    width: calc(100% - 40px);
  }
}
#qaCon .wrapper .item {
  box-sizing: border-box;
  margin: 40px 0;
  padding: 0px 50px 10px 20px;
}
@media (max-width: 900px) {
  #qaCon .wrapper .item {
    padding: 0;
  }
}
#qaCon .wrapper .item .waku {
  width: 980px;
  margin-left: -20px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
}
@media (max-width: 900px) {
  #qaCon .wrapper .item .waku {
    width: 100%;
    margin-left: 0;
    position: relative;
  }
  #qaCon .wrapper .item .waku::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -3px;
    right: 0;
    width: 20px;
    height: 6px;
    background: #8DA3D2;
  }
}
#qaCon .wrapper .item .waku .q {
  position: relative;
  width: 880px;
  text-indent: -1em;
  padding-left: 2em;
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  line-height: 28px;
  font-weight: 600;
  text-align: justify;
  color: #000;
}
@media (max-width: 900px) {
  #qaCon .wrapper .item .waku .q {
    box-sizing: border-box;
    width: 100%;
    font-size: 18px;
    line-height: 1.4em;
    text-indent: -0.6em;
    padding-left: 1.2em;
  }
}
#qaCon .wrapper .item .waku .q::before {
  content: "Q";
  text-decoration: none;
  display: inline-block;
  margin-right: 1em;
}
@media (max-width: 900px) {
  #qaCon .wrapper .item .waku .q::before {
    margin-right: 0.5em;
  }
}
#qaCon .wrapper .item .waku .q::after {
  content: "";
  position: absolute;
  top: 30%;
  right: -40px;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 6px;
  height: 6px;
  border-top: solid 3px #000;
  border-right: solid 3px #000;
  transform: rotate(135deg);
}
@media (max-width: 900px) {
  #qaCon .wrapper .item .waku .q::after {
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    top: calc(100% + 3px);
    right: 4px;
    z-index: 9;
  }
}
#qaCon .wrapper .item .waku .q:hover {
  cursor: pointer;
}
#qaCon .wrapper .item .waku .q.op::after {
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  transform: rotate(-45deg);
  top: 45%;
}
@media (max-width: 900px) {
  #qaCon .wrapper .item .waku .q.op::after {
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    top: calc(100% + 5px);
    right: 4px;
    z-index: 9;
  }
}
#qaCon .wrapper .item .ans {
  width: 980px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 2em;
  font-weight: 400;
  text-align: justify;
  color: #fff;
  margin: 20px 0 60px -20px;
}
@media (max-width: 900px) {
  #qaCon .wrapper .item .ans {
    width: 100%;
    margin: 20px 0 60px 0;
    font-size: 15px;
    line-height: 1.8em;
  }
}
#qaCon .wrapper .item .ans a {
  color: rgb(221, 221, 75);
  text-decoration: underline;
}

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


#formCon


////////////////////////////////////// */
#formCon {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  text-align: center;
  padding: 160px 0;
}
@media (max-width: 900px) {
  #formCon {
    width: 100%;
    padding: 100px 0;
    background: #EAEAEA;
  }
}
#formCon .wrapper {
  width: 980px;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  display: flex;
  justify-content: space-around;
}
@media (max-width: 900px) {
  #formCon .wrapper {
    display: block;
    width: 100%;
  }
}
#formCon .wrapper .btnCon {
  width: 280px;
}
@media (max-width: 900px) {
  #formCon .wrapper .btnCon {
    margin: 0 auto 50px auto;
  }
}
#formCon .wrapper .btnCon p {
  font-size: 20px;
  line-height: 1.4em;
  color: red;
  margin-bottom: 10px;
}
@media (max-width: 900px) {
  #formCon .wrapper .btnCon p {
    font-size: 18px;
  }
}
#formCon .wrapper .btnCon p.pc_only {
  display: block;
}
@media (max-width: 900px) {
  #formCon .wrapper .btnCon p.pc_only {
    display: none;
  }
}
#formCon .wrapper .btnCon p.hosoku {
  font-size: 16px;
  margin-top: 10px;
}
@media (max-width: 900px) {
  #formCon .wrapper .btnCon p.hosoku {
    font-size: 15px;
  }
}
#formCon .wrapper .btnCon .btn {
  width: 280px;
  height: 142px;
  background: #718CC7;
  text-align: center;
  font-size: 18px;
  line-height: 30px;
  border-radius: 5px;
  display: table;
}
#formCon .wrapper .btnCon .btn a {
  display: block;
  width: 270px;
  height: 142px;
  color: #FFF;
  display: table-cell;
  vertical-align: middle;
}
#formCon .wrapper .btnCon .btn a span {
  font-size: 22px;
  font-weight: bold;
}
#formCon .wrapper .btnCon .btn_sanjo {
  background: #fff;
  border: 1px solid #718CC7;
}
#formCon .wrapper .btnCon .btn_sanjo a {
  color: #718CC7;
}
#formCon .wrapper .btnCon .out {
  opacity: 0.4;
}
@media (max-width: 900px) {
  #formCon .wrapper .btnCon:last-child {
    margin-bottom: 0;
  }
}

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


#footerCon


////////////////////////////////////// */
#footerCon {
  width: 100%;
  height: auto;
  text-align: center;
  font-family: "Noto Serif JP", serif;
}
@media (max-width: 900px) {
  #footerCon {
    width: 100vw;
  }
}
#footerCon .wrap {
  width: 980px;
  height: 60px;
  margin: 0 auto 30px auto;
  display: flex;
}
@media (max-width: 900px) {
  #footerCon .wrap {
    width: 100%;
    height: auto;
    flex-wrap: wrap;
    margin: 0;
  }
}
#footerCon .wrap .item {
  box-sizing: border-box;
  border-left: solid 1px rgba(0, 0, 0, 0.2);
}
@media (max-width: 900px) {
  #footerCon .wrap .item {
    width: 50%;
    height: 70px;
    border: none;
    border-bottom: solid 1px rgba(0, 0, 0, 0.2);
  }
  #footerCon .wrap .item:nth-child(odd) {
    border-right: solid 1px rgba(0, 0, 0, 0.2);
  }
  #footerCon .wrap .item:nth-child(5), #footerCon .wrap .item:nth-child(6) {
    border-bottom: none;
  }
}
#footerCon .wrap .item.item:nth-child(5) a {
  opacity: 0.3;
}
#footerCon .wrap .item a {
  display: block;
  height: 100px;
  color: #000;
  line-height: 60px;
  font-size: 15px;
  margin: 0 1em;
}
@media (max-width: 900px) {
  #footerCon .wrap .item a {
    width: 100%;
    line-height: 70px;
    font-size: 14px;
    margin: 0;
  }
}
#footerCon .wrap .item:last-child {
  border-right: solid 1px rgba(0, 0, 0, 0.2);
}
@media (max-width: 900px) {
  #footerCon .wrap .item:last-child {
    border-right: none;
  }
}
#footerCon .copyright-wrap {
  width: 100%;
  height: auto;
  background: #8DA3D2;
  padding: 80px 0;
}
@media (max-width: 900px) {
  #footerCon .copyright-wrap {
    width: 100%;
    padding: 46px 0;
  }
}
#footerCon .copyright-wrap p {
  font-size: 16px;
  margin-bottom: 16px;
  letter-spacing: 0.2em;
}
@media (max-width: 900px) {
  #footerCon .copyright-wrap p {
    margin-bottom: 10px;
  }
}
#footerCon .copyright-wrap copyright {
  font-size: 12px;
  letter-spacing: 0.4em;
}
@media (max-width: 900px) {
  #footerCon .copyright-wrap copyright {
    font-size: 10px;
    letter-spacing: 0.2em;
  }
}

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


ウインドウ追従


////////////////////////////////////// */
/* ===================================
左上ナビ
=================================== */
#winNavi {
  width: 200px;
  height: 240px;
  position: fixed;
  left: 20px;
  top: 130px;
  z-index: 999;
}
@media (max-width: 1300px) {
  #winNavi {
    display: none !important;
  }
}
#winNavi .menu {
  position: absolute;
  left: 20px;
  top: 0;
}
#winNavi .menu p {
  font-family: "Shippori Mincho", serif;
  font-size: 14px;
  color: #FFF;
  margin-bottom: 30px;
}
#winNavi .menu p.hoge {
  line-height: 1.2em;
}
#winNavi .menu p a {
  color: #000;
}

/* ===================================
CVボタン
=================================== */
#winBtn {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 999;
}
@media (max-width: 900px) {
  #winBtn {
    display: none;
  }
}
#winBtn .cv-btn {
  width: 136px;
  height: 130px;
}
@media (max-width: 900px) {
  #winBtn .cv-btn {
    width: 26.267vw;
    height: 25.6vw;
  }
}
#winBtn .cv-btn .btn-bg {
  width: 136px;
  height: 130px;
  background: url(../_img/pc/_keyV/btn.png);
  background-size: cover;
  animation: rotate-btn 20s linear infinite;
}
@media (max-width: 900px) {
  #winBtn .cv-btn .btn-bg {
    width: 26.267vw;
    height: 25.6vw;
  }
}
@keyframes rotate-btn {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#winBtn .cv-btn .btn-text {
  position: absolute;
  right: 0px;
  bottom: 0px;
  display: table;
  width: 136px;
  height: 130px;
  z-index: 99;
}
@media (max-width: 900px) {
  #winBtn .cv-btn .btn-text {
    width: 26.67vw;
    height: 25.6vw;
  }
}
#winBtn .cv-btn .btn-text a {
  display: table-cell;
  vertical-align: middle;
  font-family: "Shippori Mincho", serif;
  font-size: 22px;
  line-height: 26px;
  color: #FFF;
  text-align: center;
  animation: rotate-text 20s linear infinite;
}
@media (max-width: 900px) {
  #winBtn .cv-btn .btn-text a {
    font-size: 4.27vw;
    line-height: 1.4em;
    font-weight: 600;
  }
}

#winBtn2 {
  position: fixed;
  right: 180px;
  bottom: 20px;
  z-index: 999;
}
@media (max-width: 900px) {
  #winBtn2 {
    display: none;
    right: 134px;
    bottom: 16px;
  }
}
#winBtn2 .cv-btn2 {
  width: 120px;
  height: 120px;
}
@media (max-width: 900px) {
  #winBtn2 .cv-btn2 {
    width: 160px;
    height: 60px;
  }
}
#winBtn2 .cv-btn2 .btn-text {
  box-sizing: border-box;
  width: 120px;
  height: 120px;
  background: #718CC7;
  text-align: center;
  font-size: 14px;
  line-height: 1.6em;
  border-radius: 60px;
  font-family: "Noto Sans JP", sans-serif;
  padding-top: 28px;
}
@media (max-width: 900px) {
  #winBtn2 .cv-btn2 .btn-text {
    font-size: 3.2vw;
    width: 160px;
    height: 60px;
    padding-top: 11px;
    border-radius: 6px;
  }
}
#winBtn2 .cv-btn2 .btn-text a {
  color: #FFF;
  text-decoration: underline;
}
@media (max-width: 900px) {
  #winBtn2 .cv-btn2 .btn-text a .pc_br {
    display: none;
  }
}

/* ===================================
SNSボタン
=================================== */
#winSns {
  position: fixed;
  right: 10px;
  bottom: 300px;
  z-index: 999;
  width: 21px;
  height: 159px;
  background: url(../_img/pc/_common/winSns.svg);
  background-size: cover;
}
#winSns .fb {
  width: 21px;
  height: 45px;
  opacity: 0.5;
  position: absolute;
  top: -20px;
}
#winSns .tw {
  width: 21px;
  height: 45px;
  opacity: 0.5;
  position: absolute;
  top: 25px;
}
#winSns .ig {
  width: 21px;
  height: 45px;
  opacity: 0.5;
  position: absolute;
  top: 70px;
}
#winSns .yt {
  width: 21px;
  height: 45px;
  opacity: 0.5;
  position: absolute;
  top: 114px;
}
#winSns a {
  display: block;
  width: 21px;
  height: 45px;
}

/* ===================================
上に戻るボタン
=================================== */
#goTop {
  position: fixed;
  right: 20px;
  bottom: 100px;
  width: 20px;
  height: 109px;
  background: url(../_img/pc/goTop.png);
  background-size: cover;
  z-index: 999;
}