@charset "UTF-8";
:root {
    --color-accent: #831c20;
    --color-accent-bright: #d80c18;
}
/* reset
-------------------------------------------------------------------------------- */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    min-block-size: 100svb;
    min-height: 100svh;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
p, h1, h2, h3, h4, h5, h6, li {
    font-weight: 400;
    overflow-wrap: break-word;
}
th, td {
    font-weight: 400;
}
ul {
    list-style: none;
}
ol {
    list-style-type: decimal;
    margin-left: 2em;
}
img, svg, video {
    display: block;
    max-width: 100%;
}
input, button, textarea, select {
    font-family: inherit;
    color: inherit;
    max-width: 100%;
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
a {
    text-decoration: none;
}
/* common
-------------------------------------------------------------------------------- */
html {
    scroll-behavior: smooth;
    scroll-padding-top: 42.5vw;
}
body {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 3.75vw;
    background-color: #fff;
    color: #000;
}
.minion-pro-condensed {
    font-family: "minion-pro-condensed", "Noto Serif JP", serif;
}
.minion-pro {
    font-family: "minion-pro", "Noto Serif JP", serif;
}
.a-otf-ud-shin {
    font-family: "a-otf-ud-shin-go-pr6n", serif;
    font-weight: 300;
}
.inner {
    width: 95%;
    margin-inline: auto;
}
.display_pc {
    display: none;
}
.display_sp {
    display: block;
}
main {
    overflow: hidden;
}
.section_title {
    position: relative;
    border-bottom: 1px solid #000;
    border-top: 1px solid #000;
    background-image: linear-gradient(90deg, #fff, rgb(240, 225, 179), #fff);
}
.section_title h2 {
    font-size: 5.25vw;
    font-weight: bold;
    text-align: center;
    padding: 1.25vw 0;
}
.section_title::before, .section_title::after {
    position: absolute;
    content: "";
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #000;
    z-index: 1;
}
.section_title::before {
    top: -3px;
}
.section_title::after {
    bottom: -3px;
}
.section_body {
    padding-bottom: 5vw;
}
.remark li {
    position: relative;
    margin-left: 1rem;
}
.remark li::before {
    position: absolute;
    content: "※";
    left: -4vw;
    margin-left: 0;
}
.remark li::marker {
    /* content: '※'; */
}
.fadein {
    opacity: 0;
    transform: translateX(5vw);
    transition: 1s;
}
.fadein.on {
    opacity: 1;
    transform: translateX(0);
}
.spinin {
    opacity: 0;
    transform: rotate(-90deg);
    transition: 1s;
}
.spinin.on {
    opacity: 1;
    transform: rotate(0deg);
}
/* header
-------------------------------------------------------------------------------- */
header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 3;
}
#header_menu {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    background-color: #fff;
}
#header_menu ._logo {
    padding: 2.5vw;
}
#header_menu ._logo a {
    display: block;
}
#header_menu ._logo a img {
    width: 50vw;
}
#header_menu ._index {
    background-color: var(--color-accent);
    margin: 2vw 2vw 1.5vw;
    padding: 2.5vw 2.5vw 1.5vw;
    text-align: center;
    line-height: 1;
    cursor: pointer;
}
#header_menu ._index img {
    width: 10vw;
    margin-bottom: 1vw;
}
#header_menu ._index span {
    display: block;
    color: #fff;
    font-size: 2.25vw;
}
#header_menu nav {
    display: none;
    width: 100%;
    background-color: #fff;
    padding: 2vw 2vw 1.5vw;
    box-shadow: 0px 1vw 1vw 0 rgba(0, 0, 0, 0.1);
}
#header_menu nav ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 1vw;
}
#header_menu nav ul li {
    width: 32.5%;
}
#header_menu nav ul li a {
    display: block;
    color: #fff;
    font-size: 3.5vw;
    font-weight: bold;
    padding: 1vw;
    text-align: center;
    background-color: var(--color-accent);
}
/* main
-------------------------------------------------------------------------------- */
main {
    margin-top: 19.5vw;
}
/* home
-------------------------------------------------------------------------------- */
#home {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
}
#home .inner {
    position: absolute;
    bottom: 7.5vw;
    right: 5vw;
    z-index: 2;
}
#home .inner h2 {
    color: #fff;
    text-shadow: 0px 0px 2.5vw #000;
    font-size: 5vw;
    font-weight: 600;
    text-align: right;
    line-height: 1.4;
}
#home .swiper {
    height: 100%;
}
#home .swiper-slide {
    height: auto;
}
#home .swiper-slide ._img {
    height: 100%;
}
#home .swiper-slide ._img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#home .swiper-slide-active ._img,
#home .swiper-slide-duplicate-active ._img,
#home .swiper-slide-prev ._img {
    animation: zoomUp 8s linear 0s normal both;
}
@keyframes zoomUp {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.2);
    }
}
/* title
-------------------------------------------------------------------------------- */
#title {
    /* position: relative; */
    /* background-image: url(../img_osechi/home_bg.jpg); */
    /* background-size: cover; */
    /* background-position: bottom; */
    /* padding: 4.75vw 0 2.5vw; */
    transition-delay: 0.1s;
}
#title .inner h1 {
    line-height: 1;
    display: flex;
    align-items: center;
    column-gap: 2vw;
}
#title .inner h1 ._name {
    position: relative;
    /* display: inline-block; */
    line-height: 1.5;
    font-size: 3vw;
    padding: 0 1vw;
    border-bottom: 1px solid #000;
    border-top: 1px solid #000;
    margin-bottom: 1.5vw;
}
#title .inner h1 ._name::before, #title .inner h1 ._name::after {
    position: absolute;
    content: "";
    left: 0;
    width: 100%;
    height: 1.5px;
    background-color: #000;
}
#title .inner h1 ._name::before {
    top: -1vw;
}
#title .inner h1 ._name::after {
    bottom: -0.9vw;
}
#title .inner h1 ._year {
    font-size: 5.75vw;
    font-weight: bold;
    margin-bottom: 1.25vw;
    text-shadow: 0 0 1vw #fff, 0 0 2vw #fff;
}
#title .inner h1 ._osechi {
    position: absolute;
    top: 3vw;
    left: 61.8vw;
}
#title .inner h1 ._osechi img {
    height: 10vw;
    outline: 1px #fff;
}
#title .inner ._en {
    font-size: 3.25vw;
    letter-spacing: 0.5vw;
    text-shadow: 0 0 1vw #fff, 0 0 2vw #fff;
    line-height: 1;
    margin-left: 10vw;
}
/* discount
-------------------------------------------------------------------------------- */
#discount {
    padding: 4vw 0 5vw;
}
#discount .inner ._box {}
#discount .inner ._box ._img {
    transition-delay: 0.2s;
    margin-bottom: 1vw;
}
#discount .inner ._box ._note {
    text-align: center;
    font-weight: bold;
    font-size: 3.25vw;
    line-height: 1.4;
    transition-delay: 0.3s;
    color: var(--color-accent);
}
/* features
-------------------------------------------------------------------------------- */
#features .section_title {
    margin-bottom: 7.5vw;
}
#features .section_body .inner {
    width: 90%;
}
#features .section_body .inner ._item {
    margin-bottom: 6.25vw;
    cursor: pointer;
}
#features .section_body .inner ._item ._head {
    position: relative;
    padding: 0 2vw;
    border-bottom: 1px solid var(--color-accent);
}
#features .section_body .inner ._item ._head h3 {
    font-size: 6vw;
    font-weight: bold;
    color: var(--color-accent);
}
#features .section_body .inner ._item ._head::before, #features .section_body .inner ._item ._head::after {
    position: absolute;
    content: "";
    width: 3vw;
    height: 0.5vw;
    background-color: var(--color-accent);
    top: 4vw;
    transition: 0.25s;
}
#features .section_body .inner ._item ._head::before {
    transform: rotate(36deg);
    transform-origin: left;
    right: 3.1vw;
}
#features .section_body .inner ._item ._head::after {
    transform: rotate(-36deg);
    transform-origin: right;
    right: 1.5vw;
}
#features .section_body .inner ._item ._body {
    display: none;
    padding: 3vw 1vw 2vw 2vw;
}
#features .section_body .inner ._item ._body span {
    font-size: 3.5vw;
    color: var(--color-accent);
    font-weight: 500;
}
#features .section_body .inner ._item ._body.fadein {
    transition: unset;
}
#features .section_body .inner ._item.active ._head::before {
    transform: rotate(-36deg);
}
#features .section_body .inner ._item.active ._head::after {
    transform: rotate(36deg);
}
/* menu
-------------------------------------------------------------------------------- */
#menu .section_body {
    padding-bottom: 0;
}
#menu .section_body .inner {
    width: 90%;
}
#menu_item ._item {
    position: relative;
    display: flex;
    flex-direction: column;
    background-image: url(../img_osechi/menu_bg_sp.jpg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top 25vw right 0;
}
#menu_item ._item ._img {
    order: 1;
    margin-top: -8vw;
}
#menu_item ._item ._title {
    position: absolute;
    left: 5%;
    top: 18vw;
    display: grid;
    place-content: center;
    background-image: url(../img_osechi/logo_red.svg);
    background-repeat: no-repeat;
    background-size: contain;
    aspect-ratio: 1;
    width: 20vw;
    z-index: 1;
}
#menu_item ._item ._title h3 {
    color: #fff;
    white-space: nowrap;
    font-weight: bold;
    font-size: 5.25vw;
}
#menu_item ._item ._desc {
    order: 0;
    text-align: center;
    font-weight: bold;
    padding: 6vw 0 10vw;
    background-color: #fdf1d8;
}
#menu_item ._item ._pack {
    order: 2;
    margin-top: -15vw;
    margin-bottom: 2.5vw;
}
#menu_item ._item ._pack .inner {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#menu_item ._item ._pack .inner ._pack_item {
    position: relative;
    width: 33.3%;
    margin-bottom: 3vw;
}
#menu_item ._item ._pack .inner ._pack_item ._pack_img {
    position: relative;
    margin-bottom: 1.5vw;
}
#menu_item ._item ._pack .inner ._pack_item ._pack_img img {
    width: 27.5vw;
    margin-inline: auto;
    filter: drop-shadow(1vw 1vw 1vw rgba(0, 0, 0, 0.25));
}
#menu_item ._item ._pack .inner ._pack_item ._pack_img ._pack_mark {
    position: absolute;
    bottom: 0;
    right: 2.5vw;
    display: flex;
    justify-content: flex-end;
}
#menu_item ._item ._pack .inner ._pack_item ._pack_img ._pack_mark img {
    height: 6vw;
    margin: 0 0.5vw;
    width: auto;
    filter: none;
}
#menu_item ._item ._pack .inner ._pack_item ._pack_name h4 {
    font-size: 3.5vw;
    text-align: center;
    letter-spacing: -0.05vw;
    line-height: 1.3;
    white-space: nowrap;
}
#menu_item ._item ._pack._count_01 ._pack_item, #menu_item ._item ._pack._count_02 ._pack_item, #menu_item ._item ._pack._count_03 ._pack_item, #menu_item ._item ._pack._count_04 ._pack_item {
    width: 40%;
}
#menu_item ._item ._pack._count_03 ._pack_item:nth-child(1) {
    width: 100%;
}
#menu_item ._item ._pack._count_05 ._pack_item:nth-child(1), #menu_item ._item ._pack._count_07 ._pack_item:nth-child(1), #menu_item ._item ._pack._count_08 ._pack_item:nth-child(1) {
    width: 33.5%;
}
#menu_item ._item:nth-child(2n) {
    background-image: url(../img_osechi/menu_bg_sp_rvs.jpg);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top 25vw left 0;
}
#menu_item ._item:nth-child(2n) ._title {
    left: auto;
    right: 7.5%;
}
#menu_item ._item:last-child {
    background-size: 100% 100%;
}
#menu_item ._item:last-child ._pack {
    margin-top: 0;
}
#menu_special {
    position: relative;
    margin-top: -10vw;
}
#menu_special .menu_special_img img {
    width: 80vw;
    margin-inline: auto;
}
#menu_special .menu_special_title {
    position: absolute;
    left: 5%;
    top: 18vw;
    display: grid;
    place-content: center;
    background-image: url(../img_osechi/logo_red.svg);
    background-repeat: no-repeat;
    background-size: contain;
    aspect-ratio: 1;
    width: 18.5vw;
    top: 5vw;
    right: 0;
    left: auto;
}
#menu_special .menu_special_title h3 {
    color: #fff;
    white-space: nowrap;
    font-weight: bold;
    font-size: 5.25vw;
}
#menu_special .menu_special_item {
    margin-top: -16.5vw;
    margin-bottom: 2.5vw;
    display: flex;
    align-items: flex-end;
}
#menu_special .menu_special_item h4 {
    font-weight: 600;
}
#menu_special .menu_special_item ._pack_mark {
    display: flex;
    margin-top: 0.5vw;
}
#menu_special .menu_special_item ._pack_mark img {
    height: 5vw;
    margin: 0 0.5vw;
    width: auto;
    filter: none;
}
#menu_special .menu_special_txt {
    margin-bottom: 2.5vw;
}
#menu_mark {
    background-color: #f8e9ce;
    padding: 6vw 0;
    margin-bottom: 7.5vw;
}
#menu_mark .inner ._head {
    margin-bottom: 5vw;
}
#menu_mark .inner ._head img {
    width: 55.5vw;
    margin-inline: auto;
}
#menu_mark .inner ._body ul li {
    display: flex;
    -moz-column-gap: 2vw;
    column-gap: 2vw;
    margin-bottom: 2.5vw;
}
#menu_mark .inner ._body ul li ._img {
    width: 4.75vw;
}
#menu_mark .inner ._body ul li ._img img {
    width: auto;
}
#menu_mark .inner ._body ul li ._txt {
    flex: 1;
    font-size: 2.85vw;
}
#note .section_body {
    padding: 7vw 0 4.5vw;
}
#note .section_body ._item {
    margin-bottom: 6vw;
}
#note .section_body ._item ._head {
    position: relative;
    padding: 0 3.5vw 0.5vw;
    border-bottom: 1px solid #000;
    margin-bottom: 2.5vw;
}
#note .section_body ._item ._head::before, #note .section_body ._item ._head::after {
    position: absolute;
    content: "";
    width: 3vw;
    height: 0.5vw;
    background-color: #000;
    top: 3vw;
    transition: 0.25s;
}
#note .section_body ._item ._head::before {
    transform: rotate(36deg);
    transform-origin: left;
    right: 4vw;
}
#note .section_body ._item ._head::after {
    transform: rotate(-36deg);
    transform-origin: right;
    right: 2.4vw;
}
#note .section_body ._item ._head h3 {
    font-size: 5vw;
    font-weight: bold;
}
#note .section_body ._item ._body {
    display: none;
}
#note .section_body ._item ._body.fadein {
    transition: unset;
}
#note .section_body ._item ._body ._l {
    font-size: 6vw;
    text-align: center;
    color: var(--color-accent-bright);
    font-weight: bold;
}
#note .section_body ._item ._body ._l span {
    font-size: 11.5vw;
}
#note .section_body ._item ._body ._l ._scheduled {
    display: inline-block;
    line-height: 1.25;
}
#note .section_body ._item ._body ._l ._scheduled>span {
    display: block;
}
#note .section_body ._item ._body ._l ._scheduled>span>span {
    font-size: 3vw;
    vertical-align: super;
}
#note .section_body ._item ._body ._l ._scheduled>span:nth-child(1) {
    font-size: 6vw;
}
#note .section_body ._item ._body ._l ._scheduled>span:nth-child(2) {
    font-size: 3.75vw;
}
#note .section_body ._item ._body ._m {
    font-size: 4vw;
    font-weight: 600;
    margin-bottom: 3vw;
}
#note .section_body ._item ._body ._m span {
    color: var(--color-accent-bright);
}
#note .section_body ._item ._body ._s {
    font-size: 3vw;
}
#note .section_body ._item ._body ._s span {
    color: var(--color-accent-bright);
}
#note .section_body ._item._ticket ._l {
    font-size: 5vw;
    margin-bottom: 2vw;
}
#note .section_body ._item._ticket ._m {
    font-size: 3.75vw;
    margin-left: 1.25rem;
    text-indent: -1.25rem;
    text-align: left;
}
#note .section_body ._item._size ._box {
    display: flex;
    align-items: center;
    -moz-column-gap: 5vw;
    column-gap: 5vw;
}
#note .section_body ._item._size ._box ._img {
    width: 35%;
}
#note .section_body ._item._size ._box ._img img {
    filter: drop-shadow(0.5vw 1vw 1vw rgba(0, 0, 0, 0.5));
}
#note .section_body ._item._size ._box ._size {
    flex: 1;
    line-height: 1.25;
}
#note .section_body ._item._size ._box ._size ._per {
    font-weight: bold;
    font-size: 4vw;
    text-align: center;
}
#note .section_body ._item._size ._box ._size ._cm {
    font-weight: bold;
    font-size: 8vw;
    text-align: center;
    margin-bottom: 2vw;
}
#note .section_body ._item._size ._box ._size ._cm span {
    font-size: 4vw;
}
#note .section_body ._item._size ._box ._size ._howmany {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    background-color: var(--color-accent-bright);
    color: #fff;
    padding: 1vw 5vw;
    font-weight: bold;
}
#note .section_body ._item.active ._head::before {
    transform: rotate(-36deg);
}
#note .section_body ._item.active ._head::after {
    transform: rotate(36deg);
}
#order .section_body ._item {
    padding: 5vw 0 0;
    width: 90%;
    border-bottom: 1px solid #422c1c;
    margin-inline: auto;
}
#order .section_body ._item .inner {
    width: 100%;
}
#order .section_body ._item .inner ._head {
    position: relative;
    margin-bottom: 1.5vw;
}
#order .section_body ._item .inner ._head ._title {
    margin-bottom: 1vw;
}
#order .section_body ._item .inner ._head ._title::before, #order .section_body ._item .inner ._head ._title::after {
    position: absolute;
    content: "";
    width: 3vw;
    height: 0.5vw;
    background-color: #000;
    top: 3vw;
    transition: 0.25s;
}
#order .section_body ._item .inner ._head ._title::before {
    transform: rotate(36deg);
    transform-origin: left;
    right: 4vw;
}
#order .section_body ._item .inner ._head ._title::after {
    transform: rotate(-36deg);
    transform-origin: right;
    right: 2.4vw;
}
#order .section_body ._item .inner ._head ._title h3 {
    font-size: 5vw;
    font-weight: bold;
    text-align: center;
}
#order .section_body ._item .inner ._head ._desc {
    display: none;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    margin-bottom: 5vw;
    background-color: #000;
    color: #fff;
    padding: 0.5vw 7.5vw;
    text-align: center;
    font-weight: bold;
    border-radius: 4vw;
    transition: unset;
}
#order .section_body ._item .inner ._head.active ._title::before {
    transform: rotate(-36deg);
}
#order .section_body ._item .inner ._head.active ._title::after {
    transform: rotate(36deg);
}
#order .section_body ._item .inner ._body {
    display: none;
    padding-bottom: 5vw;
}
#order .section_body ._item .inner ._body.fadein {
    transition: unset;
}
#order .section_body ._item .inner ._body ._contact {
    margin-bottom: 5vw;
    text-align: center;
    font-size: 10vw;
    font-weight: bold;
    /* font-style: italic; */
    color: var(--color-accent-bright);
}
#order .section_body ._item .inner ._body ._contact img {
    width: auto;
    height: 10vw;
    display: inline;
    margin-right: 2.5vw;
}
#order .section_body ._item .inner ._body ._contact a {
    color: var(--color-accent-bright);
}
#order .section_body ._item .inner ._body ._txt ol li {
    font-weight: bold;
    margin-bottom: 2.5vw;
}
#order .section_body ._item .inner ._body ._txt ol li ._note {
    margin-top: 2vw;
    background-color: #ee7522;
    color: #fff;
    padding: 1.5vw 3vw;
    font-size: 3vw;
    font-weight: bold;
}
#order .section_body ._item .inner ._body ._txt ol li ._button {
    margin-top: 2.5vw;
}
#order .section_body ._item .inner ._body ._txt ol li ._button a {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    color: #fff;
    background-color: var(--color-accent-bright);
    padding: 1vw 15vw;
    font-weight: bold;
    text-align: center;
    border-radius: 10vw;
    margin-inline: auto;
}
#order .section_body ._item .inner:last-child {
    border: none;
}
#order .section_body ._item .inner:nth-child(n+2) ._body {
    display: none;
    padding-bottom: 5vw;
}
#order .section_body #order_flow {
    border-bottom: none;
}
#order .section_body #order_flow ._head {
    border-bottom: none;
}
#order .section_body #order_flow ._head ._title::before, #order .section_body #order_flow ._head ._title::after {
    position: static;
    content: none;
}
#order .section_body #order_flow ._body {
    display: block;
}
#order .section_body #order_flow ._body ._img {
    margin-bottom: 5vw;
}
#order .section_body #order_flow ._body ._note {
    margin-bottom: 4vw;
}
#order .section_body #order_flow ._body ._note ul li {
    font-size: 3.25vw;
    color: var(--color-accent);
}
#order .section_body #order_flow ._body ._note ul li span {
    text-decoration: underline;
}
#order .section_body #order_flow ._body ._title {
    text-align: center;
    margin-bottom: 2.5vw;
}
#order .section_body #order_flow ._body ._title h3 {
    font-size: 5vw;
    font-weight: bold;
    text-align: center;
}
#order .section_body #order_flow ._body ._title span {
    display: inline-block;
    font-size: 3.5vw;
}
#order .section_body #order_flow ._body ._which {
    display: flex;
    justify-content: space-between;
}
#order .section_body #order_flow ._body ._which ._each_order {
    width: 24.5%;
}
#order .section_body #order_flow ._body ._which ._each_order a {
    display: block;
}
#order .section_body #order_email ._body ._contact {
    font-size: 10vw;
    font-weight: bold;
    font-style: normal;
}
#order .section_body #order_email ._body ._contact img {
    display: block;
    width: 55.5vw;
    height: auto;
}
#order .section_body #order_email ._body ._contact a {
    display: block;
    width: fit-content;
    margin: auto;
    /* font-family: sans-serif; */
    /* font-size: 5vw; */
    /* font-weight: bold; */
    /* transform: scaleY(1.05); */
    border: 1px solid #ccc;
    padding: 2vw 5vw;
    border-radius: 2vw;
}
#order .section_body #order_fax ._body ._contact {
    font-size: 10vw;
    font-weight: bold;
    font-style: italic;
}
#order .section_body #order_fax ._body ._contact a {
    font-family: sans-serif;
    font-weight: bold;
}
#order .section_body #order_fax ._body ._complete {
    border: 1px solid #595757;
    border-radius: 2vw;
    padding: 3vw 5vw 4vw;
}
#order .section_body #order_fax ._body ._complete ._title {
    margin-bottom: 1vw;
    text-align: center;
}
#order .section_body #order_fax ._body ._complete ._title h4 {
    font-weight: bold;
    font-size: 4vw;
}
#order .section_body #order_fax ._body ._complete ._desc span {
    color: var(--color-accent-bright);
    font-weight: bold;
}
#order .section_body #order_fax ._body ._complete ._note {
    margin-top: 2vw;
    background-color: #ee7522;
    color: #fff;
    padding: 1.5vw 3vw;
    font-size: 3vw;
    font-weight: bold;
}
#order .section_body #order_tel ._body {
    padding-bottom: 10vw;
}
#order .section_body #order_tel ._body ._contact {
    font-size: 10vw;
    font-weight: bold;
    font-style: italic;
    margin-bottom: 0;
}
#order .section_body #order_tel ._body ._contact img {
    filter: invert(15%) sepia(95%) saturate(6932%) hue-rotate(358deg) brightness(77%) contrast(112%);
    margin-right: 0;
}
#order .section_body #order_tel ._body ._contact a {
    font-weight: bold;
}
#order .section_body #order_tel ._body ._open {
    display: flex;
    justify-content: center;
    -moz-column-gap: 2vw;
    column-gap: 2vw;
    border: 1.5px solid #666;
    font-weight: bold;
    padding: 0.75vw;
    font-size: 4.5vw;
}
#order .section_body #order_in_store ._contact {
    font-size: unset;
}
#order .section_body #order_in_store ._contact img {
    vertical-align: text-bottom;
}
#order .section_body #order_in_store ._contact span:nth-of-type(1) {
    font-size: 8.5vw;
    text-decoration: underline;
}
#order .section_body #order_in_store ._contact span:nth-of-type(2) {
    display: inline-block;
    font-size: 5.5vw;
}
#order .section_body #order_in_store ._contact span:nth-of-type(2) br {
    display: none;
}
#order .section_body #order_in_store ._store ._store_item {
    display: flex;
    justify-content: space-between;
    padding: 5vw 0;
    border-bottom: 1px dashed #ccc;
}
#order .section_body #order_in_store ._store ._store_item ._name_tel {
    width: 30%;
}
#order .section_body #order_in_store ._store ._store_item ._name_tel ._name {
    margin-bottom: 1vw;
}
#order .section_body #order_in_store ._store ._store_item ._name_tel ._name h4 {
    font-weight: bold;
    font-size: 5vw;
    -moz-text-align-last: justify;
    text-align-last: justify;
}
#order .section_body #order_in_store ._store ._store_item ._name_tel ._tel a {
    font-size: 4vw;
    font-weight: bold;
    color: #000;
    white-space: nowrap;
}
#order .section_body #order_in_store ._store ._store_item ._name_tel ._tel a img {
    height: 4vw;
    display: inline;
    margin-right: -0.5vw;
    margin-left: -1vw;
}
#order .section_body #order_in_store ._store ._store_item ._detail {
    width: 65%;
    font-size: 2.75vw;
}
#order .section_body #order_in_store ._store ._store_item:last-child {
    border: none;
    /* padding-bottom: 0; */
}
#pay .inner .section_body {
    padding: 5vw 0;
}
#pay .inner .section_body ._txt {
    text-align: center;
    margin-bottom: 4vw;
}
#pay .inner .section_body ._how {
    width: 75%;
    margin-inline: auto;
}
#pay .inner .section_body ._how ._item {
    margin-bottom: 6vw;
}
#pay .inner .section_body ._how ._item ._img {
    margin-bottom: 1.5vw;
}
#pay .inner .section_body ._how ._item._in_store ._desc {
    font-size: 4vw;
}
#pay .inner .section_body ._how ._item._in_store ._desc span {
    color: var(--color-accent-bright);
    font-weight: bold;
    text-decoration: underline;
}
#pay .inner .section_body ._how ._item._post_office ._desc>span, #pay .inner .section_body ._how ._item._bank_transfer ._desc>span {
    font-size: 5.5vw;
    font-weight: bold;
    line-height: 1.25;
    margin-bottom: 1vw;
    display: inline-block;
}
#pay .inner .section_body ._how ._item._post_office ._desc>span>span, #pay .inner .section_body ._how ._item._bank_transfer ._desc>span>span {
    color: var(--color-accent-bright);
    font-weight: bold;
}
#pay .inner .section_body ._note {
    margin-bottom: 5vw;
}
#pay .inner .section_body ._note ul li {
    font-size: 3.25vw;
    margin-bottom: 1vw;
}
#pay .inner .section_body ._box {
    background-color: var(--color-accent-bright);
    padding: 2.5vw 2vw;
}
#pay .inner .section_body ._box p {
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 3.75vw;
}
#pay .inner .section_body ._box span:nth-child(1) {
    display: block;
    font-size: 4.5vw;
    font-weight: bold;
}
#pay .inner .section_body ._box span:nth-child(2) {
    font-size: 3.25vw;
    font-weight: bold;
    text-decoration: underline;
}
footer {
    background-color: #fff;
    color: var(--color-accent-bright);
    padding: 5vw 0 11.9vw;
    overflow: hidden;
}
footer #copyright {
    text-align: center;
    font-size: 2.75vw;
    background-color: var(--color-accent-bright);
    color: #fff;
    padding: 2vw;
}
#footer_sp {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    /* border-top: 1.75vw solid var(--color-accent-bright); */
    -moz-column-gap: 1px;
    column-gap: 1px;
    background-color: #fff;
    z-index: 1;
}
#footer_sp a {
    width: 50%;
    text-align: center;
    color: #000;
    font-weight: bold;
    font-size: 5vw;
    padding: 2vw;
    background-color: #e2c465;
}
#page_top {
    position: fixed;
    display: none;
    bottom: 15vw;
    right: 2.5vw;
    z-index: 1;
}
#page_top a {
    display: block;
    width: 10vw;
    aspect-ratio: 1;
    overflow: hidden;
    border-radius: 50%;
}
#page_top a img {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
    height: 100%;
}
@media (width > 600px) {
    /* common
  -------------------------------------------------------------------------------- */
    html {
        scroll-padding-top: 31.5vw;
    }
    body {
        font-size: 3.25vw;
    }
    main {
        margin-top: 16.9vw;
    }
    .remark li {
        margin-left: 2rem;
    }
    /* header
  -------------------------------------------------------------------------------- */
    #header_menu ._logo a img {
        width: 38.2vw;
    }
    #header_menu ._index {
        padding: 2.25vw 2.25vw 1.5vw;
    }
    #header_menu ._index img {
        width: 8vw;
        margin-bottom: 0.75vw;
    }
    #header_menu ._index span {
        font-size: 1.75vw;
    }
    #header_menu nav {
        padding: 0 0.75vw 0.8vw;
    }
    #header_menu nav ul {
        row-gap: 0.75vw;
    }
    #header_menu nav ul li {
        width: 32.75%;
    }
    #header_menu nav ul li a {
        font-size: 2.75vw;
    }
    /* main
  -------------------------------------------------------------------------------- */
    /* home
  -------------------------------------------------------------------------------- */
    #home {
        aspect-ratio: 1.5;
    }
    /* title
  -------------------------------------------------------------------------------- */
    /* discount

  -------------------------------------------------------------------------------- */
    #discount .inner ._box {}
    #discount .inner ._box ._img {}
    #discount .inner ._box ._note {
        font-size: 2.5vw;
    }
    /* features
  -------------------------------------------------------------------------------- */
    #features .section_body .inner ._item {
        margin-bottom: 5vw;
    }
    #features .section_body .inner ._item ._head h3 {
        font-size: 5vw;
    }
    #features .section_body .inner ._item ._head::before, #features .section_body .inner ._item ._head::after {
        top: 2.5vw;
    }
    /* menu
  -------------------------------------------------------------------------------- */
    #menu_item ._item ._desc {
        font-size: 3.5vw;
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_name h4 {
        font-size: 3vw;
    }
    #menu_mark .inner ._body ul li {
        -moz-column-gap: 1.5vw;
        column-gap: 1.5vw;
        margin-bottom: 1.5vw;
    }
    #menu_mark .inner ._body ul li ._img {
        width: 4vw;
    }
    #menu_mark .inner ._body ul li ._txt {
        font-size: 2.5vw;
    }
    /* note
  -------------------------------------------------------------------------------- */
    #note .section_body ._item ._head::before, #note .section_body ._item ._head::after {
        top: 2vw;
    }
    #note .section_body ._item ._head h3 {
        font-size: 4.5vw;
    }
    #note .section_body ._item ._body ._m {
        font-size: 3.5vw;
    }
    /* order
  -------------------------------------------------------------------------------- */
    #order .section_body #order_in_store ._store ._store_item ._name_tel {
        width: 32.5%;
    }
    #order .section_body #order_in_store ._store ._store_item ._detail {
        font-size: 2.5vw;
        width: 62.5%;
    }
    /* pay
  -------------------------------------------------------------------------------- */
    /* footer
  -------------------------------------------------------------------------------- */
    footer {
        padding: 5vw 0 9.2vw;
    }
    #footer_sp {
        border-top-width: 1.5vw;
    }
    #footer_sp a {
        font-size: 4vw;
        padding: 1.5vw;
    }
    #page_top {
        bottom: 9.7vw;
        right: 2vw;
    }
    #page_top a {
        width: 7.5vw;
    }
}
@media (width > 1024px) {
    /* common
  -------------------------------------------------------------------------------- */
    html {
        scroll-behavior: smooth;
        scroll-padding-top: 11.5rem;
    }
    body {
        font-size: 1.5vw;
    }
    .inner {
        width: 90%;
    }
    .display_pc {
        display: block;
    }
    .display_sp {
        display: none;
    }
    .section_title h2 {
        font-size: 3vw;
        padding: 0.5vw 0;
    }
    .section_title::before, .section_title::after {
        height: 2px;
    }
    .section_title::before {
        top: -5px;
    }
    .section_title::after {
        bottom: -5px;
    }
    .remark li {
        text-align: left;
        margin-left: 5vw;
    }
    .remark li::marker {
        content: "※";
    }
    .remark li::before {
        content: none;
    }
    /* header
  -------------------------------------------------------------------------------- */
    #header_dial {
        background-image: linear-gradient(90deg, rgb(226, 196, 101), rgb(240, 225, 179), rgb(226, 196, 101));
        display: flex;
        justify-content: flex-end;
        align-items: center;
        -moz-column-gap: 1rem;
        column-gap: 1rem;
        padding: 1rem;
    }
    #header_dial ._head a {
        display: block;
        padding: 0.9rem 1rem 1rem 1.4rem;
        background-image: linear-gradient(90deg, #a30008 0%, #a30008 50%, #000 50%, #000 100%);
        background-size: 200%;
        background-position: 100%;
        color: #fff;
        line-height: 1;
        transition: 0.25s;
        font-size: 1.2rem;
    }
    #header_dial ._head a:hover {
        background-position: 0;
    }
    #header_dial ._body ._tel {
        font-size: 1rem;
    }
    #header_dial ._body ._tel a {
        font-size: 1.75rem;
        font-weight: bold;
        letter-spacing: 0.075rem;
        color: #000;
        line-height: 1;
        background-image: linear-gradient(90deg, #a30008 0%, #a30008 50%, #000 50%, #000 100%);
        background-size: 200%;
        background-position: 100%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        transition: 0.25s;
    }
    #header_dial ._body ._tel a img {
        display: inline-block;
        height: 1.25rem;
        margin-right: 0.25rem;
        transition: 0.25s;
    }
    #header_dial ._body ._tel a:hover {
        background-position: 0;
    }
    #header_dial ._body ._tel a:hover img {
        filter: invert(15%) sepia(95%) saturate(6932%) hue-rotate(358deg) brightness(60%) contrast(112%);
    }
    #header_dial ._body ._open {
        display: flex;
        -moz-column-gap: 0.5rem;
        column-gap: 0.5rem;
        font-size: 0.75rem;
        font-weight: bold;
        line-height: 1;
    }
    #header_dial ._body ._open ._txt {
        line-height: 1.2;
    }
    #header_dial ._body ._open ._times ._time {
        font-size: 1rem;
    }
    #header_dial ._body ._open ._times ._time span {
        font-size: 0.75rem;
    }
    #header_menu {
        display: flex;
        justify-content: space-between;
        flex-wrap: nowrap;
        align-items: center;
        padding: 0 2rem;
    }
    #header_menu ._logo {
        padding: 1rem 0;
    }
    #header_menu ._logo a {
        transition: 0.25s;
    }
    #header_menu ._logo a img {
        width: 300px;
    }
    #header_menu ._logo a:hover {
        opacity: 0.5;
    }
    #header_menu ._index {
        display: none;
    }
    #header_menu nav {
        display: block !important;
        box-shadow: none;
        padding: 0;
    }
    #header_menu nav ul {
        row-gap: unset;
        justify-content: flex-end;
        flex-wrap: nowrap;
    }
    #header_menu nav ul li {
        width: auto;
        padding: 0 1rem;
    }
    #header_menu nav ul li a {
        position: relative;
        display: block;
        font-size: 1.35rem;
        font-weight: 500;
        padding: 1.9rem 0.25rem 1.4rem;
        text-align: center;
        transition: color 0.25s;
        background-color: unset;
        color: #000;
    }
    #header_menu nav ul li a::before {
        position: absolute;
        content: "";
        bottom: 1.5rem;
        left: 0;
        width: 0;
        height: 1.5px;
        background-color: var(--color-accent);
        transition: width 0.25s;
    }
    #header_menu nav ul li a:hover {
        color: var(--color-accent);
    }
    #header_menu nav ul li a:hover::before {
        width: 100%;
    }
    /* main
  -------------------------------------------------------------------------------- */
    main {
        margin-top: 169px;
    }
    /* home
  -------------------------------------------------------------------------------- */
    #home {
        aspect-ratio: 1.777;
    }
    #home .inner {
        top: calc(50vh - 169px + 2.4vw);
        right: 4.5rem;
    }
    #home .inner h2 {
        text-shadow: 0.1vw 0.1vw 0 #000;
        font-size: 3vw;
        letter-spacing: 0.1vw;
        line-height: 1.4;
    }
    #home .swiper-slide {
        height: auto;
    }
    #home .swiper-slide ._img {
        height: 100%;
    }
    /* title
  -------------------------------------------------------------------------------- */
    #title {
        /* padding: 1vw 0; */
    }
    #title .inner {
        width: 80%;
    }
    #title .inner h1 {
        column-gap: 0.5vw;
    }
    #title .inner h1 ._name {
        line-height: 1.5;
        font-size: 2.75vw;
        font-weight: 600;
        padding: 0 0.5vw;
        border-bottom: 1px solid #000;
        border-top: 1px solid #000;
        margin-left: 0;
        margin-right: 1vw;
        margin-bottom: 0;
    }
    #title .inner h1 ._name::before, #title .inner h1 ._name::after {
        height: 3px;
    }
    #title .inner h1 ._name::before {
        top: -0.6vw;
    }
    #title .inner h1 ._name::after {
        bottom: -0.6vw;
    }
    #title .inner h1 ._year {
        font-size: 4.25vw;
        margin-bottom: 0;
        margin-right: 0.5vw;
        text-shadow: 0 0 1vw #fff, 0 0 2vw #fff;
    }
    #title .inner h1 ._osechi {
        position: static;
    }
    #title .inner h1 ._osechi img {
        height: 8vw;
    }
    #title .inner ._en {
        font-size: 1.75vw;
        font-weight: 600;
        text-shadow: 0 0 0.25vw #fff, 0 0 0.5vw #fff, 0 0 0.75vw #fff;
        margin-left: auto;
        margin-right: auto;
        padding-right: 5vw;
        margin-top: -0.5vw;
        text-align: center;
    }
    /* discount
  -------------------------------------------------------------------------------- */
    #discount {
        padding: 2.5vw 0 3vw;
    }
    #discount .inner {
        width: 74%;
    }
    #discount .inner ._box {}
    #discount .inner ._box ._img {
        margin-bottom: 0.333vw;
    }
    #discount .inner ._box ._note {
        font-size: 1.5vw;
    }
    #discount .inner ._box ._note br {
        display: none;
    }
    /* features
  -------------------------------------------------------------------------------- */
    #features .section_title {
        margin-bottom: 5vw;
    }
    #features .section_body .inner {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        row-gap: 3vw;
        width: 80%;
    }
    #features .section_body .inner ._item {
        width: 48%;
        background-color: #fefbe8;
        padding: 1.5vw 3.3vw;
        margin-bottom: 0;
        cursor: unset;
    }
    #features .section_body .inner ._item ._head {
        padding: 0 2vw 0.5vw;
        margin-bottom: 1vw;
        border-bottom: 1px solid var(--color-accent);
    }
    #features .section_body .inner ._item ._head h3 {
        font-size: 2.25vw;
        text-align: center;
    }
    #features .section_body .inner ._item ._head::before, #features .section_body .inner ._item ._head::after {
        content: none;
    }
    #features .section_body .inner ._item ._body {
        display: block !important;
        padding: 0 1vw;
        font-size: 1.25vw;
        line-height: 1.8;
    }
    #features .section_body .inner ._item ._body span {
        font-size: 1.25vw;
    }
    #features .section_body .inner ._item ._body.fadein {
        transition: 1s;
    }
    /* menu
  -------------------------------------------------------------------------------- */
    #menu_item ._item {
        padding: 0 5%;
        flex-direction: row;
        flex-wrap: wrap;
        background-image: url(../img_osechi/menu_bg.jpg);
        background-repeat: no-repeat;
        background-position: top 13vw left 0;
    }
    #menu_item ._item ._img {
        width: 57.5%;
        margin-top: -13.5vw;
    }
    #menu_item ._item ._img .inner {
        width: 100%;
        /* text-align: right; */
    }
    #menu_item ._item ._img .inner img {
        width: 51.75vw;
        max-width: none;
    }
    #menu_item ._item ._img #menu_special {
        margin-top: -5vw;
    }
    #menu_item ._item ._img #menu_special .menu_special_img img {
        width: 47vw;
    }
    #menu_item ._item ._img #menu_special .menu_special_title {
        width: 11.5vw;
        top: 2.5vw;
        right: 1vw;
        left: auto;
    }
    #menu_item ._item ._img #menu_special .menu_special_title h3 {
        color: #fff;
        white-space: nowrap;
        font-weight: bold;
        font-size: 3vw;
        letter-spacing: 0.2vw;
    }
    #menu_item ._item ._img #menu_special .menu_special_item {
        margin-top: -8vw;
        margin-bottom: 1.5vw;
    }
    #menu_item ._item ._img #menu_special .menu_special_item h4 {
        text-align: left;
    }
    #menu_item ._item ._img #menu_special .menu_special_item ._pack_mark img {
        width: auto;
        height: 2vw;
    }
    #menu_item ._item ._img #menu_special .menu_special_txt {
        font-weight: 600;
        text-align: left;
        margin-bottom: 3vw;
    }
    #menu_item ._item ._title {
        left: 7.5vw;
        top: 4vw;
        width: 12.5vw;
    }
    #menu_item ._item ._title h3 {
        font-size: 3.5vw;
    }
    #menu_item ._item ._desc {
        width: 100%;
        font-size: 1.5vw;
        background-color: transparent;
        text-align: right;
        text-shadow: 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff, 0 0 0.5vw #fff;
        position: relative;
        z-index: 1;
    }
    #menu_item ._item ._desc br {
        display: none;
    }
    #menu_item ._item ._pack {
        width: 42.5%;
        margin-top: -7.5vw;
        margin-bottom: 0;
    }
    #menu_item ._item ._pack .inner {
        justify-content: unset;
    }
    #menu_item ._item ._pack .inner ._pack_item {
        width: 42.5%;
        margin-bottom: 2vw;
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_img {
        margin-bottom: 1vw;
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_img img {
        width: 13.5vw;
        margin-inline: auto;
        filter: drop-shadow(0.25vw 0.25vw 0.4vw rgba(0, 0, 0, 0.25));
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_img ._pack_mark {
        right: 0;
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_img ._pack_mark img {
        height: 2vw;
        margin: 0 0.25vw;
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_name h4 {
        font-size: 1.4vw;
        font-weight: 600;
        letter-spacing: 0;
    }
    #menu_item ._item ._pack .inner ._pack_item ._pack_name h4 br {
        display: block;
    }
    #menu_item ._item ._pack._count_05 ._pack_item, #menu_item ._item ._pack._count_07 ._pack_item, #menu_item ._item ._pack._count_08 ._pack_item {
        width: 33.3%;
    }
    #menu_item ._item:nth-child(2n) {
        background-image: url(../img_osechi/menu_bg_rvs.jpg);
        background-position: top 12.5vw right 0;
    }
    #menu_item ._item:nth-child(2n) ._desc {
        text-align: left;
    }
    #menu_item ._item:nth-child(2n) ._img {
        width: 45%;
        order: 2;
    }
    #menu_item ._item:nth-child(2n) ._img .inner img {
        margin-left: -12.5vw;
    }
    #menu_item ._item:nth-child(2n) ._pack {
        width: 55%;
        order: 1;
    }
    #menu_item ._item:nth-child(n+2) {
        margin-top: -2vw;
    }
    #menu_item ._item:last-child {
        background-size: 100% auto;
    }
    #menu_item ._item:last-child ._pack {
        margin-top: -7.5vw;
    }
    #menu_mark {
        padding: 3vw 0;
        margin-bottom: 5vw;
    }
    #menu_mark .inner {
        display: flex;
        align-items: center;
        justify-content: center;
        -moz-column-gap: 2vw;
        column-gap: 2vw;
    }
    #menu_mark .inner ._head {
        width: 5vw;
        margin-bottom: 0.5vw;
    }
    #menu_mark .inner ._head img {
        width: 7.5vw;
    }
    #menu_mark .inner ._body ul li {
        margin-bottom: 0.5vw;
        align-items: center;
        -moz-column-gap: 1vw;
        column-gap: 1vw;
    }
    #menu_mark .inner ._body ul li ._img {
        width: auto;
    }
    #menu_mark .inner ._body ul li ._img img {
        height: 2vw;
    }
    #menu_mark .inner ._body ul li ._txt {
        font-size: 1.25vw;
    }
    /* note
  -------------------------------------------------------------------------------- */
    #note {
        background-color: #fbfbec;
    }
    #note .section_body {
        text-align: center;
        padding: 5vw 0 2.5vw;
        width: 72vw;
        margin-inline: auto;
        margin-bottom: 5vw;
    }
    #note .section_body ._item {
        margin-bottom: 3vw;
    }
    #note .section_body ._item ._head {
        width: 50vw;
        margin-inline: auto;
        padding: 0 1vw 0.25vw;
        margin-bottom: 1.5vw;
    }
    #note .section_body ._item ._head::before, #note .section_body ._item ._head::after {
        content: "";
    }
    #note .section_body ._item ._head::before {
        transform: rotate(0deg);
        transform-origin: unset;
        right: 0;
        left: 0;
        margin: auto;
        width: auto;
        height: 2px;
        bottom: -6px;
        top: auto;
    }
    #note .section_body ._item ._head::after {
        content: none;
    }
    #note .section_body ._item ._head h3 {
        font-size: 2.25vw;
    }
    #note .section_body ._item ._body {
        display: block;
    }
    #note .section_body ._item ._body ._l {
        font-size: 3.25vw;
    }
    #note .section_body ._item ._body ._l span {
        font-size: 6.5vw;
        line-height: 1;
    }
    #note .section_body ._item ._body ._l ._scheduled>span:nth-child(1) {
        font-size: 3.25vw;
    }
    #note .section_body ._item ._body ._l ._scheduled>span:nth-child(2) {
        font-size: 2.25vw;
    }
    #note .section_body ._item ._body ._l ._scheduled>span>span {
        font-size: 1.75vw;
    }
    #note .section_body ._item ._body ._s {
        font-size: 1.2vw;
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    #note .section_body ._item._delivery ._m {
        font-size: 1.75vw;
    }
    #note .section_body ._item._ticket ._l {
        font-size: 3vw;
        margin-bottom: 0;
    }
    #note .section_body ._item._ticket ._m {
        font-size: 1.45vw;
        text-align: center;
        margin-left: 0;
        text-indent: 0;
        margin-bottom: 0.75vw;
    }
    #note .section_body ._item._size ._m {
        font-size: 1.5vw;
    }
    #note .section_body ._item._size ._box {
        -moz-column-gap: 3vw;
        column-gap: 3vw;
        justify-content: center;
    }
    #note .section_body ._item._size ._box ._img {
        width: 17.5vw;
    }
    #note .section_body ._item._size ._box ._size {
        flex: unset;
    }
    #note .section_body ._item._size ._box ._size ._per {
        font-size: 2.25vw;
    }
    #note .section_body ._item._size ._box ._size ._cm {
        font-size: 4.5vw;
        text-align: center;
        margin-bottom: 0.5vw;
    }
    #note .section_body ._item._size ._box ._size ._cm span {
        font-size: 2.75vw;
    }
    #note .section_body ._item._size ._box ._size ._howmany {
        padding: 0.5vw 3vw;
        font-size: 1.5vw;
    }
    /* order
  -------------------------------------------------------------------------------- */
    #order .section_body {
        width: 100%;
    }
    #order .section_body ._item {
        padding: 4vw 0;
        width: 100%;
        margin-inline: auto;
        border-bottom: 1px solid #422c1c;
    }
    #order .section_body ._item .inner {
        width: 72vw;
    }
    #order .section_body ._item .inner ._head {
        display: flex;
        justify-content: center;
        align-items: center;
        -moz-column-gap: 1.5vw;
        column-gap: 1.5vw;
        margin-bottom: 1.5vw;
    }
    #order .section_body ._item .inner ._head ._title {
        margin-bottom: 0.25vw;
    }
    #order .section_body ._item .inner ._head ._title::before, #order .section_body ._item .inner ._head ._title::after {
        content: none;
    }
    #order .section_body ._item .inner ._head ._title h3 {
        font-size: 3vw;
    }
    #order .section_body ._item .inner ._head ._desc {
        display: block;
        padding: 0.25vw 4vw;
        margin-inline: unset;
        margin-bottom: 0;
        transition: 1s;
    }
    #order .section_body ._item .inner ._body {
        display: block;
        padding-bottom: 0;
    }
    #order .section_body ._item .inner ._body ._contact {
        margin-bottom: 2vw;
    }
    #order .section_body ._item .inner ._body ._contact img {
        height: 6vw;
        margin-right: 1.25vw;
    }
    #order .section_body ._item .inner ._body ._txt ol li {
        font-size: 1.666vw;
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    #order .section_body ._item .inner ._body ._txt ol li ._note {
        margin-top: 1.5vw;
        padding: 0.5vw 2vw;
        font-size: 1.5vw;
        text-align: center;
    }
    #order .section_body ._item .inner ._body ._txt ol li ._button a {
        padding: 1vw 10vw;
        margin-top: 2vw;
        background-image: linear-gradient(90deg, #000 0%, #000 50%, var(--color-accent-bright) 50%, var(--color-accent-bright) 100%);
        background-size: 200%;
        background-position: 100%;
        transition: 0.25s;
    }
    #order .section_body ._item .inner ._body ._txt ol li ._button a:hover {
        background-position: 0;
    }
    #order .section_body ._item .inner:nth-child(n+2) ._body {
        display: block;
    }
    #order .section_body ._item:last-child {
        border: none;
        padding-bottom: 0;
    }
    #order .section_body #order_flow {
        border-bottom: 1px solid #422c1c;
    }
    #order .section_body #order_flow ._body ._img {
        margin-bottom: 2.5vw;
    }
    #order .section_body #order_flow ._body ._note {
        margin-bottom: 1.5vw;
    }
    #order .section_body #order_flow ._body ._note ul li {
        width: -moz-fit-content;
        width: fit-content;
        font-size: 1.5vw;
        text-align: center;
        margin-inline: auto;
        text-decoration: underline;
    }
    #order .section_body #order_flow ._body ._title {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        -moz-column-gap: 1.5vw;
        column-gap: 1.5vw;
    }
    #order .section_body #order_flow ._body ._title h3 {
        font-size: 3vw;
    }
    #order .section_body #order_flow ._body ._title span {
        font-size: 1.5vw;
    }
    #order .section_body #order_flow ._body ._which ._each_order {
        border-radius: 0.75vw;
        overflow: hidden;
    }
    #order .section_body #order_flow ._body ._which ._each_order a {
        background-image: linear-gradient(90deg, #fcfcfc 0%, #e7e7e7 50%, transparent 50%, transparent 100%);
        background-size: 200%;
        background-position: 100%;
        transition: 0.25s;
    }
    #order .section_body #order_flow ._body ._which ._each_order a:hover {
        background-position: 0;
    }
    #order .section_body #order_email ._body ._contact img {
        width: 38.2vw;
        height: auto;
    }
    #order .section_body #order_email ._body ._contact a {
        /* font-size: 3vw; */
        background-image: linear-gradient(90deg, #f3ecff 0%, #f3ecff 50%, #ffffff 50%, #ffffff 100%);
        background-size: 200%;
        background-position: 100%;
        /* -webkit-background-clip: text; */
        /* -webkit-text-fill-color: transparent; */
        transition: 0.5s;
        padding: 1.5vw 3vw;
        border-radius: 1vw;
    }
    #order .section_body #order_email ._body ._contact a img {
        transition: 0.5s;
    }
    #order .section_body #order_email ._body ._contact a:hover {
        background-position: 0;
    }
    #order .section_body #order_email ._body ._contact a:hover img {
        /* filter: brightness(0%); */
    }
    #order .section_body #order_fax ._body ._contact {
        font-size: 6vw;
    }
    #order .section_body #order_fax ._body ._complete {
        border-radius: 1vw;
        padding: 2vw 4vw 2vw;
        width: 67vw;
        margin-inline: auto;
    }
    #order .section_body #order_fax ._body ._complete ._title h4 {
        font-size: 2vw;
    }
    #order .section_body #order_fax ._body ._complete ._desc {
        font-weight: 500;
    }
    #order .section_body #order_fax ._body ._complete ._desc br {
        display: none;
    }
    #order .section_body #order_fax ._body ._complete ._note {
        margin-top: 1.5vw;
        padding: 0.5vw 2vw;
        font-size: 1.5vw;
        text-align: center;
    }
    #order .section_body #order_tel ._body {
        padding-bottom: 0;
    }
    #order .section_body #order_tel ._body ._contact {
        font-size: 6vw;
    }
    #order .section_body #order_tel ._body ._contact a {
        background-image: linear-gradient(90deg, #000 0%, #000 50%, var(--color-accent-bright) 50%, var(--color-accent-bright) 100%);
        background-size: 200%;
        background-position: 100%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        transition: 0.5s;
        padding-right: 1vw;
    }
    #order .section_body #order_tel ._body ._contact a img {
        transition: 0.5s;
    }
    #order .section_body #order_tel ._body ._contact a:hover {
        background-position: 0;
    }
    #order .section_body #order_tel ._body ._contact a:hover img {
        filter: brightness(0%);
    }
    #order .section_body #order_tel ._body ._open {
        -moz-column-gap: 1vw;
        column-gap: 1vw;
        border: 2px solid #666;
        font-weight: bold;
        padding: 0.25vw 10vw;
        font-size: 2vw;
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    #order .section_body #order_in_store ._contact {
        display: flex;
        justify-content: center;
        align-items: center;
        -moz-column-gap: 0.5vw;
        column-gap: 0.5vw;
    }
    #order .section_body #order_in_store ._contact img {
        height: 6vw;
        margin-right: 0;
    }
    #order .section_body #order_in_store ._contact span:nth-of-type(1) {
        font-size: 4vw;
    }
    #order .section_body #order_in_store ._contact span:nth-of-type(2) {
        font-size: 2vw;
        line-height: 1.2;
    }
    #order .section_body #order_in_store ._contact span:nth-of-type(2) br {
        display: block;
    }
    #order .section_body #order_in_store ._store ._store_item {
        padding: 3vw 0;
        justify-content: center;
        align-items: center;
        -moz-column-gap: 5vw;
        column-gap: 5vw;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel {
        text-align: center;
        width: auto;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel ._name {
        margin-bottom: -0.25vw;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel ._name h4 {
        font-size: 2.75vw;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel ._tel a {
        font-size: 2.75vw;
        background-image: linear-gradient(90deg, var(--color-accent-bright) 0%, var(--color-accent-bright) 50%, #000 50%, #000 100%);
        background-size: 200%;
        background-position: 100%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        transition: 0.25s;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel ._tel a img {
        transition: 0.25s;
        height: 2.5vw;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel ._tel a:hover {
        background-position: 0;
    }
    #order .section_body #order_in_store ._store ._store_item ._name_tel ._tel a:hover img {
        filter: invert(15%) sepia(95%) saturate(6932%) hue-rotate(358deg) brightness(60%) contrast(112%);
    }
    #order .section_body #order_in_store ._store ._store_item ._detail {
        width: auto;
        font-size: 1.3vw;
        font-weight: bold;
        line-height: 1.4;
    }
    /* pay
  -------------------------------------------------------------------------------- */
    #pay .inner {
        width: 72%;
    }
    #pay .inner .section_body ._txt {
        margin-bottom: 2.5vw;
    }
    #pay .inner .section_body ._how {
        width: 100%;
        display: flex;
        justify-content: space-between;
        margin-bottom: 3vw;
    }
    #pay .inner .section_body ._how ._item {
        width: 27.5%;
        margin-bottom: 0;
    }
    #pay .inner .section_body ._how ._item ._img {
        margin-bottom: 0.5vw;
    }
    #pay .inner .section_body ._how ._item._in_store ._desc {
        font-size: 1.4vw;
    }
    #pay .inner .section_body ._how ._item._post_office ._desc, #pay .inner .section_body ._how ._item._bank_transfer ._desc {
        font-size: 1.3vw;
    }
    #pay .inner .section_body ._how ._item._post_office ._desc>span, #pay .inner .section_body ._how ._item._bank_transfer ._desc>span {
        font-size: 1.6vw;
        margin-bottom: 0;
    }
    #pay .inner .section_body ._note {
        margin-bottom: 3vw;
    }
    #pay .inner .section_body ._note ul {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
    #pay .inner .section_body ._note ul li {
        font-size: 1.25vw;
        margin-bottom: 0.25vw;
    }
    #pay .inner .section_body ._box {
        padding: 1.5vw;
        line-height: 1.25;
    }
    #pay .inner .section_body ._box p {
        font-size: 2.75vw;
    }
    #pay .inner .section_body ._box span:nth-child(1) {
        font-size: 3.25vw;
    }
    #pay .inner .section_body ._box span:nth-child(2) {
        font-size: 2.25vw;
    }
    /* footer
  -------------------------------------------------------------------------------- */
    footer {
        padding: 2vw 0 0;
    }
    footer .inner {
        width: 72%;
    }
    footer #copyright {
        font-size: 0.9vw;
        padding: 0.75vw;
    }
    #footer_sp {
        display: none;
    }
    #page_top {
        bottom: 1.5vw;
        right: 1.25vw;
    }
    #page_top a {
        width: 5vw;
        background-image: linear-gradient(90deg, #000 0%, #000 50%, transparent 50%, transparent 100%);
        background-size: 200%;
        background-position: 100%;
        transition: 0.25s;
    }
    #page_top a:hover {
        background-position: 0;
    }
    #page_order {
        position: fixed;
        bottom: -1.5vw;
        left: 2vw;
        width: 15vw;
        z-index: 1;
        transition: bottom 0.5s;
    }
    #page_order a {
        display: block;
        background-color: var(--color-accent);
        border-top-right-radius: 1.5vw;
        border-top-left-radius: 1.5vw;
        color: #fff;
        font-size: 1.25vw;
        font-weight: 900;
        text-align: center;
        padding: 1vw 1vw 2.5vw;
        background-image: linear-gradient(0deg, var(--color-accent) 0%, var(--color-accent) 50%, var(--color-accent-bright) 50%, var(--color-accent-bright) 100%);
        background-size: 100% 200%;
        background-position: 100% 100%;
        transition: 0.25s;
    }
    #page_order a:hover {
        background-position: 0 0;
    }
    #page_order:hover {
        bottom: 0;
    }
    #page_order:hover a {
        background-color: var(--color-accent-bright);
    }
}
/* thanks
-------------------------------------------------------------------------------- */