
/*  vis gendermix
--------------------------------------------- */
@font-face {
  font-family: "Louis-George-Cafe-Bold-Italic";
  src: url(../FONT/Louis-George-Cafe-Bold-Italic.ttf);
}
@font-face {
  font-family: "Louis-George-Cafe-Bold";
  src: url(../FONT/Louis-George-Cafe-Bold.ttf);
}
@font-face {
  font-family: "Coco-Sharp-Bold-trial";
  src: url(../FONT/Coco-Sharp-Bold-trial.ttf);
}
@font-face {
  font-family: "Louis-George-Cafe-Italic";
  src: url(../FONT/Louis-George-Cafe-Italic.ttf);
}
@font-face {
  font-family: "Coco-Sharp-Heavy-trial";
  src: url(../FONT/Coco-Sharp-Heavy-trial.ttf);
}

* {
/*  box-sizing: border-box; */
  min-height: 0;
  min-width: 0;
}

:root {
  --gm-site-bg: #ffffff;
  --gm-text-color: #000;
  --gm-text-dark-bg: #ffffff;
  --gm-fallback-ff: "Gotham", "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "YuGothic Medium",
    "YuGothic", sans-serif;
}
/*
*,
::after,
::before {
  box-sizing: border-box;
}
*/

div {
  display: block;
}
figure {
  margin: 0 0 0em;
  text-align: center;
}
p {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
}

body .gm-is-layout-flex {
  display: flex;
}
body .gm-is-layout-flex > * {
  margin: 0;
}
.gm-background {
  background-image: url("../img/SP_TOP.jpg");
  background-size: 100% auto;
  background-position: 0 0;
  background-repeat: no-repeat;
}
.gm-item-name {
  font-family: "Coco-Sharp-Bold-trial";
  font-size: 20px;
  margin-bottom: 0;
}
.gm-item-sex {
  font-family: "Louis-George-Cafe-Italic";
  font-size: 20px;
  margin-top: 0;
}

.gm-container {
  width: 100%;
  padding-right: 0px;
  padding-left: 0px;
  margin: 0 auto;
  max-width: var(--container);
  font-size: 20px;
  color: var(--gm-text-color);
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-family: var(--gm-fallback-ff);
}
.gm-row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0px;
}
.gm-col {
  padding: 0 0;
  margin: 0 auto;
  flex-grow: 1;
  max-width: 100%;
}

.gm-slogan {
  font-size: 7.5px;
  margin-top: calc(66.67vw + 28vw);
}
.gendermix-main {
  flex: 1 auto;
}
.gm-txt-img {
  width: 60%;
}

.gm-aligncenter {
  clear: both;
}
.gm-top-image img {
  box-sizing: border-box;
  max-width: 100%;
}
.gm-top-banner {
  position: absolute;
}
.gm-top-title {
  position: relative;
  top: calc(100vw - 8vw);
  width: 100%;
}

