@charset "UTF-8";
/* CSS Document */

/*---------------------------------
* utility
---------------------------------*/


html{
    font-size: 62.5%; /*16px×62.5%=10px*/
}

body{
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    color: #231816;
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
}

img{
  max-width: 100%;
  -webkit-backface-visibility: hidden;
}

a{
    color: #231816;
    text-decoration: none;
    transition: all .3s linear;
}

.wrapper{
    max-width: 1200px;
    margin: 0 auto;
}


.sp-display{
  display: none;
}

.pc-display{
  display: block;
}

.pc-inlineBlock{
  display: inline-block;
}

.sp-inlineBlock{
  display: none;
}

/*---------------------------------
* common
---------------------------------*/

.text_ls_12{
    letter-spacing: 0.012em;
    font-weight: 700;
}

/*---------------------------------
* header
---------------------------------*/

.header_menu{
    display: flex;
    padding: 0 15px 0 30px;
    height: 110px;
    align-items: center;
    justify-content: space-between;
}

.header_logo{
    width: clamp(150px,calc(195vw / 14.40), 195px);
}

.header_menu_items{
    display: flex;
    gap: min(calc(25vw / 14.40), 25px);
}

.header_menu_items li a{
    font-size: clamp(16px, calc(20vw / 14.40), 20px);
    font-weight: 700;
    letter-spacing: 0.02em;
    display: flex;
    align-items: center;
    transition: all .3s ease;
}

.header_menu_items li a::before{
    content: "";
    display: block;
    width: min(calc(10vw / 14.40), 10px);
    height: min(calc(10vw / 14.40), 10px);
    background-image: url(../img/common/list_dot01.png);
    background-size: cover;
    margin-right: min(calc(10vw / 14.40), 10px);
}

.header_menu_items li a:hover{
    color: #ff9027;
}

.sp_header_menu{
    display: none;
}

/*---------------------------------
* top
---------------------------------*/

/* top_mv */

.top_mv h1{
    display: none;
}

.top_movie{
    text-align: center;
    margin-top: calc(-93vw / 14.40);
    margin-right: auto;
    margin-left: auto;
    width: min(618px, 100%);
    position: relative;
    z-index: 1;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.top_movie iframe{
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

/* about */

.top_about{
    position: relative;
    display: block;
}

.top_about_content{
    position: absolute;
    top: calc(132vw / 14.40);
    /* 中央寄せ。transformは .fadeIn_up のアニメーションで使うので、ここでは使わない */
    left: 0;
    right: 0;
    width: fit-content;
    margin: 0 auto;
}

.top_about_title{
    text-align: center;
}

.top_about_title img{
    width: calc(136vw / 14.40);
}

.top_about_heading{
    text-align: center;
}

.top_about_content h2{
    color: #fff;
    font-size: clamp(12px, calc(46vw / 14.40), 46px);
    font-weight: 700;
    letter-spacing: 0.09em;
    background-image: url(../img/common/shape01.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    padding: min(calc(37vw / 14.40), 37px) min(calc(147vw / 14.40), 147px);
    display: inline-block;
    margin-top: calc(44vw / 14.40);
    text-align: center;
}

.top_about_text{
    margin-top: calc(40vw / 14.40);
    font-size: clamp(12px, calc(24vw / 14.40), 24px);
    color: #4d5055;
    text-align: center;
    letter-spacing: 0.162em;
    white-space: nowrap;
}

.top_about_text p{
    font-family: "M PLUS Rounded 1c", sans-serif;
    margin-bottom: calc(16vw / 14.40);
    line-height: 1.66;
    font-weight: 500;
}

.or_text{
    color: #ff9026;
    font-weight: 600;
}

/* top ポンミィ診断 */

.top_choice{
    padding-top: 146px;
}

.top_choice h2{
    font-size: clamp(16px, calc(46vw / 12.00), 46px);
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.09em;
    color: #5e5f66;
}

.top_choice_text{
    font-size: clamp(12px, calc(24vw / 12.00), 24px);
    text-align: center;
    color: #4d5055;
    font-family: "M PLUS Rounded 1c", sans-serif;
    letter-spacing: 0.162em;
    margin-top: 48px;
    line-height: 1.66;
    font-weight: 500;
}

.top_choice_btn{
    width: 94%;
    margin: 10px auto 0;
}

.top_choice_btn a:hover{
    opacity: 0.8;
}

/* top lineup */

.top_lineup{
    margin-top: 70px;
    overflow: hidden;
}

.top_lineup h2{
    font-size: clamp(16px, calc(46vw / 12.00), 46px);
    font-weight: 700;
    letter-spacing: 0.09em;
    color: #5e5f66;
    display: flex;
    align-items: center;
    margin-top: 60px;
    margin-left: 15px;
}

.top_lineup h2::before{
    content: "";
    background-image: url(../img/common/list_dot02.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 21px;
    height: 21px;
    display: inline-block;
    margin-right: 16px;
}

.top_lineup_list{
    display: flex;
}

.top_lineup_list_wrap{
    box-sizing: border-box;
}

.top_lineup_list_wrap ul:first-of-type{
    padding: 0 min(calc(27vw / 12.00), 27px) 0 min(calc(60vw / 12.00), 60px);
    position: relative;
    margin-top: max(calc(-110vw / 12.00), -110px);
}

.top_lineup_list_wrap ul:first-of-type li:nth-of-type(2) {
    flex: 0 0 62%;
}

.top_lineup_list_wrap ul:first-of-type li:first-of-type {
    flex: 1;
    min-width: 0;
    position: relative;
    top: min(calc(240vw / 12.00), 240px);
    left: min(calc(50vw / 12.00), 50px);
}

.top_lineup_list_wrap ul li:first-of-type{
    align-self: flex-start; 
}

.top_lineup_list_wrap ul:first-of-type:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../img/top/product_detail_bg01.png);
    background-size: 40%;
    background-position: 0 min(calc(180vw / 12.00), 180px);
    background-repeat: no-repeat;
    aspect-ratio: 924 / 679;
    z-index: -1;
}

.top_lineup_list_number{
    font-family: "Comfortaa", sans-serif;
    font-weight: 700;
    color: #ff6a20;
    letter-spacing: 0.078em;
    font-size: clamp(12px, calc(24vw / 12.00), 24px);
    display: inline-block;
}

.top_lineup_list_number::after{
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-color: #f5e49e;
}

.top_lineup_list h3{
    font-size: clamp(16px, calc(36vw / 12.00), 36px);
    font-weight: 700;
    letter-spacing: 0.09em;
    color: #4d5055;
    margin-top: min(calc(33vw / 12.00), 33px);
    display: block;
}

.top_lineup_list_text{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: clamp(12px, calc(24vw / 12.00), 24px);
    letter-spacing: 0.162em;
    line-height: 1.66;
    font-weight: 500;
    white-space: nowrap;
    margin-top: min(calc(35vw / 12.00), 35px);
}

.top_lineup_list a{
    margin-top: min(calc(93vw / 12.00), 93px);
}

.link_btn{
    color: #fff;
    padding: min(calc(24vw / 12.00), 24px) min(calc(83vw / 12.00), 83px);
    background-color: #ff9027;
    border-radius: min(calc(70vw / 12.00), 70px);
    display: inline-block;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: clamp(12px, calc(24vw / 12.00), 24px);
    font-weight: 500;
    letter-spacing: 0.2em;
    position: relative;
}

.link_btn::after{
    content: "";
    display: block;
    width: min(calc(23vw / 12.00), 23px);
    height: min(calc(20vw / 12.00), 20px);
    background-image: url(../img/common/arrow01.png);
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: min(calc(28vw / 12.00), 28px);
    transform: translateY(-50%);
}

.top_lineup_list a::before{
    content: "";
    display: block;
    width: min(calc(49vw / 12.00), 49px);
    height: min(calc(54vw / 12.00), 54px);
    background-image: url(../img/top/btn_deco01.png);
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: max(calc(-40vw / 12.00), -40px);
    right: min(calc(5vw / 12.00), 5px);
}

.top_lineup_list_wrap ul:nth-of-type(2n){
    flex-direction: row-reverse;
}

.link_btn:hover::after{
    animation: arrow_btn 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@keyframes arrow_btn {
	0% {
		opacity: 1;
		transform: translate(0, -50%);
	}

	5% {
		opacity: 1;
		transform: translate(0, -50%);
	}

	35% {
		opacity: 0;
		transform: translate(100%, -50%);
	}

	40% {
		transform: translate(-100%, -50%);
	}

	45% {
		opacity: 0;
		transform: translate(-100%, -50%);
	}

	75% {
		opacity: 1;
		transform: translate(0, -50%);
	}

	100% {
		opacity: 1;
		transform: translate(0, -50%);
	}
}

.top_lineup_list_wrap ul:nth-of-type(2){
    position: relative;
    padding: 0 min(calc(27vw / 12.00), 27px) 0 min(calc(53vw / 12.00), 53px);
    gap: min(calc(130vw / 12.00), 130px);
}

.top_lineup_list_wrap ul:nth-of-type(2) li:nth-of-type(2) {
    flex: 0 0 49%;
}

.top_lineup_list_wrap ul:nth-of-type(2) li:first-of-type{
    flex: 1;
    min-width: 0;
    position: relative;
    top: min(calc(90vw / 12.00), 90px);
    left: 0;
}

.top_lineup_list_wrap ul:nth-of-type(2):before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../img/top/product_detail_bg02.png);
    background-size: 47%;
    background-position: right 0 top min(calc(33vw / 12.00), 33px);
    background-repeat: no-repeat;
    aspect-ratio: 1084 / 644;
    z-index: -1;
}

.top_lineup_list_wrap ul:nth-of-type(2).top_lineup_list a{
    margin-top: min(calc(70vw / 12.00), 70px);
}

.top_lineup_list_wrap ul:nth-of-type(3){
    margin-top: min(calc(38vw / 12.00), 38px);
    position: relative;
    padding: 0 min(calc(24vw / 12.00), 24px) 0 min(calc(70vw / 12.00), 70px);
}

.top_lineup_list_wrap ul:nth-of-type(3) li:nth-of-type(2) {
    flex: 0 0 65%;
    padding-top: min(calc(23vw / 12.00), 23px);
}

.top_lineup_list_wrap ul:nth-of-type(3):before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../img/top/product_detail_bg03.png);
    background-size: 34%;
    background-position: left 0 top 0;
    background-repeat: no-repeat;
    aspect-ratio: 748 / 466;
    z-index: -1;
}

.top_lineup_list_wrap ul:nth-of-type(3) li:first-of-type{
    flex: 1;
    min-width: 0;
    position: relative;
    top: min(calc(40vw / 12.00), 40px);
    left: min(calc(40vw / 12.00), 40px);
}

.top_lineup_list_wrap ul:nth-of-type(4){
    margin-top: max(calc(-100vw / 12.00), -100px);
    position: relative;
    padding: 0 0 0 min(calc(50vw / 12.00), 50px);
}

.top_lineup_list_wrap ul:nth-of-type(4) li:nth-of-type(2) {
    flex: 0 0 47%;
}

.top_lineup_list_wrap ul:nth-of-type(4) li:first-of-type{
    flex: 0 1 auto;
    margin-left: auto; 
    min-width: 0;
    position: relative;
    top: min(calc(160vw / 12.00), 160px);
}

.top_lineup_list_wrap ul:nth-of-type(4):before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../img/top/product_detail_bg04.png);
    background-size: 40%;
    background-position: right min(calc(140vw / 12.00), 140px) top min(calc(115vw / 12.00), 115px);
    background-repeat: no-repeat;
    aspect-ratio: 918 / 825;
    z-index: -1;
}

.top_lineup_list_wrap ul:nth-of-type(4).top_lineup_list a{
    margin-top: min(calc(68vw / 12.00), 68px);
}


.top_lineup_list_wrap ul:nth-of-type(5){
    margin-top: min(calc(70vw / 12.00), 70px);
    position: relative;
    padding: 0 min(calc(75vw / 12.00), 75px) min(calc(23vw / 12.00), 23px) min(calc(73vw / 12.00), 73px);
}

.top_lineup_list_wrap ul:nth-of-type(5) li:nth-of-type(2) {
    flex: 0 0 47.5%;
    padding-top: min(calc(30vw / 12.00), 30px);
}

.top_lineup_list_wrap ul:nth-of-type(5) li:first-of-type{
    flex: 1;
    min-width: 0;
    position: relative;
    top: min(calc(38vw / 12.00), 38px);
    left: min(calc(40vw / 12.00), 40px);
}

.top_lineup_list_wrap ul:nth-of-type(5):before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../img/top/product_detail_bg05.png);
    background-size: 40% 100%;
    background-position: left 0 top 0;
    background-repeat: no-repeat;
    aspect-ratio: 944 / 1182;
    z-index: -1;
}

