@charset "UTF-8";/* CSS Document */.section-top {  position: relative;  width: 100%;  height: 100vh;}#top-mv {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 90vh;  background-image: url("../image/top/mv/mv-image-sp@2x.png");  background-size: cover;  background-repeat: no-repeat;  background-position: 43% bottom;  z-index: 2;}.mv-name {  width: 76%;  max-width: 1200px;  margin: 50px auto 0;  text-align: left;  z-index: 3;}.mv-name p {  padding-top: 100px;  font-size: 1.2rem;}.mv-name h2 {  margin-top: 50px;  font-family: fot-tsukuardgothic-std, sans-serif;  font-weight: 400;  letter-spacing: 0.13em;}.mv-name h2 span {  font-size: 1.4rem;  letter-spacing: 0.08em;}.mv-under {  position: absolute;  top: 0;  left: 0;  width: 100%;  min-width: 320px;  height: 98vh;  background-image: url("../image/top/mv/mv-sp_bg@2x.png");  background-size: cover;  background-position: bottom;  z-index: 1;}.mv-message {  position: relative;  width: 89%;  margin: 0 auto;  padding: 180px 0;}.mv-message p {  margin: 0 auto;  font-size: 1.4rem;  line-height: 2.1;}.mv-message p span {  color: #CEACB7;}.mv-message p::before {  position: absolute;  top: 125px;  right: 0;  display: block;  content: "";  width: 125px;  height: 23px;  background-image: url("../image/bg_deco/decoration@2x.png");  background-size: contain;  background-repeat: no-repeat;}.mv-message p::after {  position: absolute;  bottom: 125px;  left: 0;  display: block;  content: "";  width: 125px;  height: 23px;  background-image: url("../image/bg_deco/decoration@2x.png");  background-size: contain;  background-repeat: no-repeat;  transform: scale(-1, -1);}/*416px以上でメッセージ１行に*/@media screen and (min-width: 416px) {  .mv-message {    max-width: 1099px;  }  .mv-message p br {    display: none;  }}@media screen and (min-width: 501px) {  #top-mv {    background-image: url("../image/top/mv/mv-image-pc@2x.png");    background-position: 50% bottom;  }  .mv-under {    background-image: url("../image/top/mv/mv-pc_bg@2x.png");  }}/*731px以上で余白、装飾のサイズ変更*/@media screen and (min-width: 731px) {  .mv-message {    padding: 266px 0;  }  .mv-message p {    font-size: 2.0rem;    line-height: normal;  }  .mv-message p::before {    top: 120px;    width: 300px;    height: 56px;  }  .mv-message p::after {    bottom: 120px;    width: 300px;    height: 56px;  }}@media screen and (min-width: 1025px) {  .mv-name {    margin: 66px auto 0;  }  .mv-name p {    padding-top: 40px;    font-size: 1.8rem;  }  .mv-name h2 {    margin-top: 60px;    font-size: 3.0rem;    letter-spacing: 0.21em;  }  .mv-name h2 span {    font-size: 2.0rem;    letter-spacing: 0.03em;  }}.section-category {  width: 100%;  margin: 0 auto 120px;}.section-category.other {  margin: 0 auto 100px;}.category-title_sp {  margin-bottom: 40px;}.category-title_sp.entertainment::first-letter {  letter-spacing: 0.08em;}.category-title_pc {  display: none;}.image-container {  width: 76%;  margin: 0 auto;}.image-slider_odd, .image-slider_even {  width: 100%;  list-style: none;}.image-slider_odd li img, .image-slider_even li img {  width: 100%;  max-width: 600px;  height: 67%;  margin: 0 auto 10px;  object-fit: cover;  object-position: center;}.more-button {  width: 105px;  margin: 0 auto;}.more-button a {  width: 100%;  height: 100%;}.more-button a p {  padding: 10px 35px;  font-family: courier-std, monospace;  color: #555555;}.more-button a p:hover {  transform: scale(1.1);}.more-button span {  position: relative;  display: block;  content: "";  width: 40px;  height: 0;  margin: 0 auto;  background-color: #CEACB7;  border: solid 1px #CEACB7;  border-radius: 50px;  z-index: 100;}.more-button span::before {  position: absolute;  top: -3px;  left: -34px;  display: inline-block;  content: "";  width: 30px;  height: 6px;  background: radial-gradient(circle farthest-side, #CEACB7, #CEACB7 50%, transparent 50%, transparent);  background-size: 6px 6px;  z-index: 100;}.more-button span::after {  position: absolute;  top: -3px;  right: -34px;  display: inline-block;  content: "";  width: 30px;  height: 6px;  background: radial-gradient(circle farthest-side, #CEACB7, #CEACB7 50%, transparent 50%, transparent);  background-size: 6px 6px;  z-index: 100;}@media screen and (min-width: 1025px) {  .section-category {    display: flex;    justify-content: space-around;    align-items: center;    max-width: 1200px;  }  .section-category.other {    margin: 0 auto 175px;  }  .image-container, .titile-button-container {    width: 50%;  }  .category-title_sp {    display: none;  }  .category-title_pc {    display: block;    margin-bottom: 80px;  }  .category-title_pc.entertainment::first-letter {    letter-spacing: 0.08em;  }  .section-category:nth-child(even) {    flex-direction: row-reverse;  }  .image-slider_odd li img, .image-slider_even li img {    margin: 0 auto 20px;  }  .more-button {    width: 115px;  }  .more-button a p {    padding: 15px 35px;    font-size: 1.8rem;  }  .more-button span {    width: 50px;    border: solid 2px #CEACB7;  }  .more-button span::before {    top: -4px;    left: -36px;    height: 8px;    background-size: 8px 8px;  }  .more-button span::after {    top: -4px;    right: -36px;    height: 8px;    background-size: 8px 8px;  }}.section-profile {  position: relative;  width: 100%;}.profile-bg_sp {  width: 100%;  height: 605px;}.profile-bg_pc {  display: none;}.section-profile h2 {  position: absolute;  top: 0;  width: 100%;  margin: 100px auto 40px;}.profile-wrapper {  position: absolute;  top: 165px;  width: 100%;}.profile-container {  display: flex;  flex-wrap: wrap;  justify-content: space-around;  align-items: center;  width: 100%;  max-width: 600px;  margin: 0 auto;}.profile-image {  position: relative;  width: 200px;  height: 200px;  margin: 0 auto;  aspect-ratio: 1/1;}.profile-image img {  position: absolute;  bottom: 4%;  right: 4%;  width: 86%;  height: 86%;  border-radius: 10px;  object-fit: cover;}.profile-image::after {  position: absolute;  top: 4%;  left: 4%;  display: block;  content: "";  box-sizing: border-box;  width: 86%;  height: 86%;  border: solid 2px #FFFFFF;  border-radius: 10px;}.profile-content {  width: 275px;  margin: 0 auto;}.profile-text {  margin: 30px auto 35px;  line-height: 2.15;  text-align: left;}.more-button.white span {  background-color: #FFFFFF;  border: solid 1px #FFFFFF;}.more-button.white span::before, .more-button.white span::after {  background: radial-gradient(circle farthest-side, #FFFFFF, #FFFFFF 50%, transparent 50%, transparent);  background-size: 6px 6px;}@media only screen and (min-width:550px) and (max-width:1024px) {  .profile-content {    box-sizing: border-box;    padding: 0 2px;  }}@media screen and (min-width: 475px) {  .profile-container {    margin: 100px auto 0;  }}@media only screen and (min-width:550px) {  .profile-container {    margin: 0 auto;  }  .profile-bg_sp {    display: none;  }  .profile-bg_pc {    display: block;    width: 100%;    height: 467px;    object-fit: cover;  }}@media screen and (min-width: 1025px) {  .profile-bg_pc {    height: 750px;  }  .section-profile h2 {    margin: 150px auto 80px;  }  .profile-wrapper {    top: 258px;  }  .profile-container {    max-width: 880px;  }  .profile-image {    width: 350px;    height: 350px;  }  .profile-image img {    bottom: 0;    right: 0;    width: 95%;    height: 95%;  }  .profile-image::after {    top: 0;    left: 0;    width: 95%;    height: 95%;  }  .profile-content {    position: relative;    width: 510px;    height: 226px;    margin: 0 auto;  }  .profile-text {    position: absolute;    top: 0;    right: 10px;    width: 375px;    margin: 0 auto 100px;    font-size: 1.6rem;    line-height: 1.9;  }  .more-button.white {    position: absolute;    bottom: 0;    right: 20px;  }  .more-button.white span {    border: solid 2px #FFFFFF;  }  .more-button.white span::before, .more-button.white span::after {    background: radial-gradient(circle farthest-side, #FFFFFF, #FFFFFF 50%, transparent 50%, transparent);    background-size: 8px 8px;  }}@media screen and (min-width: 1800px) {  .profile-bg_pc {    object-fit: fill;  }}.section-link {  width: 100%;  margin-top: 100px;}.shop-link.main_link {  margin: 40px auto;}.shop-link.main_link a {  padding: 10px 30px;}.sns-wrapper.main_link {  margin: 0 auto 120px;}@media screen and (min-width: 1025px) {  .section-link {    margin-top: 175px;  }  .shop-link.main_link {    margin: 95px auto 55px;  }  .shop-link.main_link a {    padding: 15px 70px;    font-size: 1.6rem;  }  .sns-wrapper.main_link {    width: 120px;    height: 34px;    margin: 0 auto 180px;  }  .sns-wrapper.main_link img {    width: 34px;    height: 34px;  }}/*TOPスライド　ドットのスタイル*/.dots-odd, .dots-even {  display: flex;  justify-content: center;  bottom: -28px;  margin: 0 auto 20px;  list-style: none;}.dots-odd li, .dots-even li {  width: 8px;  height: 8px;  margin: 0 10px;}.dots-odd li button, .dots-even li button {  position: relative;  font-size: 0;  line-height: 0;  display: block;  width: 8px;  height: 8px;  padding: 0;  margin: 0 auto;  cursor: pointer;  color: transparent;  border: 0;  outline: none;  background: #CEACB7;  border-radius: 20px;}.dots-odd li button:before, .dots-even li button:before {  position: absolute;  top: 1px;  left: 1px;  content: "";  width: 6px;  height: 6px;  padding: 0;  opacity: 1;  color: transparent;  background-color: #FFFFFF;  border-radius: 6px;}.dots-odd li.slick-active button:before, .dots-even li.slick-active button:before {  opacity: 1;  background-color: #CEACB7;}@media screen and (min-width: 1025px) {  .dots-odd {    justify-content: flex-start;    bottom: -15px;    margin: 0 0 0 100px;  }  .dots-even {    justify-content: flex-end;    bottom: -15px;    margin: 0 100px 0 0;  }  .dots-odd li, .dots-even li {    width: 20px;    height: 15px;  }  .dots-odd li button, .dots-even li button {    width: 12px;    height: 12px;  }  .dots-odd li button:before, .dots-even li button:before {    top: 2px;    left: 2px;    width: 8px;    height: 8px;    border-radius: 13px;  }}.fadeup {  opacity: 0;}.fadeUpanime {  animation-name: fadeUpAnime;  animation-duration: 1s;  animation-fill-mode: forwards;  opacity: 0;}@keyframes fadeUpAnime {  from {    opacity: 0;    transform: translateY(50px);  }  to {    opacity: 1;    transform: translateY(0);  }}