@charset "UTF-8";

:root {
	--rate: 50rem / 390;
	--color-lp_font: #333;
	--color-lp_bg: linear-gradient(135deg, #feffff, #e5f7ff 50%, #feffff);
	--color-sub_color: #116AB5;
	--color-inner_bg: #FFF;
	--color-sub_bg: #FFF;
	--font-lp_eng: "Zen Maru Gothic", sans-serif;
}

/*--------------------------------
                共 通
 --------------------------------*/

main,#Wrap,.wrapBottom,.wrapTop{
  width: 100%;
  max-width: 100%;
}

#FooterWrap{
  position: relative;
  z-index: 100;
  background-color: #fff;
}

#header_txt_slider,
#header_img_slider {
  position: relative;
  z-index: 100;
}

#lp_contents *{
  box-sizing: border-box;
}

#lp_contents{
  font-family: var(--font-lp_base);
  font-feature-settings: "palt";
  font-size: calc(13 * (var(--rate)));
  letter-spacing: 0.1em;
  /* color: #222; */
  font-weight: 400;
  display: flex;
  justify-content: center;
  color: var(--color-lp_font);
  /* background: var(--color-lp_bg); */
  position: relative;
  /* overflow: hidden; */
}
#lp_contents .sp_only{display: none;}
#lp_contents img{width: 100%;display: block;height: auto;image-rendering: -webkit-optimize-contrast;-webkit-backface-visibility: hidden;}
#lp_contents a{/* display: block; *//* width: 100%; */cursor: pointer;transition: all 0.5s;/* color: inherit; */}
#lp_contents a:hover{opacity: .8;}
#lp_contents ul li,#lp_contents ol li{list-style: none;}
#lp_contents section{
  position: relative;
  padding-bottom: calc(60 * (var(--rate)));
  /* padding-right: calc(25 * (var(--rate))); */
  /* padding-left: calc(25 * (var(--rate))); */
}
#lp_contents .lp_inner{
  position: relative;
  z-index: 3;
  width: 100%;
  background-color: var(--color-inner_bg);
  box-shadow: 0 0 .5rem hsl(0deg 0% 67% / 25%);
  order: 2;
  /* padding-bottom: calc(60 * (var(--rate))); */
  /* display: grid; */
  /* gap: calc(60 * (var(--rate))); */
}
#share {
    bottom: calc(75 * (var(--rate)))  !important;
    left: calc(10 * (var(--rate))) !important;
    /* right: 2% !important; */
}

/*------------ Text ------------*/
#lp_contents h1,#lp_contents h2,#lp_contents h3{padding: 0;float: none;font-weight: normal;}
#lp_contents p {
  /* margin: calc(30 * (var(--rate))) auto; */
  letter-spacing: 0.1em;
  /* font-size: calc(15 * (var(--rate))); */
  /* line-height: 2; */
}
#lp_contents sup{
  font-size: 50%;
  margin-top: -0.6rem;
}
#lp_contents .note{
  /* margin-top: calc(10 * (var(--rate))); */
  font-size: calc(11 * (var(--rate))) !important;
  /* line-height: 1.5; */
  /* font-weight: 400; */
}
#lp_contents p .note{
  margin-top: 0;
}
#lp_contents .bold{
  font-weight: bold;
}
#lp_contents .small{
  font-size: calc(10 * (var(--rate)));
}

#lp_contents .en-txt {
    font-family: "span-compressed", serif;
    font-weight: 700;
    letter-spacing: 0.02em;
}
/* 追従メニュー */
.fixed-nav {
	display: none;
}
.fixed-nav.m_fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	border-top: 1px solid var(--color-lp_font);
	border-bottom: 1px solid var(--color-lp_font);
	width: 100%;
	animation: fadein 1s ease-out forwards;
	display: block;
	z-index: 20;
	background: var(--color-inner_bg);
}

.fixed-nav.m_fixed .nav-list {
    display: flex;
    align-items: center;
    height: 5rem;
    background: #fff;
    color: #6CC4BE;
    /* font-family: "Marcellus", "Noto Sans JP", sans-serif; */
    justify-content: center;
    box-shadow: 0 0 6px #dddddd;
    /* padding: 0 6rem; */
}