/* top 早見表 */

.top_product_list{
    margin-top: min(calc(60vw / 12.00), 60px);
}

.top_product_list h2{
    font-size: min(calc(46vw / 12.00), 46px);
    margin-bottom: min(calc(80vw / 12.00), 80px);
    text-align: center;
    color: #221815;
    letter-spacing: 0.09em;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
}

.top_product_list h2::before,
.top_product_list h2::after {
    content: "";
    display: block;
    width: 21px;
    height: 21px;
    background-image: url(../img/common/list_dot03.png);
    background-size: cover;
}

.top_product_list h2::before{
    margin-right: min(calc(20vw / 12.00), 20px);
}

.top_product_list h2::after{
    margin-left: min(calc(20vw / 12.00), 20px);
}

.top_product_list_table{
    width: 88%;
    margin: 0 auto;
}

.top_product_list_inner{
    padding: min(calc(40vw / 12.00), 40px) 0 0;
    background-image: url(../img/top/top_table_bg.png);
    width: 100%;
    height: 100%;
    background-size: 72% 13%;
    background-position: top right min(calc(35vw / 12.00), 35px);
    background-repeat: no-repeat;
}

/* top shopping */

.top_shopping{
    margin-top: min(calc(140vw / 12.00), 140px);
}

.top_shopping_img{
    width: 95.5%;
    margin-left: min(calc(35vw / 12.00), 35px);
}

.top_shopping_inner{
    position: relative;
}

.top_shopping_detail{
    position: absolute;
    top: min(calc(350vw / 12.00), 350px);
    left: min(calc(15vw / 12.00), 15px);
    text-align: center;
}

.top_shopping_detailTitle{
    width: min(calc(240vw / 12.00), 240px);
    margin: 0 auto;
}

.top_shopping_detailText{
    font-size: min(calc(34vw / 12.00), 34px);
    font-weight: 700;
    letter-spacing: 0.09em;
    color: #5e5f66;
    line-height: 1.55;
    margin-top: min(calc(30vw / 12.00), 30px);
}

.top_shopping_detailLink .link_btn{
    padding: min(calc(24vw / 12.00), 24px) min(calc(66vw / 12.00), 66px) min(calc(24vw / 12.00), 24px) min(calc(41vw / 12.00), 41px);
    margin-top: min(calc(36vw / 12.00), 36px);
}

.top_shopping_detailLink .link_btn::after{
    right: min(calc(16vw / 12.00), 16px);
}

/*---------------------------------
* footer
---------------------------------*/

.footer_inner{
    background-color: #fff7e8;
    padding-bottom: min(calc(30vw / 12.00), 30px);
}

footer::before{
    content: "";
    display: block;
    width: 100%;
    aspect-ratio: 2880 / 590;
    background-image: url(../img/common/footer_wave_bg.png);
    background-size: contain;
    background-repeat: no-repeat; 
}

.footer_bl{
    display: flex;
    padding-top: min(calc(50vw / 12.00), 50px);
    justify-content: space-between;
}

.footer_logo01{
    width: min(calc(308vw / 12.00), 308px);
}

.footer_logo02{
    width: min(calc(239vw / 12.00), 239px);
}

.footer_bl li:first-of-type, .footer_logo_wrap{
    display: flex;
    flex-direction: column;
    row-gap: min(calc(35vw / 12.00), 35px);
}

.sns_title{
    font-size: min(calc(20vw / 12.00), 20px);
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 700;
    color: #303030;
    letter-spacing: 0.2em;
}

.footer_sns_list{
    display: flex;
    margin-top: min(calc(20vw / 12.00), 20px);
    gap: min(calc(17vw / 12.00), 17px);
    align-items: center;
}

.footer_sns_list li img{
    width: min(calc(50vw / 12.00), 50px);
}

.footer_link_wrapper{
    display: flex;
    gap: min(calc(107vw / 12.00), 107px);
}

.footer_link_wrapper ul{
    display: flex;
    flex-direction: column;
    row-gap: min(calc(22vw / 12.00), 22px);
}

.footer_link_wrapper ul li a{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(24vw / 12.00), 24px);
    font-weight: 500;
    letter-spacing: 0.16em;
    color: #4c5054;
    transition: all .3s ease;
}

