/* ///// color ///////////////////////////////// */
:root {
 --color_blue:#2c7ffd;
 --color_lightblue:#26ccfe;
 --color_red:#eb2323;
}
/* /////////////////////////////////////////////  */
* {
 margin: 0;
 padding: 0;
}

html {
 font-size: 62.5%;
}

.header_bg img {
 position: relative;
 width: 100%;
}

body {
 position: relative;
 z-index: 0;
 overflow-x: hidden;
 background-color: #ffffff;
 font-weight: 400;
 font-family: "Poppins", "Noto Sans JP", "Hiragino Sans", "Meiryo", "serif";
 line-height: 1.3;

 -webkit-text-size-adjust: 100%;
 -webkit-text-size-adjust: none;
}

img {
 width: 100%;
}

a {
 text-decoration: none;
 transition: .3s;
}

a:hover ,
a:hover:after {
 opacity: .5;
}

p {
 width: 100%;
}

.pc {
 display: block;
}

.sp {
 display: none;
}

/* ///// layout ///////////////////////////////// */
section ,
article ,
footer {
 display: flex;
 position: relative;
 align-items: center;
 flex-direction: column;
 width: 100%;
 text-align: center;
}

footer{
    background-color: #1b1f3c;
}

.l_section_category {
 padding-bottom: 0%;
}

/* padding */
.l_padding_m {
 padding: 3% 0 5%;
}

.l_padding_s {
 padding: 2% 0 5%;
}

.l_padingbottom_l {
 /* padding: 3% 0; */
}

/* width */
.l_width_full {
 width: 100%;
}

.l_width_inner {
 margin: 0 auto;
 /* width: 87%; */
 width: 100%;
}

.l_width_inner h2{
    width: 100%;
    background-color: #1b1f3c;
}


@media (max-width: 768px) {
 .l_width_inner {
  /* width: 95%; */
  width: 100%;
 }
}

.l_widht_medium {
 margin: 3% auto;
 width: 95%;
}

.l_widht_medium_l {
 margin: 0 auto;
 width: 93%;
}

/* ///// component ///////////////////////////////// */
.c_ttl {
 padding: 1% 0;
 width: 100%;
 background-color: #858585;
 color: #ffffff;
 letter-spacing: .2rem;
 font-weight: bold;
 font-style: italic;
 font-size: min(25px, 5vw);
 font-family: "Poppins";
 text-align: center;
}
@media (min-width: 1025px) {
 .c_ttl {
  font-size: 2.45vw;
 }
}

/* boxshadow */
.c_boxshadow {
 position: relative;
 box-sizing: border-box;
 margin-bottom: clamp(5px, .8vw, 10px);
 padding: .9% 0 1%;
 width: 100%;
 border: 2px solid #000000;
 background: #ffffff;
 font-size: min(20px, 3vw);
}

@media (min-width: 1025px) {
 .c_boxshadow {
  font-size: 1.95vw;
 }
}

@media (max-width: 769px) {
 .c_boxshadow {
  border: 1.5px solid #000000;
 }
}

.c_boxshadow:after {
 position: absolute;
 top: clamp(5px, .8vw, 10px);
 left: clamp(5px, .8vw, 10px);
 z-index: -1;
 box-sizing: border-box;
 width: 100%;
 height: 100%;
 border: 2px solid #000000;
 background: #000000;
 content: "";
}
@media (max-width: 769px) {
 .c_boxshadow:after {
  border: 1.5px solid #000000;
 }
}

.c_boxshadow_red:after {
 background: var(--color_red);
}

.c_boxshadow_blue:after {
 background: var(--color_blue);
}

.c_boxshadow_lightblue:after {
 background: var(--color_lightblue);
}

.c_box_blue {
 background: var(--color_lightblue);
 color: #ffffff;
}

.footer_large {
 font-size: 1.5vw;
}

/* txt */
.c_txt_bold {
 text-align: left;
 font-weight: 500;
}

