@charset "utf-8";
/* CSS Document */

 /*********************************
              全体
*********************************/
#footer_pagetop a {
	display: none!important;
	}

#wrapper {
	overflow: hidden;
	width: 100%;
	margin: 3% auto 0;
	/* max-width: 780px; */
	}
#wrapper img {
	width: 100%;
	}


#wrapper .sp_bg {
    background: var(--main-sp-bg-color);
    width: 93%;
    margin: 10% auto;
    padding: 0 0 7%;
}

#wrapper .topview {
	background-color: var(--main-bg-color);
	padding: 2% 0 0%;
} 


@media (min-width: 768px) {
.bg_wrapper {
    width: 780px;
    margin: 0 auto;
	background-color: white;
    padding: 0;
}
	
#wrapper .sp_bg {
    padding: 0;
    width: 100%;
}
	
}

/* リンク */

#wrapper a:hover img {
    opacity: 1;
}

#wrapper a:hover {
	text-decoration: none;
}


html { scroll-behavior: smooth;}

#wrapper a {
    text-decoration: none;
    color: #444444;
}

.element {
  /* 最初は非表示 */
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: opacity 1s, visibility 1s, transform 1s;
}
/* フェードイン時に入るクラス */
.is-fadein {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}



/*********************************
         　　  共有
*********************************/		
/*テキスト*/

#wrapper p,  #wrapper h3, #wrapper h4 {
	text-align: center;
    color:#444444;
}

#wrapper p {
    font-size: 3vw;
    line-height: 5.5vw;
    letter-spacing: 0.1vw;
}

#wrapper .tit_new03 {
    border: solid 2px #c33;
    padding: 1%;
    margin: 5% auto;
    color: #c33;
    font-size: 1rem;
    line-height: 2rem;
    text-align: center;
    width: 90%;
}

#wrapper .pattern {
    padding: 2% 3%;
}

#wrapper .space {
    margin: 10% 0;
}


/*上部ナビゲーション*/


#sp-fixed-menu {
  position: fixed;
  width: 100%;
  bottom: 0px;
  font-size: 12px;
  opacity: 0.9;
  z-index: 99;
}

#sp-fixed-menu ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

#sp-fixed-menu li {
  background: #444444;
}

#sp-fixed-menu li a {
  color: #fff;
  text-align: center;
  display: block;
  width: 100%;
  padding:6px;
}

#sp-fixed-menu li {
  justify-content: center;
  align-items: center;
  width: 25%;
  /*padding: 0 9px 0 0;*/
  margin: 0;
  border-right: 2px solid #fff;
}

/*ライン画像 2カラム*/

#wrapper .line_images_wrap {
		display: flex;
		justify-content: center;
		margin-top: 3%;
		}
	
#wrapper .line_image2 {
		width: 46%;
  		margin: 1.5%;
	}
	

/*ライン画像*/
#wrapper .line_image {
 margin:5% auto 0;
     width: 80%;
}

#wrapper .line_title {
    border-bottom: #000 1px solid;
    padding: 2% 0;
    margin: 5% auto;
    font-size: 1.4rem;
    text-align: center;
    width: 100%;
	font-weight: bold;
}

/*クーポン*/
#wrapper .coupon_txt {
    margin: 10% auto 7%;
    font-size: 1.4rem;
	font-weight: bold;
}

#wrapper .coupon {
    width: 100%;
}

/*セールのオフ率トップ画像*/
#wrapper .sale_title {
    display: block;
    width: 100%;
    margin: 0 auto;
}

#wrapper .item_oki {
    margin:3% auto;
	width: 80%;
}




/*型抜き　窓*/
#wrapper .image_w {
    margin: 2% auto 2%;
    width: 85%;
    position: relative;
    overflow: hidden;
    z-index: 0;
    border-top-left-radius: 180px;
    border-top-right-radius: 180px;
}

#wrapper .catch_txt {
display: block;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 10% 0 1%;
    width: 100%;
    color: #444;
    border-bottom: solid 1px;
    margin: 10% calc(50% - 50vw) 5%;
    width: 100vw;
    line-height: 2.2rem;
}



/*キャッチコピーモデル画像*/
#wrapper .image_s{
    margin: 10% auto 5%;
    width: 80%;
}



/*ショーツ*/
#wrapper .shorts_title {
    border-bottom: #000 1px solid;
    padding: 2% 0;
    margin: 10% auto 5%;
    font-size: 1.5rem;
    text-align: center;
    width: 85%;
}