.gm-block-image .gm-aligncenter {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.gm-block-image .gm-aligncenter,
.gm-block-image .alignleft,
.gm-block-image .alignright {
  display: table;
}
.gm-block-image img {
  box-sizing: border-box;
  height: auto;
  max-width: 70%;
  margin-bottom: 10px;
}
.gm-image-black1 {
  border: solid 3px #0b0306;
}
.gm-image-purple {
  border: solid 3px #d7c7e1;
}
.gm-image-green {
  border: solid 3px #00966e;
}
.gm-image-pink {
  border: solid 3px #fe8aa6;
}
.gm-image-blue {
  border: solid 3px #799ccd;
}
.gm-image-black2 {
  border: solid 3px #020202;
}

.gm-block-columns {
  align-items: normal !important;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap !important;
  margin-bottom: -1em;
}
.gm-block-column {
  flex-grow: 1;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
  position: relative;
}
.gm-block-spacer {
  clear: both;
}
.gm-block-button {
  position: absolute;
  font-family: "Gotham", sans-serif;
  top: 50%;
  transform: translate(-20%, -50%);
}

.gm-two-button-column {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 3vh;
}
.gm-two-button-column > figure > a > img {
  width: 70%;
}

.gm-text-item-price {
  font-size: 0.8rem;
  margin-right: 1.0vw;
}
.gm-block-button__link {
  font-size: 0.9rem;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 0.2px 9px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #000000;
  border-radius: 0rem;
}

.gm-block-column.gm-block-column-right-img {
  order: 1;
}

.gm-block-column.gm-block-column-left-txt {
  order: 2;
}
.gm-block-item-detail {
  margin-left: 20px;
  margin-right: 20px;
  font-size: 9.5px;
}
.gm-block-column-price {
  flex-wrap: nowrap !important;
  width: 100%;
}

.gm-block-column-price > div {
  width: 50%;
  margin-left: 5vw;
}
.gm-has-text-align-center {
  text-align: center;
}
.gm-has-text-align-right {
  text-align: right;
}
.gm-has-text-align-left {
  text-align: left;
}
.gm-has-text-left-margine {
  margin-left: 1.8rem;
}
:where(.gm-block-button__link) {
  box-shadow: none;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  text-decoration: none;
}
:where(.gm-block-columns.gm-is-layout-flex) {
  gap: 2em;
}
/* carousel　*/
/*　swiper */
.swiper-slide img {
  height: auto;
  width: 100%;
  object-fit: cover;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  top: auto;
  bottom: var(--swiper-pagination-bottom, 4.5vw);
}

/* swiper */

@media screen and (min-width: 768px) {
  body {
    min-width: 768px;
  }
  .gm-slogan {
    font-size: 16px;
  }

  .gm-background {
    background-image: url("../img/SP_TOP.jpg");
    background-size: 100% auto;
    background-position: 0 0;
    background-repeat: no-repeat;
  }

  .gm-block-column-price > div {
    width: 50%;
    margin-left: 20vw;
  }
  .gm-has-text-left-margine {
    margin-left: 1vw;
  }
  .gm-block-item-detail {
    font-size: 18px;
    margin-left: 15vw;
    margin-right: 15vw;
  }
  .gm-text-item-price {
    font-size: 1.5rem;
  }
  .gm-block-button__link {
    font-size: 1.4rem;
  }
  .gm-block-buttons > .gm-block-button {
    margin-left: -8vw;
  }
  .gm-block-column > .gm-block-button {
    margin-left: -5vw;
  }
}

@media screen and (min-width: 1280px) {
  body {
    width: 100%;
    margin: auto;
    max-width: 2560px;
    font-size: 14px;
  }
  .gm-container {
    margin-right: 0px;
    margin-left: 0px;
    box-sizing: border-box;
    padding-right: 0px;
    padding-left: 0px;
  }
  .gendermix-main > .container > .row {
    flex-wrap: nowrap;
  }
  .gendermix-main > .container .col,
  body.post-type-archive-course .gendermix-main > .container .col,
  .gendermix-main > .container .col {
    max-width: 100%;
  }
  .gm-item-name {
    font-family: "Coco-Sharp-Bold-trial";
    font-size: 40px;
    margin-bottom: 0;
  }
  .gm-item-sex {
    font-family: "Louis-George-Cafe-Italic";
    font-size: 49px;
    margin-top: 0;
  }
  .gm-background {
    background-image: url("../img/PC_TOP.jpg");
    background-size: 100% auto;
    background-position: 0 0;
    background-repeat: no-repeat;
  }
  .gm-block-image > .gm-top-title {
    position: relative;
    top: calc(66.67vw - 3vw);
    width: 100%;
    margin: 0 auto;
  }
  .gm-top-title img {
    margin: auto;
    display: block;
    max-width: 50vw;
  }
  .gm-slogan {
    font-size: 16px;
    margin-top: calc(66.67vw + 3vw);
  }
  .gm-block-columns {
    flex-wrap: nowrap !important;
    align-items: normal !important;
    box-sizing: border-box;
    display: flex;
    margin-bottom: 0px; /*2023/05/31*/
    max-height: 700px;
  }
  .gm-block-columns:not(.is-not-stacked-on-mobile) > .gm-block-column {
    max-width: 50vw;
    flex-basis: 0;
    flex-shrink: 1;
    flex-grow: 1;
  }

  .gm-block-button__link {
    font-size: 15px;
  }
  .gm-block-column-price > div {
    margin-left: 2rem;
    margin-right: -0.7rem;
  }
  .gm-txt-img {
    width: 80%;
  }
  .gm-text-item-price {
    font-size: 1.2rem;
  }
  .gm-has-text-left-margine {
    margin-left: 5rem;
    margin-right: 0px;
  }
  .gm-block-item-detail {
    margin-left: 80px;
    margin-right: 80px;
    font-size: 13px;
  }
  .gm-block-column.gm-block-column-right-img,
  .gm-block-column.gm-block-column-left-txt {
    order: initial;
  }
  .gm-two-button-columns {
    margin-left: 10vw;
    margin-right: 10vw;
  }
  .gm-two-button-column {
    width: 50vw;
  }
  .gm-block-column > .gm-block-button {
    margin-left: 0vw;
    margin-top: 0vw;
    /*    top: 16px; */
  }
  .gm-block-buttons > .gm-block-button {
    margin-left: 0vw;
    margin-top: 0vw;
  }

  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: var(--swiper-pagination-top, 550px);
    bottom: auto;
  }
  .gm-block-column-price .gm-block-column{
    margin-bottom: -1rem;
  }
}

@media screen and (min-width:1366px){
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: var(--swiper-pagination-top, 570px);
    bottom: auto;
  }
}
@media screen and (min-width:1386px){
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: var(--swiper-pagination-top, 600px);
    bottom: auto;
  }
}
@media screen and (min-width:1406px){
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: var(--swiper-pagination-top, 620px);
    bottom: auto;
  }
}
@media screen and (min-width:1440px){
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: 90%;
    bottom: auto;
  }
}
@media screen and (min-width:1445px){
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: 90%;
    bottom: auto;
  }
  .gm-block-columns {
    max-height: 1225px;
  }
}
@media screen and (min-width: 2560px) {
  .gm-block-image > .gm-top-title {
    top: 1630px;
  }
  .gm-slogan {
    margin-top: 1680px;
  }
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: 90%;
    bottom: auto;
  }
}