.c_txt_bold2 {
 font-weight: bold;
}

.c_txt_left {
 text-align: left;
}

.c_txt_red {
 color: var(--color_red);
}

.c_txt_blue {
 color: var(--color_blue);
}

.c_txt_medium {
 font-size: min(20px, 3.5vw);
}

.footer_tw {
 width: 75%;
}

.c_hrimg {
 width: 89%;
}

@media (min-width: 1025px) {
 .c_txt_medium {
  margin: 2%;
  font-size: 1.95vw;
 }
}

@media (max-width: 750px) {
 .c_txt_medium {
  margin: 2%;
 }
}

.c_txt_medium_s {
 color: #ffffff;
 white-space: nowrap;
 font-size: .8vw;
 font-family: emoji;
}

@media (min-width: 1025px) {
 .c_txt_medium_s {
  white-space: nowrap;
  font-size: .8vw;
 }
}

.c_txt_large {
 font-size: min(25px, 4.7vw);
}
@media (min-width: 1025px) {
 .c_txt_large {
  font-size: 3vw;
 }
}

.c_txt_xlarge {
 font-size: min(28px, 5.5vw);
}

@media (min-width: 1025px) {
 .c_txt_xlarge {
  font-size: 2.8vw;
 }
}

.c_txt_normal {
 font-weight: bold;
 font-size: min(14px, 4vw);
}

.c_txt_small {
 font-size: min(14px, 3vw);
}

.footer_flex {
 display: flex;
 justify-content: center;
 align-items: center;
 margin: auto;
 width: 90%;
}

.footer_flex a {
 margin: 2% .5%;
}

.footer_btn {
 width: 46%;
}

.footer_btn2 {
 width: 24%;
}

.footer_btn3 {
 width: 25%;
}

.footer_btn4 {
 width: 50%;
}
.footer_btn5 {
 width: 40%;
}

.footer_logo {
 width: 30%;
}

@media (min-width: 1025px) {
 .c_txt_normal {
  font-size: 1.8vw;
 }
 .c_txt_small {
  font-size: 1.35vw;
 }
}

/* line-height */
.c_txt_attention {
 line-height: 1.7;
}

/* ///// top ///////////////////////////////// */
.p_catchcopy {
 padding-top: 3%;
 padding-bottom: 1%;
}

.p_summary_map {
 position: absolute;
 top: 13%;
 left: 50%;
 width: 43%;
 height: 20%;
}

.p_btn_onlineshop {
 width: 40%;
}
@media (max-width:769px) {
 .p_btn_onlineshop {
  width: 75%;
 }
 .footer_flex {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    width: 98%;
   }
   
   .footer_flex a {
    margin: 2% .5%;
   }
   
   .footer_btn {
    width: 46%;
   }
   
   .footer_btn2 {
    width: 24%;
   }
   
   .footer_btn3 {
    width: 25%;
   }
   
   .footer_btn4 {
    width: 50%;
   }
   .footer_btn5 {
    width: 48%;
   }
   
   .footer_logo {
    width: 30%;
   }
   
}

/* ///// schedule ///////////////////////////////// */
.p_schedule_data {
 letter-spacing: min(.3vw, .5rem);
 text-align: center;
}

.p_schedule_attention {
 padding: 2% 0 3%;
 text-align: center;
}

/* ///// access ///////////////////////////////// */
.p_access_map {
 display: flex;
 align-items: flex-start;
 flex-direction: row;
 padding-top: 3%;
}

/* ///// goods ///////////////////////////////// */
.goods_banner {
 position: absolute;
 top: 90.7%;
 left: 50%;
 width: 40%;
 transform: translate(-50%);
}

.mada {
 pointer-events: none;
}

.p_goods_headtxt {
 margin-bottom: 4%;
}

.p_goods_headtxt p:nth-child(2) {
 padding: 2% 0 3%;
}

.p_btn_resale {
 width: 95.5%;
}