#wrapper .pattern03 {
    display: flex;
    width: 100%;
    margin: 0 auto;
    gap: 0 2%;
}

#wrapper .shorts_off {
    font-size: 0.9rem;
    color: #444;
}

#wrapper .pattern03_txt {
    margin: 0 0 5%;
}

/*ブラショーツ*/

#wrapper .ico_pattern01 {
  width: 29%;
  display: inline-block;
  vertical-align: text-bottom;
  color: #FFF;
}

#wrapper .name_pattern01 {
  width: 69%;
  display: inline-block;
  padding:　3% 0 0 2%;
  text-align: center;
}


/*ブラ単品*/

#wrapper .pattern02 {
    display: flex;
    gap: 0 2%;
    margin: 10% 5% 5%;
}

#wrapper .pattern02_oki {
    width: 40%;
}


#wrapper .name_pattern02 {
    width: 70%;
}




/*セール価格・商品名*/
#wrapper .price_red {
	font-size: 2rem;
    color: #c33;
	font-weight: bold;
	margin-top: 3%;
}
#wrapper .pa01_days {
  font-size: 1rem;
  padding-bottom: 2%;
  font-weight: bold;
}

#wrapper .pa01_ft {
  font-size: 1rem;
}


#wrapper .small_txt {
  color: #000;
  font-weight: lighter;
  font-size: 0.8rem
}

#wrapper .small_txt_red {
    color: #c33;
    font-size: 0.6rem;
    margin-left: 2%;
}

#wrapper .yen_red {
    font-size: 1rem;
}

/*ボタン*/

#wrapper .button1 {
    text-align: center;
	margin: 3% 0 0;
}
#wrapper .button1 a {
    display: inline-block;
    /* background: var(--button1-color); */
    padding: 4% 0;
    color: #444;
    position: relative;
    text-decoration: none;
    width: 75%;
    border-radius: 30px;
    border: 1px solid #444;
}

/*
.button1 a::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: calc(50% - 0.3rem);
    width: 0.5rem;
    height: 0.5rem;
    border-top: solid 1px white;
    border-right: solid 1px white;
    transform: rotate(45deg);
	right: 7%;
}
*/
#wrapper .button2 {
    text-align: center;
	margin: 4% 0 0;
}
#wrapper .button2 a {
    display: inline-block;
    background: var(--button2-color);
    padding: 4% 0;
    font-size: 3.4vw;
    color: white;
    position: relative;
    text-decoration: none;
    width: 75%;
    border-radius: 30px;
}
/*
.button2 a::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: calc(50% - 0.3rem);
    width: 0.5rem;
    height: 0.5rem;
    border-top: solid 1px white;
    border-right: solid 1px white;
    transform: rotate(45deg);
	right: 10%;
}*/

#wrapper .button3 {
    text-align: center;
	margin: 3% 0 0;
}
#wrapper .button3 a {
    display: inline-block;
    padding: 4% 0;
    color: #c33;
    width: 83%;
    border: 3px double #c33;
}
/*
.button3 a::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: calc(50% - 0.3rem);
    width: 0.5rem;
    height: 0.5rem;
    border-top: solid 1px white;
    border-right: solid 1px white;
    transform: rotate(45deg);
	right: 7%;
}*/


#wrapper .bold_txt {
    font-size: 3.4vw;
    font-weight: bold;
    letter-spacing: 2px;
}

#wrapper .max {
    font-size: 1rem;
}


/*セールボタン 画像用*/
#wrapper .sale_button {
    width: 80%;
    margin: 5% auto 2%;
}

/*最後の注意書き*/
#wrapper .attention_1 {
    display: block;
    width: 80%;
    margin: 5% auto;
    font-size: 0.6rem;
    line-height: 1rem;
    text-align: left;
}


#wrapper .sns_txt {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: 0.3rem;
    padding: 1% 0;
    width: 100%;
    color: white;
    margin: 10% calc(50% - 50vw) 0;
    width: 100vw;
    line-height: 2.2rem;
    background: #444;
}



/*********************************
    下部SNS部分 headerfooter.css上書き
*********************************/	

#footer--sns-list-frame img {
    max-width: 170%;
    width: auto;
}
.title-common01 {
    margin: 5% auto 0;
    border-bottom: none;
}