.footer_link_wrapper ul li a::before{
    content: "";
    display: inline-block;
    width: min(calc(18vw / 12.00), 18px);
    height: min(calc(18vw / 12.00), 18px);
    background-image: url(../img/common/list_dot_footer.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: min(calc(20vw / 12.00), 20px);
}

.footer_link_wrapper ul li a:hover{
    color: #ff9027;
}

.footer_bl li:nth-of-type(2){
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.footer_copyright{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(16vw / 12.00), 16px);
    color: #4c5054;
    letter-spacing: 0.08em;
    text-align: center;
    font-weight: 500;
}

footer .wrapper{
    padding: 0 20px;
}

.floating_button{
    width: 208px;
    position: fixed;
    bottom: 20px;
    right: 70px;
    z-index: 10;
}

/*---------------------------------
* 診断ポップアップ
---------------------------------*/

body.modal-open{
    overflow: hidden;
}

.diagnosis_modal{
    position: fixed;
    inset: 0;
    z-index: 200;
    display: none;
    align-items: center;
    justify-content: center;
    background-color: rgba(77, 80, 85, 0.6);
    padding: min(calc(50vw / 14.40), 50px) min(calc(100vw / 14.40), 100px);
    box-sizing: border-box;
}

.diagnosis_modal.is-open{
    display: flex;
}

.diagnosis_modal_box{
    position: relative;
    width: 720px;
    max-width: unset;
    max-height: 100%;
    overflow-y: auto;
    background-color: #fff9eb;
    border-radius: 20px;
    padding: min(calc(30vw / 7.50), 30px) min(calc(55vw / 7.50), 55px) min(calc(20vw / 7.50), 20px);
    box-sizing: border-box;
    font-family: "Zen Maru Gothic", sans-serif;
    color: #4d5055;
    background-image: url(../img/diagnosis/diagnosis_bg01.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: left 10px top 10px;
}

.diagnosis_modal_box.is-result{
    padding-bottom: min(calc(40vw / 7.50), 40px);
}

.diagnosis_result_list .diagnosis_label{
    font-size: min(calc(28vw / 7.50), 28px);
    font-family: "Zen Maru Gothic", sans-serif;
}

/* 結果が複数商品のとき：横に広げて、箱の背景画像はやめる（背景は各カードの::beforeで出す） */
.diagnosis_modal_box.is-multi{
    width: 1100px;
    max-width: 100%;
    background-image: none;
    isolation: isolate; /* カードの::before(z-index:-1)を、箱の背景より手前・カードより後ろに置くため */
    padding-top: min(calc(50vw / 7.50), 50px);
    padding-bottom: min(calc(40vw / 7.50), 40px);
}

.diagnosis_modal_close{
    position: absolute;
    top: 16px;
    right: 20px;
    width: 36px;
    height: 36px;
    cursor: pointer;
    background: none;
    border: none;
}

.diagnosis_modal_close::before,
.diagnosis_modal_close::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 3px;
    background-color: #4d5055;
    border-radius: 2px;
}

.diagnosis_modal_close::before{
    transform: translate(-50%, -50%) rotate(45deg);
}

.diagnosis_modal_close::after{
    transform: translate(-50%, -50%) rotate(-45deg);
}

.diagnosis_modal_title{
    width: 100%;
    margin: 0 auto min(calc(30vw / 7.50), 30px);
}

/* 診断結果の表示中はタイトルを隠す */
.diagnosis_modal_box.is-result .diagnosis_modal_title{
    display: none;
}

.diagnosis_card{
    background-color: #f5f5f0;
    border: 5px solid #ff6a20;
    border-radius: 40px;
    aspect-ratio: 761 / 643;
    text-align: center;
    background-image: url(../img/diagnosis/diagnosis_deco01.png);
    background-repeat: no-repeat;
    background-size: 89% min(calc(95vw / 7.50), 95px);
    background-position: center min(calc(18vw / 7.50), 18px);
}

.diagnosis_card + .diagnosis_card{
    margin-top: 30px;
}

.diagnosis_card_inner{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%
}

.diagnosis_label{
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(calc(327vw / 7.50), 327px);
    height: min(calc(64vw / 7.50), 64px);
    font-family: "Comfortaa", sans-serif;
    font-size: min(calc(25vw / 7.50), 25px);
    letter-spacing: 0.08em;
    font-weight: 700;
    background-image: url(../img/diagnosis/diagnosis_title_bg01.png);
    background-size: cover;
    
}

.diagnosis_question{
    margin-top: min(calc(30vw / 7.50), 30px);
    font-size: min(calc(24vw / 7.50), 24px);
    font-weight: 500;
    line-height: 1.6;
    /* 質問文が1行でも2行でも、同じ高さにして下のボタンがずれないようにする（2行分） */
    min-height: 3.2em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.diagnosis_answers{
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: min(calc(30vw / 7.50), 30px);
}

.diagnosis_answers button{
    width: min(calc(268vw / 7.50), 268px);
    height: min(calc(70vw / 7.50), 70px);
    font-size: min(calc(29vw / 7.50), 29px);
    font-weight: 700;
    color: #fff;
    border: none;
    border-radius: min(calc(70vw / 7.50), 70px);;
    cursor: pointer;
    font-family: "Zen Maru Gothic", sans-serif;
    box-shadow: 0 4px 0 #dcdacb;
}

.diagnosis_answers button:active{
    /* ボタンを押したとき：下に動いて、影を消す */
    transform: translateY(4px);
    box-shadow: none;
}

.diagnosis_answers button[data-answer="yes"]{
    background-color: #ff7b8f;
}

.diagnosis_answers button[data-answer="no"]{
    background-color: #ff6a20;
}

.diagnosis_progress{
    margin-top: min(calc(20vw / 7.50), 20px);
    font-size: 14px;
    text-align: center;
}

/* 診断結果：2商品まで横並び、3商品目は次の行（いずれも中央寄せ） */
.diagnosis_result_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    --gap: min(calc(40vw / 7.50), 40px); /* カード同士の間隔。ここを変えれば、幅・縮小率も追従する */
    gap: var(--gap);
}

.diagnosis_result_list .diagnosis_card{
    position: relative;
    width: calc((100% - var(--gap)) / 2); /* 2列：（リスト幅 - 間隔）/ 2 */
    aspect-ratio: unset;
    margin-top: 0;
    box-sizing: border-box;
    padding: min(calc(10vw / 7.50), 10px) 0 min(calc(15vw / 7.50), 15px);
}

/* 複数商品のとき、各カードの後ろに背景画像を見せる */
.diagnosis_modal_box.is-multi .diagnosis_card::before{
    content: "";
    position: absolute;
    /* 1商品のときの「箱の背景」と同じ位置関係（カードの外に、左右55px・上10px・下34px はみ出す）を --k で縮小 */
    top: calc(-27 * var(--k));         /* カード外端より10px上（枠線5px分を補正） */
    left: calc(-50 * var(--k));        /* カード外端より55px左（枠線5px分を補正） */
    width: calc(100% + 120 * var(--k)); /* カード外幅 + 左右55pxずつ */
    aspect-ratio: 1525 / 1406;         /* 画像の比率のまま（高さは自動） */
    background-image: url(../img/diagnosis/diagnosis_bg02.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    z-index: -1;
    pointer-events: none;
}

.diagnosis_result_list .diagnosis_card:only-child{
    width: 100%;
}

.diagnosis_result_list .diagnosis_result_name{
    font-size: min(calc(38vw / 7.50), 38px);
    letter-spacing: 0.09em;
    margin-top: min(calc(24vw / 7.50), 24px);
}


.diagnosis_result_list .diagnosis_result_link:active{
    /* ボタンを押したとき：下に動いて、影を消す */
    transform: translateY(4px);
    box-shadow: none;
}

.diagnosis_result_lead{
    margin-top: min(calc(12vw / 7.50), 12px);
    font-size: min(calc(29vw / 7.50), 29px);
    font-weight: 500;
}

.diagnosis_result_name{
    margin-top: 8px;
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.09em;
}

.diagnosis_result_img{
    margin-top: min(calc(20vw / 7.50), 20px);
}

.diagnosis_result_img img{
    width: min(calc(510vw / 7.50), 510px);
}

.diagnosis_result_link{
    width: min(calc(315vw / 7.50), 315px);
    height: min(calc(60vw / 7.50), 60px);
    border-radius: min(calc(60vw / 7.50), 60px);
    padding: 0;
    font-size: min(calc(29vw / 7.50), 29px);
    letter-spacing: 0.08em;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 0 #dcdacb;
    font-weight: 700;
    color: #fff;
    background-color: #ff6a20;
    margin-top: min(calc(15vw / 7.50), 15px);
}

/*---------------------------------
* 診断結果：複数商品（is-multi）
* 1商品のときのカード（幅610px）を、そのままの比率で縮小して表示する。
* --k ＝ 1商品のときの「1px」が、このカードでは何pxになるか。
*   カード幅 ÷ 610。リスト(.diagnosis_result_list)の幅を基準に求める。
---------------------------------*/

.diagnosis_modal_box.is-multi .diagnosis_result_list{
    container-type: inline-size;
    --k: calc((100cqw - var(--gap)) / 1220); /* 2列：カード幅 =（リスト幅 - gap）/ 2、それを610で割る */
}

.diagnosis_modal_box.is-multi .diagnosis_card{
    border-width: calc(5 * var(--k));
    border-radius: calc(40 * var(--k));
    padding: calc(10 * var(--k)) 0 calc(15 * var(--k));
    background-size: 89% calc(95 * var(--k));
    background-position: center calc(18 * var(--k));
}

.diagnosis_modal_box.is-multi .diagnosis_result_list .diagnosis_label{
    width: calc(327 * var(--k));
    height: calc(64 * var(--k));
    font-size: calc(28 * var(--k));
}

.diagnosis_modal_box.is-multi .diagnosis_result_lead{
    margin-top: calc(12 * var(--k));
    font-size: calc(29 * var(--k));
}

.diagnosis_modal_box.is-multi .diagnosis_result_list .diagnosis_result_name{
    margin-top: calc(24 * var(--k));
    font-size: calc(38 * var(--k));
}

.diagnosis_modal_box.is-multi .diagnosis_result_img{
    margin-top: calc(20 * var(--k));
}

.diagnosis_modal_box.is-multi .diagnosis_result_img img{
    width: calc(510 * var(--k));
}

.diagnosis_modal_box.is-multi .diagnosis_result_list .diagnosis_result_link{
    width: calc(315 * var(--k));
    height: calc(60 * var(--k));
    border-radius: calc(60 * var(--k));
    margin-top: calc(15 * var(--k));
    font-size: calc(29 * var(--k));
    box-shadow: 0 calc(4 * var(--k)) 0 #dcdacb;
}

.diagnosis_modal_box.is-multi .diagnosis_result_list .diagnosis_result_link:active{
    transform: translateY(calc(4 * var(--k)));
    box-shadow: none;
}

/*---------------------------------
*  inview
---------------------------------*/

.fadeIn_up {
    opacity: 0;
    transform: translate(0, 50%);
    transition: 2s;
}
.fadeIn_up.is-show {
    transform: translate(0, 0);
    opacity: 1;
}

.fadeIn_up_shortCont{
    transform: translate(0, 90%);
}

.fadeIn_up_lognCont{
    transform: translate(0, 20%);
}

@media screen and (max-width: 767px) {
    
    .diagnosis_modal{
        padding: max(calc(20vw / 3.93), 20px)
    }
    
    .diagnosis_card{
        border: 3px solid #ff6a20;
        aspect-ratio: 634 / 535;
    }
    
    .diagnosis_label{
        font-size: max(calc(25vw / 7.50), 12.5px);
        background-size: 100% 100%;
    }
    
    .diagnosis_question{
        font-size: max(calc(30vw / 7.50), 15px);
        margin-top: max(calc(5vw / 7.50), 5px);
    }
    
    .diagnosis_answers{
        margin-top: min(calc(5vw / 7.50), 5px);
        gap: 5px;
    }
    
    .diagnosis_answers button{
        width: max(calc(260vw / 7.86), 130px);
        height: max(calc(65vw / 7.86), 32.5px);
        box-shadow: 0 2px 0 #dcdacb;
    }
    
    .diagnosis_modal_close{
        top: 0;
        right: 0;
    }
    
    .diagnosis_modal_box{
        background-position: left 6px top 4px;
    }
    
    .diagnosis_result_img img{
        width: max(calc(245vw / 3.93), 245px);
    }
    
    .diagnosis_result_link{
        box-shadow: 0 2px 0 #dcdacb;
    }
    
    .diagnosis_result_list{
        --gap: min(calc(60vw / 7.50), 60px);
    }
}


@media screen and (max-width: 767px) {

    /*---------------------------------
    * utility
    ---------------------------------*/

    body {
        min-width: initial; /* 初期値 */
        min-width: 100%;
        overflow-x: hidden;
    }

    .wrapper{
        width: calc(100% - 20px);
        margin: 0 auto;
    }

    .sp-display{
        display: block;
    }

    .pc-display{
        display: none;
    }

    .sp-inlineBlock{
        display: inline-block;
    }
    
    .pc-inlineBlock{
        display: none;
    }


    /*---------------------------------
    * common
    ---------------------------------*/


    /*---------------------------------
    * header
    ---------------------------------*/
    
    .header_menu_items{
        display: none;
    }
    
    .header_menu{
        height: 57px;
        padding: 0 20px;
    }
    
    .header_logo{
        width: 97.5px;
    }
    
    .header_menu_btn{
        width: 40px;
    }
    
    .sp_header_menu{
        display: block;
        position: fixed;
        width: min(calc(440vw / 7.50), 440px);
        right: 0;
        top: 0;
        background-color: #fff7e8;
        height: 100vh;
        z-index: 100;
        transform: translateX(100%);
        visibility: hidden;
        transition: transform 0.3s ease, visibility 0.3s;
    }
    
    .sp_header_menu_inner{
        padding: 0 min(calc(70vw / 7.50), 70px) 0 min(calc(40vw / 7.50), 40px);
    }

    .sp_header_menu.is-open{
        transform: translateX(0);
        visibility: visible;
    }
    
    .sp_header_menu::before{
        content: "";
        background-image: url(../img/common/sp_menu_bg.png);
        background-size: 100%;
        aspect-ratio: 440 / 157;
        background-repeat: no-repeat;
        display: block;
    }

    /* メニューを開いている間、body全体にかける半透明カラー */
    body::before{
        content: "";
        position: fixed;
        inset: 0;
        background-color: #ffcc99;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        z-index: 99;
        transition: opacity 0.3s ease, visibility 0.3s;
    }

    body.menu-open::before{
        opacity: 0.8;
        visibility: visible;
    }
    
    .sp_header_menu_close{
        position: absolute;
        top: 10px;
        left: 10px;
        width: min(calc(30vw / 7.50), 30px);
        height: min(calc(30vw / 7.50), 30px);
    }
    
    .sp_header_menu_text{
        width: min(calc(155vw / 7.50), 155px);
        margin: max(calc(-80vw / 7.50), -80px) 0 0 auto;
        text-align: right;
    }
    
    .sp_header_menu_list{
        margin-top: min(calc(80vw / 7.50), 80px);
    }
    
    .sp_header_menu_list li a{
        font-size: min(calc(24vw / 7.50), 24px);
        letter-spacing: 0.02em;
        font-weight: 700;
        display: flex;
        align-items: center;
        padding-bottom: min(calc(20vw / 7.50), 20px);
    }
    
    .sp_header_menu_list li a::before{
        content: "";
        background-image: url(../img/common/list_dot01.png);
        width: min(calc(10vw / 7.50), 10px);
        height: min(calc(10vw / 7.50), 10px);
        margin-right: min(calc(10vw / 7.50), 10px);
        display: block;
        background-size: cover;
    }
    
    .sp_header_menu_list li::after{
        content: "";
        display: block;
        background-image: url(../img/common/sp_menu_line.png);
        width: min(calc(314vw / 7.50), 314px);
        height: min(calc(3vw / 7.50), 3px);
        background-size: cover;
    }
    
    .sp_header_menu_list li:nth-of-type(n+2){
        margin-top: min(calc(20vw / 7.50), 20px);
    }
    
    /*---------------------------------
    * footer
    ---------------------------------*/
    
    .floating_button{
        width: max(calc(180vw / 7.50), 90px);
        right: 10px;
        bottom: 10px;
    }
    
    footer::before{
        background-image: url(../img/common/footer_wave_bg_sp.png);
        aspect-ratio: 750 / 185;
    }
    
    .footer_bl{
        flex-direction: column;
        padding-top: max(calc(15vw / 7.50), 7.5px);
        row-gap: max(calc(53vw / 7.50), 26.5px);
    }
    
    .footer_bl li:first-of-type{
        flex-direction: row;
    }
    
    footer .wrapper{
        padding: 0 max(calc(33vw / 7.50), 16.5px) 0 max(calc(50vw / 7.50), 25px);
        box-sizing: border-box;
    }
    
    .footer_logo01{
        width: max(calc(308vw / 7.50), 154px);
    }
    
    .footer_logo02{
        width: max(calc(239vw / 7.50), 119.5px);
    }
    
    .footer_logo_wrap{
        row-gap: max(calc(35vw / 7.50), 17.5px);
    }
    
    .footer_bl li:first-of-type{
        gap: max(calc(80vw / 7.50), 40px);
    }
    
    .sns_title{
        font-size: max(calc(20vw / 7.50), 10px);
    }
    
    .footer_sns_list{
        flex-wrap: wrap;
        gap: max(calc(18vw / 7.50), 9px);
        margin-top: max(calc(23vw / 7.50), 11.5px);
    }
    
    .footer_sns_list li img{
        width: max(calc(50vw / 7.50), 25px);
    }
    
    .footer_link_wrapper ul{
        row-gap: max(calc(16vw / 7.50), 8px);
    }
    
    .footer_link_wrapper ul li a{
        font-size: max(calc(24vw / 7.50), 12px);
        white-space: nowrap;
    }
    
    .footer_link_wrapper ul li a::before{
        width: max(calc(18vw / 7.50), 9px);
        height: max(calc(18vw / 7.50), 9px);
        margin-right: max(calc(19vw / 7.50), 9.5px);
    }
    
    .footer_bl li:nth-of-type(2){
        row-gap: max(calc(40vw / 7.50), 20px);
    }
    
    .footer_copyright{
        text-align: left;
        font-size: max(calc(16vw / 7.50), 8px);
        text-align: center;
    }
    
    /*---------------------------------
    * top
    ---------------------------------*/
    
    .top_movie{
        width: 90%;
    }
    
    /* top about */

    .top_about_content{
        top: calc(140vw / 7.50);
        width: calc(100% - 20px);
    }
    
    .top_about_title img{
        width: calc(136vw / 7.50);
    }
    
    .top_about_content h2{
        font-size: max(calc(46vw / 7.50), 23px);
        padding: max(calc(37vw / 7.50), 18.5px) max(calc(147vw / 7.50), 74px);
        margin-top: max(calc(44vw / 7.50), 22px);
    }
    
    .top_about_text{
        font-size: max(calc(22vw / 7.50), 10px);
        margin-top: max(calc(44vw / 7.50), 22px);
    }
   
    .top_about_text p{
        margin-bottom: max(calc(18vw / 7.50), 9px);
    }
    
    /* top ポンミィ診断 */
    
    .top_choice{
        padding-top: max(calc(110vw / 7.50), 55px);
    }
    
    .top_choice h2{
        font-size: max(calc(46vw / 7.50), 23px);
        line-height: 1.3;
    }
    
    .top_choice_text{
        font-size: max(calc(24vw / 7.50), 12px);
        margin-top: max(calc(40vw / 7.50), 20px);
    }
    
    .top_choice_btn{
        width: 100%;
        margin-top: max(calc(20vw / 7.50), 10px);
    }
    
    .top_lineup{
        margin-top: max(calc(66vw / 7.50), 33px);
        /* 5つ目のliがセクションの下にはみ出す（position:absolute, bottom:マイナス）ため、縦は切らない。横だけ切る */
        overflow: visible;
        overflow-x: clip;
    }
    
    .top_lineup_list{
        flex-flow: column-reverse nowrap;
    }
    
    .top_lineup_list_wrap ul:nth-of-type(2n) {
        flex-direction: column;
        flex-flow: column-reverse nowrap;
    }
    
    .top_lineup h2{
        font-size: max(calc(36vw / 7.50), 18px);
        margin-top: max(calc(55vw / 7.50), 27.5px);
        margin-left: max(calc(17vw / 7.50), 8.5px);
    }
    
    .top_lineup h2::before{
        width: max(calc(20vw / 7.50), 10px);
        height: max(calc(20vw / 7.50), 10px);
        margin-right: max(calc(16vw / 7.50), 8px);
    }
    
    .top_lineup_list_wrap ul:first-of-type:before,
    .top_lineup_list_wrap ul:nth-of-type(2):before,
    .top_lineup_list_wrap ul:nth-of-type(3):before,
    .top_lineup_list_wrap ul:nth-of-type(4):before,
    .top_lineup_list_wrap ul:nth-of-type(5):before{
        content: none;
    }
    
    .top_lineup_list_wrap ul:first-of-type{
        padding: 0 0 0 max(calc(20vw / 7.50), 10px);
        margin-top: min(calc(-64vw / 7.50), -32px);
    }
    
    .top_lineup_list_wrap ul li:first-of-type{
        z-index: 1;
    }
    
    .top_lineup_list_wrap ul:first-of-type li:nth-of-type(2){
        flex: none;
        width: 87%;
    }
    
    .top_lineup_list_wrap ul:first-of-type li:first-of-type{
        position: absolute;
        top: auto;
        bottom: min(calc(-66vw / 7.50), -33px);;
        left: max(calc(83vw / 7.50), 41.5px);
    }
    
    .top_lineup_list_btn{
        width: 80vw;
        text-align: right;
    }
    
    .top_lineup_list_number{
        font-size: max(calc(24vw / 7.50), 12px);
    }
    
    .top_lineup_list h3{
        font-size: max(calc(36vw / 7.50), 18px);
        margin-top: max(calc(33vw / 7.50), 16.5px);
    }
    
    .top_lineup_list_text{
        font-size: max(calc(24vw / 7.50), 12px);
        margin-top: max(calc(24vw / 7.50), 12px);
    }
    
    .top_lineup_list a{
        margin-top: max(calc(20vw / 7.50), 10px);
    }
    
    .link_btn{
        font-size: max(calc(24vw / 7.50), 12px);
        padding: max(calc(24vw / 7.50), 12px) max(calc(83vw / 7.50), 42px);
    }
    
    .link_btn::after{
        width: max(calc(24vw / 7.50), 12px);
        height: max(calc(20vw / 7.50), 10px);
        right: max(calc(27vw / 7.50), 13.5px);
    }
    
    .top_lineup_list a::before{
        width: max(calc(48vw / 7.50), 24px);
        height: max(calc(52vw / 7.50), 26px);
        top: min(calc(-42vw / 7.50), -21px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(2){
        margin-top: max(calc(105vw / 7.50), 52.5px);
        padding: 0 0 0 max(calc(34vw / 7.50), 17px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(2) li:first-of-type{
        position: absolute;
        top: auto;
        bottom: min(calc(-66vw / 7.50), -33px);
        left: max(calc(83vw / 7.50), 41.5px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(2) li:nth-of-type(2){
        flex: none;
        width: 97%;
    }
    
    .top_lineup_list_wrap ul:nth-of-type(2).top_lineup_list a{
        margin-top: min(calc(-24vw / 7.50), -12px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(3){
        margin-top: max(calc(105vw / 7.50), 52.5px);
        padding: 0 0 0 max(calc(40vw / 7.50), 20px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(3) li:nth-of-type(2){
        flex: none;
        width: 97%;
    }
    
    .top_lineup_list_wrap ul:nth-of-type(3) li:first-of-type{
        position: absolute;
        top: auto;
        bottom: max(calc(24vw / 7.50), 12px);
        left: max(calc(83vw / 7.50), 41.5px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(4){
        margin-top: max(calc(24vw / 7.50), 12px);
        padding: 0;
    }
    
    .top_lineup_list_wrap ul:nth-of-type(4) li:first-of-type{
        position: absolute;
        top: auto;
        bottom: max(calc(32vw / 7.50), 16px);
        left: max(calc(83vw / 7.50), 41.5px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(4) li:nth-of-type(2){
        flex: none;
        width: 94%;
    }
    
    .top_lineup_list_wrap ul:nth-of-type(4).top_lineup_list a{
        margin-top: max(calc(10vw / 7.50), 5px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(5){
        margin-top: max(calc(24vw / 7.50), 12px);
        padding: 0 0 0 max(calc(12vw / 7.50), 6px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(5) li:first-of-type{
        position: absolute;
        top: auto;
        bottom: min(calc(-154vw / 7.50), 77px);
        left: max(calc(83vw / 7.50), 41.5px);
    }
    
    .top_lineup_list_wrap ul:nth-of-type(5) li:nth-of-type(2){
        flex: none;
        width: 97%;
    }
    
    .top_product_list{
        margin-top: max(calc(260vw / 7.50), 130px);
    }
    
    /* top 早見表 */

    .top_product_list_inner{
        padding: min(calc(44vw / 7.50), 22px) 0 0;
        background-image: url('../img/top/top_table_bg_sp.png');
        background-size: 90% 6%;
    }
    
    .top_product_list h2{
        font-size: max(calc(46vw / 7.50), 23px);
        margin-bottom: max(calc(75vw / 7.50), 37.5px);
    }
    
    .top_product_list h2::before, .top_product_list h2::after{
        width: max(calc(20vw / 7.50), 10px);
        height: max(calc(20vw / 7.50), 10px);
    }
    
    .top_product_list h2::before{
        margin-right: max(calc(23vw / 7.50), 11.5px);
    }
    
    .top_product_list h2::after{
        margin-left: max(calc(23vw / 7.50), 11.5px);
    }
    
    .top_shopping_detail{
        top: auto;
        bottom: max(calc(74vw / 7.50), 37px);
    }
    
    .top_shopping_detailTitle{
        width: max(calc(242vw / 7.50), 121px);
    }
    
    .top_shopping_detailText{
        font-size: max(calc(34vw / 7.50), 17px);
    }
    
    .top_shopping_detailLink .link_btn{
        padding: max(calc(24vw / 7.50), 12px) max(calc(66vw / 7.50), 33px) max(calc(24vw / 7.50), 12px) max(calc(40vw / 7.50), 20px);
        margin-top: max(calc(40vw / 7.50), 20px);
    }
    
    .top_shopping_detailLink .link_btn::after{
        right: max(calc(16vw / 7.50), 8px);
    }

    .diagnosis_result_list .diagnosis_card{
        width: 100%;
    }

    /* スマホ幅は1列なので、カード幅 = リスト幅 */
    .diagnosis_modal_box.is-multi .diagnosis_result_list{
        --k: calc(100cqw / 610);
    }

    /* 幅が狭いと質問文が3行になることがあるため、3行分の高さを確保 */
    .diagnosis_question{
        min-height: 4.8em;
    }
    
    /*---------------------------------
    *  inview
    ---------------------------------*/

    .fadeIn_up_spLong{
        transform: translate(0, 10%);
    }
    
    .fadeIn_up_shortCont02{
        transform: translate(0, 5%);
        transition: 1s;
    }
}

/*---------------------------------
* 下層ページ　おむつポンミィ
---------------------------------*/

.subpage_mv01 img{
    width: 100%;
}

.subpage_mv01_wrap{
    position: relative;
}

.subpage_mv01_wrap .header_menu{
    position: absolute;
    z-index: 1;
}

.subpage_mv01 h1{
    display: none;
}

.subpage_about_product{
    display: block;
    background-image: url('../img/omutsu_ponme/subpage_poroducts_sec_bg01.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    padding: calc(105vw / 14.40) 0 calc(130vw / 14.40);
    text-align: center;
}

.subpage_about_productTitle{
    font-size: calc(24vw / 14.40);
    letter-spacing: 0.078em;
    color: #ffc1b7;
    font-family: "Comfortaa", sans-serif;
    font-weight: 700;
}

.subpage_about_productName{
    font-size: calc(36vw / 14.40);
    letter-spacing: 0.09em;
    color: #ff6a20;
    margin-top: calc(10vw / 14.40);
    font-weight: 700;
    display: inline-block;
    padding: 0 calc(7vw / 14.40);
}

.subpage_about_productName::after{
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background-color: #f5e49e;
    margin: calc(14vw / 14.40) auto 0;
}

.subpage_about_productText p{
    font-size: calc(24vw / 14.40);
    font-weight: 500;
    letter-spacing: 0.162em;
    line-height: 1.66;
    color: #4c5054;
}

.subpage_about_productText p{
    font-family: "M PLUS Rounded 1c", sans-serif;
    margin-top: calc(15vw / 14.40);
}

.subpage_recommend_product{
    padding: min(calc(80vw / 12.00), 80px) 0 min(calc(115vw / 12.00), 115px);
}

.subpage_recommend_productBl{
    display: flex;
    margin-left: min(calc(120vw / 12.00), 120px);
}

.subpage_recommend_productImg{
    flex: 0 0 49%;
}

.subpage_recommend_productDetail{
    flex: 1;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #5e5f66;
}

.subpage_recommend_productName{
    font-size: min(calc(46vw / 12.00), 46px);
    letter-spacing: 0.09em;
    font-weight: 700;
    line-height: 1.3;
}

.subpage_recommend_productCode{
    font-size: min(calc(30vw / 12.00), 30px);
    letter-spacing: 0.09em;
    font-weight: 700;    
    margin-top: min(calc(15vw / 12.00), 15px);
}

.subpage_recommend_productPrice{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(34vw / 12.00), 34px);
    letter-spacing: 0.062em;
    font-weight: 700;
    margin-top: min(calc(30vw / 12.00), 30px);
}

.subpage_recommend_productTax, .subpage_recommend_productPriceMark {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(24vw / 12.00), 24px);
    letter-spacing: 0.062em;
    font-weight: 500;   
}

.link_btn.common_link{
    padding: min(calc(24vw / 12.00), 24px) min(calc(50vw / 12.00), 50px) min(calc(24vw / 12.00), 24px) min(calc(43vw / 12.00), 43px);
}

.link_btn.common_link::after{
    right: min(calc(20vw / 12.00), 20px);
}

.subpage_recommend_productLink .link_btn{
    margin-top: min(calc(70vw / 12.00), 70px);
}

.subpage_eyecatch img{
    width: 93.33%;
    margin: 0 auto;
}

.subpage_set{
    display: block;
    padding-top: min(calc(35vw / 12.00), 35px);
}

.subpage_sec_title_wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url("../img/common/shape01.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: min(calc(590vw / 12.00), 590px);
    height: min(calc(115vw / 12.00), 115px);
    margin: 0 auto;
}

.subpage_sec_title{
    font-size: min(calc(46vw / 12.00), 46px);
    letter-spacing: 0.09em;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.subpage_set_img{
    margin-top: min(calc(83vw / 12.00), 83px);
    margin-left: min(calc(27vw / 12.00), 27px);
    margin-right: min(calc(5vw / 12.00), 5px);
}

.subpage_set_detail{
    margin-top: calc(33vw / 14.40);
    background-image: url("../img/omutsu_ponme/omutsu_ponme_features.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: calc(410vw / 14.40) 0 calc(230vw / 14.40);
}

.subpage_set_detail ul{
    margin-left: calc(330vw / 14.40);
}

.subpage_set_detail ul li{
    font-size: calc(24vw / 14.40);
    color: #5e5f66;
    display: flex;
}

.subpage_set_detail ul li div{
    font-weight: 700;
}

.subpage_set_detail ul li::before{
    content: "";
    display: inline-block;
    width: calc(24vw / 14.40);
    height: calc(24vw / 14.40);
    background-color: #fdd35c;
    border-radius: 50%;
    margin-right: calc(12vw / 14.40);
}

.subpage_set_detail ul li:nth-of-type(n+2){
    margin-top: calc(17vw / 14.40);
}

.subpage_set_detail_note{
    font-size: calc(18vw / 14.40);
    line-height: 1.33;
    margin-top: calc(10vw / 14.40);
    font-weight: 500;
}

.subpage_stamp_sample{
    padding: min(calc(90vw / 12.00), 90px) 0 0;
}

.subpage_stamp_sampleTop{
    display: flex;
    margin-top: min(calc(80vw / 12.00), 80px);
}

.subpage_stamp_sample_bl01{
    width: min(calc(790vw / 12.00), 790px);
    margin: 0 auto;
}

.subpage_stamp_sampleImg{
    flex: 0 0 min(calc(518vw / 12.00), 518px);
}

.subpage_stamp_sampleSize{
    display: flex;
    flex: 1;
    align-items: center;
}

.subpage_stamp_sampleSizeInner{
    color: #5e5f66;
}

.subpage_stamp_sampleSizeInner p:first-of-type{
    font-size: min(calc(26vw / 12.00), 26px);
    letter-spacing: 0.02em;
    font-weight: 700;
}

.subpage_stamp_sampleSizeInner p:nth-of-type(2){
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(28vw / 12.00), 28px);
    letter-spacing: 0.16em;
    font-weight: 500;
    margin-top: min(calc(28vw / 12.00), 28px);
}

.subpage_stamp_sampleSize::before{
    content: "";
    display: inline-block;
    width: min(calc(24vw / 12.00), 24px);
    height: min(calc(24vw / 12.00), 24px);
    background-color: #fdd35c;
    border-radius: 50%;
    margin-right: min(calc(7vw / 12.00), 7px);
}

.subpage_stamp_sampleNote{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(17.5vw / 12.00), 17.5px);
    line-height: 1.44;
    margin-top: min(calc(50vw / 12.00), 50px);
    letter-spacing: -0.07em;
}

.subpage_stamp_sampleIllustration{
    margin-top: min(calc(80vw / 12.00), 80px);
}

.subpage_stamp_sampleIllustration h3{
    font-size: min(calc(46vw / 12.00), 46px);
    letter-spacing: 0.09em;
    font-weight: 700;
    text-align: center;
    color: #ff9027;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(calc(15vw / 12.00), 15px);
}

.subpage_stamp_sampleIllustration h3 span{
    font-size: min(calc(90vw / 12.00), 90px);
    font-weight: 500;
}

.subpage_stamp_sampleIllustrationImg{
    width: 84%;
    margin: min(calc(43vw / 12.00), 43px) auto 0;
}

.subpage_stamp_sampleIllustrationImgs>div:nth-of-type(1){
    margin-bottom: min(calc(6vw / 12.00), 6px);
}

.subpage_stamp_sampleIllustrationImgs>div:nth-of-type(2){
    margin: 0 auto;
    display: none; /* 初めは非表示。MOREボタンで開く */
}

.more_btn{
    font-family: "M PLUS Rounded 1c", sans-serif;
    cursor: pointer;
    font-size: min(calc(24vw / 12.00), 24px);
    letter-spacing: 0.2em;
    color: #fff;
    font-weight: 500;
    padding: min(calc(25vw / 12.00), 25px) min(calc(100vw / 12.00), 100px);
    background-color: #fdd35c;
    display: inline-block;
    border-radius: min(calc(72vw / 12.00), 72px);
    margin-top: min(calc(40vw / 12.00), 40px);
    position: relative;
}

.more_btn::before, .more_btn::after{
    position: absolute;
    content: "";
    display: inline-block;
    background-image: url("../img/common/arrow02.png");
    width: min(calc(20vw / 12.00), 20px);
    height: min(calc(23vw / 12.00), 23px);
    background-size: contain;
    background-repeat: no-repeat;
}

.more_btn::before{
    left: min(calc(44vw / 12.00), 44px);
}

.more_btn::after{
    right: min(calc(44vw / 12.00), 44px);
}

/* .link_btn:hover::after（横方向）と同じ動きを、縦方向にしたもの */
.more_btn:hover::before, .more_btn:hover::after{
    animation: arrow_btn_y 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@keyframes arrow_btn_y {
    0% {
        opacity: 1;
        transform: translate(0, 0);
    }

    5% {
        opacity: 1;
        transform: translate(0, 0);
    }

    35% {
        opacity: 0;
        transform: translate(0, 100%);
    }

    40% {
        transform: translate(0, -100%);
    }

    45% {
        opacity: 0;
        transform: translate(0, -100%);
    }

    75% {
        opacity: 1;
        transform: translate(0, 0);
    }

    100% {
        opacity: 1;
        transform: translate(0, 0);
    }
}

/* 開いている時（JSが .is-open を付ける）：矢印を180度回転 */
.more_btn::before, .more_btn::after{
    transition: transform 0.3s ease;
}

.more_btn.is-open::before, .more_btn.is-open::after{
    transform: rotate(180deg);
}

/* 回転したままホバーアニメーションをするため、回転を含めたkeyframes（動く向きは矢印の向きに合わせて逆になる） */
.more_btn.is-open:hover::before, .more_btn.is-open:hover::after{
    animation: arrow_btn_y_open 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@keyframes arrow_btn_y_open {
    0% {
        opacity: 1;
        transform: rotate(180deg) translate(0, 0);
    }

    5% {
        opacity: 1;
        transform: rotate(180deg) translate(0, 0);
    }

    35% {
        opacity: 0;
        transform: rotate(180deg) translate(0, 100%);
    }

    40% {
        transform: rotate(180deg) translate(0, -100%);
    }

    45% {
        opacity: 0;
        transform: rotate(180deg) translate(0, -100%);
    }

    75% {
        opacity: 1;
        transform: rotate(180deg) translate(0, 0);
    }

    100% {
        opacity: 1;
        transform: rotate(180deg) translate(0, 0);
    }
}

.subpage_stamp_sampleBtn{
    text-align: center;
}

.subpage_stamp_sampleLinks ul{
    display: flex;
    gap: min(calc(50vw / 12.00), 50px);
    justify-content: center;
    margin-top: min(calc(95vw / 12.00), 95px);
}

.subpage_stamp_sampleLinks ul li a{
    font-family: "M PLUS Rounded 1c", sans-serif;
    width: min(calc(406vw / 12.00), 406px);
    height: min(calc(110vw / 12.00), 110px);
    color: #fff;
    border-radius: min(calc(25vw / 12.00), 25px);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: min(calc(28vw / 12.00), 28px);
    letter-spacing: 0.162em;
    line-height: 1.67;
    font-weight: 500;
}

.subpage_stamp_sampleLinks ul li:first-of-type a{
    background-color: #ff9027;
    box-shadow: 0 min(calc(8vw / 12.00), 8px) 0 #ffcb6a;
}

.subpage_stamp_sampleLinks ul li:nth-of-type(2) a{
    background-color: #ffabaa;
    box-shadow: 0 min(calc(8vw / 12.00), 8px) 0 #ffcfbf;
}

.subpage_stamp_sampleLinks ul li a:active{
    /* ボタンを押したとき：下に動いて、影を消す */
    transform: translateY(4px);
    box-shadow: none;
}

.subpage_materials{
    display: block;
    padding-top: min(calc(90vw / 12.00), 90px);
}

.subpage_materials_img{
    width: 96.5%;
    margin: min(calc(60vw / 12.00), 60px) auto 0;
}

.subpage_related_products{
    padding-top: min(calc(100vw / 12.00), 100px);
    display: block;
}

.subpage_related_products ul{
    margin: min(calc(78vw / 12.00), 78px) auto 0;
    width: 85%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.subpage_related_products ul li{
    flex: 0 0 46%;
    color: #5e5f66;
    text-align: center;
    display: flex;
    flex-direction: column;
}

.subpage_related_products ul li:nth-of-type(n+3){
    margin-top: min(calc(50vw / 12.00), 50px);
}

.subpage_related_productImg img{
    border: 1px solid #dfdfd0;
}

.official_product .subpage_related_productImg,
.official_product .subpage_recommend_productImg{
    position: relative;
}

.official_product .subpage_related_productImg::after,
.official_product .subpage_recommend_productImg::after{
    content: "";
    position: absolute;
    background-image: url(../img/common/official_store_icon.png);
    width: min(calc(203vw / 12.00), 203px);
    height: min(calc(56vw / 12.00), 56px);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    right: min(calc(7vw / 12.00), 7px);
    bottom: min(calc(7vw / 12.00), 7px);
}

.official_product_leftPosition .subpage_related_productImg::after{
    left: min(calc(7vw / 12.00), 7px);
    right: auto;
}

.subpage_related_productDetail{
    margin-top: min(calc(33vw / 12.00), 33px);
    flex-grow: 1;
}

.subpage_related_productDetail p:first-of-type{
    font-size: min(calc(27vw / 12.00), 27px);
    letter-spacing: 0;
    font-weight: 700;
    line-height: 1.4;
}

.subpage_related_productDetail p:nth-of-type(2){
    font-size: min(calc(26vw / 12.00), 26px);
    letter-spacing: 0.09em;
    font-weight: 700;
    margin-top: min(calc(10vw / 12.00), 10px);
}

.subpage_related_productPrice{
    font-size: min(calc(34vw / 12.00), 34px);
    letter-spacing: 0.062em;
    font-weight: 700;
    margin-top: min(calc(35vw / 12.00), 35px);
    font-family: "M PLUS Rounded 1c", sans-serif;
}

.subpage_related_productPriceMark, .subpage_related_productPriceTax{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: min(calc(24vw / 12.00), 24px);
    font-weight: 500;
}

.subpage_related_productLink{
    margin-top: min(calc(30vw / 12.00), 30px);
}

.subpage_footer .footer_bl{
    justify-content: flex-start;
    gap: min(calc(108vw / 12.00), 108px);
}


@media screen and (max-width: 767px) {
    
    .subpage_about_product{
        background-image: url(../img/omutsu_ponme/subpage_poroducts_sec_bg01_sp.png);
        padding: max(calc(105vw / 7.50), 52.5px) 0 max(calc(115vw / 7.50), 57.5px);
    }
    
    .subpage_about_productTitle{
        font-size: max(calc(24vw / 7.50), 12px);
    }
    
    .subpage_about_productName{
        font-size: max(calc(36vw / 7.50), 18px);
        margin-top: max(calc(16vw / 7.50), 8px);
        padding: 0 max(calc(8vw / 7.50), 4px);
    }
    
    .subpage_about_productName::after{
        margin: max(calc(14vw / 7.50), 7px) 0 0;
        height: 2px;
    }
    
    .subpage_about_productText p{
        font-size: max(calc(24vw / 7.50), 12px);
        margin-top: max(calc(24vw / 7.50), 12px);
    }
    
    .subpage_recommend_product{
        padding: max(calc(17vw / 7.50), 8.5px) 0 max(calc(20vw / 7.50), 10px);
    }
    
    .subpage_recommend_productBl{
        margin: 0 auto;
        flex-direction: column;
        width: 75%;
        gap: max(calc(40vw / 7.50), 20px);
    }
    
    .subpage_recommend_productName{
        font-size: max(calc(46vw / 7.50), 23px);
    }
    
    .subpage_recommend_productCode{
        font-size: max(calc(30vw / 7.50), 15px);
        margin-top: max(calc(15vw / 7.50), 7.5px);
    }
    
    .subpage_recommend_productPrice{
        font-size: max(calc(46vw / 7.50), 23px);
        margin-top: max(calc(40vw / 7.50), 20px);
    }
    
    .subpage_recommend_productPriceMark{
        font-size: max(calc(36vw / 7.50), 18px);
    }
    
    .subpage_recommend_productTax{
        font-size: max(calc(24vw / 7.50), 12px);
    }
    
    .link_btn.common_link{
        font-size: max(calc(24vw / 7.50), 12px);
        padding: max(calc(24vw / 7.50), 12px) max(calc(58vw / 7.50), 29px) max(calc(24vw / 7.50), 12px) max(calc(50vw / 7.50), 25px);
    }
    
    .subpage_recommend_productLink .link_btn.common_link{
        margin-top: max(calc(35vw / 7.50), 17.5px);
    }
    
    .link_btn.common_link::after{
        width: max(calc(24vw / 7.50), 12px);
        height: max(calc(18vw / 7.50), 9px);
        right: max(calc(20vw / 7.50), 10px);
    }
    
    .subpage_eyecatch img{
        width: 99.5%;
    }
    
    .subpage_set{
        padding-top: max(calc(66vw / 7.50), 33px);
    }
    
    .subpage_sec_title_wrap{
        width: max(calc(590vw / 7.50), 295px);
        height: max(calc(114vw / 7.50), 57px);
    }
    
    .subpage_sec_title{
        font-size: max(calc(46vw / 7.50), 23px);
    }
    
    .subpage_set_img{
        margin: max(calc(77vw / 7.50), 38.5px) auto 0;
        width: 89%;
    }
    
    .subpage_set_detail{
        margin-top: max(calc(22vw / 7.50), 11px);
        background-image: url('../img/omutsu_ponme/omutsu_ponme_features_sp.png');
        padding: calc(306vw / 7.50) 0 calc(276vw / 7.50);
    }
    
    .subpage_set_detail ul{
        margin-left: calc(85vw / 7.50);
    }
    
    .subpage_set_detail ul li{
        font-size: calc(24vw / 7.50);
        line-height: 1.1;
    }
    
    .subpage_set_detail_note{
        font-size: calc(20vw / 7.50);
        font-weight: 500;
    }
    
    .subpage_set_detail ul li::before{
        width: calc(25vw / 7.50);
        height: calc(25vw / 7.50);
        margin-right: calc(10vw / 7.50);
        margin-top: calc(5vw / 7.5);
    }
    
    .subpage_set_detail ul li:nth-of-type(n+2){
        margin-top: calc(15vw / 7.50);
    }
    
    .subpage_stamp_sample{
        padding: max(calc(64vw / 7.50), 32px) 0 0;
        /* h3のspanをrotateした際の横スクロール防止。hiddenだとスクロールコンテナ化してSPで前のsectionにめり込むため clip を使う */
        overflow-x: clip;
    }
    
    .subpage_stamp_sampleTop{
        margin-top: max(calc(54vw / 7.50), 27px);
        flex-direction: column;
    }
    
    .subpage_stamp_sample_bl01{
        width: 100%;
    }
    
    .subpage_stamp_sampleSize{
        justify-content: center;
    }
    
    .subpage_stamp_sampleSizeInner{
        display: flex;
        align-items: center;
        gap: max(calc(15vw / 7.50), 7.5px);
    }
    
    .subpage_stamp_sampleSizeInner p:first-of-type{
        font-size: max(calc(28vw / 7.50), 14px);
    }
    
    .subpage_stamp_sampleSizeInner p:nth-of-type(2){
        font-size: max(calc(26vw / 7.50), 13px);
        margin-top: 0;
    }
    
    .subpage_stamp_sampleSize::before{
        width: max(calc(24vw / 7.50), 12px);
        height: max(calc(24vw / 7.50), 12px);
        margin-right: max(calc(7vw / 7.50), 3.5px);
    }
    
    .subpage_stamp_sampleImg{
        flex: unset;
        width: 73%;
        margin: max(calc(45vw / 7.50), 22.5px) auto 0;
    }
    
    .subpage_stamp_sampleNote{
        font-size: max(calc(18vw / 7.50), 9px);
        margin-top: max(calc(43vw / 7.50), 21.5px);
    }
    
    .subpage_stamp_sampleIllustration{
        margin-top: max(calc(76vw / 7.50), 38px);
    }
    
    .subpage_stamp_sampleIllustration h3{
        font-size: max(calc(46vw / 7.50), 23px);
        gap: 0;
        white-space: nowrap;
    }
    
    .subpage_stamp_sampleIllustration h3 span{
        font-size: max(calc(90vw / 7.50), 45px);
    }
    
    .subpage_stamp_sampleIllustrationImg{
        margin: max(calc(40vw / 7.50), 20px) auto 0;
        width: 100%;
    }
    
    .subpage_stamp_sampleIllustrationImgs>div:nth-of-type(1){
        margin-bottom: max(calc(19vw / 7.50), 9.5px);
    }
    
    .more_btn{
        font-size: max(calc(24vw / 7.50), 12px);
        padding: max(calc(25vw / 7.50), 12.5px) max(calc(104vw / 7.50), 52px) max(calc(25vw / 7.50), 12.5px) max(calc(98vw / 7.50), 49px);
        margin-top: max(calc(33vw / 7.50), 16.5px);
    }
    
    .more_btn::before, .more_btn::after{
        width: max(calc(18vw / 7.50), 9px);
        height: max(calc(24vw / 7.50), 12px);
    }
    
    .more_btn::before{
        left: max(calc(46vw / 7.50), 23px);
    }
    
    .more_btn::after{
        right: max(calc(46vw / 7.50), 23px);
    }
    
    .subpage_stamp_sampleLinks ul{
        margin-top: max(calc(46vw / 7.50), 23px);
        gap: max(calc(13vw / 7.50), 6.5px);
    }
    
    .subpage_stamp_sampleLinks ul li a{
        width: max(calc(350vw / 7.50), 175px);
        height: max(calc(112vw / 7.50), 56px);
        font-size: max(calc(26vw / 7.50), 13px);
        
    }
    
    .subpage_stamp_sampleLinks ul li:first-of-type a{
        box-shadow: 0 max(calc(8vw / 7.50), 4px) 0 #ffcb6a;
    }
    
    .subpage_stamp_sampleLinks ul li:nth-of-type(2) a{
        box-shadow: 0 max(calc(8vw / 7.50), 4px) 0 #ffcfbf;
    }
    
    .subpage_materials{
        padding-top: max(calc(90vw / 7.50), 45px);
    }
    
    .subpage_materials_img{
        width: 94%;
        margin: max(calc(57vw / 7.50), 28.5px) auto 0;
    }
    
    .subpage_related_products{
        padding-top: max(calc(64vw / 7.50), 32px);
    }
    
    .subpage_related_products ul{
        margin: max(calc(67vw / 7.50), 33.5px) auto 0;
        width: 100%;
        gap: max(calc(25vw / 7.50), 12.5px);
        row-gap: max(calc(44vw / 7.50), 22px);
    }
    
    .subpage_related_products ul li{
        flex: 0 0 calc((100% - max(calc(25vw / 7.50), 12.5px)) / 2);
    }
    
    .subpage_related_products ul li:nth-of-type(n+3){
        margin-top: 0;
    }
    
    .official_product .subpage_related_productImg::after{
        width: max(calc(141vw / 7.50), 70.5px);
        height: max(calc(39vw / 7.50), 20px);
        right: max(calc(5vw / 7.50), 2.5px);
        bottom: max(calc(5vw / 7.50), 2.5px);
    }
    
    .official_product .subpage_recommend_productImg::after{
        width: max(calc(203vw / 7.50), 101.5px);
        height: max(calc(56vw / 7.50), 28px);
        right: max(calc(8vw / 7.50), 4px);
        bottom: max(calc(8vw / 7.50), 4px);
    }
    
    
    .official_product_leftPosition .subpage_related_productImg::after{
        left: max(calc(5vw / 7.50), 2.5px);
        right: auto;
    }
    
    .subpage_related_productDetail{
        margin-top: max(calc(20vw / 7.50), 10px);
    }
    
    .subpage_related_productDetail p:first-of-type{
        font-size: max(calc(28vw / 7.50), 14px);
        line-height: 1.4;
    }
    
    .subpage_related_productDetail p:nth-of-type(2){
        font-size: max(calc(26vw / 7.50), 13px);
        margin-top: max(calc(8vw / 7.50), 4px);
    }
    
    .subpage_related_productPrice{
        margin-top: max(calc(30vw / 7.50), 15px);
        font-size: max(calc(34vw / 7.50), 17px);
    }
    
    .subpage_related_productPriceMark, .subpage_related_productPriceTax{
        font-size: max(calc(24vw / 7.50), 12px);
    }
    
    .subpage_related_productLink{
        margin-top: max(calc(22vw / 7.50), 11px);
    }
    
    .subpage_footer .footer_link_wrapper ul{
        flex-direction: row;
    }
    
    .subpage_footer .footer_link_wrapper{
        justify-content: center;
    }

    .subpage_footer .footer_link_wrapper ul{
        gap: max(calc(100vw / 7.50), 50px);
        justify-content: center;
    }
    
}

/*---------------------------------
* 下層ページ　おなまえポンミィ
---------------------------------*/

.subpage02 .subpage_about_product{
    padding: calc(120vw / 14.40) 0 calc(160vw / 14.40);
}

.subpage_recommend_product>div>ul:nth-of-type(n+2){
    margin-top: min(calc(104vw / 12.00), 104px);
}

.subpage02 .subpage_recommend_productName{
    font-size: min(calc(42vw / 12.00), 42px);
}

.onamaeponme_set_img01{
    width: 93%;
    margin: min(calc(83vw / 12.00), 83px) auto 0;
}

.onamaeponme_set_detail01{
    background-image: url(../img/onamaeponme/onamaeponme_features01.png);
    padding: calc(392vw / 14.40) 0 calc(136vw / 14.40);
}

.onamaeponme_set_detail01 .subpage_set_detail_img{
    width: calc(1160vw / 14.40);
    padding-top: calc(100vw / 14.40);
    margin: 0 auto;
}

.onamaeponme_set_img02{
    width: 96%;
    margin: min(calc(83vw / 12.00), 83px) auto 0;
}

.onamaeponme_set_detail02{
    background-image: url(../img/onamaeponme/onamaeponme_features02.png);
    padding: calc(392vw / 14.40) 0 calc(170vw / 14.40);
}

.onamaeponme_set_detail02 .subpage_set_detail_img{
    width: calc(1117vw / 14.40);
    padding-top: calc(109vw / 14.40);
    margin: 0 auto;
}

.onamaeponme_set_detail02 ul{
    margin-left: calc(305vw / 14.40);
}

.onamaeponme_set_detail_2line{
    line-height: 1.33;
}

@media screen and (max-width: 767px){
    
    .subpage02 .subpage_about_product{
        padding: max(calc(152vw / 7.50), 76px) 0 max(calc(172vw / 7.50), 86px);
    }
    
    .subpage02 .subpage_recommend_productName{
        font-size: max(calc(42vw / 7.50), 21px);
    }
    
    .onamaeponme_set_img01{
        width: 100%;
        margin: max(calc(77vw / 7.50), 38.5px) auto 0;
    }
    
    .onamaeponme_set_detail01{
        background-image: url(../img/onamaeponme/onamaeponme_features01_sp.png);
        padding: calc(318vw / 7.50) 0 calc(72vw / 7.50);
        margin-top: calc(66vw / 7.50);
    }
    
    .onamaeponme_set_detail01 .subpage_set_detail_img{
        padding-top: calc(110vw / 7.50);
        width: calc(731vw / 7.50);
    }
    
    .onamaeponme_set_detail01 ul{
        margin-left: calc(80vw / 7.50);
    }
    
    .onamaeponme_set_detail01 ul li,
    .onamaeponme_set_detail02 ul li{
        font-size: calc(23vw / 7.50);
        line-height: 1.33;
    }
    
    .onamaeponme_set_img02{
        width: 102%;
        margin-left: -10px;
    }
    
    .onamaeponme_set_detail02{
        background-image: url(../img/onamaeponme/onamaeponme_features02_sp.png);
        padding: calc(320vw / 7.50) 0 calc(216vw / 7.50);
        margin-top: calc(60vw / 7.50);
    }
    
    .onamaeponme_set_detail02 .subpage_set_detail_img{
        width: 100%;
        padding-top: calc(108vw / 7.50);
    }
    
    .onamaeponme_set_detail02 ul{
        margin-left: calc(84vw / 7.50);
    }
}

/*---------------------------------
* 下層ページ　おなまえマーカー
---------------------------------*/

.subpage03 .subpage_recommend_productName{
    font-size: min(calc(36vw / 12.00), 36px);
    margin-top: min(calc(34vw / 12.00), 34px);
    line-height: 1.2;
    letter-spacing: 0;
}

.subpage03 .subpage_recommend_productBl{
    margin-left: min(calc(37vw / 12.00), 37px);
    box-sizing: border-box;
}

.subpage_recommend_productSpec{
    margin-left: min(calc(50vw / 12.00), 50px);
}

.subpage_recommend_productSpec ul{
    display: flex;
    gap: min(calc(8vw / 12.00), 8px);
}

.subpage_recommend_productSpec ul:nth-of-type(n+2){
    margin-top: min(calc(10vw / 12.00), 10px);
}

.subpage_recommend_productSpec ul li{
    background-color: #fd9417;
    color: #f8ffc1;
    padding: min(calc(8vw / 12.00), 8px) min(calc(10vw / 12.00), 10px);
    border-radius: min(calc(5vw / 12.00), 5px);
    font-size: min(calc(23vw / 12.00), 23px);
    font-weight: 700;
    white-space: nowrap;
}

.subpage_recommend_productGoods{
    margin: min(calc(44vw / 12.00), 44px) auto 0;
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(1) .subpage_recommend_productGoods{
    width: min(calc(512vw / 12.00), 512px);
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(2) .subpage_recommend_productGoods{
    width: min(calc(539vw / 12.00), 539px);
    margin-top: min(calc(20vw / 12.00), 20px);
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(3) .subpage_recommend_productGoods{
    width: min(calc(471vw / 12.00), 471px);
    margin-top: min(calc(20vw / 12.00), 20px);
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(4) .subpage_recommend_productGoods{
    width: min(calc(457vw / 12.00), 471px);
    margin-top: min(calc(42vw / 12.00), 42px);
}

.subpage03 .subpage_recommend_productLink .link_btn{
    margin-top: min(calc(23vw / 12.00), 23px);
}

.subpage03 .subpage_recommend_productImg{
    flex: 0 0 46%;
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(3) .subpage_recommend_productName{
    margin-left: min(calc(30vw / 12.00), 30px);
    margin-top: min(calc(14vw / 12.00), 14px);
}

.subpage_recommend_productSet{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: min(calc(18vw / 12.00), 18px);
}

.subpage_recommend_productSetTitle{
    font-size: min(calc(24vw / 12.00), 24px);
    font-weight: 700;
    width: min(calc(160vw / 12.00), 160%);
    height: min(calc(43vw / 12.00), 43px);
    background-image: url('../img/common/shape02.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
}

.subpage_recommend_productSet ul{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: min(calc(11vw / 12.00), 11px);
}

.subpage_recommend_productSet ul li{
    font-size: min(calc(22vw / 12.00), 22px);
    font-weight: 700;
    letter-spacing: 0.02em;
}

.subpage_recommend_productSet ul li::before{
    content: '';
    display: inline-block;
    width: min(calc(18vw / 12.00), 18px);
    height: min(calc(18vw / 12.00), 18px);
    background-color: #ff9027;
    border-radius: 50%;
    margin-right: min(calc(9vw / 12.00), 9px);
}

.subpage_recommend_productSet ul li:nth-of-type(n+2){
    margin-top: min(calc(12vw / 12.00), 6px);
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(3) .subpage_recommend_productPrice{
    margin-top: min(calc(20vw / 12.00), 20px);
}

.subpage03 .subpage_recommend_product>div>ul:nth-of-type(3) .subpage_recommend_productLink .link_btn{
    margin-top: min(calc(10vw / 12.00), 10px);
}

@media screen and (max-width: 767px) {
    
    .subpage03 .subpage_about_productText p{
        letter-spacing: 0.09em;
    }
    
    .subpage03 .subpage_recommend_productBl{
        margin: 0 auto;
    }
    
    .subpage_recommend_productSpec ul li{
        gap: max(calc(12vw / 7.50), 6px);
    }
    
    .subpage_recommend_productSpec ul:nth-of-type(n+2){
        margin-top: max(calc(15vw / 7.50), 7.5px);
    }
    
    .subpage_recommend_productSpec ul li{
        font-size: max(calc(23vw / 7.50), 11.5px);
        padding: max(calc(10vw / 7.50), 5px);
    }
    
    .subpage_recommend_productSpec{
        margin-left: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    
    .subpage03 .subpage_recommend_productName{
        font-size: max(calc(40vw / 7.50), 20px);
        margin-top: max(calc(45vw / 7.50), 22.5px)!important;
    }
    
    .subpage_recommend_productCode{
        font-size: max(calc(31vw / 7.50), 15.5px);
        margin-top: max(calc(19vw / 7.50), 9.5px);
    }
    
    .subpage03 .subpage_recommend_product>div>ul:nth-of-type(1) .subpage_recommend_productGoods{
        width: max(calc(512vw / 7.50), 256px);
    }
    
    .subpage03 .subpage_recommend_product>div>ul:nth-of-type(2) .subpage_recommend_productGoods{
        width: max(calc(539vw / 7.50), 270px);
    }
    
    .subpage03 .subpage_recommend_product>div>ul:nth-of-type(3) .subpage_recommend_productGoods{
        width: max(calc(471vw / 7.50), 235.5px);
    }
    
    .subpage03 .subpage_recommend_product>div>ul:nth-of-type(4) .subpage_recommend_productGoods{
        width: max(calc(457vw / 7.50), 228.5px);
    }
    
    .subpage03 .subpage_recommend_product>div>ul .subpage_recommend_productGoods{
        margin-top: max(calc(40vw / 7.50), 20px)!important;
    }
    
    .subpage03 .subpage_recommend_productLink .link_btn{
        margin-top: max(calc(26vw / 7.50), 13px)!important;
    }
    
    .subpage_recommend_productSet{
        margin-top: max(calc(40vw / 7.50), 20px);
    }
    
    .subpage_recommend_productSetTitle{
        font-size: max(calc(28vw / 7.50), 14px);
        width: max(calc(207vw / 7.50), 103.5px);
        height: max(calc(54vw / 7.50), 27px);
    }
    
    .subpage_recommend_productSet ul{
        margin-top: max(calc(24vw / 7.50), 12.5px);
    }
    
    .subpage_recommend_productSet ul li{
        font-size: max(calc(26vw / 7.50), 13px);
    }
    
    .subpage_recommend_productSet ul li::before{
        width: max(calc(18vw / 7.50), 9px);
        height: max(calc(18vw / 7.50), 9px);
        margin-right: max(calc(7vw / 7.50), 3.5px);
    }
    
    .subpage03 .subpage_recommend_product>div>ul:nth-of-type(3) .subpage_recommend_productPrice{
        margin-top: max(calc(40vw / 7.50), 20px);
    }
    
    .subpage03 .subpage_related_productDetail p:first-of-type{
        font-size: max(calc(27vw / 7.50), 13.5px);
    }
    
}

/*---------------------------------
* 下層ページ　入園入学ポンミィBOX
---------------------------------*/

.ponmebox_set_img01{
    width: 84%;
    margin: min(calc(83vw / 12.00), 83px) auto 0;
}

.subpage04 .subpage_recommend_productName{
    font-size: min(calc(42vw / 12.00), 42px);
}

.subpage04 .subpage_recommend_productTxt01{
    font-size: min(calc(36vw / 12.00), 36px);
    font-weight: 700;
    letter-spacing: 0;
}

.subpage04 .subpage_recommend_productTxt01 span{
    font-size: min(calc(42vw / 12.00), 42px);
    font-weight: 700;
}

.ponmebox_recommend_product02{
    padding: min(calc(96vw / 12.00), 96px) 0 min(calc(115vw / 12.00), 115px);
}

.subpage04 .subpage_set_detail{
    background-image: url(../img/ponmebox/ponmebox_features01.png);
    padding: calc(390vw / 14.40) 0 calc(230vw / 14.40);
}

.subpage04 .subpage_set_detail ul{
    margin-left: calc(310vw / 14.40);
}

.subpage04 .subpage_set_detail ul li div{
    line-height: 1.3;
}

.subpage04 .subpage_set_detail ul li::before{
    margin-top: calc(5vw / 14.40);
}

.subpage04 .subpage_set_detail ul li:nth-of-type(n+2){
    margin-top: calc(5vw / 14.40);
}

.ponmebox_stamp_sample_bl{
    width: 80%;
}

.ponmebox_stamp_sample_bl .subpage_stamp_sampleTop{
    flex-direction: column;
}

.ponmebox_stamp_sample_bl .subpage_stamp_sampleSizeInner{
    font-size: min(calc(46vw / 12.00), 46px);
}

.ponmebox_stamp_sample_bl .subpage_stamp_sampleSizeInner span{
    font-weight: 700;
}

.ponmebox_stamp_sample_el>div:first-of-type .subpage_stamp_sampleSizeInner span:first-of-type{
    color: #ff9026;
}

.ponmebox_stamp_sample_el>div:nth-of-type(2) .subpage_stamp_sampleSizeInner span:first-of-type{
    color: #eb7071;
}

.ponmebox_stamp_sample_bl .subpage_stamp_sampleSize::before{
    width: min(calc(18vw / 12.00), 18px);
    height: min(calc(18vw / 12.00), 18px);
    margin-right: min(calc(17vw / 12.00), 17px);
    margin-top: min(calc(10vw / 12.00), 10px);
}

.ponmebox_stamp_sample_bl .subpage_stamp_sampleImg{
    margin-top: min(calc(27vw / 12.00), 27px);
    flex: unset;
}

.ponmebox_stamp_sample_el>div:nth-of-type(2){
    margin-top: min(calc(60vw / 12.00), 60px);
}

@media screen and (max-width: 767px){
    
    .subpage04 .subpage_about_productText p{
        letter-spacing: 0.02em;
    }
    
    .subpage04 .subpage_recommend_productName{
        font-size: max(calc(42vw / 7.50), 21px);
    }
    
    .subpage04 .subpage_recommend_productTxt01{
        font-size: max(calc(36vw / 7.50), 18px);
    }
    
    .subpage04 .subpage_recommend_productTxt01 span{
        font-size: max(calc(42vw / 7.50), 21px);
    }
    
    .ponmebox_set_img01{
        width: 88%;
        margin: max(calc(77vw / 7.50), 38.5px) auto 0;
    }
    
    .ponmebox_recommend_product02{
        padding: max(calc(60vw / 7.50), 30px) 0 max(calc(50vw / 7.50), 25px);
    }
    
    .subpage04 .subpage_set_detail{
        background-image: url(../img/ponmebox/ponmebox_features01_sp.png);
        padding: calc(309vw / 7.50) 0 calc(157vw / 7.50);
    }
    
    .subpage04 .subpage_set_detail ul{
        margin-left: calc(133vw / 7.50);
    }
    
    .subpage04 .subpage_set_detail ul li{
        line-height: 1.3;
    }
    
    .subpage04 .subpage_set_detail ul li::before{
        margin-top: calc(5vw / 7.5);
    }
    
    .subpage04 .subpage_set_detail ul li:nth-of-type(n+2){
        margin-top: calc(26vw / 7.5);
    }
    
    .ponmebox_stamp_sample_bl{
        width: 100%;
    }
    
    .ponmebox_stamp_sample_bl .subpage_stamp_sampleImg, .ponmebox_stamp_sample_bl .subpage_stamp_sampleImg img{
        width: 100%;
    }
    
    .subpage_stamp_sample_bl01 .subpage_stamp_sampleSize{
        justify-content: left;
    }
    
    .ponmebox_stamp_sample_bl .subpage_stamp_sampleSizeInner{
        font-size: max(calc(46vw / 7.50), 23px);
    }
    
    .ponmebox_stamp_sample_bl .subpage_stamp_sampleSize::before{
        width: max(calc(18vw / 7.50), 9px);
        height: max(calc(18vw / 7.50), 9px);
        margin-right: max(calc(17vw / 7.50), 8.5px);
        margin-top: max(calc(10vw / 7.50), 5px);
    }
    
    .ponmebox_stamp_sample_el>div:nth-of-type(2){
        margin-top: max(calc(60vw / 7.50), 30px);
    }
    
    .subpage04 .subpage_stamp_sampleNote{
        font-size: max(calc(22vw / 7.50), 11px);
    }
}

/*---------------------------------
* 下層ページ　ポンポンポンミィ
---------------------------------*/

.subpage_about_r-mark{
    font-size: calc(18vw / 14.40);
    top: calc(-7vw / 14.40);
    position: relative;
}

.subpage_about_productText p.subpage_about_note{
    text-align: right;
    font-size: calc(16vw / 14.40);
    font-weight: 700;
    width: 80%;
}

.ponponponme_set_img01{
    margin: min(calc(83vw / 12.00), 83px) auto 0;
    width: 85%;
}

.subpage05 .subpage_recommend_productName{
    font-size: min(calc(42vw / 12.00), 42px);
}

.ponponponme_recommend_product02{
    padding-top: min(calc(140vw / 12.00), 140px);
}

.ponponponme_set_img02{
    width: 98.3%;
    margin: min(calc(83vw / 12.00), 83px) auto 0;
}

.ponponponme_set_img03{
    width: 64.75%;
    margin: min(calc(83vw / 12.00), 83px) auto 0;
}

.subpage05 .subpage_set_detail{
    background-image: url("../img/ponponponme/ponponponme_features01.png");
    padding: calc(384vw / 14.40) 0 calc(156vw / 14.40);
}

.subpage05 .subpage_set_detail_title{
    font-size: calc(36vw / 14.40);
    color: #ff6a1f;
    letter-spacing: 0.09em;
    line-height: 1.4;
    text-align: center;
    margin-left: calc(20vw / 14.40);
}

.subpage05 .subpage_set_detail ul li:first-of-type::before{
    content: none;
}

.subpage05 .subpage_stamp_sample_bl01{
    margin-top: min(calc(60vw / 12.00), 60px);
    width: 91.66%;
    border: 3px solid #ff9028;
    padding: min(calc(50vw / 12.00), 50px) min(calc(109vw / 12.00), 109px) min(calc(40vw / 12.00), 40px) min(calc(180vw / 12.00), 180px);
    box-sizing: border-box;
}

.ponponponme_stamp_sample{
    display: flex; 
    justify-content: space-between;
}

.ponponponme_stamp_sample_bl01 .subpage_stamp_sampleImg{
    width: min(calc(193vw / 12.00), 193px);
    flex: unset;
}

.ponponponme_stamp_sample_bl02 .subpage_stamp_sampleImg{
    width: min(calc(328vw / 12.00), 328px);
}

.ponponponme_stamp_sample_bl03 .subpage_stamp_sampleImg{
    width: min(calc(414vw / 12.00), 414px);
}

.ponponponme_stamp_sample .subpage_stamp_sampleSizeInner p:nth-of-type(2){
    margin-top: min(calc(10vw / 12.00), 10px);
    font-size: min(calc(26vw / 12.00), 26px);
    letter-spacing: 0.02em;
    font-weight: 700;
    font-family: 'Zen Maru Gothic';
}

.ponponponme_stamp_sample .subpage_stamp_sampleSize{
    align-items: flex-start;
}

.ponponponme_stamp_sample_bl01{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ponponponme_stamp_sample_bl01 .subpage_stamp_sampleSize{
    margin-top: min(calc(34vw / 12.00), 34px);
}

.ponponponme_stamp_sample>li:nth-of-type(1){
    padding-top: min(calc(15vw / 12.00), 15px);
}

.ponponponme_stamp_sample>li:nth-of-type(2){
    display: flex;
    flex-direction: column;
    gap: min(calc(30vw / 12.00), 30px);
}

.ponponponme_stamp_sample>li:nth-of-type(2) .subpage_stamp_sampleSize{
    margin-top: min(calc(13vw / 12.00), 13px);
}

.ponponponme_stamp_sample .subpage_stamp_sampleSize::before{
    margin-top: min(calc(2vw / 12.00), 2px);
}

.ponponponme_stamp_sampleIllustration02{
    margin-top: min(calc(128vw / 12.00), 128px);
}

.ponponponme_stamp_sampleIllustration02 h3{
    line-height: 1.3;
}

.ponponponme_stamp_sampleIllustration02 h3 span{
    font-size: min(calc(120vw / 12.00), 120px);
    font-weight: 400;
}

.ponponponme_stamp_sampleIllustration02 .subpage_stamp_sampleIllustrationImgs>div:nth-of-type(1){
    margin-bottom: min(calc(15vw / 12.00), 15px);
}

.subpage_mail_order{
    padding-top: min(calc(106vw / 12.00), 106px);
}

.subpage_mail_order_inner{
    margin-top: min(calc(80vw / 12.00), 80px);
}

.subpage_mail_order_inner>div:nth-of-type(n+2){
    margin-top: min(calc(94vw / 12.00), 94px);
}

.subpage_mail_order_bl>ul{
    width: 88.33%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 auto;
}

.subpage_mail_order_img{
    flex: 0 0 50%;
}

.subpage_mail_order_simulator{
    flex: 0 0 43.4%;
}

.subpage_simulator_title{
    font-family: "Comfortaa", sans-serif;
    font-size: min(calc(20vw / 12.00), 20px);
    font-weight: 700;
    letter-spacing: 0.078em;
    color: #fdd25a;
    text-align: center;
}

.subpage_simulator_inner{
    aspect-ratio: 460 / 460;
    background-image: url("../img/ponponponme/ponponponme_simulation_bg01.png");
    background-size: 100% 100%;
    padding-top: min(calc(94vw / 12.00), 94px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: min(calc(30vw / 12.00), 30px);
}

.omutsuponme_mail_order .subpage_simulator_inner{
    padding-top: 0;
    justify-content: center;
    background-image: url("../img/omutsu_ponme/omutsu_ponme_simulation_bg01.png");
    aspect-ratio: 460 / 400;
}

.omutsuponme_mail_order .subpage_mail_order_bl>ul{
    align-items: flex-start;
}

.omutsuponme_mail_order .subpage_mail_order_simulator{
    padding-top: min(calc(17vw / 12.00), 17px);
}

.subpage_simulator_caption{
    font-size: min(calc(26vw / 12.00), 26px);
    width: min(calc(330vw / 12.00),330px);
    height: min(calc(62vw / 12.00), 62px);
    background-image: url("../img/common/shape03.png");
    background-size: 100% 100%;
    font-weight: 700;
    letter-spacing: 0.09em;
    display: flex;
    justify-content: center;
    align-items: center;
}

.subpage_simulator_inner ul{
    margin-top: min(calc(30vw / 12.00), 30px);
}

.subpage_simulator_inner ul li a{
    font-size: min(calc(24vw / 12.00), 24px);
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    letter-spacing: 0.1em;
    width: min(calc(344vw / 12.00), 344px);
    height: min(calc(66vw / 12.00), 66px);
    border-radius: min(calc(66vw / 12.00), 66px);
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    box-shadow: 0 min(calc(3vw / 12.00), 3px) #dfdfd0;
    transition: all 0.2s ease;
}

.subpage_simulator_inner ul li:first-of-type a{
    color: #ff7b8f;
    border: 3px solid #ff7b8f;
}

.subpage_simulator_inner ul li:first-of-type a:hover{
    background-color: #ff7b8f;
    color: #fff;
}

.omutsuponme_mail_order .subpage_simulator_inner ul li:first-of-type a{
    color: #ff6a20;
    border: 3px solid #ff6a20;
}

.omutsuponme_mail_order .subpage_simulator_inner ul li:first-of-type a:hover{
    background-color: #ff6a20;
    color: #fff;
}

.subpage_simulator_inner ul li:nth-of-type(2) a{
    color: #ff6a20;
    border: 3px solid #ff6a20;
    margin-top: min(calc(20vw / 12.00), 20px);
}

.subpage_simulator_inner ul li:nth-of-type(2) a:hover{
    background-color: #ff6a20;
    color: #fff; 
}

.subpage_mail_order_detail{
    margin-top: min(calc(53vw / 12.00), 53px);
}

.subpage_mail_order_detail .subpage_recommend_productName{
    font-size: min(calc(36vw / 12.00), 36px);
}

.subpage_mail_order_detail .subpage_recommend_productCode{
    margin-top: min(calc(27vw / 12.00), 27px);
}

.subpage_mail_order_price{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: min(calc(28vw / 12.00), 28px);
    gap: min(calc(18vw / 12.00), 18px);
}

.subpage_mail_order_price .subpage_recommend_productPrice{
    margin-top: 0;
}

.subpage_mail_order_price .subpage_recommend_productLink .link_btn{
    margin-top: 0;
}

.subpage_mail_order_inner>div:nth-of-type(2) .subpage_simulator_inner{
    background-image: url(../img/ponponponme/ponponponme_simulation_bg02.png);
}

.subpage_mail_order_inner>div:nth-of-type(3) .subpage_simulator_inner{
    background-image: url(../img/ponponponme/ponponponme_simulation_bg03.png);
}

@media screen and (max-width: 767px){
    
    .subpage05 .subpage_about_productText p{
        letter-spacing: 0.05em;
    }
    
    .subpage_about_r-mark{
        font-size: calc(18vw / 7.50);
        top: calc(-7vw / 7.50);
    }
    
    .subpage_about_productText p.subpage_about_note{
        font-size: calc(20vw / 7.50);
        width: 100%;
        padding-right: calc(20vw / 7.50);
        box-sizing: border-box;
    }
    
    .subpage05 .subpage_recommend_productName{
        font-size: max(calc(42vw / 7.50), 21px);
    }
    
    .ponponponme_set_img01{
        width: 92%;
    }
    
    .ponponponme_recommend_product02{
        padding-top: max(calc(74vw / 7.50), 37px);
    }
    
    .ponponponme_set_img02{
        width: 92.25%;
    }
    
    .ponponponme_set_img03{
        width: 97%;
    }
    
    .subpage05 .subpage_set_detail{
        background-image: url(../img/ponponponme/ponponponme_features01_sp.png);
        padding: calc(300vw / 7.50) 0 calc(183vw / 7.50);
    }
    
    .subpage05 .subpage_set_detail_title{
        font-size: calc(36vw / 7.50);
    }
    
    .subpage05 .subpage_set_detail ul{
        margin-left: calc(112vw / 7.50);
    }
    
    .subpage05 .subpage_stamp_sample .wrapper{
        width: calc(100% - 10px);
    }
    
    .subpage05 .subpage_stamp_sample_bl01{
        width: 100%;
        padding: 0 max(calc(10vw / 7.50), 5px) max(calc(30vw / 7.50), 15px);
    }
    
    .ponponponme_stamp_sample{
        display: block;
    }
    
    .ponponponme_stamp_sample>li:nth-of-type(1){
        display: flex;
        gap: calc(30vw / 7.50);
        justify-content: center;
        padding-top: 0;
    }
    
    .subpage05 .subpage_stamp_sampleSizeInner{
        display: block;
    }
    
    .ponponponme_stamp_sample_bl03{
        display: flex;
        align-items: center;
        margin-top: calc(43vw / 7.50);
        gap: calc(5vw / 7.50);
    }
    
    .ponponponme_stamp_sample>li:nth-of-type(1) > div{
        display: flex;
        flex-direction: column;
    }
    

    .ponponponme_stamp_sample>li:nth-of-type(1) .subpage_stamp_sampleImg{
        flex: none;
        height: calc(234vw / 7.50); /* 2つの画像枠の高さを固定して揃える */
        display: flex;
        align-items: center; /* 画像は枠の中で上下中央 */
        justify-content: center;
        margin-top: 0;
    }

    .ponponponme_stamp_sample>li:nth-of-type(1) .subpage_stamp_sampleSize{
        margin-top: max(calc(10vw / 7.50), 5px);
    }
    
    .ponponponme_stamp_sample_bl01 .subpage_stamp_sampleImg img{
        width: calc(193vw / 7.50);
    }
    
    .ponponponme_stamp_sample_bl02 .subpage_stamp_sampleImg img{
        width: calc(328vw / 7.50);
    }
    
    .ponponponme_stamp_sample_bl01 .subpage_stamp_sampleImg,
    .ponponponme_stamp_sample_bl02 .subpage_stamp_sampleImg{
        width: auto;
    }
    
    .ponponponme_stamp_sample .subpage_stamp_sampleSizeInner p,
    .ponponponme_stamp_sample .subpage_stamp_sampleSizeInner p:nth-of-type(2)
    {
        font-size: calc(26vw / 7.50);
    }
    
    .ponponponme_stamp_sample_bl03 .subpage_stamp_sampleImg{
        margin-top: 0;
        width: auto;
    }
    
    .ponponponme_stamp_sample_bl03 .subpage_stamp_sampleImg img{
        width: calc(389vw / 7.50);
    }
    
    .subpage05 .subpage_stamp_sampleNote{
        display: flex;
        justify-content: center;
    }
    
    .subpage05 .subpage_stamp_sampleNote p{
        display: inline-block;
    }
    
    .subpage05 .subpage_stamp_sampleIllustrationImgs{
        margin: 0 5px;
    }
    
    .subpage05 .subpage_stamp_sampleIllustrationImgs>div:nth-of-type(1){
        margin-bottom: calc(4vw / 7.50);
    }
    
    .ponponponme_stamp_sampleIllustration02 h3{
        letter-spacing: 0;
        white-space: nowrap;
    }
    
    .ponponponme_stamp_sampleIllustration02 h3 span{
        font-size: max(calc(150vw / 7.50), 75px);
        font-weight: 400;
    }
    
    .ponponponme_stamp_sampleIllustration02 h3 span:first-of-type{
        transform: rotate(12deg);
        position: relative;
        left: calc(15vw / 7.50);
    }
    
    .ponponponme_stamp_sampleIllustration02 h3 span:nth-of-type(2){
        transform: rotate(-12deg);
        position: relative;
        right: calc(15vw / 7.50);
    }
    
    .subpage_mail_order_img{
        flex: unset;
        width: 75%;
    }
    
    .omutsuponme_mail_order .subpage_mail_order_bl>ul{
        align-items: center;
    }
    
    .omutsuponme_mail_order .subpage_mail_order_simulator{
        padding-top: 0;
    }
    
    .subpage_mail_order_bl>ul{
        flex-direction: column;
        width: 100%;
        align-items: center;
        row-gap: max(calc(32vw / 7.50), 16px);
    }
    
    .subpage_mail_order_simulator{
        flex: unset;
        width: 65%;
    }
    
    .subpage_simulator_title{
        font-size: max(calc(22vw / 7.50), 11px);
    }
    
    .subpage_simulator_inner{
        margin-top: max(calc(32vw / 7.50), 16px);
        padding-top: max(calc(94vw / 7.50), 47px);
    }
    
    .subpage_simulator_caption{
        width: max(calc(328vw / 7.50), 164px);
        height: max(calc(64vw / 7.50), 32px);
        font-size: max(calc(26vw / 7.50), 13px);
    }
    
    .subpage_simulator_inner ul{
        margin-top: max(calc(30vw / 7.50), 15px);
    }
    
    .subpage_simulator_inner ul li a{
        width: max(calc(344vw / 7.50), 172px);
        height: max(calc(70vw / 7.50), 35px);
        border-radius: max(calc(70vw / 7.50), 70px);
        font-size: max(calc(24vw / 7.50), 12px);
    }
    
    .subpage_simulator_inner ul li:first-of-type a{
        border: 2px solid #ff7b8f;
    }
    
    .subpage_simulator_inner ul li:nth-of-type(2) a{
        margin-top: max(calc(20vw / 7.50), 10px);
        border: 2px solid #ff6a20;
    }
    
    .subpage_mail_order_detail{
        margin-top: max(calc(42vw / 7.50), 21px);
    }
    
    .subpage_mail_order_detail .subpage_recommend_productName{
        font-size: max(calc(36vw / 7.50), 18px);
    }
    
    .subpage_mail_order_inner>div:nth-of-type(-n+2) .subpage_recommend_productName{
        letter-spacing: 0;
    }
    
    .subpage_mail_order_detail .subpage_recommend_productCode{
        margin-top: max(calc(20vw / 7.50), 10px);
    }
    
    .subpage_mail_order_price{
        margin-top: max(calc(28vw / 7.50), 14px);
        gap: max(calc(18vw / 7.50), 9px);
    }

}