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

a img {
    transition: 0.4s;
}
a:hover img {
	opacity: 0.75;
}

/*--------------------------------------
全体調整 / 共通パーツ
--------------------------------------*/
body {
    counter-reset: number 0;
}
figure{
	margin: 0;
}

.u-text--body :is(h2,h3,h4,p,span,a){
	/*font-family: "Shippori Mincho B1", serif;*/
	font-weight: 400;
	margin: 0;
	/* color: #fff; */
}
.u-text--body :is(h2,h3,h4){
    font-weight: 400;
}
/* 共通h1無効 */
main #top h1 {
	position: absolute;
	left: -200%;
	z-index: -100;
}
.p-page_header__inner .img {
	display: none! important;
}
/* 全体の左右を全面に拡げる */
.p-page_content__inner {
	width: 100%;
	max-width: 100%;
}
/* 全体の左右余白を削除 */
.p-page_content{
    padding:0;
}
/* footer上の余白を削除 */
.page_main {
	font-weight: 500;
	margin-bottom: 0;
}

.pc {
	display: block !important;
}
.sp {
	display: none !important;
}

/* コンテンツ内共通 */
section {
    margin-bottom:min(calc(99* 100vw / 1000), 99px);
}
.content_wrapper{
	max-width:1040px;
    width: 100%;
    margin: 0 auto;
    padding: 0 min(calc(20* 100vw / 1000), 20px);
}
@media screen and (max-width: 750px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
    /* コンテンツ内共通 */
    section {
        margin-bottom:calc(160*100vw/750);
    }
	.content_wrapper{
		padding: 0 calc(35*100vw/750);
	}
}
/*アンカースクロール時ずれ時調整*/
:not(#anchor_link,#contact,#bnr_area) .content_wrapper {
    position: relative;
    padding-top: 40px;
    margin-top: -40px;
  }
@media screen and (max-width: 750px) {
    :not(#anchor_link,#contact,#bnr_area) .content_wrapper {
        padding-top:96px;
        margin-top:-96px;
    }
}
/* h2見出し */
.content_wrapper h2 {
	font-family: "Shippori Mincho B1", serif;
	font-weight: 500;
	font-size: min(calc(32 * 100vw / 1000), 32px) !important;
	line-height: 1.5;
    padding-top:0;
	margin: 0 auto min(calc(44 * 100vw / 1000), 44px);
    text-align: center;
}
/* 基本テキスト */
.content_wrapper p {
	font-size: min(calc(16 * 100vw / 1000), 16px);
	font-weight: 400;
}
/* 共通ボタン */
.content_wrapper .btn:not(.contact_select_form_btn){
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.05em;
    text-decoration: none;
    border-radius: 60px;
    margin: 0 auto;
    box-sizing: border-box;
    transition: opacity .3s;
    border:none;
    font-weight: 700;
    font-size: min(calc(16* 100vw / 1000), 16px);
    line-height: min(calc(48* 100vw / 1000), 48px);
    text-align: center;
    height: min(calc(48* 100vw / 1000), 48px);
    background-color: #333333;
    padding: 0;
    color: #fff;
}
.content_wrapper .btn .item_btn-arrow {
    position: relative;
    display: inline-block;
    margin-left:0;
    position: absolute;
    right: min(calc(22* 100vw / 1000), 22px);
    top:50%;
    transform: translateY(-50%);
}
.content_wrapper .btn .item_btn-arrow::after {
	content: '';
	width: min(calc(8* 100vw / 1000), 8px);
	height: min(calc(8* 100vw / 1000), 8px);
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	margin: auto;
	right: 0;
	top: 0;
	bottom: 0;
	transform: rotate(45deg);
}
.content_wrapper  a.btn:hover {
	opacity: 0.7;
}
@media screen and (max-width: 750px) {
	/* h2見出し */
	.content_wrapper h2 {
		font-size: calc(48 * 100vw / 750) !important;
		margin: 0 auto calc(64 * 100vw / 750);
	}
	/* 基本テキスト */
	.content_wrapper p {
		font-size: calc(31 * 100vw / 750);
	}
	/* 共通ボタン */
    .content_wrapper .btn:not(.contact_select_form_btn){
        font-size: calc(34* 100vw / 750);
        line-height: 1.6;
        letter-spacing: .15em;
        height: calc(104* 100vw / 750);
        width: calc(540* 100vw / 750);
    }
    .content_wrapper .btn .item_btn-arrow::after {
        width: calc(15 * 100vw / 750);
        height: calc(15 * 100vw / 750);
        border-width: calc(4 * 100vw / 750);
    }
    .content_wrapper .btn .item_btn-arrow {
        right: calc(50 * 100vw / 750);
    }
}
/*2カラム基本*/
.col2 {
    display: flex;
    align-items: center;
}
@media screen and (max-width: 750px) {
    .col2 {
        display: block;
    }
}
/*注釈*/
.content_wrapper .caution{
    font-size: min(calc(12* 100vw / 1000), 12px);
    line-height: 160%;
}
@media screen and (max-width: 750px) {
    .content_wrapper .caution{
        font-size: calc(22* 100vw / 750);
    }
}
/*--------------------------------------
ギフトページ共通パーツ
--------------------------------------*/
/* アイコン付き見出し */
h2 img {
    width: min(calc(36* 100vw / 1000), 36px);
    height: auto;
    margin: auto auto min(calc(16* 100vw / 1000), 16px);
    text-align: center;
}
@media screen and (max-width: 750px) {
    h2 img {
        width: calc(41* 100vw / 750);
        height: auto;
        margin: auto auto calc(24* 100vw / 750);
        text-align: center;
    }
}
/*スニペットバナー*/
#bnr_area .c_bnr_seasonal {
    margin-bottom: min(calc(99 * 100vw / 1000), 99px);
}
@media screen and (max-width: 750px) {
    #bnr_area .c_bnr_seasonal {
        margin-bottom: calc(132 * 100vw / 750);
        padding: 0 calc(35 * 100vw / 750);
    }
}