.fixed-nav.m_fixed .nav-list li a {
    padding: 0 1.6rem;
    font-weight: 500;
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.4;
    /* display: flex; */
    /* justify-content: center; */
    width: auto;
}

.fixed-nav a.active {
    opacity: 1 !important;
    font-weight: 600;
}


/* Contents エリア調整
==================================*/
#intro-section .lead_txt p {
    font-size: calc(15 * (var(--rate)));
    text-align: center;
    margin-top: calc(15 * (var(--rate)));
    /* letter-spacing: 0.1em; */
    line-height: 2;
}

#intro-section .lead_txt {
    text-align: center;
    margin: calc(40 * (var(--rate))) auto calc(30 * (var(--rate)));
    font-size: calc(18 * (var(--rate)));
    line-height: 2;
    font-weight: 500;
    letter-spacing: 0.08em;
}

#lp_contents .item-section .sec-ttl {
    /* font-size: calc(28 * (var(--rate))); */
    /* font-weight: 600; */
    padding: 0 calc(60 * (var(--rate))) calc(30 * (var(--rate))) calc(40 * (var(--rate)));
    /* line-height: 1.5; */
}

#lp_contents .lp_inner .sec-ttl span {
    font-size: calc(16 * (var(--rate)));
    width: fit-content;
    display: block;
    color: var(--color-font_red);
    position: relative;
    margin: 0 auto;
}

#lp_contents .btn-detail a {
    border-radius: 10rem;
    color: #fff;
    /* background: var(--color-sub_color); */
    text-align: center;
    padding: calc(5 * (var(--rate))) 0 calc(6 * (var(--rate)));
    display: block;
    font-size: calc(14 * (var(--rate)));
    width: calc(100 * (var(--rate)));
    line-height: 1.5;
    font-weight: 700;
    /* margin: calc(10 * (var(--rate))) auto 0; */
    font-family: var(--font-lp_eng);
}

#lp_contents .btn-detail a::after {
    /* content: ''; */
    position: absolute;
    right: calc(3 * (var(--rate)));
    top: 50%;
    transform: translate(0, -50%);
    width: 0;
    height: 0;
    border-left: calc(4 * (var(--rate))) solid;
    border-top: calc(4 * (var(--rate))) solid transparent;
    border-bottom: calc(4 * (var(--rate))) solid transparent;
}
#lp_contents .btn-all a {
    /* background: var(--color-sub_color); */
    /* color: #fff; */
    /* font-family: var(--font-lp_eng); */
    /* font-size: calc(15 * (var(--rate))); */
    /* position: relative; */
    width: calc(290 * (var(--rate)));
    display: block;
    margin: 0 auto;
    text-align: center;
    padding-top: calc(60 * (var(--rate)));
    /* border-radius: calc(2 * (var(--rate))); */
    /* font-weight: 600; */
}
#lp_contents .btn-all a::after {
    content: '';
    width: calc(5 * (var(--rate)));
    height: calc(5 * (var(--rate)));
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: calc(18 * (var(--rate)));
    bottom: 0;
    margin: auto;
}

#lp_contents .left_area dt {
    font-family: var(--font-lp_eng);
    font-size: 4.5rem;
    letter-spacing: .1em;
	line-height: 1.2;
}

#lp_contents .left_area dd {
	text-align: center;
	font-size: 2rem;
	line-height: 1.75;
	padding-top: 2rem;
	font-weight: 600;
	letter-spacing: .1em;
}


body.is-fixed #HeaderWrap, body.is-fixed .page-share-btn, body.is-fixed #FooterWrap {
    display: none;
}


body.is-fixed {
    overflow: hidden;
}

#lp_contents .sp-nav .all-btn a {
    width: calc(260 * (var(--rate)));
    font-size: calc(16 * (var(--rate)));
}
#lineup-section .item-wrap .item_price .small-txt {
    letter-spacing: .05em;
}

#lp_contents .lp_inner .sec-ttl span::before, #lp_contents .lp_inner .sec-ttl span::after {
    content: '';
    position: absolute;
    width: calc(8 * (var(--rate)));
    height: calc(1 * (var(--rate)));
    background-size: 100%;
    background-color: var(--color-font_red);
    top: 50%;
    transform: translate(0, -50%);
}

