@charset "UTF-8";
/*-------------------------------------
共通パーツ
-------------------------------------*/
/*-------------------------------------
.secMainVisual
-------------------------------------*/
.secMainVisual {
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
}

@media only screen and (max-width: 767px) {
  .secMainVisual {
    background-image: url(../images/mvBgSp.jpg);
    background-position: center 25%;
    min-height: 500px;
    justify-content: flex-start;
    height: calc(100vh - 76px);
  }
  .secMainVisual .secMainVisualIn {
    padding-bottom: 30px;
    padding-top: min(41.5vw, 162px);
  }
  .secMainVisual .secMainVisualIn img {
    max-width: min(70vw, 272px);
  }
}
@media print, screen and (min-width: 768px) {
  .secMainVisual {
    background-image: url(../images/mvBg.jpg);
    justify-content: center;
    height: 100vh;
    min-height: 600px;
  }
}
/*-------------------------------------
.secTopPlan
-------------------------------------*/
@media only screen and (max-width: 767px) {
  .secTopPlan {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #80E03E;
    display: flex;
    height: 76px;
    align-items: center;
    z-index: 80;
  }
  .secTopPlan .topPlanIn {
    text-align: center;
  }
}
/*-------------------------------------
.secNews
-------------------------------------*/
.secNews {
  background: #2a2a2a;
}
.secNews .secNewsIn .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secNews .secNewsIn .titleJp {
  color: #ffffff;
  font-weight: bold;
}
.secNews .secNewsIn .captionText {
  color: #ffffff;
}
@media only screen and (max-width: 767px) {
  .secNews {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .secNews .secNewsIn .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
    padding-bottom: 3px;
  }
  .secNews .secNewsIn .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 32px;
  }
  .secNews .secNewsIn .captionText {
    font-size: clamp(14px, 4.1vw, 16px);
    padding-bottom: 30px;
  }
}
@media print, screen and (min-width: 768px) {
  .secNews {
    padding-top: 60px;
    padding-bottom: 70px;
  }
  .secNews .secNewsIn .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secNews .secNewsIn .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: 32px;
  }
  .secNews .secNewsIn .captionText {
    font-size: clamp(14px, 1.25vw, 18px);
    padding-bottom: 30px;
  }
  .secNews .secNewsIn .photoArea {
    padding: 0 3.7%;
  }
}
/*-------------------------------------
.secAbout
-------------------------------------*/
.secAbout {
  position: relative;
}
.secAbout .secAboutBg {
  background: #2A2A2A 0% 0% no-repeat padding-box;
}
.secAbout .secAboutIn {
  position: relative;
  z-index: 10;
}
.secAbout .secAboutIn .aboutTextArea .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secAbout .secAboutIn .aboutTextArea .titleJp {
  color: #ffffff;
  font-weight: bold;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}
.secAbout .secAboutIn .aboutTextArea .captionText {
  color: #ffffff;
}
.secAbout .bgBottom {
  z-index: 1;
}

@media only screen and (max-width: 767px) {
  .secAbout .secAboutIn .aboutTextArea .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
    padding-bottom: 10px;
  }
  .secAbout .secAboutIn .aboutTextArea .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 40px;
  }
  .secAbout .secAboutIn .aboutTextArea .titleJp .titleJpImg {
    width: min(61.5vw, 240px);
    padding-bottom: 6px;
  }
  .secAbout .secAboutIn .aboutTextArea .titleJp .titleJpText {
    padding-left: 5px;
  }
  .secAbout .secAboutIn .aboutTextArea .captionText {
    font-size: clamp(14px, 4.1vw, 16px);
    padding-bottom: 32px;
  }
  .secAbout .bgBottom {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 55px;
    border-bottom: 55px solid #ffffff;
    border-left: 100vw solid transparent;
  }
}
@media print, screen and (min-width: 768px) {
  .secAbout .secAboutBg .secAboutIn {
    display: flex;
    justify-content: space-between;
  }
  .secAbout .secAboutBg .secAboutIn .aboutTextArea {
    width: 50%;
    padding-top: min(5vw, 72px);
  }
  .secAbout .secAboutBg .secAboutIn .aboutTextArea .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
    padding-bottom: 10px;
  }
  .secAbout .secAboutBg .secAboutIn .aboutTextArea .titleJp {
    font-size: clamp(19px, 2.22vw, 32px);
    padding-bottom: 30px;
  }
  .secAbout .secAboutBg .secAboutIn .aboutTextArea .titleJp .titleJpImg {
    width: min(21.6vw, 311px);
    padding-bottom: 10px;
  }
  .secAbout .secAboutBg .secAboutIn .aboutTextArea .titleJp .titleJpText {
    padding-left: 13px;
  }
  .secAbout .secAboutBg .secAboutIn .aboutTextArea .captionText {
    font-size: clamp(14px, 1.25vw, 18px);
  }
  .secAbout .secAboutBg .secAboutIn .aboutPhotoArea {
    width: 37%;
    position: absolute;
    right: 0;
    top: 0;
  }
  .secAbout .bgBottom {
    position: relative;
    height: min(15.28vw, 220px);
  }
  .secAbout .bgBottom .bgBottomTri {
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border-top: min(15.28vw, 220px) solid #2a2a2a;
    border-right: 100vw solid transparent;
  }
  .secAbout .bgBottom .bgBottomImg {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    text-align: right;
  }
}
/*-------------------------------------
.secPhotoInfo
-------------------------------------*/
.secPhotoInfo {
  background: url(../images/photoInfoBg.png) left bottom no-repeat;
}
.secPhotoInfo .secPhotoInfoIn .photoBox .photo {
  position: relative;
}
.secPhotoInfo .secPhotoInfoIn .photoBox .photo .photoTitle {
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #000000;
  color: #ffffff;
  font-weight: bold;
}
.secPhotoInfo .secPhotoInfoIn .photoBox .photoText {
  font-weight: 400;
}