.background_color_4 {
    background-image: none;
    background-repeat: none;
    background-position-y: none;
    background-color: #f6e4e1;
}

 .sns_title {
    font-size: 4.2vw;
    letter-spacing: 0.1vw;
    margin: 5% 0 1%;
    text-align: center;
}

 .sub_sns_txt {
	font-size: 3vw;
    color: #888888;
    text-align: center;
    margin: 0 0 5%;
}

/*********************************
           pc用指示
*********************************/	

@media (min-width: 768px){
	
#bg_wrapper {
    background-color: #f8e1e7;
	margin-bottom: 5%;
}	
#wrapper {
	width: 100%;
	}
	
#sp-fixed-menu {
  display: none;
}
	
#wrapper .tit_new03 {
    margin: 5% auto;
    font-size: 1.7rem;
    line-height: 4rem;
    width: 80%;
}
	
/*型抜き　窓*/
#wrapper .image_w {
    border-top-left-radius: 350px;
    border-top-right-radius: 350px;
}
	
#wrapper .catch_txt {
    font-size: 2.5rem;
    letter-spacing: 0.3rem;
    padding: 10% 0 1%;
    width: 100%;
    margin: 5% auto 3%;
	line-height: 3.6rem;
}
	
#wrapper .sns_txt {
        font-size: 2.5rem;
        margin: 5% auto 0;
        color: #444;
        background: #f6e4e1;
        padding: 2.5% 0 0;
    }
	

	
#wrapper .coupon {
	margin: 0 auto;
    width: 80%;
}
#wrapper .coupon_txt {
	margin: 10% auto 2%;
	font-size: 2rem;
}
#wrapper .ico_pattern01 {
    width: 25%;
    display: inline-block;
    vertical-align: text-bottom;
}
	
#wrapper .name_pattern01 {
  width: 68%;
  display: inline-block;
  padding: 3% 0 0 5%;
  text-align: center;
}
	
#wrapper .item_oki {
    margin:3% auto;
}
	
#wrapper .pa01_days {
    font-size: 2rem;
}
	
#wrapper .pa01_ft {
    font-size: 1.3rem;
}
#wrapper .shorts_off {
    font-size: 1.5rem;
}	
#wrapper .small_txt {
    font-size: 2rem;
}
	
#wrapper .price_red {
    font-size: 4rem;
}
	
#wrapper .small_txt_red {
    font-size: 1.3rem;
}
	
#wrapper .yen_red {
    font-size: 2.8rem;
}
	
	
	
#wrapper .attention_1 {
    font-size: 1.4rem;
    line-height: 2rem;
	padding-bottom: 8%;
}
	
#wrapper p {
    line-height: 4rem;
    font-size: 2.1rem;
    letter-spacing: 0.2rem;
}
	
#wrapper h3 {
    font-size: 2.8rem;
    letter-spacing: 0.2rem;
}
	
#wrapper h4 {
    font-size: 3rem;
}
	
#wrapper .button1 a {
	padding: 2.2% 0;
    font-size: 1.7rem;
    width: 48%;
    border-radius: 50px;
}

.button1 a::after {
    width: 1rem;
    height: 1rem;
}
	
#wrapper .button2 {
    margin: 4% 0 0;
}
	
#wrapper .button2 a {
	padding: 2.2% 0;
    font-size: 1.7rem;
    width: 47%;
    border-radius: 50px;
}
	
.button2 a::after {
    top: calc(50% - 0.5rem);
    width: 1rem;
    height: 1rem;
}
	
#wrapper .button3 a {
	padding: 2.5% 5%;
    font-size: 2.2rem;
    width: 62%;
}
	
.button3 a::after {
    width: 1rem;
    height: 1rem;
}
	
#wrapper .max {
    font-size: 1.4rem;
}
#wrapper .bold_txt {
    font-size: 1.8rem;
    font-weight: bold;
}
	
#footer--app-line-btn {
        padding: 0.1rem 2.5rem 0.1rem 1.6rem!important;
    }
	
#wrapper .line_image {
 margin: 5% auto;
}
#wrapper .line_title {
        padding: 2% 0;
        margin: 0 auto;
        font-size: 2.2rem;
        width: 100%;
		max-width: 780px;
    }
	
#wrapper .shorts_title {
    padding: 2% 0;
    margin: 10% auto 0;
    font-size: 2.7rem;
    width: 60%;
}
	
	
}