#lp_contents .lp_inner .sec-ttl span::before {
    left: calc(-15 * (var(--rate)));
}

#lp_contents .lp_inner .sec-ttl span::after {
    right: calc(-12 * (var(--rate)));
}
#lineup-section .item-wrap h3 span {
    font-weight: 600;
    font-size: calc(25 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap {
    display: flex;
    justify-content: center;
    gap: calc(10 * (var(--rate)));
    font-weight: 600;
    align-items: center;
    margin: calc(5 * (var(--rate))) auto calc(10 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap .off-txt {
    font-size: calc(13 * (var(--rate)));
    border: 1px solid;
    line-height: 1;
    padding: calc(2 * (var(--rate))) calc(8 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap .off-txt span {
    font-size: calc(18 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap .price-txt {
    font-size: calc(24 * (var(--rate)));
    letter-spacing: .05em;
}

#lineup-section .item-wrap .item_detail {
    margin: calc(15 * (var(--rate))) 0 calc(20 * (var(--rate)));
}

#lineup-section .item-wrap .btn-area {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(10 * (var(--rate)));
}

#lineup-section .item-wrap .btn-area a {
    border: 1px solid var(--color-font_red);
    border-radius: 10rem;
    text-align: center;
    padding: calc(7 * (var(--rate))) 0 calc(6 * (var(--rate)));
    font-size: calc(13 * (var(--rate)));
    letter-spacing: 0.05em;
    color: var(--color-font_red);
    position: relative;
    box-shadow: 0px 4px 0px #9f0006;
    transition: .3s;
	width: calc(170 * (var(--rate)));
}

#lineup-section .item-wrap .detail-btn {
    color: var(--color-font_red);
    background: #fff;
    /* border: 1px solid; */
    /* box-shadow: 0px 4px 0px #9f0006; */
    /* transition: .3s; */
}


#lp_contents .nav-wrapper {
    position: fixed;
    z-index: 20;
    bottom: 0;
    width: 100%;
    /* translate: 0 -100%; */
    opacity: 0;
    transition: translate .3s ease,
        opacity .3s ease;
}

#lp_contents .nav-wrapper.m_fixed {
    translate: 0 0;
    opacity: 1;
}

#lp_contents .nav-wrapper .nav_list {
    background: #fff;
    display: flex;
    align-items: center;
    box-shadow: 0 0 5px #ddd;
    color: #fff;
    height: calc(64 * (var(--rate)));
    padding: calc(10 * (var(--rate))) calc(20 * (var(--rate)));
    gap: calc(4 * (var(--rate)));
    border-radius: calc(20 * (var(--rate))) calc(20 * (var(--rate))) 0 0;
}

#lp_contents .nav-wrapper .nav_list li {
    width: calc(100% / 3);
    text-align: center;
    /* font-size: calc(12 * (var(--rate))); */
    /* line-height: 1.4; */
    position: relative;
    /* letter-spacing: 0.08em; */
}

#lp_contents .nav-wrapper .nav_list span {
    display: block;
    font-size: calc(15 * (var(--rate)));
    font-weight: 600;
}


#lp_contents .item-wrap .item {
    width: calc(160 * (var(--rate)));
    background: #fff;
    box-shadow: 0 0 10px hsl(0deg 0% 0% / 5%);
}

#lp_contents .item-wrap .item_img {
    position: relative;
    border-bottom: 1px solid #EEEEEE;
}

#lp_contents .item-wrap .item_name {
    letter-spacing: .05em;
    font-size: calc(12 * (var(--rate)));
    margin-bottom: calc(7 * (var(--rate)));
}

#lp_contents .item-wrap .item_name span {
    font-weight: 600;
    display: block;
    padding-bottom: calc(2 * (var(--rate)));
}

#lp_contents .item-wrap .item_price {
    color: #F05858;
    font-size: calc(16 * (var(--rate)));
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1.2;
}

#lp_contents .item-wrap .tax {
    font-size: calc(10 * (var(--rate)));
    font-weight: 400;
}

#lp_contents .item-section {
    padding: calc(60 * (var(--rate))) 0;
    border-bottom: calc(1 * (var(--rate))) dashed #666;
    background: url(../img/bg_inner.png) repeat-y;
    background-size: contain;
}