/*--------------------------------------
キービジュアル
--------------------------------------*/
#fv {
    position: relative;
    max-width: 1000px;
    width: 100%;
    margin-inline: auto;
    margin-bottom: min(calc(60 * 100vw / 1000), 60px);
}
#fv .icon {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
    width: min(calc(296 * 100vw / 1000), 296px);
    height: auto;
}
@media screen and (max-width: 750px) {
    #fv {
        margin-bottom:calc(63 * 100vw / 750);
    }
    #fv .icon{
        width: calc(530 * 100vw / 750);
        height: auto;
    }
}

/*--------------------------------------
リード文
--------------------------------------*/
/*共通部分*/
.content_wrapper .content_read {
    font-family: "Shippori Mincho B1", serif;
    font-size: min(calc(16 * 100vw / 1000), 16px);
    line-height: 200%;
    letter-spacing: 0.06em;
    text-align: center;
    margin-bottom: min(calc(64 * 100vw / 1000), 64px);
    font-weight: 500;
}

@media screen and (max-width: 750px) {
    .content_wrapper .content_read {
        font-size: calc(28 * 100vw / 750);
        letter-spacing: 0.02em;
        margin-bottom: calc(64 * 100vw / 750);
        text-align: left;
    }

}
/*--------------------------------------
エントランス
--------------------------------------*/
#entrance {
    margin-bottom: min(calc(80 * 100vw / 1000), 80px);
}
#entrance .content_read{
    font-weight: 500;
    font-size: min(calc(18 * 100vw / 1000), 18px);
}
@media screen and (max-width: 750px) {
    #entrance {
        margin-bottom:calc(73 * 100vw / 750);
    }
    #entrance .content_read{
        text-align: center;
        font-size: calc(30 * 100vw / 750);
    }
}