@media only screen and (max-width: 767px) {
  .secPhotoInfo {
    padding-top: 60px;
    padding-bottom: 50px;
    background-size: min(51.28vw, 200px);
  }
  .secPhotoInfo .secPhotoInfoIn .photoBox {
    padding-bottom: 30px;
  }
  .secPhotoInfo .secPhotoInfoIn .photoBox .photo .photoTitle {
    font-size: clamp(15px, 4.61vw, 18px);
    padding: 8px 18px;
  }
  .secPhotoInfo .secPhotoInfoIn .photoBox .photoText {
    padding-top: 10px;
    font-size: clamp(14px, 4.1vw, 16px);
  }
}
@media print, screen and (min-width: 768px) {
  .secPhotoInfo {
    padding-top: 100px;
    padding-bottom: 60px;
  }
  .secPhotoInfo .secPhotoInfoIn {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .secPhotoInfo .secPhotoInfoIn .photoBox {
    width: 47%;
    padding-bottom: 40px;
  }
  .secPhotoInfo .secPhotoInfoIn .photoBox .photo .photoTitle {
    font-size: clamp(14px, 1.53vw, 22px);
    padding: 8px 18px;
  }
  .secPhotoInfo .secPhotoInfoIn .photoBox .photoText {
    padding-top: 18px;
    font-size: clamp(14px, 1.25vw, 18px);
  }
}
/*-------------------------------------
.secPhotoImage
-------------------------------------*/
.secPhotoImage {
  background: url(../images/aboutBottom.jpg) center top no-repeat;
  background-size: cover;
}

@media only screen and (max-width: 767px) {
  .secPhotoImage {
    background-image: url(../images/aboutBottomSp.jpg);
    height: 51.3vw;
  }
}
@media print, screen and (min-width: 768px) {
  .secPhotoImage {
    height: 29.17vw;
  }
}
/*-------------------------------------
.secEffect
-------------------------------------*/
.secEffect {
  background-color: #2A2A2A;
}
.secEffect .secEffectIn .effectTextArea .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secEffect .secEffectIn .effectTextArea .titleJp {
  color: #ffffff;
  font-weight: bold;
}
.secEffect .secEffectIn .effectTextArea .boxArea .effectBox {
  background: #ffffff;
}
.secEffect .secEffectIn .effectTextArea .boxArea .effectBox .boxTitle {
  color: #000000;
  font-weight: bold;
}
.secEffect .secEffectIn .effectTextArea .boxArea .effectBox .boxDetail {
  color: #000000;
}
@media only screen and (max-width: 767px) {
  .secEffect {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .secEffect .secEffectIn .effectTextArea .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secEffect .secEffectIn .effectTextArea .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 30px;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea .effectBox {
    margin-bottom: 24px;
    padding: 20px 20px;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea .effectBox .boxTitle {
    font-size: clamp(15px, 4.61vw, 18px);
    padding-bottom: 10px;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea .effectBox .boxDetail {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secEffect .secEffectIn .effectImageArea {
    padding: 16px 0 0 0;
    width: 95vw;
  }
}
@media print, screen and (min-width: 768px) {
  .secEffect {
    padding-top: 120px;
    padding-bottom: 86px;
  }
  .secEffect .secEffectIn {
    display: flex;
    justify-content: space-between;
    position: relative;
  }
  .secEffect .secEffectIn .effectTextArea {
    width: 66.2%;
    z-index: 2;
  }
  .secEffect .secEffectIn .effectTextArea .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secEffect .secEffectIn .effectTextArea .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: 45px;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea .effectBox {
    width: 48.95%;
    margin-bottom: 24px;
    padding: 32px 20px;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea .effectBox .boxTitle {
    font-size: clamp(14px, 1.53vw, 22px);
    padding-bottom: 10px;
  }
  .secEffect .secEffectIn .effectTextArea .boxArea .effectBox .boxDetail {
    font-size: clamp(14px, 1.25vw, 18px);
  }
  .secEffect .secEffectIn .effectImageArea {
    position: absolute;
    left: 62%;
    top: 0;
    z-index: 1;
    width: min(41.32vw, 595px);
  }
}
/*-------------------------------------
.secDiff
-------------------------------------*/
.secDiff {
  background: #ffffff;
}
.secDiff .secDiffIn .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secDiff .secDiffIn .titleJp {
  color: #000000;
  font-weight: bold;
}
.secDiff .secDiffIn .caption {
  color: #000000;
  font-weight: bold;
}
.secDiff .secDiffIn .tableArea {
  text-align: center;
}
.secDiff .secDiffIn .tableArea .titleRow {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  border-bottom: solid 2px #b7b7b7;
}
.secDiff .secDiffIn .tableArea .titleRow .diffCol {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #000000;
  color: #ffffff;
  font-weight: bold;
}
.secDiff .secDiffIn .tableArea .titleRow .titleCol {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.secDiff .secDiffIn .tableArea .row {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  border-bottom: solid 2px #b7b7b7;
}
.secDiff .secDiffIn .tableArea .row .diffCol {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  background-color: #EAEAEA;
}
.secDiff .secDiffIn .tableArea .row .diffCol .inTitle {
  font-weight: bold;
}
.secDiff .secDiffIn .tableArea .row .titleCol {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: #0F7F12;
}

@media only screen and (max-width: 767px) {
  .secDiff {
    padding: 60px 0 60px;
  }
  .secDiff .secDiffIn .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secDiff .secDiffIn .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 30px;
  }
  .secDiff .secDiffIn .caption {
    font-size: clamp(15px, 4.61vw, 18px);
    padding-bottom: 25px;
  }
  .secDiff .secDiffIn .tableArea {
    width: 100vw;
    margin-left: -5vw;
  }
  .secDiff .secDiffIn .tableArea .titleRow .diffCol {
    order: 2;
    width: 36.92%;
    padding: 12px 0 10px 0;
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secDiff .secDiffIn .tableArea .titleRow .diffCol:first-of-type {
    border-right: solid 1px #ffffff;
  }
  .secDiff .secDiffIn .tableArea .titleRow .titleCol {
    order: 1;
    width: 26.1%;
  }
  .secDiff .secDiffIn .tableArea .titleRow .diffLogo {
    width: 116px;
    padding-top: 10px;
  }
  .secDiff .secDiffIn .tableArea .row .diffCol {
    order: 2;
    width: 36.92%;
    padding: 12px 8px;
  }
  .secDiff .secDiffIn .tableArea .row .diffCol:first-of-type {
    border-right: solid 1px #ffffff;
  }
  .secDiff .secDiffIn .tableArea .row .diffCol .inTitle {
    font-size: clamp(15px, 4.61vw, 18px);
  }
  .secDiff .secDiffIn .tableArea .row .diffCol .inDetail {
    font-size: 14px;
  }
  .secDiff .secDiffIn .tableArea .row .titleCol {
    order: 1;
    width: 26.1%;
    padding: 0 8px;
    font-size: clamp(14px, 3.85vw, 15px);
  }
}
@media print, screen and (min-width: 768px) {
  .secDiff {
    padding: 110px 0 120px;
  }
  .secDiff .secDiffIn .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secDiff .secDiffIn .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: 30px;
  }
  .secDiff .secDiffIn .caption {
    font-size: clamp(14px, 1.53vw, 22px);
    padding-bottom: 50px;
  }
  .secDiff .secDiffIn .tableArea .titleRow .diffCol {
    width: 40.82%;
    padding: 17px 0 12px 0;
    font-size: clamp(14px, 1.53vw, 22px);
  }
  .secDiff .secDiffIn .tableArea .titleRow .diffCol .diffLogo {
    padding-top: 10px;
    width: 40%;
  }
  .secDiff .secDiffIn .tableArea .titleRow .titleCol {
    flex-grow: 1;
  }
  .secDiff .secDiffIn .tableArea .row .diffCol {
    width: 40.82%;
    padding: 12px 0;
  }
  .secDiff .secDiffIn .tableArea .row .diffCol .inTitle {
    font-size: clamp(14px, 1.53vw, 22px);
  }
  .secDiff .secDiffIn .tableArea .row .diffCol .inDetail {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secDiff .secDiffIn .tableArea .row .titleCol {
    flex-grow: 1;
    font-size: clamp(14px, 1.11vw, 16px);
  }
}
/*-------------------------------------
.sec
-------------------------------------*/
.secPro .secProIn .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secPro .secProIn .titleJp {
  color: #ffffff;
  font-weight: bold;
}
.secPro .secProIn .caption {
  color: #80E03E;
  font-weight: bold;
}
.secPro .secProIn .detail {
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  .secPro {
    background: url(../images/proBg.jpg) center bottom no-repeat #2a2a2a;
    background-size: 100%;
    position: relative;
    padding-top: 60px;
  }
  .secPro .bgDeco {
    position: absolute;
    width: 100%;
    height: min(19.74vw, 77px);
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 86.15vw;
    margin: auto;
  }
  .secPro .secProIn {
    position: relative;
    z-index: 2;
    padding-bottom: min(118vw, 460px);
  }
  .secPro .secProIn .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secPro .secProIn .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 32px;
    letter-spacing: 0.1em;
  }
  .secPro .secProIn .caption {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 25px;
  }
  .secPro .secProIn .detail {
    font-size: clamp(14px, 4.1vw, 16px);
    text-align: justify;
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .secPro {
    background: url(../images/proBg.jpg) right top no-repeat #2a2a2a;
    background-size: 50%;
    position: relative;
  }
  .secPro .bgDeco {
    position: absolute;
    width: min(10.48vw, 151px);
    height: 100%;
    z-index: 1;
    border-top: min(53vw, 763px) solid #2a2a2a;
    border-right: min(10.48vw, 151px) solid transparent;
    left: 50%;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .secPro .secProIn {
    position: relative;
    z-index: 2;
    height: min(53vw, 763px);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .secPro .secProIn .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secPro .secProIn .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: 40px;
    letter-spacing: 0.13em;
  }
  .secPro .secProIn .caption {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: 25px;
  }
  .secPro .secProIn .detail {
    font-size: clamp(14px, 1.25vw, 18px);
    width: 50%;
  }
}
/*-------------------------------------
.secReserve
-------------------------------------*/
.secReserve .secReserveIn .reserveArea {
  color: #000000;
}
.secReserve .secReserveIn .reserveArea .titleEn {
  font-weight: bold;
}
.secReserve .secReserveIn .reserveArea .titleJp {
  font-weight: bold;
}
.secReserve .secReserveIn .reserveArea .studioWrap .studioName {
  font-weight: bold;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-weight: bold;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea a {
  border: solid 2px #000000;
  background: #ffffff;
  text-align: center;
  color: #000000;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonTel {
  width: 100%;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonTel img {
  margin-right: 13px;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonWeb {
  width: 49.38%;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonWeb img {
  margin-right: 10px;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonLine {
  width: 49.38%;
}
.secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonLine img {
  margin-right: 12px;
}
.secReserve .secReserveIn .planArea {
  background: url(../images/trialBg.jpg) left top no-repeat;
  background-size: cover;
}
.secReserve .secReserveIn .planArea .planTopArea {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.secReserve .secReserveIn .planArea .planTopArea .priceOffTitle {
  font-weight: bold;
  color: #ffffff;
}
@media only screen and (max-width: 767px) {
  .secReserve {
    background: url(../images/reserveBgSp.jpg) center top no-repeat;
    background-color: #6ac230;
    background-size: contain;
  }
  .secReserve .secReserveIn {
    padding-top: 60px;
  }
  .secReserve .secReserveIn .reserveArea {
    padding-bottom: 30px;
  }
  .secReserve .secReserveIn .reserveArea .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secReserve .secReserveIn .reserveArea .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 16px;
  }
  .secReserve .secReserveIn .reserveArea .caption {
    font-size: clamp(14px, 4.1vw, 16px);
    padding-bottom: 0px;
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .studioName {
    font-size: clamp(15px, 4.61vw, 18px);
    padding: 32px 0 4px 0;
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .buttonArea {
    font-size: clamp(15px, 4.61vw, 18px);
    padding-bottom: 0px;
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .buttonArea a {
    padding: 4px 0;
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonTel {
    margin-bottom: 6px;
  }
  .secReserve .secReserveIn .planArea {
    width: 100vw;
    margin-left: -5vw;
    padding: 31px 0;
  }
  .secReserve .secReserveIn .planArea .planTopArea {
    width: min(90vw, 350px);
    margin: 0 auto;
    padding-bottom: 21px;
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOff {
    width: min(25.6vw, 100px);
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOffTitle {
    padding-left: 20px;
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOffTitle .priceOffTitleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOffTitle .priceOffTitleJp {
    font-size: clamp(19px, 8.2vw, 32px);
  }
  .secReserve .secReserveIn .planArea .planTable {
    width: min(90vw, 350px);
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 768px) {
  .secReserve {
    background: url(../images/reserveBg.jpg) center center no-repeat;
    background-size: cover;
  }
  .secReserve .secReserveIn {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .secReserve .secReserveIn .reserveArea {
    width: 50%;
    padding-left: 4.6%;
  }
  .secReserve .secReserveIn .reserveArea .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secReserve .secReserveIn .reserveArea .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: min(0.5vw, 10px);
    line-height: 120%;
  }
  .secReserve .secReserveIn .reserveArea .caption {
    font-size: clamp(14px, 1.25vw, 18px);
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .studioName {
    font-size: clamp(14px, 1.53vw, 22px);
    padding: min(1.39vw, 20px) 0 6px 0;
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .buttonArea {
    font-size: clamp(14px, 1.53vw, 22px);
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .buttonArea a {
    padding: 2px 0;
  }
  .secReserve .secReserveIn .reserveArea .studioWrap .buttonArea .buttonTel {
    margin-bottom: 4px;
  }
  .secReserve .secReserveIn .planArea {
    width: 47%;
    padding: 14px 5.9% 64px 5.9%;
  }
  .secReserve .secReserveIn .planArea .planTopArea {
    padding-bottom: 5px;
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOff {
    width: 37%;
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOffTitle {
    padding-left: 6%;
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOffTitle .priceOffTitleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secReserve .secReserveIn .planArea .planTopArea .priceOffTitle .priceOffTitleJp {
    font-size: clamp(17px, 1.94vw, 28px);
  }
}
/*-------------------------------------
.secMenu
-------------------------------------*/
.secMenu {
  background: #EAEAEA;
  position: relative;
}
.secMenu .bgBottom {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 1;
}
.secMenu .secMenuIn {
  position: relative;
  z-index: 10;
}
.secMenu .secMenuIn .menuTop .menuMain .titleEn {
  font-weight: bold;
  color: #80E03E;
}
.secMenu .secMenuIn .menuTop .menuMain .titleJp {
  font-weight: bold;
}
.secMenu .secMenuIn .menuTop .menuMain .courseList {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime {
  border: solid 1px #80E03E;
  border-radius: 50%;
  background: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
}
.secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent {
  font-weight: bold;
}
.secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent .line {
  border-bottom: solid 2px #80E03E;
}
.secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent .note {
  font-weight: normal;
}
.secMenu .secMenuIn .menuTop .menuSupport .supportText {
  border: solid 1px #000000;
}
.secMenu .secMenuIn .imgArea .imgBox .photo {
  position: relative;
}
.secMenu .secMenuIn .imgArea .imgBox .photo .photoText {
  position: absolute;
  left: 50%;
  top: 50%;
  margin: auto;
  background: #000000;
  color: #ffffff;
  transform: translate(-50%, -50%);
  font-weight: bold;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .secMenu {
    padding-top: 60px;
    padding-bottom: 40px;
  }
  .secMenu .bgBottom {
    height: 250px;
    border-bottom: 250px solid #ffffff;
    border-left: 100vw solid transparent;
  }
  .secMenu .secMenuIn .menuTop .menuMain .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secMenu .secMenuIn .menuTop .menuMain .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 24px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList {
    padding-bottom: 9px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime {
    min-width: 72px;
    max-width: 72px;
    height: 72px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime .timeNum {
    font-size: 29px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime .timeUnit {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent {
    font-size: clamp(16px, 5.12vw, 20px);
    padding-left: 8%;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent .note {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secMenu .secMenuIn .menuTop .menuSupport {
    padding-top: 20px;
  }
  .secMenu .secMenuIn .menuTop .menuSupport .supportText {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 12px 16px;
  }
  .secMenu .secMenuIn .imgArea {
    padding-top: 40px;
  }
  .secMenu .secMenuIn .imgArea .imgBox {
    padding-bottom: 45px;
  }
  .secMenu .secMenuIn .imgArea .imgBox .photo .photoText {
    font-size: clamp(15px, 4.61vw, 18px);
    padding: 8px 15px;
  }
  .secMenu .secMenuIn .imgArea .imgBox .detailText {
    padding-top: 14px;
    font-size: clamp(14px, 4.1vw, 16px);
  }
}
@media print, screen and (min-width: 768px) {
  .secMenu {
    padding-top: 120px;
  }
  .secMenu .bgBottom {
    height: min(17.36vw, 250px);
    border-bottom: min(17.36vw, 250px) solid #ffffff;
    border-left: 100vw solid transparent;
  }
  .secMenu .secMenuIn .menuTop {
    display: flex;
    justify-content: space-between;
  }
  .secMenu .secMenuIn .menuTop .menuMain {
    width: 50%;
  }
  .secMenu .secMenuIn .menuTop .menuMain .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secMenu .secMenuIn .menuTop .menuMain .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
    padding-bottom: 30px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList {
    padding-bottom: 10px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime {
    min-width: 72px;
    max-width: 72px;
    height: 72px;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime .timeNum {
    font-size: clamp(17px, 2.01vw, 29px);
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseTime .timeUnit {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent {
    font-size: clamp(14px, 1.39vw, 20px);
    padding-left: 4.4%;
    padding-right: 11%;
  }
  .secMenu .secMenuIn .menuTop .menuMain .courseList .courseContent .note {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secMenu .secMenuIn .menuTop .menuSupport {
    width: 50%;
    padding-top: calc(80px + min(2vw, 30px));
  }
  .secMenu .secMenuIn .menuTop .menuSupport .supportText {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 12px 18px;
  }
  .secMenu .secMenuIn .imgArea {
    padding-top: 90px;
    display: flex;
    justify-content: space-between;
  }
  .secMenu .secMenuIn .imgArea .imgBox {
    width: 48.37%;
  }
  .secMenu .secMenuIn .imgArea .imgBox .photo .photoText {
    font-size: clamp(14px, 1.53vw, 22px);
    padding: 8px 16px;
  }
  .secMenu .secMenuIn .imgArea .imgBox .detailText {
    padding-top: 23px;
    font-size: clamp(14px, 1.25vw, 18px);
  }
}
/*-------------------------------------
.secPrice
-------------------------------------*/
.secPrice {
  position: relative;
}
.secPrice .bgBottom {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 1;
}
.secPrice .secPriceIn {
  position: relative;
  z-index: 10;
}
.secPrice .secPriceIn .titleArea .titleEn {
  font-weight: bold;
  color: #80E03E;
}
.secPrice .secPriceIn .titleArea .titleJp {
  font-weight: bold;
  color: #000000;
}
.secPrice .secPriceIn .tableArea .tableList .tableTitle {
  background: #000000;
  color: #ffffff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 18px;
  padding: 14px 20px;
  cursor: pointer;
}
.secPrice .secPriceIn .tableArea .tableList .tableTitle .titleIcon {
  position: relative;
}
.secPrice .secPriceIn .tableArea .tableList .tableTitle .titleIcon .icoV {
  position: absolute;
  background-color: #80E03E;
  width: 2px;
  height: 100%;
  left: calc(50% - 1px);
  top: 0;
}
.secPrice .secPriceIn .tableArea .tableList .tableTitle .titleIcon .icoH {
  position: absolute;
  background-color: #80E03E;
  width: 100%;
  height: 2px;
  left: 0;
  top: calc(50% - 1px);
}
.secPrice .secPriceIn .tableArea .tableList .tableScrollWrap {
  display: none;
  overflow-y: hidden !important;
}
.secPrice .secPriceIn .tableArea .tableList table {
  width: 100%;
  font-size: 18px;
}
.secPrice .secPriceIn .tableArea .tableList table td {
  border: solid 1px #000000;
  padding: 14px 0;
}
.secPrice .secPriceIn .tableArea .tableList table .time {
  background: #EAEAEA;
  text-align: center;
  width: 100px;
}
.secPrice .secPriceIn .tableArea .tableList table .payEvery {
  padding-left: 20px;
  width: 180px;
}
.secPrice .secPriceIn .tableArea .tableList table .content {
  padding-left: 20px;
  padding-right: 15px;
  width: 330px;
  font-size: 16px;
}
.secPrice .secPriceIn .tableArea .tableList table .content .icoPlus {
  color: #80E03E;
}
.secPrice .secPriceIn .tableArea .tableList table .content .pickup {
  color: #0F7F12;
  font-weight: bold;
}
.secPrice .secPriceIn .tableArea .tableList table .ticket {
  text-align: center;
  width: 100px;
}
.secPrice .secPriceIn .tableArea .tableList table .count {
  text-align: center;
  width: 80px;
}
.secPrice .secPriceIn .tableArea .tableList table .optionTime {
  border-left: none;
  border-right: none;
  width: 300px;
}
.secPrice .secPriceIn .tableArea .tableList table .optionPrice {
  border-left: none;
  border-right: none;
  width: 310px;
}
.secPrice .secPriceIn .tableArea .planArea {
  background: url(../images/pricePlanBg.png) left top no-repeat;
  background-size: cover;
}
.secPrice .secPriceIn .tableArea .planArea .planTopArea {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.secPrice .secPriceIn .tableArea .planArea .planTopArea .priceOffTitle {
  font-weight: bold;
  color: #ffffff;
}
@media only screen and (max-width: 767px) {
  .secPrice {
    padding: 60px 0 0px 0;
  }
  .secPrice .secPriceIn .titleArea .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secPrice .secPriceIn .titleArea .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 32px;
  }
  .secPrice .secPriceIn .tableArea .tableList {
    padding-bottom: 23px;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableTitle .titleIcon {
    width: 24px;
    height: 24px;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableScrollWrap {
    overflow-x: scroll;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableScrollWrap table {
    width: 630px;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableScrollWrap table.option {
    width: 100%;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableScrollWrap table.option .optionTime {
    text-align: left;
    font-size: clamp(14px, 4.1vw, 16px);
    width: 60%;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableScrollWrap table.option .optionPrice {
    text-align: right;
    font-size: clamp(14px, 4.1vw, 16px);
    width: 40%;
  }
  .secPrice .secPriceIn .tableArea .planArea {
    margin-top: 16px;
    width: 100vw;
    margin-left: -5vw;
    padding: 31px 0;
  }
  .secPrice .secPriceIn .tableArea .planArea .planTopArea {
    width: min(90vw, 350px);
    margin: 0 auto;
    padding-bottom: 21px;
  }
  .secPrice .secPriceIn .tableArea .planArea .planTopArea .priceOff {
    width: min(25.6vw, 100px);
  }
  .secPrice .secPriceIn .tableArea .planArea .planTopArea .priceOffTitle {
    padding-left: 20px;
  }
  .secPrice .secPriceIn .tableArea .planArea .planTopArea .priceOffTitle .priceOffTitleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secPrice .secPriceIn .tableArea .planArea .planTopArea .priceOffTitle .priceOffTitleJp {
    font-size: clamp(19px, 8.2vw, 32px);
  }
  .secPrice .secPriceIn .tableArea .planArea .planTable {
    width: min(90vw, 350px);
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 768px) {
  .secPrice {
    padding: 110px 0 120px 0;
  }
  .secPrice .bgBottom {
    height: min(17.36vw, 250px);
    border-bottom: min(17.36vw, 250px) solid #eaeaea;
    border-left: 100vw solid transparent;
  }
  .secPrice .secPriceIn {
    display: flex;
    justify-content: space-between;
  }
  .secPrice .secPriceIn .titleArea .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secPrice .secPriceIn .titleArea .titleJp {
    font-size: clamp(23px, 2.64vw, 38px);
  }
  .secPrice .secPriceIn .tableArea {
    width: clamp(500px, 42.36vw, 610px);
  }
  .secPrice .secPriceIn .tableArea .tableList {
    padding-bottom: 40px;
  }
  .secPrice .secPriceIn .tableArea .tableList .tableTitle .titleIcon {
    width: 24px;
    height: 24px;
  }
  .secPrice .secPriceIn .tableArea .planArea .planAreaIn {
    width: 380px;
    margin: 0 auto;
    padding: 32px 0;
  }
  .secPrice .secPriceIn .tableArea .planArea .planAreaIn .planTopArea {
    padding-bottom: 5px;
  }
  .secPrice .secPriceIn .tableArea .planArea .planAreaIn .planTopArea .priceOffTitle {
    padding-left: 6%;
  }
  .secPrice .secPriceIn .tableArea .planArea .planAreaIn .planTopArea .priceOffTitle .priceOffTitleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secPrice .secPriceIn .tableArea .planArea .planAreaIn .planTopArea .priceOffTitle .priceOffTitleJp {
    font-size: clamp(17px, 1.94vw, 28px);
  }
}
/*-------------------------------------
.secInstructor
-------------------------------------*/
.secInstructor {
  background: #EAEAEA;
}
.secInstructor .secInstructorIn .titleEn {
  font-weight: bold;
  color: #80E03E;
}
.secInstructor .secInstructorIn .titleJp {
  font-weight: bold;
}
.secInstructor .secInstructorIn .listArea .listBox .photo {
  z-index: 1;
  position: relative;
}
.secInstructor .secInstructorIn .listArea .listBox .infoBox {
  z-index: 2;
  position: relative;
  background: #ffffff;
}
.secInstructor .secInstructorIn .listArea .listBox .infoBox .nameJp {
  font-weight: bold;
}
.secInstructor .secInstructorIn .listArea .listBox .infoBox .nameEn {
  font-weight: bold;
  color: #80E03E;
}
@media only screen and (max-width: 767px) {
  .secInstructor {
    padding: 60px 0 30px 0;
  }
  .secInstructor .secInstructorIn .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secInstructor .secInstructorIn .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 30px;
  }
  .secInstructor .secInstructorIn .listArea .listBox {
    padding-bottom: 30px;
  }
  .secInstructor .secInstructorIn .listArea .listBox .photo {
    width: 80%;
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox {
    margin-left: 14%;
    margin-top: -60px;
    padding: 22px;
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox .nameJp {
    font-size: clamp(16px, 5.64vw, 22px);
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox .nameEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox .detail {
    padding-top: 8px;
    font-size: clamp(14px, 4.1vw, 16px);
  }
}
@media print, screen and (min-width: 768px) {
  .secInstructor {
    padding: 100px 0 43px 0;
  }
  .secInstructor .secInstructorIn .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secInstructor .secInstructorIn .titleJp {
    font-size: clamp(20px, 2.36vw, 34px);
    padding-bottom: 30px;
  }
  .secInstructor .secInstructorIn .listArea {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    row-gap: 40px;
  }
  .secInstructor .secInstructorIn .listArea .listBox {
    width: 32%;
    margin-right: 2%;
  }
  .secInstructor .secInstructorIn .listArea .listBox:nth-of-type(3n) {
    margin-right: 0;
  }
  .secInstructor .secInstructorIn .listArea .listBox .photo {
    width: 96%;
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox {
    margin-left: 4%;
    margin-top: -100px;
    padding: 16px 12px;
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox .nameJp {
    font-size: clamp(14px, 1.53vw, 22px);
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox .nameEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secInstructor .secInstructorIn .listArea .listBox .infoBox .detail {
    padding-top: 8px;
    font-size: clamp(14px, 1.04vw, 15px);
  }
}
/*-------------------------------------
.secInstructorImage
-------------------------------------*/
.secInstructorImage {
  background: url(../images/instructorBottom.jpg) center top no-repeat;
  background-size: cover;
}

@media only screen and (max-width: 767px) {
  .secInstructorImage {
    height: 51.3vw;
  }
}
@media print, screen and (min-width: 768px) {
  .secInstructorImage {
    height: 29.17vw;
  }
}
/*-------------------------------------
.secStudio
-------------------------------------*/
.secStudio {
  background: #ffffff;
}
.secStudio .secStudioIn .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secStudio .secStudioIn .titleJp {
  font-weight: bold;
}
.secStudio .secStudioIn .pickupArea .pickupBox .photo {
  position: relative;
}
.secStudio .secStudioIn .pickupArea .pickupBox .photo .photoText {
  position: absolute;
  background: #000000;
  color: #ffffff;
  font-weight: bold;
  left: 0;
  bottom: 0;
}
.secStudio .secStudioIn .imgListArea {
  display: flex;
  flex-wrap: wrap;
}
.secStudio .secStudioIn .addressArea .topLogo {
  text-align: center;
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea .pager {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  aspect-ratio: 440/80;
  width: 100%;
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea .pager .swiper-pagination-bullet {
  cursor: pointer;
  opacity: 1;
  filter: brightness(0.5);
  background-position: center center;
  background-repeat: no-repeat;
  background-color: transparent;
  border-radius: 0;
  background-size: cover;
  padding: 0;
  margin: 0;
  width: 23.86%;
  height: 100%;
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea .pager .swiper-pagination-bullet.swiper-pagination-bullet-active {
  filter: brightness(1);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio01-Pager .swiper-pagination-bullet:nth-of-type(1) {
  background-image: url(../images/studio1_img1.jpg?001);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio01-Pager .swiper-pagination-bullet:nth-of-type(2) {
  background-image: url(../images/studio1_img2.jpg?001);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio01-Pager .swiper-pagination-bullet:nth-of-type(3) {
  background-image: url(../images/studio1_img3.jpg?001);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio01-Pager .swiper-pagination-bullet:nth-of-type(4) {
  background-image: url(../images/studio1_img4.jpg?001);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio02-Pager .swiper-pagination-bullet:nth-of-type(1) {
  background-image: url(../images/studio2_img1.jpg);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio02-Pager .swiper-pagination-bullet:nth-of-type(2) {
  background-image: url(../images/studio2_img2.jpg);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio02-Pager .swiper-pagination-bullet:nth-of-type(3) {
  background-image: url(../images/studio2_img3.jpg);
}
.secStudio .secStudioIn .addressArea .studioBox .imgArea #studio02-Pager .swiper-pagination-bullet:nth-of-type(4) {
  background-image: url(../images/studio2_img4.jpg);
}
.secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .companyName {
  font-weight: bold;
}
.secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow {
  border-bottom: solid 1px #000000;
}
.secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow:last-of-type {
  border-bottom: none;
}
.secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea {
  display: flex;
  flex-wrap: wrap;
}
.secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn {
  border: solid 2px #000000;
  font-weight: bold;
  text-align: center;
  color: #000000;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 4px;
       column-gap: 4px;
  line-height: 100%;
}
.secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn * {
  line-height: 100%;
}
@media only screen and (max-width: 767px) {
  .secStudio {
    padding: 60px 0 60px;
  }
  .secStudio .secStudioIn .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secStudio .secStudioIn .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 32px;
  }
  .secStudio .secStudioIn .pickupArea {
    padding-bottom: 2px;
  }
  .secStudio .secStudioIn .pickupArea .pickupBox {
    padding-bottom: 30px;
  }
  .secStudio .secStudioIn .pickupArea .pickupBox .photo .photoText {
    font-size: clamp(15px, 4.61vw, 18px);
    padding: 8px 18px;
  }
  .secStudio .secStudioIn .pickupArea .pickupBox .detail {
    font-size: clamp(14px, 4.1vw, 16px);
    padding-top: 12px;
  }
  .secStudio .secStudioIn .imgListArea {
    padding-bottom: 60px;
    justify-content: space-between;
  }
  .secStudio .secStudioIn .imgListArea .imgList {
    width: 49.14%;
    margin-bottom: 6px;
  }
  .secStudio .secStudioIn .addressArea .topLogo {
    padding: 0 0 40px 0;
  }
  .secStudio .secStudioIn .addressArea .topLogo img {
    width: 91px;
  }
  .secStudio .secStudioIn .addressArea .studioBox {
    position: relative;
    padding-bottom: 60px;
  }
  .secStudio .secStudioIn .addressArea .studioBox .imgArea {
    padding: 40px 0 24px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .imgArea .boxSlider {
    margin: 0 0 8px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .companyName {
    position: absolute;
    top: 0;
    left: 0;
    font-size: clamp(15px, 4.61vw, 18px);
    padding-bottom: 8px;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 6px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow .rowTitle {
    font-weight: bold;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea {
    padding: 32px 0 0 0;
    row-gap: 4px;
    justify-content: space-between;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn {
    font-size: clamp(15px, 4.61vw, 18px);
    padding: 8px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn.tel {
    width: 100%;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn.web {
    width: calc(50% - 2px);
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn.line {
    width: calc(50% - 2px);
  }
}
@media print, screen and (min-width: 768px) {
  .secStudio {
    padding: 100px 0 100px;
  }
  .secStudio .secStudioIn .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secStudio .secStudioIn .titleJp {
    font-size: clamp(20px, 2.36vw, 34px);
  }
  .secStudio .secStudioIn .pickupArea {
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
  }
  .secStudio .secStudioIn .pickupArea .pickupBox {
    width: 46.94%;
  }
  .secStudio .secStudioIn .pickupArea .pickupBox .photo .photoText {
    font-size: clamp(14px, 1.53vw, 22px);
    padding: 8px 18px;
  }
  .secStudio .secStudioIn .pickupArea .pickupBox .detail {
    font-size: clamp(14px, 1.25vw, 18px);
    padding-top: 18px;
  }
  .secStudio .secStudioIn .imgListArea {
    padding-bottom: 120px;
    justify-content: space-between;
  }
  .secStudio .secStudioIn .imgListArea .imgList {
    width: 32.65%;
  }
  .secStudio .secStudioIn .addressArea .topLogo {
    padding: 0 0 40px 0;
  }
  .secStudio .secStudioIn .addressArea .topLogo img {
    width: 91px;
  }
  .secStudio .secStudioIn .addressArea .studioBox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 0 32px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .imgArea {
    width: min(48%, 440px);
  }
  .secStudio .secStudioIn .addressArea .studioBox .imgArea .boxSlider {
    margin: 0 0 8px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea {
    width: min(50%, 467px);
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .companyName {
    font-size: clamp(14px, 1.53vw, 22px);
    padding-bottom: 14px;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow {
    font-size: clamp(14px, 1.11vw, 16px);
    display: flex;
    padding: 8px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow .rowTitle {
    width: 19.31%;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .infoRow .rowDetail {
    flex-grow: 1;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea {
    padding: 32px 0 0 0;
    row-gap: 4px;
    justify-content: space-between;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn {
    font-size: clamp(14px, 1.53vw, 22px);
    padding: 4px 0;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn.tel {
    width: 100%;
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn.web {
    width: calc(50% - 2px);
  }
  .secStudio .secStudioIn .addressArea .studioBox .addressInfoArea .contactArea .btn.line {
    width: calc(50% - 2px);
  }
}
/*-------------------------------------
.secQa
-------------------------------------*/
.secQa {
  background: #2a2a2a;
}
.secQa .secQaIn .titleEn {
  color: #80E03E;
  font-weight: bold;
}
.secQa .secQaIn .titleJp {
  color: #ffffff;
  font-weight: bold;
}
.secQa .secQaIn .qaListArea .qaList {
  background: #ffffff;
}
.secQa .secQaIn .qaListArea .qaList .listTitle {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.secQa .secQaIn .qaListArea .qaList .listTitle .titleQ {
  color: #80E03E;
  font-weight: bold;
}
.secQa .secQaIn .qaListArea .qaList .listTitle .titleMain {
  flex-grow: 1;
  font-weight: bold;
}
.secQa .secQaIn .qaListArea .qaList .listTitle .titleIcon {
  position: relative;
}
.secQa .secQaIn .qaListArea .qaList .listTitle .titleIcon .icoV {
  position: absolute;
  width: 2px;
  background: #000000;
  left: calc(50% - 1px);
  height: 100%;
}
.secQa .secQaIn .qaListArea .qaList .listTitle .titleIcon .icoH {
  position: absolute;
  height: 2px;
  background: #000000;
  top: calc(50% - 1px);
  width: 100%;
}
.secQa .secQaIn .qaListArea .qaList .listDetail {
  border-top: solid 2px #a6e978;
  display: none;
}

@media only screen and (max-width: 767px) {
  .secQa {
    padding: 60px 0 42px 0;
  }
  .secQa .secQaIn .titleEn {
    font-size: clamp(14px, 4.1vw, 16px);
  }
  .secQa .secQaIn .titleJp {
    font-size: clamp(19px, 8.2vw, 32px);
    padding-bottom: 32px;
  }
  .secQa .secQaIn .qaListArea .qaList {
    padding: 0 12px;
    margin-bottom: 18px;
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle {
    padding: 14px 0 10px;
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle .titleQ {
    font-size: clamp(20px, 8.7vw, 34px);
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle .titleMain {
    font-size: clamp(15px, 4.61vw, 18px);
    padding-left: 10px;
    padding-right: 10px;
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle .titleIcon {
    width: 18px;
    height: 18px;
  }
  .secQa .secQaIn .qaListArea .qaList .listDetail {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 15px 0 15px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .secQa {
    padding: 96px 0 96px 0;
  }
  .secQa .secQaIn .titleEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secQa .secQaIn .titleJp {
    font-size: clamp(20px, 2.36vw, 34px);
    padding-bottom: 32px;
  }
  .secQa .secQaIn .qaListArea .qaList {
    padding: 0 20px;
    margin-bottom: 24px;
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle {
    padding: 10px 0;
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle .titleQ {
    font-size: clamp(20px, 2.36vw, 34px);
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle .titleMain {
    font-size: clamp(14px, 1.39vw, 20px);
    padding-left: 16px;
  }
  .secQa .secQaIn .qaListArea .qaList .listTitle .titleIcon {
    width: 24px;
    height: 24px;
  }
  .secQa .secQaIn .qaListArea .qaList .listDetail {
    font-size: clamp(14px, 1.25vw, 18px);
    padding: 20px 0 24px 0;
  }
}
/*-------------------------------------
.sec
-------------------------------------*//*# sourceMappingURL=index.css.map */