@charset "UTF-8";
main,main section { max-width: none;}
main { margin-top: 128px;}
main a { text-decoration: none; color: inherit;}
main ul,main li { list-style: none;}
main span { font-size: unset;}
section { margin-top: 0; margin: unset;}
section p { text-align: unset;}
footer { padding-top: 0;}
@media only screen and (max-width: 1800px) {
  main { margin-top: 128px; }
}
@media only screen and (max-width: 767px) {
  main { margin-top: 140px; }
}
@media only screen and (max-width: 528px) {
  footer { padding-top: 24px; }
}
/* ----------------------------------
    reset
----------------------------------- */
*:where(:not(iframe, canvas, img, svg, video):not(svg *)) {
  all: unset; display: revert;
}
* { -webkit-box-sizing: border-box; box-sizing: border-box;}
*::before,*::after { 
  -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 16px; }  
body,h1,h2,h3,h4,h5,span,p {
  margin: 0px; padding: 0px;}
body {
  color: #000000;
  background-color: #ffffff;
  font-optical-sizing: auto;
}
ol,ul { list-style: none;}
img { max-width: 100%; height: auto; vertical-align: top;}
table { border-collapse: collapse;}
a{ cursor: pointer;}
input[type=text], input[type=tel], input[type=email], input[type=esubmit], button, select, textarea {
  padding: 0; border: none; border-radius: 0; outline: none; background: none;
}
.search { text-align: center;}
/* ----------------------------------
    共通パーツ
----------------------------------- */
/* フォント指定 */
.vertical-title p, .left_part::before, .right_part::before, .section_title h2, .mov_area h5, .model_lineup p, .text_slider_wrap span, .mov_area::before, .nav_duna p, .nav_horo p {
  font-family: "Nuosu SIL", sans-serif;
  letter-spacing: 0.02em;
  line-height: 1;
  font-display: swap;
}
.fv_jump P, .fv_jump p, .cta_questions p, .cta_btn, .cta_btn label, .cta_title p, .cta_title p:nth-child(2), .cta_title p span, .btn_phone p,.btn_phone a span, .btn_item a, .concept p, .mov_area p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1;
  font-display: swap;
}
.section_title h3, .concept h4 {
  font-family: "Zen Antique", serif;
}
/* こちらボタン */
.btn_item a {
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 244px;
  height: 48px;
  border-radius: 44px;
  font-size: 15px;
  letter-spacing: 0.1em;
  font-weight: 700;
  text-align: center;
  color: #fff;
  margin: auto;
  background: #C10D0D;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: 0.25s;
}
.btn_item a:hover {
  transition: 0.25s;
  background: #850D0D;
}
/* ----------------------------------
    基本レイアウト
----------------------------------- */
html { scroll-behavior: smooth;}
#wrapper { overflow: hidden;}
/* ---------------------------------
    hero
----------------------------------- */
.fv {
  text-align: center;
}
.fv_visual {
  width: 100vw;
  height: 1080px;
  display: grid;
  grid-template-columns: 1fr 1fr;  /* 2列 */
  gap: 0;
}
.left_part {
  position: relative;
  grid-column: 1 / 2;
  overflow: hidden;
}
.right_part {
  position: relative;
  grid-column: 2 / 2;
  overflow: hidden;
}
.left_part::before {
  content: "Luxury Watch";
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translate(0%, -50%);
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  overflow: hidden;
  z-index: 1;
}
.right_part::before {
  content: "Jewelry - Necklacce";
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translate(0%, -50%);
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  overflow: hidden;
  z-index: 1;
}
.fv_visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.left_part img {
  transform: scale(1);
  transform-origin: 50% 50%;
  object-position: 50% 50%;
}
.right_part img {
  transform: scale(1);
  transform-origin: 50% 50%;
  object-position: 50% 50%;
}
.vertical-title {
  position: absolute;
  color: #fff;
  top: 50%;
  z-index: 10;
  overflow: hidden;
}
.vertical-title.left {
  right: 10px;
  transform: translateY(-50%);
}
.vertical-title.right {
  left: 30px;
  transform: translateY(-50%);
}
.vertical-title p {
  font-size: 126px;
  text-align: center;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  line-height: 0.9;
}
.fv_jump {
  position: absolute;
  width: auto;
  height: 40px;
  bottom: 24px;
  left: 50%;
  transform: translate(-50%, 0%) scale(1);
  opacity: 1;
  transition: 0.25s;
}
.fv_jump:hover {
  transform: translate(-50%, 0%) scale(1.05);
  opacity: 0.65;
  transition: 0.25s;
}
.fv_jump a {
  width: 100%;
  height: 100%;
  transform: translateX(0px);
  transition: 0.25s;
}
.fv_jump P {
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  margin-bottom: 4px;
}
.fv_jump a span {
  display: block;
  width: 14px;
  height: 14px;
  border-top: #fff solid 2px;
  border-right: #fff solid 2px;
  rotate: 135deg;
  margin: 0 auto;
}
@media only screen and (max-width:1240px) {
  .fv_visual {
    height: 940px;
  }
}
@media only screen and (max-width:900px) {
  .fv_visual {
    height: 820px;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
  }
  .left_part {
    grid-column: 1 / 2;
  }
  .right_part {
    grid-column: 1 / 2;
  }
  .left_part::before {
    left: 12px;
    font-size: 12px;
  }
  .right_part::before {
    right: 12px;
    font-size: 12px;
  }
  .left_part img {
    transform: scale(1.2);
    transform-origin: 50% 60%;
    object-position: 50% 50%;
  }
  .right_part img {
    transform: scale(1);
    transform-origin: 50% 50%;
    object-position: 50% 60%;
  }
  .vertical-title.left {
    right: 20px;
  }
  .vertical-title.right {
    left: 24px;
  }
  .vertical-title p {
    font-size: 54px;
    line-height: 0.9;
  }
  .fv_jump {
    height: 40px;
    bottom: 4px;
  }
  .fv_jump P {
    font-size: 12px;
    margin-bottom: 2px;
  }
  .fv_jump a span {
    width: 10px;
    height: 10px;
  }
}
@media only screen and (max-width:650px) {
  .fv_visual {
    height: 740px;
  }
  .left_part img {
    transform: scale(1.42);
    transform-origin: 50% 56%;
    object-position: 50% 50%;
  }
  .right_part img {
    transform: scale(1.16);
    transform-origin: 50% 50%;
    object-position: 50% 60%;
  }
  .vertical-title.left {
    right: 5px;
  }
  .vertical-title.right {
    left: 10px;
  }
  .vertical-title p {
    font-size: 48px;
  }
}
@media only screen and (max-width:450px) {
  .left_part::before {
    left: 10px;
    font-size: 10px;
  }
  .right_part::before {
    right: 10px;
    font-size: 10px;
  }
  .right_part img {
    transform: scale(1.36);
    transform-origin: 46% 50%;
    object-position: 50% 70%;
  }
  .vertical-title p {
    font-size: 44px;
  }
}
/* ----------------------------------
    CTA
----------------------------------- */
.cta_wrap {
  max-width: 960px;
  padding: 98px 50px 108px;
  margin: auto;
}
.cta_questions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 56px;
  gap: 26px;
}
.cta_questions p {
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  display: inline-block;
  background: #CDDE74;
  padding: 1px 6px 5px;
  position: relative;
}
.cta_questions p::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: -0.4em;
  width: 0;
  height: 0;
  border-left: 16px solid transparent;
  border-bottom: 16px solid #CDDE74;
  transform: translateX(-50%) rotate(45deg);
}
.cta_title {
  margin-bottom: 36px;
}
.cta_title p {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}
.cta_title p:nth-child(2) {
  font-size: 11px;
  margin-top: 10px;
}
.cta_title p span {
  font-size: 13px;
}
.cta_btns {
  display: flex;
  justify-content: center;
  gap: 27px;
}
.btn_phone {
  background: #E8E8E8;
  width: 368px;
  height: 180px;
  text-align: center;
  margin: auto;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn_phone a {
  width: 100%;
  height: auto;
}
.btn_phone .phone_number {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  margin-bottom: 16px;
}
.btn_phone .phone_number p {
  font-size: 37px;
  font-weight: 700;
}
.btn_phone a span {
  display: block;
  font-size: 12px;
  text-align: center;
  width: 154px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  border: #000 solid 1px;
  border-radius: 18px
}
.btn_wrap_sns {
  width: auto;
  height: 180px;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  justify-content: space-between;
}
.cta_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48.5%;
  height: 80px;
  border-radius: 40px;
  font-size: 16px;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: 0px 18px;
  color: #fff;
  cursor: pointer;
  transition: 0.25s;
  opacity: 1;
}
.cta_btn a, .cta_btn button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.cta_btn:hover {
  transition: 0.25s;
  opacity: 0.8;
}
.cta_btn a:hover {
  color: #fff;
}
.btn_line { background: #07B53B;}
.btn_form { background: #3F3E46;}
.btn_wechat { background: #2B3B8E;}
.btn_wechat label { font-weight: 700;}
.btn_whatsapp { background: #3F9CAB;}

@media only screen and (max-width:880px) {
  .cta_wrap {
    max-width: 580px;
    padding: 82px 20px 82px;
  }
  .cta_questions {
    margin-bottom: 42px;
    gap: 18px;
  }
  .cta_questions p {
    font-size: 16px;
    padding: 2px 4px 4px;
  }
  .cta_questions p::after {
    border-left: 12px solid transparent;
    border-bottom: 12px solid #CDDE74;
  }
  .cta_title {
    margin-bottom: 26px;
  }
  .cta_title p {
    font-size: 24px;
  }
  .cta_title p:nth-child(2) {
    font-size: 11px;
    margin-top: 9px;
  }
  .cta_title p span {
    font-size: 13px;
  }
  .cta_btns {
    flex-wrap: wrap;
    gap: 25px;
  }
  .btn_phone {
    width: 96%;
    height: 138px;
    padding-bottom: 0px;
  }
  .btn_phone a {
    width: 100%;
  }
  .btn_phone .phone_number {
    flex-direction: row;
    justify-content: center;
    gap: 10px;
    margin-bottom: 14px;
    transform: translate(-10px, 0);
  }
  .btn_phone .phone_number p {
    font-size: 37px;
  }
  .btn_phone .phone_number img {
    transform: translate(0%, -2px);
  }
  .btn_phone a span {
    width: 160px;
    height: 36px;
    border-radius: 18px
  }
  .btn_wrap_sns {
    width: 100%;
    height: 154px;
    display: flex;
  }
  .cta_btn {
    width: 48.5%;
    height: 70px;
    border-radius: 35px;
    font-size: 14px;
  }
}
@media only screen and (max-width:400px) {
  .cta_wrap {
    padding: 58px 8px 58px;
  }
  .cta_questions {
    margin-bottom: 34px;
  }
  .cta_questions p {
    font-size: 14px;
  }
  .cta_title {
    margin-bottom: 26px;
  }
  .cta_title p {
    font-size: 21px;
  }
  .cta_title p:nth-child(2) {
    font-size: 11px;
    margin-top: 10px;
  }
  .cta_title p span {
    font-size: 12px;
  }
  .btn_phone {
    width: 96%;
    height: 130px;
  }
  .btn_phone .phone_number {
    gap: 10px;
    margin-bottom: 12px;
  }
  .btn_phone .phone_number p {
    font-size: 34px;
  }
  .btn_phone .phone_number img {
    width: 28px;
  }  
  .btn_wrap_sns {
    height: 136px;
  }
  .cta_btn {
    width: 48.75%;
    height: 62px;
    border-radius: 31px;
    font-size: 12px;
  }
}
/* ----------------------------------
    WeChat モーダル
----------------------------------- */
.modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1000;
  align-items: center;
  justify-content: center;
}
.modal.is-open {
  display: flex;
}
.modal__bg {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.75);
  cursor: pointer;
}
.modal__content {
  position: relative;
  max-width: 320px;
  max-height: 320px;
  background: #fff;
  padding: 1.4em;
  box-sizing: border-box;
  margin: 30px;
  z-index: 1;
}
.modal__close {
  position: absolute;
  top: 0;
  right: .45em;
  border: none;
  background: transparent;
  font-size: 1.5rem;
  cursor: pointer;
}
.modal__img {
  width: 100%;
  height: auto;
  display: block;
}
/* ----------------------------------
    商品別ヘッダー
----------------------------------- */
#dunamis { background: #000;}
#horoscope { background: #E1E3EC}
.section_header {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100vw;
  height: 652px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section_header.sd_duna {
  background-image: url(/images/dunamis_horoscope/section_header_img_duna.jpg);}
.section_header.sd_horo {
  background-image: url(/images/dunamis_horoscope/section_header_img_horo.jpg);}

.section_header_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-left: 50px;
  margin-right: 50px;
}
.section_title {
  text-align: center;
}
.section_title h3 {
  width: 100%;
  font-size: 26px;
  line-height: 1.55;
  color: #fff;
  margin-bottom: 8px;
}
.section_title h2 {
  font-size: 82px;
  color: #fff;
  margin-bottom: 58px;
}
.head_itemphoto {
  width: 100%;
}
.head_itemphoto.header_horo {
  width: 400px;
  height: 652px;
}
.head_itemphoto.header_horo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(0.7);
  transform-origin: 50% 0%;
  object-position: 50% 50%;
}
@media only screen and (max-width:1024px) {
  .section_header_wrap {
    gap: 22px;
  }
  .section_title h3 {
    font-size: 22px;
    margin-bottom: 8px;
  }
  .section_title h2 {
    font-size: 74px;
    margin-bottom: 58px;
  }
}
@media only screen and (max-width:900px) {
  #dunamis .section_header {
    height: 800px;
  }
  .section_header_wrap {
    flex-direction: column-reverse;
    gap: 5px;
  }
  .section_title h3 {
    margin-bottom: 14px;
  }
  .section_title h2 {
    font-size: 62px;
    margin-bottom: 40px;
  }
  .head_itemphoto {
    width: 450px;
    transform: translate(8px, -1px);
  }
  .head_itemphoto.header_horo {
    width: 400px;
    height: 286px;
  }
  .head_itemphoto.header_horo img {
    transform: scale(1.15) translate(-8px, -36px);
    transform-origin: 50% 50%;
    object-position: 50% 83%;
  }
}
@media only screen and (max-width:600px) {
  #dunamis .section_header {
    height: 626px;
  }
  .section_header_wrap {
    gap: 0px;
  }
  .section_title h3 {
    font-size: 19px;
    margin-bottom: 12px;
  }
  .section_title h2 {
    font-size: 48px;
    margin-bottom: 40px;
  }
  .head_itemphoto {
    width: 340px;
  }
  .head_itemphoto.header_horo {
    width: 400px;
    height: 330px;
  }
  .head_itemphoto.header_horo img {
    transform: scale(1) translate(-8px, -57px);
    transform-origin: 50% 50%;
    object-position: 50% 28%;
  }
}
/* ----------------------------------
    コンセプト文章エリア
----------------------------------- */
.concept {
  padding: 0 6vw;
  margin:  96px 0 100px;
}
.concept_wrap {
  max-width: 688px;
  margin:  0 auto;
}
.concept h4 {
  font-size: 30px;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 28px;
}
.concept_wrap h4 br{
  display: none;
}
.concept p {
  font-size: 16px;
  line-height: 2.4;
}
.purple { color: #0D0544;}
.white { color: #fff;}
@media only screen and (max-width:680px) {
  .concept {
    margin:  72px 0 68px;
  }
  .concept h4 {
    font-size: 24px;
    margin-bottom: 22px;
  }
  .concept_wrap h4 br{
    display: block;
  }
  .concept p {
    font-size: 15px;
  }
}
/* ----------------------------------
    写真群エリア
----------------------------------- */
.detail_images {
  position: relative;
  max-width: 1400px;
  height: 772px;
  margin: 0 auto 176px;
}
.detail_images .detail_image_1 {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 480px;
  height: auto;
  z-index: 5;
}
.detail_images .detail_image_2 {
  position: absolute;
  top: 476px;
  left: 20%;
  width: 396px;
  height: auto;
  z-index: 6;
}
.detail_images .detail_image_3 {
  position: absolute;
  top: 33px;
  right: 8%;
  width: 421px;
  height: auto;
  z-index: 5;
}
.detail_images .detail_image_4 {
  position: absolute;
  top: 186px;
  right: 35%;
  width: 321px;
  height: auto;
  z-index: 7;
}
.detail_images .detail_image_5 {
  position: absolute;
  top: 430px;
  right: 2%;
  width: 539px;
  height: auto;
  z-index: 5;
}
.detail_images .detail_image_6 {
  position: absolute;
  top: 107px;
  left: 15%;
  width: 428px;
  height: auto;
  z-index: 2;
}
.detail_images .detail_image_7 {
  position: absolute;
  top: 142px;
  right: 0%;
  width: 213px;
  height: auto;
  z-index: 1;
}
@media only screen and (max-width:1270px) {
  .detail_images {
    max-width: 100%;
    height: 748px;
    margin: 0 auto 176px;
  }
  .detail_images .detail_image_1 {
    width: 384px;
    }
  .detail_images .detail_image_2 {
    top: 494px;
    left: 18%;
    width: 317px;
  }
  .detail_images .detail_image_3 {
    top: 33px;
    right: 8%;
    width: 337px;
  }
  .detail_images .detail_image_4 {
    top: 241px;
    right: 34%;
    width: 257px;
  }
  .detail_images .detail_image_5 {
    top: 475px;
    right: 2%;
    width: 431px;
  }
  .detail_images .detail_image_6 {
    top: 107px;
    left: 15%;
    width: 428px;
  }
  .detail_images .detail_image_7 {
    top: 142px;
    right: 0;
    width: 213px;
  }
}
@media only screen and (max-width:1000px) {
  .detail_images {
    height: 945px;
    margin: 0 auto 176px;
  }
  .detail_images .detail_image_1 {
    width: 340px;
  }
  .detail_images .detail_image_2 {
    top: 610px;
    left: 10%;
    width: 280px;
  }
  .detail_images .detail_image_3 {
    top: 96px;
    right: 3%;
    width: 314px;
  }
  .detail_images .detail_image_4 {
    top: 376px;
    right: 34%;
    width: 220px;
  }
  .detail_images .detail_image_5 {
    top: 680px;
    right: 0%;
    width: 420px;
  }
  .detail_images .detail_image_6 {
    top: 236px;
    left: 8%;
    width: 360px;
  }
  .detail_images .detail_image_7 {
    top: 194px;
    right: 0;
    width: 213px;
  }
}
@media only screen and (max-width:700px) {
  .detail_images {
    height: 1148px;
    margin: 0 auto 140px;
  }
  .detail_images .detail_image_1 {
    width: 340px;
  }
  .detail_images .detail_image_2 {
    top: 574px;
    left: 8%;
    width: 238px;
    z-index: 8;
  }
  .detail_images .detail_image_3 {
    top: 316px;
    right: 3%;
    width: 314px;
  }
  .detail_images .detail_image_4 {
    top: 656px;
    left: 35%;
    width: 280px;
  }
  .detail_images .detail_image_5 {
    top: 880px;
    right: 50%;
    transform: translate(60%,0%);
    width: 420px;
  }
  .detail_images .detail_image_6 {
    top: 86px;
    left: 22%;
    width: 324px;
  }
  .detail_images .detail_image_7 {
    top: 624px;
    right: 0;
    width: 186px;
  }
}
@media only screen and (max-width:500px) {
  .detail_images {
    height: 1076px;
  }
  .detail_images .detail_image_1 {
    width: 272px;
  }
  .detail_images .detail_image_2 {
    top: 500px;
    left: 8%;
    width: 202px;
  }
  .detail_images .detail_image_3 {
    top: 282px;
    right: 6%;
    width: 212px;
  }
  .detail_images .detail_image_4 {
    top: 610px;
    left: 22%;
    width: 280px;
  }
  .detail_images .detail_image_5 {
    top: 838px;
    right: 50%;
    transform: translate(50%,0%);
    width: 376px;
  }
  .detail_images .detail_image_6 {
    top: 86px;
    left: 14%;
    width: 290px;
  }
  .detail_images .detail_image_7 {
    top: 578px;
    right: 0;
    width: 184px;
  }
}
.text_slider {
  position: absolute;
  max-width: 1600px;
  overflow: hidden;
  white-space: nowrap;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}
.text_slider_wrap {
  display: inline-block;
  white-space: nowrap;
  will-change: transform;
  animation: text_slider_anim 38s linear infinite;
}
.text_slider_wrap span {
  display: inline-block;
  font-size: 220px;
  letter-spacing: 0.1em;
  opacity: 0.2;
  margin-right: 0.275em;
  text-rendering: geometricPrecision;
}
.purple_slide {
  color: #6763D2;
}
@keyframes text_slider_anim {
  from { transform: translateX(0);}  to { transform: translateX(-50%);} }
@media only screen and (max-width:768px) {
  .text_slider {
    top: 55%;
  }
  .text_slider_wrap span {
    font-size: 140px;
  }
}
@media only screen and (max-width:700px) {
  .text_slider {
    top: 48%;
  }
  .text_slider_wrap span {
    font-size: 140px;
  }
}
@media only screen and (max-width:500px) {
  .text_slider {
    top: 41%;
  }
  .text_slider_wrap span {
    font-size: 120px;
  }
}
/* ----------------------------------
    動画エリア
----------------------------------- */
.mov_area {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100vw;
  color: #fff;
  padding: 148px 10px 138px;
  position: relative;
}
.mov_area.mov_duna {
  background-image: url(/images/dunamis_horoscope/duna_image2.jpg);}
.mov_area.mov_horo {
  background-image: url(/images/dunamis_horoscope/horo_image2.jpg);}
.mov_area::before {
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translate(0%, -50%);
  text-align: center;
  color: #fff;
  opacity: 0.135;
  writing-mode: vertical-rl;
  text-orientation: sideways;
  overflow: hidden;
}
.mov_area.mov_duna::before {
  content: "DUNAMIS"; font-size: 100px;}
.mov_area.mov_horo::before {
  content: "HOROSCOPE"; font-size: 90px;}
@media only screen and (max-width:940px) {
  .mov_area::before {
    display: none;
  }
}
.mov_wrap {
  width: 100%;
  max-width: 792px;
  margin: 0 auto;
}
.mov {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 */
}
.video {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mov_area h5 {
  font-size: 32px;
  margin-bottom: 50px;
  text-align: center;
}
.mov_area p {
  font-size: 15px;
  line-height: 1.8;
  width: 100%;
  padding: 1em 12%;
  margin: 0 auto;
}
@media only screen and (max-width:768px) {
  .mov_area {
    padding: 98px 8px 90px;
  }
  .mov_area h5 {
    font-size: 25px;
    margin-bottom: 32px;
  }
  .mov_area p {
    font-size: 14px;
    width: 100%;
    padding: 1em 8%;
  }
}
/* ----------------------------------
    着用
----------------------------------- */
.wearing_images {
  width: 100vw;
  height: 550px;
  display: grid;
  grid-template-columns: 1fr 1fr;  /* 2列 */
  gap: 0;
}
.wearing_left {
  position: relative;
  grid-column: 1 / 2;
  overflow: hidden;
}
.wearing_right {
  position: relative;
  grid-column: 2 / 2;
  overflow: hidden;
}
.wearing_images img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width:620px) {
  .wearing_images {
    height: 510px;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
  }
  .wearing_left {
    grid-column: 1 / 2;
    height: auto;
  }
  .wearing_right {
    grid-column: 1 / 2;
    height: auto;
  }
}
/* ----------------------------------
    lineup
----------------------------------- */
.model_lineup {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100vw;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.model_lineup.lu_duna {
  background-image: url(/images/dunamis_horoscope/section_header_img_duna.jpg);}
.model_lineup.lu_horo {
  background-image: url(/images/dunamis_horoscope/section_header_img_horo.jpg);}
.lineup_wrap {
  max-width: 1260px;
  margin: 100px 86px 100px;
}
.model_lineup p {
  font-size: 48px;
  text-align: center;
  color: #fff;
  margin-bottom: 70px;
}
.lineup_photos {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin-bottom: 86px;
}
.lineup_photo {
  width: 25%;
}
@media only screen and (max-width:1024px) {
  .model_lineup p {
    font-size: 40px;
    margin-bottom: 70px;
  }
}
@media only screen and (max-width:768px) {
  .lineup_wrap {
    max-width: 500px;
    margin: 70px 40px 70px;
  }
  .model_lineup p {
    font-size: 30px;
    margin-bottom: 58px;
  }
  .lineup_photos {
    flex-wrap: wrap;
    gap: 40px;
    margin-bottom: 60px;
  }
  .lineup_photo {
    width: 150px;
  }
}
@media only screen and (max-width:440px) {
  .lineup_wrap {
    max-width: 300px;
    margin: 70px 0px;
  }
  .model_lineup p {
    font-size: 28px;
    margin-bottom: 52px;
  }
  .lineup_photos {
    flex-wrap: wrap;
    gap: 36px 26px;
    margin-bottom: 60px;
  }
  .lineup_photo {
    width: 116px;
  }
}
/* ----------------------------------
    nav
----------------------------------- */
.nav_menu {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 180px;
  z-index: 20;
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.nav_menu.active {
  transform: translateY(0);
}
.nav_menu.hide {
  transform: translateY(100%);
}
.nav_wrap {
  display: flex;
  text-align: center;
  color: #fff;
}
.nav_duna, .nav_horo {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #1d1d1d;
  height: 104px;
  transition: opacity 0.25s;
}
.nav_duna:hover, .nav_horo:hover {
  opacity: 0.8;
}
.nav_duna a:hover, .nav_horo a:hover {
  color: #fff;
}
.nav_duna:active, .nav_horo:active {
  opacity: 1;
}
.nav_duna a, .nav_horo a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
.nav_duna p, .nav_horo p {
  font-size: 10px;
}
@media only screen and (max-width:767px) {
  .nav_menu {
    bottom: 60px;
    width: 146px;
  }
  .nav_duna, .nav_horo {
    height: 68px;
  }
  .nav_duna a, .nav_horo a {
    gap: 5px;
  }
  .nav_duna p, .nav_horo p {
    font-size: 9px;
  }
  .nav_duna img, .nav_horo img {
    width: 28px;
  }
}