#lp_contents .item-section .item-txt {
    line-height: 1.7;
    margin-bottom: calc(12 * (var(--rate)));
}

#lp_contents .item-section .item-name {
    font-size: calc(14 * (var(--rate)));
    font-weight: 500;
    margin: calc(4 * (var(--rate))) 0 calc(8 * (var(--rate)));
    line-height: 1.4;
}

#lp_contents .item-section .item-price {
    font-size: calc(18 * (var(--rate)));
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
}

#lp_contents .item-section .tax {
    font-size: calc(11 * (var(--rate)));
}

#lp_contents .fl-blk {
    display: flex;
    /* justify-content: space-between; */
    /* align-items: center; */
}


#lp_contents .item-section .item-wrap h3 {
    font-family: var(--font-lp_eng);
    text-align: center;
    font-size: calc(50 * (var(--rate)));
    font-weight: 500;
    color: var(--color-sub_color);
    opacity: 0.2;
    margin-bottom: calc(-19 * (var(--rate)));
    /* padding-bottom: calc(6 * (var(--rate))); */
    letter-spacing: 0.05em;
}

#lp_contents .item-section .item-wrap h3 span {
    display: block;
    font-size: calc(13 * (var(--rate)));
    font-family: var(--font-lp_eng);
    letter-spacing: 0.05em;
}

#lp_contents .item-section .item-wrap h3::before {
    content: '';
    position: absolute;
    background: url(../img/ttl_arch.svg) no-repeat;
    background-size: 100%;
    width: 100%;
    height: calc(30 * (var(--rate)));
    left: 0;
    top: calc(-20 * (var(--rate)));
}
#lp_contents .item-section .brand-name {
    display: block;
    font-size: calc(13 * (var(--rate)));
    font-weight: 700;
    padding-bottom: calc(5 * (var(--rate)));
}

#intro-section .nav_list {
    display: flex;
    margin: 0 calc(20 * (var(--rate)));
    gap: calc(4 * (var(--rate)));
}

#lp_contents .item-panel {
    background: #fff;
    padding: calc(25 * (var(--rate)));
    margin: 0 calc(20 * (var(--rate))) calc(15 * (var(--rate)));
    box-shadow: 0 0 8px rgb(153 153 153 / 10%);
    z-index: 1;
    position: relative;
}
#lp_contents .item-panel .item-ttl {
    color: var(--color-sub_color);
    text-align: center;
    font-size: calc(13 * (var(--rate)));
    position: relative;
    line-height: 1.5;
    border: calc(1 * (var(--rate))) solid #d0dee9;
    border-radius: calc(2 * (var(--rate)));
    padding: calc(10 * (var(--rate))) 0;
    background: radial-gradient(#ffffff 50%, #fafdff);
    margin-bottom: calc(15 * (var(--rate)));
}

#lp_contents .item-panel .item-ttl span {
    display: block;
    font-weight: 600;
    font-size: calc(16 * (var(--rate)));
    padding-bottom: calc(2 * (var(--rate)));
}

#lp_contents .item-panel .item-ttl::after {
    content: '';
    position: absolute;
    bottom: calc(-5 * (var(--rate)));
    left: 46%;
    width: calc(28 * (var(--rate)));
    height: calc(1 * (var(--rate)));
    box-sizing: border-box;
    background-color: #d0dee9;
    rotate: 135deg;
}

#lp_contents .item-panel .item-ttl::before {
    content: '';
    position: absolute;
    background: #ffffff;
    height: 1px;
    width: calc(12 * (var(--rate)));
    bottom: calc(-1 * (var(--rate)));
    left: 50%;
}

#lp_contents .item-panel .fl-blk {
    justify-content: space-between;
    align-items: center;
}

#lp_contents .notes {
    font-size: calc(10 * (var(--rate)));
    margin-top: calc(10 * (var(--rate)));
}

#lp_contents #section01 .btn-detail a {
    background: linear-gradient(135deg, #4cb7ff, #fffd90);
}

#lp_contents .item-list .item-panel:last-child {
    margin-bottom: 0;
}

#lp_contents #newitem {
    background: #FFFEF4;
}

#lp_contents #newitem .sec-ttl {
    color: var(--color-sub_color);
    font-family: var(--font-lp_eng);
    text-align: center;
    font-weight: 500;
    padding: 0 0 calc(30 * (var(--rate)));
    font-size: calc(35 * (var(--rate)));
    line-height: 1;
}