/*--------------------------------------
お声
--------------------------------------*/
#voice{
    background-color: #F8F7F6;
    padding:min(calc(108 * 100vw / 1000), 108px) 0 min(calc(141 * 100vw / 1000), 141px);
}
#voice .content_read{
    margin-bottom: min(calc(94 * 100vw / 1000), 94px);
}
#voice .voice_list{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap:min(calc(94 * 100vw / 1000), 94px) min(calc(64 * 100vw / 1000), 64px);
}
#voice .content_voice_box {
    background: #fff;
    position: relative;
    height: min(calc(462 * 100vw / 1000), 462px);
    padding:min(calc(59 * 100vw / 1000), 59px) min(calc(67 * 100vw / 1000), 67px) min(calc(67 * 100vw / 1000), 67px);
    display: flex;
    flex-direction: column;
}
#voice .content_voice_box::before,
#voice .content_voice_box::after{
    content: "";
    display: block;
    width: min(calc(48 * 100vw / 1000), 48px);
    height: min(calc(40 * 100vw / 1000), 40px);
    position: absolute;
}
#voice .content_voice_box::before {
    background: url("https://d2w53g1q050m78.cloudfront.net/misaranoaru/uploads/pages/gift/images/20251023/voice_ico01.svg") no-repeat 0 0 / contain;
    top: -5%;
    left: min(calc(20 * 100vw / 1000), 20px);
}
#voice .content_voice_box::after {
    background: url("https://d2w53g1q050m78.cloudfront.net/misaranoaru/uploads/pages/gift/images/20251023/voice_ico02.svg") no-repeat 0 0 / contain;
    bottom: -6%;
    right: min(calc(20 * 100vw / 1000), 20px);
}
#voice .content_voice_box .coment_ttl{
    font-family: "Shippori Mincho B1", serif;
    font-weight: 500;
    font-size: min(calc(24* 100vw / 1000), 24px);
    line-height:1.6;
    letter-spacing: .06em;
    margin-bottom: min(calc(36* 100vw / 1000), 36px);
}
#voice .content_voice_box p{
    line-height: 2;
    letter-spacing: .06em;
}
#voice .content_voice_box .point{
    margin-top:min(calc(22 * 100vw / 1000), 22px);
    letter-spacing: .12em;
}
#voice .content_voice_box .ico{
    width: min(calc(100 * 100vw / 1000), 100px);
    height: min(calc(100 * 100vw / 1000), 100px);
    position: absolute;
    top: -8%;
    right: min(calc(32 * 100vw / 1000), 32px);
}
#voice .content_voice_box .ico.-woman {
    background: url("https://d2w53g1q050m78.cloudfront.net/misaranoaru/uploads/pages/gift/images/20251023/ico_women01.svg") no-repeat 0 0 / contain;
}
#voice .content_voice_box .ico.-man{
    background: url("https://d2w53g1q050m78.cloudfront.net/misaranoaru/uploads/pages/gift/images/20251023/ico_men01.svg") no-repeat 0 0 / contain;
}
#voice .content_voice_box .star_5{
    background: url("https://d2w53g1q050m78.cloudfront.net/misaranoaru/uploads/pages/gift/images/20251023/star_5.svg") no-repeat 0 0 / contain;
    width: min(calc(137 * 100vw / 1000), 137px);
    height: min(calc(16 * 100vw / 1000), 16px);
}
#voice .content_voice_box .age {
    font-weight: 500;
    margin-top: auto;
    margin-left: auto;
}
@media screen and (max-width: 750px){
    #voice .voice_list{
        display: block;
    }
    #voice .slick-list.draggable {
        overflow: visible;
    }
    #voice{
        padding:calc(160 * 100vw / 750) 0;
    }
    #voice .slick-track{
        display: flex;
        gap:0 calc(32 * 100vw / 750);
    }
    #voice .content_read{
        margin-bottom: calc(130 * 100vw / 750);
    }
    #voice .content_voice_box {
        padding: calc(85 * 100vw / 750) calc(44 * 100vw / 750);
        height: auto;
        min-height: calc(700 * 100vw / 750);
    }
    #voice .content_voice_box .star_5 {
        width: calc(226 * 100vw / 750);
        height: calc(27 * 100vw / 750);
        flex-shrink: 0;
    }
    #voice .content_voice_box .coment_ttl{
        font-size: calc(36.48* 100vw / 750);
        line-height: 1.65;
        letter-spacing: .04em;
    }
    #voice .content_voice_box .point{
        font-family: Zen Kaku Gothic Antique;
        font-size: calc(23.71* 100vw / 750);
        line-height: 2;
        letter-spacing: .05em;
    }
    #voice .content_voice_box .age{
        font-size: calc(27.36* 100vw / 750);
        line-height: 2;
        letter-spacing: .06em;
    }
    #voice .content_voice_box .ico{
        width: calc(131 * 100vw / 750);
        height: calc(131 * 100vw / 750);
    }
    #voice .content_voice_box::before, #voice .content_voice_box::after{
        width: calc(80 * 100vw / 750);
        height: calc(60 * 100vw / 750);
    }
    #voice .content_voice_box::after{
        bottom: -5%;
    }
    /*ページャー*/
    #voice .slick-dots {
        bottom: calc(-100 * 100vw / 750);
    }
    #voice .slick-dots li.slick-active button {
        background: #9C0000;
    }
    #voice .slick-dots li {
        margin: 0 calc(15 * 100vw / 750);
        width: calc(22 * 100vw / 750);
        height: calc(22 * 100vw / 750);
    }
    #voice .slick-dots li button {
        width: calc(22 * 100vw / 750);
        height: calc(22 * 100vw / 750);
        background: #ccc;
        border-radius: 50%;
    }
    #voice .slick-dots li button::before {
        content: none;
    }
}
/*--------------------------------------
ギフトランキング
--------------------------------------*/
#ranking-gift {
    margin:0 auto min(calc(120 * 100vw / 1000), 120px);
    padding: 0;
    max-width: 100%;
}
#ranking-gift .c-product_item__link {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}
#ranking-gift .c-product_item__inner__eyecatch__tags .c-product_ranking {
    margin-top: 0;
}
#ranking-gift .temp-new_product_slider {
    justify-content: space-between;
}
#ranking-gift .c-product_ranking__text {
    font-size: min(calc(14 * 100vw / 1000), 14px);
    width: min(calc(32 * 100vw / 1000), 32px);
    height: min(calc(32 * 100vw / 1000), 32px);
    line-height: min(calc(32 * 100vw / 1000), 32px);
    font-weight: 700;
}
#ranking-gift .c-product_ranking__text::before {
  counter-increment: number 1;
  content: counter(number) " ";
}
#ranking-gift .c-product_ranking::before {
    border: none;
    width: min(calc(32 * 100vw / 1000), 32px);
    height: min(calc(32 * 100vw / 1000), 32px);
    z-index: 1;
}
#ranking-gift .ranking-item:nth-child(1) .c-product_ranking::before {
  background :#CEAD52;
}
#ranking-gift .ranking-item:nth-child(2) .c-product_ranking::before {
    background: #AAAAAA;
}
#ranking-gift .ranking-item:nth-child(3) .c-product_ranking::before {
    background: #844A28;
}
#ranking-gift .ranking-item:nth-child(n+4) .c-product_ranking::before {
    background: #333333;
}
#ranking-gift .ranking_btn{
    width: min(calc(240* 100vw / 1000), 240px);
    margin:min(calc(33* 100vw / 1000), 33px) auto 0;
}
/*フォントの太さ修正*/
.c-product_item__inner__price span#price{
    font-weight: 500;
}
@media screen and (max-width: 750px){
    #ranking-gift .c-product_ranking__text{
        font-size: calc(24* 100vw / 750);
        width: calc(40* 100vw / 750);
        height: calc(40* 100vw / 750);
        line-height: calc(40* 100vw / 750);
    }
    #ranking-gift .c-product_ranking::before{
        width: calc(40* 100vw / 750);
        height: calc(40* 100vw / 750);
    }
    #ranking-gift .slick-list li {
        margin-right: calc(20 * 100vw / 750);
    }
    #ranking-gift .ranking_btn {
        margin-top: calc(120 * 100vw / 750);
        width: auto;
    }
    /*ランキングスライダー　750以下のスタイル適応無い為記述*/
    .c-product_item__inner__title{
        font-size: calc(24 * 100vw / 750) !important;
    }
    .c-product_item__inner__price {
        font-size: calc(28 * 100vw / 750) !important;
        margin-top: 4px;
    }
    .c-product_item__inner__price span#price {
        color: #333 !important;
        display: inline-block !important;
        font-size: calc(28 * 100vw / 750) !important;
    }
    .c-product_item__inner__price span#price small {
        font-size: calc(20 * 100vw / 750) !important;
    }
    /*ページャー*/
    .p-top__slideshow .slick-dots {
        bottom: calc(-50 * 100vw / 750);
    }
    .p-top__slideshow .slick-dots li {
        margin: 0 calc(15 * 100vw / 750);
        width: calc(22 * 100vw / 750);
        height: calc(22 * 100vw / 750);
    }
    .p-top__slideshow .slick-dots li button {
        width: calc(22 * 100vw / 750);
        height: calc(22 * 100vw / 750);
    }
}
/*--------------------------------------
アンカーリンク
--------------------------------------*/
#anchor_link{
    margin-bottom: min(calc(120* 100vw / 1000), 120px);
}
#anchor_link .anchor_link-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: center;
    gap: 0 min(calc(24* 100vw / 1000), 24px);
}
#anchor_link .anchor_link-item a{
    position: relative;
    display: block;
    height: min(calc(72* 100vw / 1000), 72px);
    line-height:min(calc(72* 100vw / 1000), 72px);
    border-radius: 4px;
    border: min(calc(1* 100vw / 1000), 1px) solid #B3424A;
    color: #B3424A;
    padding: 0 min(calc(17* 100vw / 1000), 17px);
    font-size: min(calc(18* 100vw / 1000), 18px);
    font-family: "Shippori Mincho B1", serif;
    font-weight: 600;
    letter-spacing: 0.06em;
    transition: .3s;
}
#anchor_link .anchor_link-item a::after {
    content: "";
    width: min(calc(8 * 100vw / 1000), 8px);
    height: min(calc(8 * 100vw / 1000), 8px);
    border-top: solid 2px #B3424A;
    border-right: solid 2px #B3424A;
    position: absolute;
    margin: auto;
    right:min(calc(21 * 100vw / 1000), 21px);
    top: 0;
    bottom: 0;
    transform: rotate(135deg);
}
#anchor_link .anchor_link-item:hover a{
    color: #fff;
    background-color: #B3424A;
    opacity: 1;
}
#anchor_link .anchor_link-item:hover a::after{
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
}
@media screen and (max-width: 750px){
    #anchor_link .anchor_link-list{
        grid-template-columns: repeat(2, 1fr);
        gap: calc(24* 100vw / 750);
    }
    #anchor_link .anchor_link-item a{
        font-size: calc(25* 100vw / 750);
        line-height:calc(101* 100vw / 750);
        letter-spacing: .06em;
        height: calc(101* 100vw / 750);
        padding: 0 calc(24 * 100vw / 750);
    }
    #anchor_link .anchor_link-item a::after{
        width: calc(12 * 100vw / 750);
        height: calc(12 * 100vw / 750);
        border-width: calc(3 * 100vw / 750);
        right: calc(30 * 100vw / 750);
    }
} 
/*--------------------------------------
ギフトサービス
--------------------------------------*/
/*贈答に安心のラッピング対応*/
#service-raping .gift_list-detail {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 min(calc(50 * 100vw / 1000), 50px);
    margin-bottom: min(calc(29* 100vw / 1000), 29px);
}
#service-raping .gift_list-detail .gift_list-detail_text p{
    font-family: "Shippori Mincho B1", serif;
}