/* ///// novelty ///////////////////////////////// */
.p_novelty_img {
 padding: 5% 0 7%;
}

.p_txt_conditions {
 line-height: 1.9;
}
.conts_text {
    padding: 1.5em;
    line-height: 1.5;
    font-size: clamp(12px, 1.8vw, 25px);
}

.conts_text h3 {
    border-bottom: 2px solid #000;
    margin: 0 auto;
    font-size: clamp(16px, 2.5vw, 3rem);
    font-weight: bold;
    padding-left: 0.5em;
}

.conts_text img {
    max-width: 100%;
}

.conts_text p.center {
    text-align: center;
}

.conts_text p {
    margin: 1rem auto 1.5rem auto;
}


/* ///// link ///////////////////////////////// */
.p_link {
 display: flex;
 align-items: center;
 flex-wrap: wrap;
 justify-content: center;
 margin: 0 auto;
 width: 100%;
 list-style: none;
}

.p_link {
 margin-top: 1%;
}

.p_link_04 {
 margin-bottom: 3%;
}

.p_link li {
 margin: .5%;
 padding: 1% 2%;
 width:      fit-content;
 transition: .5s;
}

.p_link_03:hover ,
.p_link li:hover ,
.p_link li:hover::after {
 opacity: .5;
}

.p_link a {
 display: flex;
 align-items: center;
 justify-content: center;
 width: 100%;
 color: #000000;
}

li.p_link_melon {
 width: 20%;
}

.footer_banner {
 margin: auto;
 width: 80%;
}



@media (max-width: 805px) {
 .footer_large {
  font-size: 2.5vw;
 }

 .p_schedule_attention {
  text-align: center;
 }
}

@media (max-width: 769px) {
 .p_access_map {
  flex-direction: column;
 }
}

.p_access_map_txt {
 padding-left: 5%;
 width: 53%;
}

@media (max-width: 769px) {
 .p_access_map_txt {
  padding: 3% 0 9%;
 }
}

.p_access_map iframe {
 width: min(42%, 726px);
 aspect-ratio: 363/200;
}

@media (max-width: 769px) {
 .p_access_map iframe {
  width: 100%;
 }
}

.p_attention {
 display: block;
 margin: 5% 0 3%;
}


@media (max-width: 769px) {
 .p_link_01 li:not(:last-child) {
  padding-right: 4%;
  padding-left: 4%;
 }
}

.p_link_02 li:not(:first-child) {
 margin-left: 7%;
}

@media (max-width: 769px) {
 .p_link_02 li:not(:first-child) {
  margin-left: 3%;
 }
}

.p_link_03 {
 width: max(680px,65vw);
}
@media (max-width: 769px) {
 .p_link_03 {
  width: 92%;
 }
}

.p_link_04 li:not(:first-child) {
 margin-left: 3%;
}

.p_link_specialtxs {
 display: flex;
 word-break: keep-all;
}

.p_link_specialtxs span:first-child {
 display: block;
 padding-right: 2%;
 line-height: 1;
}

@media (max-width: 769px) {
 .p_txt_linkmedium {
  font-size: min(14px, 4vw);
 }

 .p_txt_linksmall {
  font-size: min(14px, 2vw);
 }

 .c_txt_bold {
  text-align: center;
 }

 .p_access_map_txt {
  width: 100%;
 }

 .c_txt_left {
  text-align: center;
 }
}

/* ///// utility ///////////////////////////////// */
/* margin */
.u_m30 {
 margin-top: 1.5%;
 margin-bottom: 1.5%;
}

.u_mt70b100 {
 margin-top: 3.5%;
 margin-bottom: 5%;
}

/* margin-top */
.u_mt30 {
 margin-top: 1.5%;
}

/* ///// responseve ///////////////////////////////// */
@media (max-width: 768px) {
 .pc {
  display: none;
 }

 .sp ,
 .br {
  display: block;
 }
}
@media (max-width: 580px) {
 .footer_logo {
  width: 40%;
 }
}