#lp_contents #section02 .btn-detail a {
    background: linear-gradient(135deg, #FFE581, #F81467);
}

#lp_contents #section03 .btn-detail a {
    background: linear-gradient(135deg, #FF950E, #FF0000);
}

#lp_contents #newitem .btn-detail a {
    background: #FAEF7E;
    color: var(--color-sub_color);
}

#lp_contents #section03 .sec-ttl {
    padding-right: calc(40 * (var(--rate)));
}
#lp_contents .sale-wrap .item-price {
    color: #E53E3E;
}

#lp_contents .sale-wrap dl {
    display: flex;
    gap: calc(8 * (var(--rate)));
    align-items: center;
    margin-top: calc(4 * (var(--rate)));
}

#lp_contents .sale-wrap dd {
    background: #E53E3E;
    color: #fff;
    letter-spacing: 0.05em;
    font-size: calc(11 * (var(--rate)));
    font-weight: 500;
    padding: calc(1 * (var(--rate))) calc(6 * (var(--rate))) calc(0 * (var(--rate)));
}

#lp_contents .proper-price {
    text-decoration: line-through;
    color: #6E6E6E;
    font-size: calc(13 * (var(--rate)));
    padding-top: calc(4 * (var(--rate)));
}
/*--------------------------------
            Layout  PC
 --------------------------------*/
@media screen and (min-width: 769px){
  #lp_contents .full_area{
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #lp_contents .left_area{
    left: 0;
    order: 1;
    background: linear-gradient(135deg, #feffff, #e5f7ff);
  }

  #lp_contents .right_area{
    right: 0;
    order: 3;
    background: linear-gradient(135deg, #e9f8ff, #feffff);
  }
	
.fixed-nav.m_fixed {
    display: none;
}
#lp_contents .nav-menu li {
    border-top: 1px dashed var(--color-sub_color);
    display: block;
    padding: 2rem 1rem;
}
	
#lp_contents .left_area .logo {
    width: 20rem;
    margin: 0 auto;
}
#lp_contents .nav-menu li p {
    color: var(--color-sub_color);
    font-size: 1.5rem;
    font-weight: 500;
}
#lp_contents .nav-menu li img {
    width: 8rem;
    padding-bottom: .8rem;
}

#lp_contents .nav-menu li:last-child {
    border-bottom: 1px dashed var(--color-sub_color);
}
#lp_contents .left_area .page-ttl {
    width: 38rem;
}

#lp_contents .left_area .page-ttl span {
    display: block;
    font-size: 2.4rem;
}

#lp_contents .lp_bg {
    left: 50%;
    width: 50rem;
    transform: translate(-50%, 0);
}
	
#lp_contents .left_area .all-btn a {
    width: 28rem;
    font-size: 1.8rem;
    padding: 1.2rem 0;
}

#lp_contents .left_area .all-btn a::after {
    border-left: .6rem solid;
    border-top: .6rem solid transparent;
    border-bottom: .6rem solid transparent;
    right: 2.5rem;
}

#lp_contents .left_area .all-btn img {
    width: 16rem;
}	
#lp_contents .lp_inner{
	width: 50rem;
}
#lp_contents .nav-wrapper {
    display: none;
}
#lp_contents .right_area .btn-all a {
    width: 32rem;
    padding-top: 6rem;
    /* margin-top: 5rem; */
}


}


/*--------------------------------
            Responsive
 --------------------------------*/

@media screen and (max-width: 1600px){
  html {
    font-size: calc(10 * (100vw / 1600));
  }
}


/*--------------------------------
            Layout  SP
 --------------------------------*/
@media (max-width: 768px) {

  html {
    font-size: calc(10 * (100vw / 500));
  }

  .page-share-btn{
    height: 0;
  }

  #share{
    z-index: 100 !important;
  }

  #FooterWrap {
    margin-top: -3rem;
  }

  #lp_contents .sp_only{display: block;}
  #lp_contents .pc_only{display: none;}

  #lp_contents a:hover{opacity: 1}

  #lp_contents .lp_inner{
    box-shadow: none;
  }
#lp_contents{
  overflow: hidden;
}
}