#service-raping .gift_list-detail_title {
    font-size: min(calc(20 * 100vw / 1000), 20px);
    line-height: 1.5;
    letter-spacing: .04em;
    text-align: center;
    font-weight: 600;
    margin:min(calc(26* 100vw / 1000), 26px) 0 min(calc(13.5* 100vw / 1000), 13.5px);
}
#service-raping .gift_list-detail_detail {
    font-size: min(calc(15* 100vw / 1000), 15px);
    line-height: 1.75;
    letter-spacing: .02em;
    text-align: center;
    font-weight: 500;
}
#service-raping dl:nth-child(2) .gift_list-detail_detail{
    letter-spacing: -.08em;
}
@media screen and (max-width: 750px){
    #service-raping .gift_list-detail {
        display: flex;
        flex-direction: column;
        gap: calc(64* 100vw / 750) 0;
        margin-bottom: calc(64* 100vw / 750);
    }
    #service-raping .gift_list-detail dl {
        display: flex;
        gap:calc(64* 100vw / 750) calc(30* 100vw / 750);
    }
    #service-raping .gift_list-detail_img{
        flex-shrink: 0;
        width: calc(270* 100vw / 750);
    }
    #service-raping .gift_list-detail_title {
        text-align: left;
        margin-top: 0;
        font-size: calc(34* 100vw / 750);
        line-height: 1;
        letter-spacing: .04em;
        margin-bottom: calc(27 * 100vw / 750);
    }
    #service-raping .gift_list-detail_detail{
        font-size: calc(24* 100vw / 750);
        line-height: 2;
        letter-spacing: .04em;
        text-align: left;
    }
}
/*熨斗について*/
#service-noshi .caution{
    text-align: center;
}
#service-noshi .noshi_list{
    gap:0 min(calc(64* 100vw / 1000), 64px);
    margin-bottom: min(calc(56* 100vw / 1000), 56px);
}
#service-noshi .noshi_list-item{
    width:min(calc(468* 100vw / 1000), 468px);
}
@media screen and (max-width: 750px){
    #service-noshi .noshi_list-item{
        width: 100%;
    }
    #service-noshi .noshi_01 {
        margin-bottom: calc(64* 100vw / 750);
    }
    #service-noshi .caution {
        text-align: left;
    }
}
/* 期間限定 メッセージカード */
#message-card .message_card_box{
    gap: 0 min(calc(64* 100vw / 1000), 64px);
}
#message-card .message_card_pic{
    width: min(calc(345* 100vw / 1000), 345px);
    flex-shrink: 0;
}
#message-card .message_card_pic img{
    width: 100%;
    height: 100%;
}
#message-card .message_card_text p{
    font-family: Shippori Mincho B1;
    font-weight: 500;
    font-size: min(calc(18* 100vw / 1000), 18px);
    line-height: 2.4;
    letter-spacing: .06em;
}
@media screen and (max-width: 750px){
    #message-card .message_card_pic{
        width: 100%;
        margin-bottom: calc(64* 100vw / 750);
    }
    #message-card .message_card_text p{
        font-size: calc(30* 100vw / 750);
        letter-spacing: .02em;
        line-height: 1.9;
    }
}
/*--------------------------------------
熨斗・メッセージカードの選択方法 
--------------------------------------*/
#howto{
    background: #F8F7F6;
    padding:min(calc(108 * 100vw / 1000), 108px) 0;
}
#howto .howto_pic{
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
    width: min(calc(503* 100vw / 1000), 503px);
    flex-shrink: 0;
}
#howto .howto_list {
    display: flex;
    flex-direction: column;
    gap: min(calc(147 * 100vw / 1000), 147px) 0;
    position: relative;
}
#howto .howto_list::before{
    content: '';
    display: block;
    width: min(calc(30* 100vw / 1000), 30px);
    height: min(calc(17* 100vw / 1000), 17px);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background-color: #333333;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#howto .howto_item{
    align-items: self-start;
    gap:0 min(calc(83* 100vw / 1000), 83px);
}
#howto .howto_txt .txt_ico{
    background-color: #333333;
    color: #fff;
    font-size: min(calc(14* 100vw / 1000), 14px);
    letter-spacing: .12em;
    font-weight: 500;
    margin-bottom: min(calc(29* 100vw / 1000), 29px);
    width: min(calc(76* 100vw / 1000), 76px);
    height: min(calc(27* 100vw / 1000), 27px);
    display: block;
    text-align: center;
    line-height: min(calc(27* 100vw / 1000), 27px);
}
#howto .howto_txt .txt{
    font-family: "Shippori Mincho B1", serif;
    font-size: min(calc(18* 100vw / 1000), 18px);
    line-height: 2;
    letter-spacing: .06em;
    font-weight: 500;
    margin: 0;
}
#howto .howto_txt .txt strong {
    font-weight: 700;
}
@media screen and (max-width: 750px){
    #howto{
        padding: calc(160* 100vw / 750) 0;
    }
    #howto .howto_list{
        gap: calc(165* 100vw / 750) 0;
    }
    #howto .howto_list::before {
        width: calc(64 * 100vw / 750);
        height: calc(27 * 100vw / 750);
        top: 49%;
    }
    #howto .howto_pic {
        width: fit-content;
        margin-inline: auto;
        margin-bottom: calc(64* 100vw / 750);
    }
    #howto .howto_txt .txt_ico{
        font-size: calc(32* 100vw / 750);
        line-height: calc(57* 100vw / 750);
        letter-spacing: .12em;
        width: calc(119* 100vw / 750);
        height: calc(57* 100vw / 750);
        margin-inline: auto;
    }
    #howto .howto_txt .txt{
        font-size: calc(30* 100vw / 750);
        line-height:2;
        letter-spacing: .06em;
        text-align: center;
    }
}
/*--------------------------------------
よくある質問
--------------------------------------*/
#faq .p-faq__inner__list,
#faq .p-faq__inner__list__item {
    border-color: #ddd;
}
#faq .faq_box{
    margin-bottom: min(calc(56 * 100vw / 1000), 56px);
}
#faq .p-faq__title{
    font-family: "Shippori Mincho B1", serif;
    font-weight: 600;
    font-size: min(calc(20* 100vw / 1000), 20px);
    line-height: 1.5;
    letter-spacing: 0.06em;
    vertical-align: middle;
    margin-bottom: min(calc(24 * 100vw / 1000), 24px);
}
#faq .u-faq-title{
    font-family:"Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    line-height: 160%;
    letter-spacing: 0.04em;
}
#faq .u-text{
    font-family:"Zen Kaku Gothic Antique", sans-serif;
    font-weight: 400;
    font-size: min(calc(14* 100vw / 1000), 14px);
    line-height: 2;
    letter-spacing: 0.04em;
}
#faq .u-text:not(:last-child){
    margin-bottom: min(calc(24 * 100vw / 1000), 24px);
}
#faq :where(.q_icon, .a_icon){
    font-weight: 500;
    font-size: min(calc(24* 100vw / 1000), 24px) !important;
    font-family: Roboto, sans-serif;
}
/**既存のスタイル調整*/
#faq.p-faq{
    padding:0;
}
#faq .p-faq__inner__list__item__question{
    padding: min(calc(20* 100vw / 1000), 20px) min(calc(44* 100vw / 1000), 44px) min(calc(20* 100vw / 1000), 20px) min(calc(40* 100vw / 1000), 40px);
}
#faq .p-faq__inner__list__item__answer{
    padding: 0 min(calc(44 * 100vw / 1000), 44px) min(calc(44 * 100vw / 1000), 44px) min(calc(40 * 100vw / 1000), 40px);
    margin-top: min(calc(10 * 100vw / 1000), 10px);
}
/*FAQリンクボタン*/
#faq .help_select_faq{
    width: min(calc(270* 100vw / 1000), 270px);
    margin:min(calc(64* 100vw / 1000), 33px) auto 0;
    letter-spacing: .15em;
}
#faq .help_select_faq_btn {
    letter-spacing: .15em;
    padding-left: min(calc(19 * 100vw / 1000), 19px);
}
#faq .ico_bubble {
    display: block;
    height: min(calc(26 * 100vw / 1000), 26px);
    width: min(calc(41 * 100vw / 1000), 41px);
    position: absolute;
    left: min(calc(31 * 100vw / 1000), 31px);
    top: 50%;
    transform: translateY(-50%);
}
#faq .ico_bubble::before {
    content: '';
    background: url('https://d2w53g1q050m78.cloudfront.net/misaranoaru/uploads/img/guide/ico_faq-w.svg') no-repeat center center / contain;
    display:inline-block;
    width: min(calc(41 * 100vw / 1000), 41px);
    height: min(calc(26 * 100vw / 1000), 26px);
}
@media screen and (max-width: 750px){
    #faq :where(.q_icon, .a_icon){
        font-size: calc(40* 100vw / 750) !important;
        line-height: 160%;
        letter-spacing: .04em;
    }
    #faq .q_icon{
        top: calc(20 * 100vw / 750);
    }
    #faq .a_icon{
        top: 0;
    }
    #faq .p-faq__title{
        font-size: calc(32* 100vw / 750);
        letter-spacing: .06em;
        margin-bottom: calc(36* 100vw / 750);
    }
    #faq .u-faq-title{
        font-size: calc(28* 100vw / 750);
        line-height: 160%;
        letter-spacing: .04em;
    }
    #faq .u-text{
    font-size: calc(26* 100vw / 750);
    line-height: 200%;
    letter-spacing: .01em;
    }
    #faq .p-faq__inner__list__item__question{
        padding: calc(29* 100vw / 750) calc(50* 100vw / 750) calc(33* 100vw / 750) calc(68* 100vw / 750);
    }
    #faq .p-faq__inner__list__item__answer{
        padding:0 calc(50* 100vw / 750) calc(33* 100vw / 750) calc(68* 100vw / 750);
    }
    /*FAQボタン*/
    #faq .help_select_faq {
        width: auto;
    }
    #faq .ico_bubble,#faq .ico_bubble::before{
        width: calc(81* 100vw / 750);
        height: calc(52* 100vw / 750);
    }
    #faq .ico_bubble {
        left: calc(89 * 100vw / 750);
    }
    #faq .help_select_faq_btn {
        padding-left: calc(68 * 100vw / 750);
    }
    #faq .faq_box{
        margin-bottom: calc(64* 100vw / 750);
    }
    /*FAQトグル*/
    .p-faq__inner__list__item__question .u-icon--plus, .p-faq__inner__list__item__question .u-icon--minus {
        font-size: calc(40 * 100vw / 750);
        top: calc(33 * 100vw / 750);
    }
}   
/*--------------------------------------
お問い合わせ
--------------------------------------*/
.snippets__area .contact .contact_ttl{
    padding-top:0;
}

#contact .content_wrapper {
    padding: 0;
    margin-top: 0;
}


/*--------------------------------------
トップへ戻る
--------------------------------------*/
.page_top_btn {
    position: fixed;
    bottom: 5%;
    right: 2%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1000;
}

.page_top_btn.show {
    opacity: 1;
    visibility: visible;
}

.page_top_btn a{
    width: min(calc(48 * 100vw / 1000), 48px);
    height: min(calc(48 * 100vw / 1000), 48px);
    display: block;
}
.page_top_btn a:hover,.page_top_btn a:hover img{
    opacity: 1;
}
@media screen and (max-width:1000px){
    .page_top_btn {
        right:min(calc(32 * 100vw / 1000), 32px);
        bottom:min(calc(32 * 100vw / 1000), 32px);
    }
}

@media screen and (max-width: 750px) {
    .page_top_btn a{
        width: calc(104 * 100vw / 750);
        height: calc(104 * 100vw / 750);
    }
    .page_top_btn {
        bottom:calc(40 * 100vw / 750);
        right:calc(40 * 100vw / 750);
    }
}