@charset "UTF-8";
@import"https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp-narrow.min.css";
@import"https://use.typekit.net/dde3btp.css";
[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start
}
.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit
}
.simplebar-wrapper ::-webkit-scrollbar{
    display:none
}
.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0
}
.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch
}
.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none
}
.simplebar-content-wrapper::-webkit-scrollbar, .simplebar-hide-scrollbar::-webkit-scrollbar {
    width: 0;
    height: 0
}
.simplebar-content:before, .simplebar-content:after {
    content: ' ';
    display: table
}
.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none
}
.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0
}
.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index: -1
}
.simplebar-track {
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden
}
[data-simplebar].simplebar-dragging .simplebar-content {
    pointer-events: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none
}
[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all
}
.simplebar-scrollbar {
    position: absolute;
    left: 0;
    right: 0;
    min-height: 10px
}
.simplebar-scrollbar:before {
    position: absolute;
    content: '';
    background: black;
    border-radius: 7px;
    left: 2px;
    right: 2px;
    opacity: 0;
    transition: opacity .2s linear
}
.simplebar-scrollbar.simplebar-visible:before {
    opacity: .5;
    transition: opacity 0s linear
}
.simplebar-track.simplebar-vertical {
    top: 0;
    width: 11px
}
.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 2px;
    bottom: 2px
}
.simplebar-track.simplebar-horizontal {
    left: 0;
    height: 11px
}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
    height: 100%;
    left: 2px;
    right: 2px
}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 2px;
    height: 7px;
    min-height: 0;
    min-width: 10px;
    width: auto
}
[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0
}
.hs-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll
}
.simplebar-hide-scrollbar {
    position: fixed;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none
}
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: auto;
    touch-action: auto;
    -webkit-tap-highlight-color: transparent
}
.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}
.slick-list:focus {
    outline: none
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}
.slick-slider .slick-track, .slick-slider .slick-list {
    transform: translate3d(0, 0, 0)
}
.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}
.slick-track:before, .slick-track:after {
    content: '';
    display: table
}
.slick-track:after {
    clear: both
}
.slick-loading .slick-track {
    visibility: hidden
}
.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}
[dir=rtl] .slick-slide {
    float: right
}
.slick-slide img {
    display: block
}
.slick-slide.slick-loading img {
    display: none
}
.slick-slide.dragging img {
    pointer-events: none
}
.slick-initialized .slick-slide {
    display: block
}
.slick-loading .slick-slide {
    visibility: hidden
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}
.slick-arrow.slick-hidden {
    display: none
}
.slide-up-in {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1s cubic-bezier(.39, .575, .565, 1), transform .8s cubic-bezier(.165, .84, .44, 1)
}
.slide-up-in.is-inview {
    opacity: 1;
    transform: translateY(0)
}
@keyframes swing1 {
    0% {
        animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
        transform: rotate(0deg) translateY(0)
    }
    35% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: rotate(5deg) translateY(-10px)
    }
    50% {
        animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
        transform: rotate(0deg) translateY(0)
    }
    85% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: rotate(-5deg) translateY(-10px)
    }
    100% {
        animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
        transform: rotate(0deg) translateY(0)
    }
}
@keyframes swing2 {
    0% {
        animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
        transform: rotate(0deg) translateY(0)
    }
    35% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: rotate(-5deg) translateY(-10px)
    }
    50% {
        animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
        transform: rotate(0deg) translateY(0)
    }
    85% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: rotate(5deg) translateY(-10px)
    }
    100% {
        animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
        transform: rotate(0deg) translateY(0)
    }
}
@keyframes bounce {
    from, 20%, 53%, 80%, to {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: translate3d(0, 0, 0)
    }
    40%, 43% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: translate3d(0, -30px, 0)
    }
    70% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: translate3d(0, -15px, 0)
    }
    90% {
        animation-timing-function: cubic-bezier(.165, .84, .44, 1);
        transform: translate3d(0, -4px, 0)
    }
}
#ff3 * {
    box-sizing: border-box
}
#ff3 img {
    max-width: 100%;
    height: auto;
    vertical-align: top
}
@media screen and (max-width:767px) {
    #ff3 img {
        width: 100%
    }
}
#ff3 picture {
    display: block
}
#ff3 sup {
    top: -.4em
}
#ff3 a {
    color: #000;
    text-decoration: none
}
@font-face {
    font-family: yg;
    src: local("Yu Gothic Medium"), local("YuGothic-Medium"), local("游ゴシック体 Medium")
}
@font-face {
    font-family: yg;
    font-weight: 700;
    src: local("Yu Gothic Bold"), local("YuGothic-Bold"), local("游ゴシック体 Bold")
}
@font-face {
    font-family: yg;
    font-weight: 200;
    src: local("Yu Gothic Light"), local("YuGothic-Light"), local("游ゴシック体 Light")
}
@font-face {
    font-family: yg;
    font-weight: 300;
    src: local("Yu Gothic"), local("YuGothic"), local("游ゴシック体")
}
html, body {
    min-width: 1200px
}
@media screen and (max-width:767px) {
    html, body {
        min-width: 320px
    }
}
body.is-show-modal, body.is-show-nav {
    overflow: hidden
}
#ff3 {
    --vh: 0;
    --rem: 10px
}
@media screen and (max-width:1600px) {
    #ff3 {
        --rem: calc(10vw/1600*100)
    }
}
@media screen and (max-width:767px) {
    #ff3 {
        --rem: calc(10vw/750*100)
    }
}
#ff3 {
    text-align: justify;
    text-justify: inter-ideograph;
    word-wrap: break-word;
    line-break: normal;
    overflow: hidden;
    min-width: 1200px;
    color: #525050;
    font-family: YakuHanJP_Narrow, yg, YuGothic, "游ゴシック", "游ゴシック体", YuGothic, YuGothic M, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, sans-serif;
    font-size: 18px;
    font-size: calc(1.8*var(--rem));
    letter-spacing: .04em;
    -ms-scroll-chaining: none;
    overscroll-behavior: none
}
@media screen and (max-width:767px) {
    #ff3 {
        min-width: 0;
        font-size: 3.73333vw
    }
}
:root{
    --remff3:10px
}
@media screen and (max-width:1280px){
    :root{
        --remff3:calc(10vw/1280*100)
    }
}
@media screen and (max-width:768px){
    :root{
        --remff3:calc(10vw/750*100)
    }
}
.footerBnr {
    display: none
}
@media screen and (max-width:767px) {
    #ff3 .only-pc {
        display: none !important
    }
}
@media screen and (min-width:751px) {
    #ff3 .only-sp {
        display: none !important
    }
}
#ff3 .js-fit-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;"
}
#ff3 .ani-cover-image {
    position: relative;
    overflow: hidden
}
#ff3 .ani-cover-image img, #ff3 .ani-cover-image video {
    transform: scale(1.1);
    opacity: 0;
    transition: transform .6s cubic-bezier(.165, .84, .44, 1) .4s, opacity 0s cubic-bezier(.39, .575, .565, 1) .4s;
    will-change: transform
}
#ff3 .ani-cover-image:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    content: "";
    display: block;
    background: #ff7403
}
#ff3 .ani-cover-image.is-inview img, #ff3 .ani-cover-image.is-inview video {
    transform: scale(1);
    opacity: 1
}
#ff3 .ani-cover-image.is-inview:after {
    animation: cover .8s cubic-bezier(.165, .84, .44, 1) both
}
@keyframes cover {
    0% {
        left: 0;
        right: auto;
        width: 0
    }
    50% {
        left: 0;
        right: auto;
        width: 100%
    }
    51% {
        left: auto;
        right: 0;
        width: 100%
    }
    100% {
        left: auto;
        right: 0;
        width: 0
    }
}
#ff3 .ani-cover-text > span {
    position: relative;
    display: inline-block
}
#ff3 .ani-cover-text > span span {
    opacity: 0;
    transition: opacity 0s cubic-bezier(.39, .575, .565, 1) .4s
}
#ff3 .ani-cover-text > span:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    content: "";
    display: block;
    background: #ff7403
}
#ff3 .ani-cover-text.is-inview > span span {
    opacity: 1
}
#ff3 .ani-cover-text.is-inview > span:after {
    animation: cover .8s cubic-bezier(.165, .84, .44, 1) both
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(2) span {
    transition-delay: .5s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(2):after {
    animation-delay: .1s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(3) span {
    transition-delay: .6s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(3):after {
    animation-delay: .2s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(4) span {
    transition-delay: .7s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(4):after {
    animation-delay: .3s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(5) span {
    transition-delay: .8s
}
#ff3 .ani-cover-text.is-inview > span:nth-of-type(5):after {
    animation-delay: .4s
}
@keyframes cover {
    0% {
        left: 0;
        right: auto;
        width: 0
    }
    50% {
        left: 0;
        right: auto;
        width: 100%
    }
    51% {
        left: auto;
        right: 0;
        width: 100%
    }
    100% {
        left: auto;
        right: 0;
        width: 0
    }
}
#ff3 .ani-slide-up {
    opacity: 0;
    transform: translateY(100px);
    transition: opacity .6s cubic-bezier(.39, .575, .565, 1), transform .6s cubic-bezier(.165, .84, .44, 1)
}
@media screen and (max-width:767px) {
    #ff3 .ani-slide-up {
        transform: translateY(calc(10*var(--rem)))
    }
}
#ff3 .ani-slide-up.is-inview {
    opacity: 1;
    transform: translateY(0)
}
#ff3 .ani-slide {
    opacity: 0;
    transform: translateX(calc(-4*var(--rem)));
    transition: opacity .8s cubic-bezier(.39, .575, .565, 1), transform .8s cubic-bezier(.165, .84, .44, 1)
}
@media screen and (max-width:767px) {
    #ff3 .ani-slide {
        transform: translateX(calc(-4*var(--rem)))
    }
}
#ff3 .ani-slide.is-inview {
    opacity: 1;
    transform: translateX(0)
}
#ff3 .ani-mask-slide-up {
    overflow: hidden
}
#ff3 .ani-mask-slide-up > * {
    transform: translateY(100%);
    transition: transform .6s cubic-bezier(.165, .84, .44, 1)
}
#ff3 .ani-mask-slide-up.is-inview > * {
    transform: translateY(0)
}
#ff3 .ani-line strong {
    border-color: transparent !important;
    transition: border-color .4s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .ani-line.is-inview strong {
    border-color: #ff7403 !important
}
#ff3 .ani-grayscale {
    filter: grayscale(1);
    transition: filter 1s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .ani-grayscale.is-inview {
    filter: grayscale(0)
}
.point10Label.it-header {
    /*margin-top: calc(.4* var(--rem));*/
	margin-top: calc(.7* var(--rem));
    background: #ff6b00;
    font-size: 20px
}
@media screen and (min-width: 751px) {
	#wrapper .point10Label.it-header {
		min-width: 1200px;
	}
}
@media screen and (max-width: 767px) {
    .point10Label.it-header {
        margin:6px 0 -10px;
        font-size: 1.6vmin
    }
}
@media screen and (min-width: 0px) and (max-width: 767px) {
    #wrapper .point10Label.it-header {
        margin-top: 0;
        font-size: 3.46667vw;
    }
}
@media screen and (min-width:750px) and (max-width:1199px) {
    #wrapper .point10Label.it-header {
        width: 100vw;
        font-size: calc(2.6*var(--rem));
    }  
}
.point10Label.it-header a {
    color: #fff;
    font-weight: normal;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    font-family: "游ゴシック体", "YuGothic", "YuGothic M", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.breadcrumb{
	/* width: 960px;
	margin: 20px auto;
	font-size: 0; */
    box-sizing: border-box;
	max-width: calc(130* var(--rem));
    width: 100%;
    margin: 1.8em auto .5em auto;
    list-style: none;
	padding: 0 calc(5* var(--rem));
    font-family: "游ゴシック体", "YuGothic", "YuGothic M", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media screen and (min-width:768px) {
    .breadcrumb{
        margin: 0em auto .5em auto;
    }
}

.breadcrumb__item{
	color: #ff8705;
	font-size: 11px;
	line-height: 11px;
	display: inline-block;
	vertical-align: top;
}
.breadcrumb__item a{
	text-decoration: none;
	color: #333;
}
.breadcrumb__item a:not(.is-tab):hover{
	color: #ff8705;
}
.breadcrumb__item::after{
	content: ">";
	display: inline-block;
	margin: 0 5px;
	color: #333;
	vertical-align: top;
}
.breadcrumb__item:last-child::after{
	display: none;
}
#ff3 .buttons .buttons__item:nth-child(2) {
    margin-top: calc(3*var(--remff3));
}
@media screen and (min-width:768px) {
    #ff3 .buttons .buttons__item:nth-child(2) {
        margin-top: calc(2*var(--remff3));
    }
}
#ff3 .button {
    margin-left: auto;
    margin-right: auto;
    width: calc(45*var(--rem));
    height: calc(8*var(--rem));
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    border-radius: calc(.6*var(--rem));
    background: #ed6c00;
    line-height: 1.33333;
    text-align: center;
    transition: opacity .4s
}
#ff3 .button:hover {
    opacity: .7
}
@media screen and (max-width:767px) {
    #ff3 .button {
        width: calc(65* var(--rem));
        height: calc(12*var(--rem));
        font-size: calc(2.6*var(--rem));
        line-height: 1.27778
    }
}
#ff3 .price .button.is-out{
    background:#ccc;
    pointer-events:none
}
#ff3 .price .button.is-out:after{
    content: none
}
#ff3 .button span {
    position: relative;
    display: block;
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .button span {
        font-size: calc(3*var(--rem));
    }
}
#ff3 .button--cart:after {
    width: calc(1.6*var(--rem));
    height: calc(.8*var(--rem));
    position: absolute;
    top: calc(50% - calc(.4*var(--rem)));
    right: calc(3*var(--rem));
    content: '';
    display: block;
    background: url(../img/arw_down.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .button--cart:after {
        width: calc(2.7*var(--rem));
        height: calc(4.1*var(--rem));
        position: absolute;
        top: calc(50% - calc(4.1*var(--rem)) / 2);
        right: calc(5*var(--rem))
    }
}
#ff3 .button--cart span {
    padding-left: calc(3.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .button--cart span {
        padding-left: calc(7.8*var(--rem))
    }
}
#ff3 .button--cart span .monthly-payment {
    font-size: calc(1.8* var(--rem));
    display: inline;
    padding-left: 0;
}
@media screen and (max-width:767px) {
    #ff3 .button--cart span .monthly-payment {
        font-size: calc(2.6* var(--rem));
        display: block;
        padding-left: 0;
    }
}

#ff3 .button--cart span:before {
    width: calc(2.2*var(--rem));
    height: calc(2.3*var(--rem));
    position: absolute;
    top: calc(50% - calc(1.3*var(--rem)));
    left: 0;
    content: '';
    display: block;
    background: url(../img/icn_cart.png) no-repeat center center/contain
}

#ff3 .button--cart span span:before {
    display: none;
}

@media screen and (max-width:767px) {
    #ff3 .button--cart span:before {
        width: calc(4.3*var(--rem));
        height: calc(4.5*var(--rem));
        position: absolute;
        top: calc(50% - calc(4.5*var(--rem)) / 2);
        left: 0
    }
}
#ff3 .button--line {
    background: #ffffff;
    border: 1px solid #ed6c00;
    color: #ed6c00;
}
#ff3 .button--line:after {
    width: calc(1.4*var(--rem));
    height: calc(1.4*var(--rem));
    position: absolute;
    top: calc(50% - calc(.7*var(--rem)));
    right: calc(3*var(--rem));
    content: '';
    display: block;
    background: url(../img/icn_blank.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .button--line:after {
        width: calc(2*var(--rem));
        height: calc(2*var(--rem));
        position: absolute;
        top: calc(50% - calc(1*var(--rem)));
        right: calc(5*var(--rem))
    }
}
#ff3 .buttons__ballon {
    position: relative;
    display: inline-block;
    line-height: 1;
    color: #ed6c00;
    font-size: calc(2*var(--rem));
    padding: 0 calc(3*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .buttons__ballon {
        width: 100%;
        text-align: center;
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .buttons__ballon:before,
#ff3 .buttons__ballon:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: calc(1.9*var(--rem));
    height: calc(2.2*var(--rem));
    background-image: url(../img/ic-gift-ballon.png);
    background-size: cover;
}
#ff3 .buttons__ballon:before {
    left: 0;
}
#ff3 .buttons__ballon:after {
    right: 0;
    transform: scale(-1,1);
}
#ff3 .button.button--link {
    margin-top: calc(1.5*var(--rem));
    background-image: url(../img/ic-gift-arrow.png);
    background-size: calc(0.9*var(--rem));
    background-position: right calc(3*var(--rem)) center;
    background-repeat: no-repeat;
}

#ff3 .button.button--window::after {
    width: calc(1.4 * var(--rem));
    height: calc(1.4 * var(--rem));
    position: absolute;
    top: calc(50% - calc(.7 * var(--rem)));
    right: calc(3 * var(--rem));
    content: '';
    display: block;
    background: url(../img/icn_blank_white.png) no-repeat center center / contain;
}
@media screen and (max-width: 767px) {
    #ff3 .button.button--window::after {
        width: calc(3 * var(--rem));
        height: calc(3 * var(--rem));
        position: absolute;
        top: calc(50% - calc(1.5 * var(--rem)));
        right: calc(5 * var(--rem));
    }
}

#ff3 .movie {
    width: 100%;
    max-width: calc(70*var(--rem));
    margin-left: auto;
    margin-right: auto
}
#ff3 .movie__player {
    position: relative;
    overflow: hidden;
    border-radius: calc(3*var(--rem));
    cursor: pointer;
    transition: opacity .4s
}
#ff3 .movie__player:hover {
    opacity: .7
}
#ff3 .movie__player:after {
    width: calc(12*var(--rem));
    height: calc(12*var(--rem));
    position: absolute;
    top: calc(50% - calc(6*var(--rem)));
    right: calc(50% - calc(6*var(--rem)));
    content: '';
    display: block;
    background: url(../img/arw_play.svg) no-repeat center center/contain
}
#ff3 .movie__caption {
    display: -ms-flexbox;
    display: flex;
    margin-top: calc(1*var(--rem));
    font-size: calc(1.2*var(--rem));
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .movie__caption {
        margin-top: calc(2.2*var(--rem));
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .movie__caption span {
    display: block;
    padding: calc(.2*var(--rem)) 0
}
#ff3 .movie__caption span:nth-of-type(n+2) {
    margin-left: calc(.8*var(--rem));
    padding-left: calc(.8*var(--rem));
    border-left: 1px solid #a1a1a1
}
@media screen and (max-width:767px) {
    #ff3 .movie__caption span:nth-of-type(n+2) {
        margin-left: calc(1.6*var(--rem));
        padding-left: calc(1.6*var(--rem))
    }
}
#ff3 .section {
    padding: calc(12*var(--rem)) 0 0;
}
#ff3 .section__inner {
    margin-left: auto;
    margin-right: auto;
    width: calc(110* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .section__inner {
        width: calc(65* var(--rem));
    }
}
#ff3 .section__heading {
    line-height: 1;
    text-align: center
}
#ff3 .section__heading-en {
    display: block;
    font-family: futura-pt, sans-serif;
    font-size: calc(5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .section__heading-en {
        font-size: calc(8*var(--rem));
        letter-spacing: .1em
    }
}
#ff3 .section__heading-ja {
    display: block;
    margin-top: calc(1*var(--rem));
    font-size: calc(1.8*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .section__heading-ja {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    line-height: 1.6;
    z-index: 9999;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: .4s all
}
@media screen and (max-width:767px) {
    #ff3 .modal {
        padding: 0
    }
}
#ff3 .modal.is-show {
    opacity: 1;
    pointer-events: auto
}
#ff3 .modal.is-show iframe {
    pointer-events: auto;
    visibility: visible;
    opacity: 1
}
#ff3 .modal__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .8);
    z-index: 0
}
#ff3 .modal__inner {
    position: relative;
    width: 90%;
    max-width: calc(130*var(--rem));
    max-height: 76vh;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner {
        width: calc(65*var(--rem));
        max-width: 750px;
        max-height: calc(100vh - calc(5*var(--rem)) * 2);
        overflow: auto
    }
}
#ff3 .modal__inner img {
    width: 100%
}
#ff3 .modal__content {
    position: relative;
    z-index: 9
}
#ff3 .modal__box {
    width: calc(50*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal__box {
        width: 100%;
        padding: calc(4.7*var(--rem)) calc(4.5 * var(--rem)) 0;
        box-sizing: border-box
    }
}
#ff3 .modal__image {
    width: calc(58.2*var(--rem));
    box-sizing: border-box
}
@media screen and (max-width:767px) {
    #ff3 .modal__image {
        margin-top: calc(6*var(--rem));
        width: 100%;
        height: calc(45*var(--rem))
    }
}
#ff3 .modal__image img {
    width: 100%;
    height: 100%;
    object-fit: cover
}
#ff3 .modal__heading {
    font-size: calc(3*var(--rem));
    line-height: 1.93333;
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .modal__heading {
        font-size: calc(3.5*var(--rem));
        line-height: 1.94286;
        text-align: center
    }
}
#ff3 .modal__text {
    margin-top: calc(2*var(--rem));
    font-size: calc(1.8*var(--rem));
    line-height: 1.77778;
    letter-spacing: .05em;
    text-align: justify
}
@media screen and (max-width:767px) {
    #ff3 .modal__text {
        margin-top: calc(2.8*var(--rem));
        font-size: calc(2.8*var(--rem));
        line-height: 1.92857
    }
}
#ff3 .modal .modal__inner {
    padding: calc(5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal[id*=movie] .modal__inner {
        padding: calc(5*var(--rem)) calc(5 * var(--rem)) calc(.6 * var(--rem))
    }
}
#ff3 .modal__movie {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto
}
@media screen and (max-width:767px) {
    #ff3 .modal__movie {
        width: 100%;
        height: 53.33333vw
    }
}
#ff3 .modal__movie iframe {
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
    visibility: hidden;
    opacity: 0;
    height: auto;
    aspect-ratio: 16 / 9
}
#ff3 .modal__close {
    position: absolute;
    right: 0;
    top: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: calc(7.8*var(--rem));
    height: calc(7.8*var(--rem));
    cursor: pointer;
    transition: opacity .4s
}
#ff3 .modal__close:hover {
    opacity: .7
}
#ff3 .modal__close:before, #ff3 .modal__close:after {
    content: '';
    position: absolute;
    background: #fff;
    right: calc(50% - 5*var(--rem)/2);
    top: calc(50% - .1*var(--rem)/2);
    display: block;
    width: calc(5*var(--rem));
    height: calc(.1*var(--rem));
    transform: rotate(45deg)
}
#ff3 .modal__close:after {
    transform: rotate(-45deg)
}
#ff3 .modal-renewal {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    color: #525050;
    border-radius: calc(1*var(--rem));
    background: #fff;
    overflow: hidden
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal {
        -ms-flex-direction: column;
        flex-direction: column;
        width: calc(65*var(--rem));
        height: calc(100.3*var(--rem))
    }
}
#ff3 .modal-renewal--heat:after {
    width: calc(7.8*var(--rem));
    height: calc(8.3*var(--rem));
    position: absolute;
    right: calc(4.5*var(--rem));
    bottom: calc(2.5*var(--rem));
    content: '';
    display: block;
    background: url(../img/icn_heat.png) no-repeat center center/contain
}
#ff3 .modal-renewal__image {
    width: calc(60*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__image {
        width: 100%
    }
}
#ff3 .modal-renewal__body {
    width: calc(60*var(--rem));
    padding: calc(5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__body {
        width: 100%;
        padding: calc(4*var(--rem))
    }
}
#ff3 .modal-renewal__heading {
    font-weight: 700;
    font-size: calc(1.8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__heading {
        font-size: calc(3*var(--rem));
        line-height: 1.33333;
        letter-spacing: 0
    }
}
#ff3 .modal-renewal__text {
    margin-top: calc(3*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__text {
        font-size: calc(2.6*var(--rem));
        line-height: 1.53846;
        letter-spacing: 0
    }
}
#ff3 .modal-renewal__notes {
    padding-left: 1em;
    text-indent: -1em;
    margin-top: calc(3*var(--rem));
    font-size: calc(1.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__notes {
        font-size: calc(2.2*var(--rem));
        letter-spacing: 0
    }
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__notes--low {
        margin-top: calc(.4*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__notes--hight {
        margin-top: calc(6*var(--rem))
    }
}
#ff3 .modal-renewal__notes + .modal-renewal__notes {
    margin-top: calc(.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__notes + .modal-renewal__notes {
        margin-top: 0
    }
}
#ff3 .modal-renewal__close {
    position: absolute;
    top: calc(3*var(--rem));
    right: calc(3*var(--rem));
    width: calc(5*var(--rem));
    height: calc(5*var(--rem));
    border-radius: 100%;
    z-index: 999;
    border: 1px solid #525050;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__close {
        width: calc(13*var(--rem));
        height: calc(13*var(--rem));
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        top: 0;
        right: 0;
        border: none
    }
}
#ff3 .modal-renewal__close span {
    width: 100%;
    height: 100%;
    display: block
}
@media screen and (max-width:767px) {
    #ff3 .modal-renewal__close span {
        width: calc(5*var(--rem));
        height: calc(5*var(--rem));
        border-radius: 100%;
        background-color: #fff
    }
}
#ff3 .modal-renewal__close:before, #ff3 .modal-renewal__close:after {
    position: absolute;
    top: calc(50% - 1px);
    left: calc(50% - calc(1*var(--rem)));
    width: calc(2*var(--rem));
    height: 2px;
    content: '';
    display: block;
    border-radius: 1px;
    background: #525050
}
#ff3 .modal-renewal__close:before {
    rotate: 45deg
}
#ff3 .modal-renewal__close:after {
    rotate: -45deg
}
#ff3 .modal-jaccs {
    position: relative;
    width: calc(80*var(--rem));
    background: #fff;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs {
        width: calc(65*var(--rem))
    }
}
#ff3 .modal-jaccs__inner {
    max-height: calc(100vh - calc(10*var(--rem)));
    padding: calc(2*var(--rem)) calc(7 * var(--rem)) calc(4 * var(--rem));
    overflow-y: auto
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__inner {
        padding: calc(10*var(--rem)) calc(4 * var(--rem)) calc(6 * var(--rem))
    }
}
#ff3 .modal-jaccs__heading {
    font-size: calc(1.6*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__heading {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .modal-jaccs__sub-heading {
    margin-top: calc(2*var(--rem));
    padding-bottom: calc(.5*var(--rem));
    font-size: calc(2*var(--rem));
    font-weight: 700;
    border-bottom: 1px solid #ababab
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__sub-heading {
        margin-top: calc(3*var(--rem));
        padding-bottom: calc(1.5*var(--rem));
        font-size: calc(3.4*var(--rem))
    }
}
#ff3 .modal-jaccs__button {
    width: 100%;
    max-width: calc(47*var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(4*var(--rem));
    font-size: calc(1.8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__button {
        max-width: none;
        width: auto;
        margin-left: calc(-1*var(--rem));
        margin-right: calc(-1*var(--rem));
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .modal-jaccs__button a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(7*var(--rem));
    border: 1px solid #000;
    color: #231815;
    transition: opacity .4s
}
#ff3 .modal-jaccs__button a:hover {
    opacity: .5
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__button a {
        height: calc(12*var(--rem))
    }
}
#ff3 .modal-jaccs__button a:after {
    width: calc(.8*var(--rem));
    height: calc(1.4*var(--rem));
    position: absolute;
    top: calc(50% - calc(.7*var(--rem)));
    right: calc(2*var(--rem));
    content: '';
    display: block;
    background: url(../img/arw_btn.svg) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__button a:after {
        width: calc(1.2*var(--rem));
        height: calc(2*var(--rem));
        position: absolute;
        top: calc(50% - calc(1*var(--rem)));
        right: calc(2*var(--rem))
    }
}
#ff3 .modal-jaccs__button small {
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__button small {
        font-size: calc(2*var(--rem))
    }
}
#ff3 .modal-jaccs__faq {
    width: 100%;
    max-width: calc(27*var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(3*var(--rem));
    font-size: calc(1.4*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__faq {
        width: 100%;
        max-width: calc(51*var(--rem));
        margin-left: auto;
        margin-right: auto;
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .modal-jaccs__faq a {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(4*var(--rem));
    color: #231815;
    background: #dfdfdf;
    transition: opacity .4s
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__faq a {
        height: calc(6*var(--rem))
    }
}
#ff3 .modal-jaccs__faq a:hover {
    opacity: .7
}
#ff3 .modal-jaccs__faq a:after {
    width: calc(1.2*var(--rem));
    height: calc(1*var(--rem));
    position: absolute;
    top: calc(50% - calc(.5*var(--rem)));
    right: calc(1*var(--rem));
    content: '';
    display: block;
    background: url(../img/icn_blank.svg) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__faq a:after {
        width: calc(1.9*var(--rem));
        height: calc(1.6*var(--rem));
        position: absolute;
        top: calc(50% - calc(.8*var(--rem)));
        right: calc(2*var(--rem))
    }
}
#ff3 .modal-jaccs__faq small {
    font-size: calc(1.2*var(--rem))
}
#ff3 .modal-jaccs__close {
    position: absolute;
    top: calc(.5*var(--rem));
    right: calc(.5*var(--rem));
    width: calc(5*var(--rem));
    height: calc(5*var(--rem));
    cursor: pointer;
    transition: opacity .4s
}
#ff3 .modal-jaccs__close:hover {
    opacity: .7
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__close {
        position: absolute;
        top: calc(1.5*var(--rem));
        right: calc(1.5*var(--rem));
        border: none;
        background-color: #fff
    }
}
#ff3 .modal-jaccs__close:before, #ff3 .modal-jaccs__close:after {
    position: absolute;
    top: calc(50% - 1px);
    left: calc(50% - calc(1*var(--rem)));
    width: calc(2*var(--rem));
    height: 2px;
    content: '';
    display: block;
    border-radius: 1px;
    background: #525050
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs__close:before, #ff3 .modal-jaccs__close:after {
        position: absolute;
        top: calc(50% - 1px);
        left: calc(50% - calc(2*var(--rem)));
        width: calc(4*var(--rem));
        height: 2px
    }
}
#ff3 .modal-jaccs__close:before {
    rotate: 45deg
}
#ff3 .modal-jaccs__close:after {
    rotate: -45deg
}
#ff3 .modal-jaccs-step__item {
    position: relative;
    margin-top: calc(2.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs-step__item {
        margin-top: calc(3.5*var(--rem))
    }
}
#ff3 .modal-jaccs-step__item:nth-of-type(n+2) {
    margin-top: calc(7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs-step__item:nth-of-type(n+2) {
        margin-top: calc(10*var(--rem))
    }
}
#ff3 .modal-jaccs-step__item:nth-of-type(n+2):before {
    width: calc(3*var(--rem));
    height: calc(1.6*var(--rem));
    position: absolute;
    top: calc(-5*var(--rem));
    left: calc(50% - calc(1.5*var(--rem)));
    content: '';
    display: block;
    background: url(../img/arw_step.svg) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs-step__item:nth-of-type(n+2):before {
        width: calc(6*var(--rem));
        height: calc(3.2*var(--rem));
        position: absolute;
        top: calc(-7*var(--rem));
        left: calc(50% - calc(3*var(--rem)))
    }
}
#ff3 .modal-jaccs-step__heading {
    font-size: calc(1.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs-step__heading {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .modal-jaccs-step__image {
    margin-top: calc(1.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal-jaccs-step__image {
        margin-top: calc(3*var(--rem));
        margin-left: calc(-2.5*var(--rem));
        margin-right: calc(-2.5*var(--rem))
    }
}
#ff3 .hover-opacity, #ff3 .js-toggle-accordion {
    cursor: pointer;
    transition: opacity .4s
}
#ff3 .hover-opacity:hover, #ff3 .js-toggle-accordion:hover {
    opacity: .6
}
#ff3 .fade-in {
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px);
    transition: opacity .6s cubic-bezier(.39, .575, .565, 1), visibility .6s cubic-bezier(.39, .575, .565, 1), transform .4s cubic-bezier(.39, .575, .565, 1)
}
@media screen and (max-width:767px) {
    #ff3 .fade-in {
        transform: translateY(calc(3*var(--rem)))
    }
}
#ff3 .fade-in--1 {
    transition-delay: .1s
}
@media screen and (max-width:767px) {
    #ff3 .fade-in--1 {
        transition-delay: 0s
    }
}
@media screen and (max-width:767px) {
    #ff3 .fade-in--sp1 {
        transition-delay: .1s
    }
}
#ff3 .fade-in--2 {
    transition-delay: .2s
}
@media screen and (max-width:767px) {
    #ff3 .fade-in--2 {
        transition-delay: 0s
    }
}
#ff3 .fade-in--3 {
    transition-delay: .3s
}
@media screen and (max-width:767px) {
    #ff3 .fade-in--3 {
        transition-delay: 0s
    }
}
#ff3 .fade-in.is-inview {
    opacity: 1;
    visibility: visible;
    transform: translateY(0)
}
#ff3 .hero {
    position: relative;
    opacity: 0;
    height: calc(var(--vw, 1vw)*100*(774/1600));
}
@media screen and (min-width:1601px) {
    #ff3 .hero {
        height: calc(var(--vw, 1vw)*100*(774/1600))
    }
}
@media screen and (max-width:767px) {
    #ff3 .hero {
        height: calc(77*var(--rem))
    }
}
#ff3 .hero.slick-initialized {
    opacity: 1
}
#ff3 .hero .slick-slide {
    width: calc(var(--vw, 1vw)*100)
}
@media screen and (max-width:767px) {
    #ff3 .hero .slick-slide {
        width: calc(75*var(--rem))
    }
}

@keyframes slide {
    0% {
        width: 0
    }
    100% {
        width: 100%
    }
}
#ff3 .hero__item {
    vertical-align: top
}
#ff3 .hero__item img {
    max-width: unset;
    width: 100%
}
#ff3 .hero-wrapper {
    position: relative;
    height: calc(var(--vw, 1vw)*100*(774/1600))
}
@media screen and (min-width:1601px) {
    #ff3 .hero-wrapper {
        height: calc(var(--vw, 1vw)*100*(774/1600))
    }
}
@media screen and (max-width:767px) {
    #ff3 .hero-wrapper {
        height: calc(77*var(--rem));
    }
}
#ff3 .scroll {
    position: absolute;
    bottom: calc(0*var(--rem));
    left: 50%;
    width: calc(.2*var(--rem));
    height: calc(6.4*var(--rem));
    z-index: 99;
    background-color: #c5c5c5
}
@media screen and (max-width:767px) {
    #ff3 .scroll {
        height: calc(4.4*var(--rem))
    }
}
#ff3 .scroll:after {
    position: absolute;
    top: 0;
    left: calc(50% - calc(.3*var(--rem)));
    width: calc(.6*var(--rem));
    height: calc(.6*var(--rem));
    border-radius: 100%;
    display: block;
    background-color: #ff7403;
    content: '';
    animation: scroll-down 2s cubic-bezier(.77, 0, .175, 1) infinite
}
@media screen and (max-width:767px) {
    #ff3 .scroll:after {
        animation: scroll-down-sp 2s cubic-bezier(.77, 0, .175, 1) infinite
    }
}
@keyframes scroll-down {
    0% {
        transform: translateY(0);
        opacity: 0
    }
    30%, 70% {
        opacity: 1
    }
    100% {
        transform: translateY(calc(calc(6.4*var(--rem)) - calc(.6 * var(--rem)) / 2));
        opacity: 0
    }
}
@keyframes scroll-down-sp {
    0% {
        transform: translateY(0);
        opacity: 0
    }
    30%, 70% {
        opacity: 1
    }
    100% {
        transform: translateY(calc(calc(4.4*var(--rem)) - calc(.6 * var(--rem)) / 2));
        opacity: 0
    }
}
#ff3 .campaign {
    width: 100%;
    max-width: calc(100*var(--rem));
    margin-left: auto;
    margin-right: auto;
    padding-top: calc(9.2*var(--rem))
}
#ff3 .campaign__box {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    padding: calc(3.2*var(--rem)) calc(3.2 * var(--rem)) calc(3.2 * var(--rem)) calc(3.5 * var(--rem));
    border: calc(.2*var(--rem)) solid #f29c97;
    border-radius: calc(2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__box {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(3*var(--rem));
        width: calc(64.8*var(--rem));
        margin: 0 auto;
        padding: calc(3.2*var(--rem)) calc(2.8 * var(--rem)) calc(2.8 * var(--rem))
    }
}
#ff3 .campaign__head {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(2.2*var(--rem));
    position: relative
}
@media screen and (max-width:767px) {
    #ff3 .campaign__head {
        gap: calc(1.2*var(--rem))
    }
}
#ff3 .campaign__head-copy {
    font-weight: 700;
    font-size: calc(2*var(--rem));
    line-height: calc(28/20);
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .campaign__head-copy {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .campaign__head-heading {
    font-weight: 700;
    font-size: calc(4.1*var(--rem));
    line-height: calc(36/41)
}
@media screen and (max-width:767px) {
    #ff3 .campaign__head-heading {
        font-size: calc(4.8*var(--rem))
    }
}
#ff3 .campaign__head-date {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: calc(8*var(--rem));
    height: calc(8*var(--rem));
    border-radius: 100%;
    position: absolute;
    top: calc(-2*var(--rem));
    right: calc(-4*var(--rem));
    background-color: #f29c97
}
@media screen and (max-width:767px) {
    #ff3 .campaign__head-date {
        width: calc(10*var(--rem));
        height: calc(10*var(--rem));
        right: calc(-7*var(--rem))
    }
}
#ff3 .campaign__head-date img {
    width: calc(5.7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__head-date img {
        width: calc(7*var(--rem))
    }
}
#ff3 .campaign__body {
    display: -ms-flexbox;
    display: flex;
    gap: calc(1.6*var(--rem))
}
#ff3 .campaign__body-content {
    position: relative
}
#ff3 .campaign__body-target {
    height: calc(3.4*var(--rem));
    padding: calc(.5*var(--rem)) calc(1.2 * var(--rem));
    background-color: #f29c97
}
@media screen and (max-width:767px) {
    #ff3 .campaign__body-target {
        height: calc(4*var(--rem));
        padding: calc(.6*var(--rem)) calc(1.6 * var(--rem)) calc(.8 * var(--rem))
    }
}
#ff3 .campaign__body-target img {
    width: calc(22.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__body-target img {
        width: calc(26.8*var(--rem))
    }
}
#ff3 .campaign__body-subheading {
    width: calc(16.4*var(--rem));
    margin-top: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__body-subheading {
        width: calc(19.4*var(--rem));
        margin-top: calc(2*var(--rem))
    }
}
#ff3 .campaign__body-text {
    width: calc(22.2*var(--rem));
    margin-top: calc(1.3*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__body-text {
        width: calc(26.4*var(--rem));
        height: calc(3*var(--rem))
    }
}
#ff3 .campaign__body-ticket {
    position: absolute;
    top: calc(5.2*var(--rem));
    right: 0;
    width: calc(8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__body-ticket {
        top: calc(6*var(--rem));
        width: calc(9.5*var(--rem))
    }
}
#ff3 .campaign__body-image {
    width: calc(21.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__body-image {
        -ms-flex-order: -1;
        order: -1;
        width: calc(26.4*var(--rem))
    }
}
#ff3 .campaign__talk {
    margin-top: calc(5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .campaign__talk {
        width: 100%;
        max-width: calc(58.8*var(--rem));
        margin-left: auto;
        margin-right: auto
    }
}
#ff3 .campaign__talk-heading {
    font-weight: 700;
    font-size: calc(2.4*var(--rem));
    line-height: calc(38/24);
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .campaign__talk-heading {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .campaign .list-campaign {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(2*var(--rem));
    margin-top: calc(3*var(--rem))
}
#ff3 .campaign .list-campaign__item {
    display: -ms-flexbox;
    display: flex;
    gap: calc(1*var(--rem));
    width: fit-content
}
#ff3 .campaign .list-campaign__item--right {
    margin-left: auto
}
#ff3 .campaign .list-campaign__item--right:after {
    width: calc(9.6*var(--rem));
    height: calc(9.6*var(--rem));
    border-radius: 100%;
    background: no-repeat center center / contain;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .campaign .list-campaign__item--right:after {
        width: calc(12*var(--rem));
        height: calc(12*var(--rem))
    }
}
#ff3 .campaign .list-campaign__item--right:nth-of-type(1):after {
    background-image: url(../img/img_talk01.jpg)
}
#ff3 .campaign .list-campaign__item--right:nth-of-type(2):after {
    background-image: url(../img/img_talk02.jpg)
}
#ff3 .campaign .list-campaign__item--left:before {
    width: calc(9.6*var(--rem));
    height: calc(9.6*var(--rem));
    border-radius: 100%;
    background: url(../img/img_talk03.jpg) no-repeat center center/contain;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .campaign .list-campaign__item--left:before {
        width: calc(12*var(--rem));
        height: calc(12*var(--rem))
    }
}
@media screen and (min-width:751px) {
    #ff3 .campaign .list-campaign__item--left .list-campaign__text:after {
        right: calc(23*var(--rem))
    }
}
#ff3 .campaign .list-campaign__text {
    display: inline;
    position: relative;
    padding: calc(2.2*var(--rem)) calc(4.5 * var(--rem));
    border-radius: calc(2*var(--rem));
    background-color: #ffe9e7;
    font-size: calc(1.8*var(--rem));
    line-height: calc(30/18);
    font-style: italic
}
@media screen and (max-width:767px) {
    #ff3 .campaign .list-campaign__text {
        padding: calc(2*var(--rem)) calc(3.2 * var(--rem));
        font-size: calc(2.2*var(--rem));
        line-height: calc(34/22);
        letter-spacing: 0
    }
}
#ff3 .campaign .list-campaign__text:before, #ff3 .campaign .list-campaign__text:after {
    width: calc(1.6*var(--rem));
    height: calc(1.1*var(--rem));
    background: url(../img/txt_talk.svg) no-repeat center center/contain;
    content: ''
}
#ff3 .campaign .list-campaign__text:before {
    position: absolute;
    top: calc(1.6*var(--rem));
    left: calc(2*var(--rem))
}
#ff3 .campaign .list-campaign__text:after {
    position: absolute;
    right: calc(2*var(--rem));
    bottom: calc(1.6*var(--rem));
    rotate: 180deg
}

#ff3 .section.achieve {
    padding: calc(14 * var(--rem)) 0 0;
}
@media screen and (min-width:768px) {
    #ff3 .easy .easy__columns {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        padding: 0 calc(2*var(--rem));
    }
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy__columns {
        text-align: center;
    }
}
@media screen and (min-width:768px) {
    #ff3 .easy .easy__columns .easy__columns__column:nth-child(1) {
        order: 2;
    }
    #ff3 .easy .easy__columns .easy__columns__column:nth-child(2) {
        order: 1;
    }
}
#ff3 .easy__columns__column__img {
    margin-top: calc(2 * var(--rem));
    width: calc(58*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .easy__columns__column__img {
        margin-top: calc(6 * var(--rem));
        margin-left: auto;
        margin-right: auto;
        width: calc(58*var(--rem));
    }
}
#ff3 .easy__columns__column__heading {
    text-align: center;
    padding-bottom: calc(.8*var(--rem));
    border-bottom: 3px solid #ed6c00;
    font-size: calc(3.6*var(--rem));
    font-weight: bold;
    line-height: 1;
    background: linear-gradient(0deg, rgb(246, 114, 5) 0%, rgb(248, 167, 49) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
@media screen and (max-width:767px) {
    #ff3 .easy__columns__column__heading {
        display: inline-block;
        padding-bottom: calc(.8*var(--rem));
        font-size: calc(4.6*var(--rem));
    }
}
#ff3 .easy__columns__column__lead {
    margin-top: calc(3*var(--rem));
    text-align: center;
    font-size: calc(3.8*var(--rem));
    line-height: 1.6;
    font-weight: bold;
}
@media screen and (max-width:767px) {
    #ff3 .easy__columns__column__lead {
        margin-top: calc(3*var(--rem));
        font-size: calc(4.4*var(--rem));
    }
}
#ff3 .achieve-columns {
    margin-top: calc(3 * var(--rem));
    background-color: #efefef;
    padding: calc(7*var(--rem));
}
@media screen and (min-width:768px) {
    #ff3 .achieve-columns {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }
}
@media screen and (max-width:767px) {
    #ff3 .achieve-columns {
        margin-top: calc(4 * var(--rem));
        margin-left: calc(-5 * var(--rem));
        margin-right: calc(-5 * var(--rem));
        padding: calc(8*var(--rem)) calc(5*var(--rem));
    }
}
@media screen and (min-width:768px) {
    #ff3 .achieve-columns__column:nth-child(1) {
        width: calc(50*var(--rem));
    }
    #ff3 .achieve-columns__column:nth-child(2) {
        margin-left: calc(4 * var(--rem));
        width: calc(44*var(--rem));
    }
}
@media screen and (max-width:767px) {
    #ff3 .achieve__bnr {
        margin-top: calc(3*var(--rem));
    }
}
#ff3 .achieve__bnr picture {
    text-align: center;
}
#ff3 .achieve__bnr picture img {
    width: calc(70*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .achieve__bnr picture img {
        width: calc(65*var(--rem));
    }
}
#ff3 .achieve__heading {
    margin-top: calc(5*var(--rem));
    font-weight: 700;
    font-size: calc(3.2*var(--rem));
    line-height: calc(58/46);
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .achieve__heading {
        font-size: calc(4.2*var(--rem));
        line-height: calc(60/50)
    }
}
#ff3 .achieve__heading strong {
    display: inline-block;
    margin-top: calc(.8*var(--rem));
    font-size: calc(5.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .achieve__heading strong {
        font-size: calc(6*var(--rem))
    }
}
#ff3 .achieve .list-achieve {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    gap: calc(3*var(--rem));
	align-items: center;
}
#ff3 .achieve .list-achieve__item {
	width: calc(21*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .achieve .list-achieve__item {
        width: calc(26.8*var(--rem));
    }
}
#ff3 .achieve__note {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(2*var(--rem));
    counter-reset: note 0
}
@media screen and (max-width:767px) {
    #ff3 .achieve__note {
        margin-top: calc(2.5*var(--rem))
    }
}
	
	
#ff3 .achieve__note-text {
    display: -ms-flexbox;
    display: flex;
    gap: 1em;
    font-size: calc(1.4*var(--rem));
    line-height: calc(20/14);
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .achieve__note-text {
        font-size: calc(2*var(--rem))
    }
}
#ff3 .achieve__note-text:before {
    counter-increment: note;
    content: "※"counter(note)
}
@media screen and (max-width:767px) {
    #ff3 .message {
        padding: calc(15*var(--rem)) calc(5 * var(--rem)) 0
    }
}
#ff3 .message__content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-align: center;
    align-items: center
}
@media screen and (max-width:767px) {
    #ff3 .message__content {
        -ms-flex-direction: column;
        flex-direction: column
    }
}
#ff3 .message__image {
    width: calc(734/1600*100%)
}
@media screen and (max-width:767px) {
    #ff3 .message__image {
        width: 100%
    }
}
#ff3 .message__body {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end
}
#ff3 .message__body-inner {
    width: calc(65*var(--rem));
    padding-right: calc(6.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .message__body-inner {
        position: relative;
        overflow: hidden;
        width: auto;
        height: calc(22*var(--rem));
        padding-right: 0;
        margin-top: calc(4*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .message__body-inner:after {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        display: block;
        background: white;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, white 100%);
        content: ''
    }
}
#ff3 .message__body-inner > :first-child {
    margin-top: 0
}
@media screen and (max-width:767px) {
    #ff3 .message__body-inner.is-show {
        overflow: auto;
        height: auto
    }
}
@media screen and (max-width:767px) {
    #ff3 .message__body-inner.is-show:after {
        display: none
    }
}
#ff3 .message__heading {
    font-size: calc(2.8*var(--rem));
    font-weight: 700
}
#ff3 .message__text {
    margin-top: calc(2*var(--rem));
    line-height: 2;
    letter-spacing: .08em
}
#ff3 .message__name {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    margin-top: calc(3*var(--rem));
    padding-right: calc(2.5*var(--rem));
    font-size: calc(2.8*var(--rem));
    line-height: 1;
    text-align: right
}
#ff3 .message__name small {
    margin-right: calc(1.6*var(--rem));
    font-size: calc(1.6*var(--rem));
    font-weight: 700;
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .message__name small {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .message__name img {
    width: calc(16.8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .message__name img {
        width: calc(25.6*var(--rem))
    }
}
#ff3 .message__button {
    display: none
}
@media screen and (max-width:767px) {
    #ff3 .message__button {
        display: block;
        margin-top: calc(10*var(--rem)) !important;
        font-size: calc(3*var(--rem)) !important
    }
}
#ff3 .favorite {
    padding: calc(10*var(--rem)) 0;
}
#ff3 .favorite__heading {
    font-weight: 700;
    font-size: calc(3.6*var(--rem));
    line-height: calc(70/36);
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .favorite__heading {
        font-size: calc(4.6*var(--rem));
        line-height: calc(70/46)
    }
}
#ff3 .favorite .list-favorite {
}
#ff3 .favorite .list-favorite__item {
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__item {
        -ms-flex-direction: column;
        flex-direction: column
    }
}
@media screen and (min-width:751px) {
    #ff3 .favorite .list-favorite__item:nth-of-type(2n+1) .list-favorite__image {
        -ms-flex-order: 1;
        order: 1
    }
}
#ff3 .favorite .list-favorite__image {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: calc(55*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__image {
        width: 100%
    }
}
#ff3 .favorite .list-favorite__content {
    width: calc(48.1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__content {
        position: relative;
        overflow: hidden;
        width: auto;
        height: calc(22*var(--rem));
        padding: 0;
        margin-top: calc(4*var(--rem));
        padding-bottom: 0;
        transition: opacity .6s cubic-bezier(.39, .575, .565, 1), visibility .6s cubic-bezier(.39, .575, .565, 1), transform .4s cubic-bezier(.39, .575, .565, 1), padding cubic-bezier(.39, .575, .565, 1) .4s
    }
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__content:after {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        display: block;
        background: white;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, white 100%);
        content: ''
    }
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__content.is-show {
        overflow: auto;
        height: auto;
        padding-bottom: calc(6*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__content.is-show:after {
        display: none
    }
}
#ff3 .favorite .list-favorite__heading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 700;
    font-size: calc(2.6*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__heading {
        -ms-flex-pack: center;
        justify-content: center;
        font-size: calc(3.6*var(--rem))
    }
}
#ff3 .favorite .list-favorite__heading small, #ff3 .favorite .list-favorite__heading span {
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__heading small, #ff3 .favorite .list-favorite__heading span {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .favorite .list-favorite__heading span {
    display: block;
    margin-top: auto;
    line-height: 1.1
}
#ff3 .favorite .list-favorite__text {
    font-size: calc(1.8*var(--rem));
    line-height: calc(36/18);
    letter-spacing: .08em
}

@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__text {
        font-size: calc(3*var(--rem));
        text-align: center;

    }
}
#ff3 .favorite .list-favorite__text:not(:first-child) {
    margin-top: calc(4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__text:not(:first-child) {
        margin-top: calc(2*var(--rem));
    }
}
#ff3 .favorite .list-favorite__text:has(sup) {
    margin-top: calc(4*var(--rem));
    padding-left: 1em;
    text-indent: -1em;
    font-size: calc(1.4*var(--rem));
    line-height: calc(20/14)
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__text:has(sup) {
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .favorite .list-favorite__text:has(sup):nth-of-type(n+3) {
    margin-top: calc(0*var(--rem))
}
#ff3 .favorite .list-favorite__text:has(sup) sup {
    font-size: calc(1.4*var(--rem));
    line-height: calc(20/14)
}
@media screen and (max-width:767px) {
    #ff3 .favorite .list-favorite__text:has(sup) sup {
        font-size: calc(2.2*var(--rem)) !important
    }
}
@media screen and (max-width:767px) {
    #ff3 .favorite__button {
        margin-top: calc(4*var(--rem)) !important;
        font-size: calc(3*var(--rem)) !important
    }
}
#ff3 .products {
    padding: calc(10*var(--rem)) 0 calc(12 * var(--rem))
}
#ff3 .products__heading {
    font-size: calc(3.6*var(--rem));
    font-weight: 700;
    line-height: 1.94444;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .products__heading {
        font-size: calc(4.6*var(--rem));
        line-height: 1.52174
    }
}
#ff3 .products__list {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .products__list {
        padding: 0 calc(5*var(--rem))
    }
}
#ff3 .products__item {
    margin-top: calc(6*var(--rem))
}
#ff3 .products__item:nth-of-type(n+2) {
    padding-top: calc(8*var(--rem));
    border-top: 1px solid #c7c7c7
}
@media screen and (max-width:767px) {
    #ff3 .products__item:nth-of-type(n+2) {
        margin-top: calc(8*var(--rem));
        padding-top: calc(6*var(--rem))
    }
}
#ff3 .products__button {
    margin-top: calc(9.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .products__button {
        margin-top: calc(4*var(--rem))
    }
}
#ff3 .products-detail {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}
@media screen and (max-width:767px) {
    #ff3 .products-detail {
        position: relative;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-direction: column;
        flex-direction: column
    }
}
#ff3 .products-detail__image {
    width: 50%;
    padding-left: calc(3.8*var(--rem));
    padding-right: calc(5.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .products-detail__image {
        width: 100%;
        max-width: calc(58.8*var(--rem));
        margin-left: auto;
        margin-right: auto;
        margin-top: calc(22*var(--rem));
        padding-right: 0
    }
}
#ff3 .products-detail__figure {
    width: calc(51.6*var(--rem));
    margin-left: auto
}
@media screen and (max-width:767px) {
    #ff3 .products-detail__figure {
        width: calc(58.2*var(--rem))
    }
}
#ff3 .products-detail__body {
    width: 50%;
    padding-left: calc(2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .products-detail__body {
        width: 100%;
        padding: 0 calc(2*var(--rem))
    }
}
#ff3 .products-detail__heading {
    font-size: calc(2.4*var(--rem));
    line-height: 2;
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .products-detail__heading {
        position: absolute;
        top: 0;
        left: 0;
        padding: 0 calc(3*var(--rem));
        font-size: calc(3.6*var(--rem));
        line-height: 1.55556
    }
}
@media screen and (max-width:767px) {
    #ff3 .products-detail__heading--01 {
        padding: 0 calc(7*var(--rem))
    }
}
#ff3 .products-detail__notes {
    margin-top: calc(1.5*var(--rem));
    padding-left: 1.3em;
    text-indent: -1.3em;
    font-size: calc(1.4*var(--rem));
    line-height: 1.42857
}
@media screen and (max-width:767px) {
    #ff3 .products-detail__notes {
        margin-top: calc(2.5*var(--rem));
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .products-price {
    display: -ms-flexbox;
    display: flex;
    margin-top: calc(3*var(--rem));
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .products-price {
        margin-top: calc(5*var(--rem));
        font-size: calc(4*var(--rem))
    }
}
#ff3 .products-price small {
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .products-price small {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .products-price__item {
    padding: calc(.3*var(--rem)) 0
}
#ff3 .products-price__item:nth-of-type(n+2) {
    margin-left: calc(2*var(--rem));
    padding-left: calc(2*var(--rem));
    border-left: 1px solid #525050
}
@media screen and (max-width:767px) {
    #ff3 .products-price__item:nth-of-type(n+2) {
        margin-left: calc(1.5*var(--rem));
        padding-left: calc(1.5*var(--rem))
    }
}
#ff3 .products-check {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: calc(2.5*var(--rem)) calc(3 * var(--rem));
    width: calc(45*var(--rem));
    margin-top: calc(2.5*var(--rem));
    padding: calc(2.5*var(--rem)) 0 calc(2.2 * var(--rem)) calc(4.5 * var(--rem));
    background: #efefef;
    font-size: calc(1.6*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .products-check {
        width: 100%;
        -ms-flex-direction: column;
        flex-direction: column;
        font-size: calc(2.6*var(--rem));
        padding: calc(2.5*var(--rem)) 0 calc(2.2 * var(--rem)) calc(7 * var(--rem))
    }
}
#ff3 .products-check__item {
    position: relative;
    padding-left: calc(2.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .products-check__item {
        padding-left: calc(3.5*var(--rem))
    }
}
#ff3 .products-check__item:before {
    width: calc(1.6*var(--rem));
    height: calc(1.6*var(--rem));
    position: absolute;
    top: calc(50% - calc(.9*var(--rem)));
    left: 0;
    content: '';
    display: block;
    background: url(../img/icn_check.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .products-check__item:before {
        width: calc(2*var(--rem));
        height: calc(2*var(--rem));
        top: calc(50% - calc(1.1*var(--rem)))
    }
}
#ff3 .cm {
    padding: calc(8*var(--rem)) 0;
}
@media screen and (max-width:767px) {
    #ff3 .cm {
        padding: calc(5*var(--rem)) calc(5 * var(--rem)) calc(8 * var(--rem))
    }
}
#ff3 .cm__heading {
    font-family: futura-pt, sans-serif;
    font-size: calc(5*var(--rem));
    line-height: 1;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .cm__heading {
        font-size: calc(8*var(--rem))
    }
}
#ff3 .cm__movie {
    margin-top: calc(6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .cm__movie {
        margin-top: calc(2.5*var(--rem))
    }
}
#ff3 .cm__text {
    margin-top: calc(3*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .cm__text {
        margin-top: calc(4*var(--rem));
        line-height: 1.93333
    }
}
#ff3 .cm__button ,
#ff3 .link__button {
    width: 100%;
    max-width: calc(70*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(8*var(--rem));
    margin-top: calc(3.5*var(--rem));
    border: 1px solid #ff7403;
    border-radius: calc(4*var(--rem));
    background: #fff;
    font-weight: 700;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .cm__button ,
    #ff3 .link__button {
        height: calc(10*var(--rem));
        border-radius: calc(5*var(--rem))
    }
}
#ff3 .cm__button span ,
#ff3 .link__button span {
    position: relative;
    display: block;
    padding: 0 calc(5.3*var(--rem))
}
#ff3 .cm__button span:before, #ff3 .cm__button span:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403
}
#ff3 .cm__button span:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .cm__button.is-show span:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .cm-interview {
    width: 100%;
    display: none
}
#ff3 .cm-interview__inner {
    padding-top: calc(4*var(--rem))
}
#ff3 .cm-interview__inner > * {
    margin-top: 0
}
#ff3 .cm-interview__item {
    display: -ms-flexbox;
    display: flex;
    margin-top: calc(8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__item {
        -ms-flex-direction: column;
        flex-direction: column
    }
}
#ff3 .cm-interview__body {
    -ms-flex: 1;
    flex: 1
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__body {
        margin-left: calc(-.8*var(--rem))
    }
}
#ff3 .cm-interview__heading {
    position: relative;
    padding-left: calc(6.5*var(--rem));
    font-size: calc(2.4*var(--rem));
    font-weight: 700;
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__heading {
        padding-left: calc(9*var(--rem));
        font-size: calc(3.6*var(--rem))
    }
}
#ff3 .cm-interview__heading span {
    position: absolute;
    top: calc(-.1*var(--rem));
    left: 0;
    display: block;
    width: calc(5*var(--rem));
    color: #ff7403;
    font-family: futura-pt, sans-serif;
    font-size: calc(3.2*var(--rem));
    font-weight: 400;
    text-align: right
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__heading span {
        width: calc(7*var(--rem));
        font-weight: 700;
        font-size: calc(4.6*var(--rem))
    }
}
#ff3 .cm-interview__text {
    position: relative;
    margin-top: calc(2*var(--rem));
    padding-left: calc(6.5*var(--rem));
    letter-spacing: .06em;
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__text {
        padding-left: calc(9*var(--rem));
        font-size: calc(3*var(--rem));
        line-height: 1.93333
    }
}
#ff3 .cm-interview__text span {
    position: absolute;
    top: calc(-1.3*var(--rem));
    left: 0;
    display: inline-block;
    width: calc(5*var(--rem));
    color: #ff7403;
    font-family: futura-pt, sans-serif;
    font-size: calc(3.2*var(--rem));
    font-weight: 400;
    text-align: right
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__text span {
        font-weight: 700;
        font-size: calc(4.6*var(--rem))
    }
}
#ff3 .cm-interview__note {
    margin-top: calc(2*var(--rem));
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__note {
        margin-top: calc(1*var(--rem));
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .cm-interview-image {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(2.5*var(--rem)) 0;
    width: calc(44*var(--rem));
    margin-left: calc(7.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview-image {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(2*var(--rem));
        width: 100%;
        margin: calc(3.8*var(--rem)) 0 0
    }
}
#ff3 .cm-interview-image--center {
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 calc(2*var(--rem));
    width: auto;
    margin: calc(5*var(--rem)) 0 0
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview-image--center {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(2*var(--rem));
        margin-top: calc(2*var(--rem))
    }
}
#ff3 .cm-interview-image--center .cm-interview-image__item {
    width: calc(44*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview-image--center .cm-interview-image__item {
        width: 100%
    }
}
#ff3 .cm-interview__lead {
    margin-top: calc(8*var(--rem));
    font-size: calc(2.4*var(--rem));
    font-weight: 700;
    line-height: 1.75;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .cm-interview__lead {
        font-size: calc(3.6*var(--rem));
        line-height: 1.66667;
        text-align: left;
        letter-spacing: 0
    }
}
#ff3 .summary {
    padding: 0 0 calc(10 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .summary {
        padding: calc(14*var(--rem)) 0 calc(8 * var(--rem))
    }
}
#ff3 .summary__heading {
    margin-top: calc(2* var(--rem));
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1.94444;
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .summary__heading {
        margin-top: calc(3* var(--rem));
        font-size: calc(5*var(--rem));
        line-height: 1.65217;
    }
}
#ff3 .summary__sub-heading {
    text-align: center;
    margin-top: calc(5* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .summary__sub-heading {
        text-align: center;
        margin-top: calc(6* var(--rem));
    }
}
#ff3 .summary__sub-heading__text {
    text-align: center;
    padding-bottom: calc(.8*var(--rem));
    border-bottom: 3px solid #ed6c00;
    font-size: calc(2.6*var(--rem));
    line-height: 1;
}
@media screen and (max-width:767px) {
    #ff3 .summary__sub-heading__text {
        display: inline-block;
        padding-bottom: calc(.8*var(--rem));
        font-size: calc(3.8*var(--rem));
    }
}
audio, canvas, progress, video{
	width:100%;
}
#ff3 .summary__content {
    margin-top: calc(4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .summary__content {
        margin-top: calc(1.6*var(--rem))
    }
}

#ff3 .summary__content__h3 {
    margin-top: calc(8.5*var(--rem));
    font-size: calc(2.6*var(--rem));
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .summary__content__h3 {
        margin-top: calc(4.5*var(--rem));
        font-size: calc(3.5*var(--rem));
    }
}
#ff3 .summary__content__img {
    margin-top: calc(3*var(--rem));
    width: calc(52*var(--rem));
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width:767px) {
}
#ff3 .summary__content__txt {
    margin-top: calc(1.5*var(--rem));
    font-size: calc(2*var(--rem));
    line-height: 1.94444;
    text-align: center;
    letter-spacing: 0;
}
@media screen and (max-width:767px) {
    #ff3 .summary__content__txt {
        text-align: left;
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .summary__content__note {
    margin-top: calc(1*var(--rem));
    font-size: calc(1.4*var(--rem));
    text-align: center;
    letter-spacing: 0;
}
@media screen and (max-width:767px) {
    #ff3 .summary__content__note {
        text-align: left;
        font-size: calc(2.2*var(--rem));
    }
}
#ff3 .summary__columns {
    margin-top: calc(5*var(--rem));
    display: flex;
    flex-wrap: nowrap;
    align-items: end;
}
@media screen and (max-width:767px) {
    #ff3 .summary__columns {
        display: block;
    }
}
#ff3 .summary__columns__column:nth-child(1) {
    width: calc(61*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .summary__columns__column:nth-child(1) {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}
#ff3 .summary__columns__column:nth-child(2) {
    margin-left: calc(3*var(--rem));
    width: calc(57*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .summary__columns__column:nth-child(2) {
        margin-left: 0;
        width: 100%;
    }
}
#ff3 .summary__columns__column__dl {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: flex-start;
}
#ff3 .summary__columns__column__dl:not(:first-of-type) {
    margin-top: calc(2*var(--rem));
}
#ff3 .summary__columns__column__dl__dt {
    width: calc(14* var(--rem));
    text-align: center;
    padding: calc(0.5* var(--rem)) 0;
    border-radius: 50px;
    font-size: calc(1.8* var(--rem));
    letter-spacing: 0;
    color: #ed6c00;
    border: 1px solid #ed6c00;
}
@media screen and (max-width:767px) {
    #ff3 .summary__columns__column__dl__dt {
        width: calc(18* var(--rem));
        font-size: calc(2.8* var(--rem));
    }
}
#ff3 .summary__columns__column__dl__dd {
    width: calc(36*var(--rem));
    padding-top: calc(0.7* var(--rem));
    font-size: calc(1.8* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .summary__columns__column__dl__dd {
        width: calc(38*var(--rem));
        padding-top: 0;
        font-size: calc(2.8* var(--rem));
    }
}
#ff3 .summary__columns__column__dl__dd__small {
    display: inline-block;
    margin-top: calc(1* var(--rem));
    font-size: calc(1.4* var(--rem));
    line-height: 1.5;
}
@media screen and (max-width:767px) {
    #ff3 .summary__columns__column__dl__dd__small {
        font-size: calc(2* var(--rem));
    }
}


#ff3 .authority {
    padding: calc(10*var(--rem)) 0;
    background: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .authority {
        padding: calc(9*var(--rem)) 0;
    }
}
#ff3 .authority__columns {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
@media screen and (max-width:767px) {
    #ff3 .authority__columns {
        display: block;
    }
}
#ff3 .authority__body {
    width: calc(48*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__body {
        width: 100%
    }
}
#ff3 .authority__body__heading {
    font-size: calc(2.7*var(--rem));
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: calc(4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__body__heading {
        text-align: center;
        font-size: calc(3.8*var(--rem));
        letter-spacing: -.05em
    }
}
#ff3 .authority__body__txt {
    font-size: calc(2*var(--rem));
    margin-bottom: calc(1*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__body__txt {
        font-size: calc(2.8*var(--rem));
    }
}

.authority-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: calc(6*var(--rem));
}
@media screen and (max-width:767px) {
    .authority-profile__inner {
        text-align: left;
    }
}


@media screen and (max-width:767px) {
    .authority-list {
        flex-direction: column;
    }
}
.authority-list__item {
    flex: 1 1 30%;
    border-right: 1px solid #525050;
    text-align: center;
}

.authority-list__item:first-child {
 border-left: 1px solid #525050;
}
@media screen and (max-width:767px) {
    .authority-list__item {
        border: none ;
        margin-bottom: calc(6*var(--rem));
    }
    .authority-list__item:first-child { border: none ;}
}
@media screen and (max-width:767px) {
.authority-list__figure {
    width: 80%;
    margin: 0 auto;
    text-align: center;
}
}
.authority-list__heading {
    font-size: calc(1.9*var(--rem));
    color: #ed6c00;
    text-decoration: underline;
    margin-bottom: calc(3*var(--rem));
}
@media screen and (max-width:767px) {
    .authority-list__heading {
        font-size: calc(3.2*var(--rem));
    }
}
.authority-list__text {
    font-size: calc(1.6*var(--rem));
}
@media screen and (max-width:767px) {
    .authority-list__text {
        font-size: calc(3.2*var(--rem));
    }
}
.authority-list__text span {
    font-size: calc(3*var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    .authority-list__text span {
        font-size: calc(4*var(--rem));
    }
}
.authority__body__notes{
	font-size: calc(1.4*var(--rem));
}
@media screen and (max-width:767px) {
	.authority__body__notes{
        font-size: calc(2.2*var(--rem));
    }
}



#ff3 .authority__movie {
    margin-top: calc(6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .authority__movie {
        margin-top: calc(7*var(--rem))
    }
}
#ff3 .authority__movie__h3 {
    text-align: center;
    margin-bottom: calc(2.5*var(--rem));
    font-size: calc(2.6*var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .authority__movie__h3 {
        font-size: calc(3.8*var(--rem));
    }
}
#ff3 .authority-profile {
    -ms-flex: 1;
    flex: 1;
    display: -ms-flexbox;
    display: flex;
    padding: calc(3*var(--rem));
    background: #fff;
    width: calc(55*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile {
        width: 100%;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: calc(3*var(--rem));
        padding: calc(4*var(--rem)) calc(4 * var(--rem))
    }
}
#ff3 .authority-profile__image {
    width: calc(16.8*var(--rem));
    margin-right: calc(3.8*var(--rem));
    line-height: 1;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__image {
        display: -ms-flexbox;
        display: flex;
        gap: calc(4*var(--rem));
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        padding-left:0;
    }
}
#ff3 .authority-profile__figure {
    overflow: hidden;
    border-radius: 50%
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__figure {
        width: calc(26*var(--rem))
    }
}
#ff3 .authority-profile__position {
    margin-top: calc(1.5*var(--rem));
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__position {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .authority-profile__name {
    margin-top: calc(1*var(--rem));
    font-size: calc(2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__name {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .authority-profile__name small {
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__name small {
        font-size: calc(2*var(--rem))
    }
}
#ff3 .authority-profile__body {
    -ms-flex: 1;
    flex: 1
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__body {
        margin-top: calc(2*var(--rem))
    }
}
.authority-profile__heading02 {
    font-size: calc(2.8*var(--rem));
}
.authority-profile__heading02 span {
    font-size: calc(2.2*var(--rem));
}
.authority-profile__heading02 span::after {
    content: '|';
    margin-left: calc(.8*var(--rem));
    margin-right: calc(.8*var(--rem));
    font-weight: 700;
    vertical-align: calc(-.2*var(--rem));
    line-height: 1;
    text-align: center;
}
@media screen and (max-width:767px) {
    .authority-profile__heading02 {
        display: none;
    }
}

#ff3 .authority-profile__heading {
    position: relative;
    line-height: 1;
    text-align: center
}
#ff3 .authority-profile__heading span {
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__heading span {
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .authority-profile__text {
    margin-top: calc(1.5*var(--rem));
    font-size: calc(1.8*var(--rem));
    line-height: 1.6;
}
@media screen and (max-width:767px) {
    #ff3 .authority-profile__text {
        font-size: calc(2.6*var(--rem));
    }
}

#ff3 .section.miura {
    background-color: #efefef;
    padding: calc(10 * var(--rem)) 0 calc(10 * var(--rem));
}
#ff3 .authority__miura__columns {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__columns {
        display: block;
    }
}
#ff3 .authority__miura__columns__column:nth-child(1) {
    width: calc(55*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__columns__column:nth-child(1) {
        width:100%;
    }
}
#ff3 .authority__miura__columns__column:nth-child(2) {
    width: calc(50*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__columns__column:nth-child(2) {
        width:100%;
    }
}
#ff3 .authority__miura__title {
    margin-top: calc(2.5*var(--rem));
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__title {
        text-align: center;
        margin-top: calc(5.5* var(--rem));
        font-size: calc(3.5* var(--rem));
    }
}
#ff3 .authority__miura__text {
    margin-top: calc(2.5*var(--rem));
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__text {
        font-size: calc(2.5* var(--rem));
    }
}
#ff3 .authority__miura__note {
    margin-top: calc(1*var(--rem));
    font-size: calc(1.4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__note {
        font-size: calc(2*var(--rem));
    }
}
#ff3 .authority__miura__heading {
    font-size: calc(2.4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__heading {
        text-align: center;
        margin-top: calc(0.5*var(--rem));
        font-size: calc(3.2*var(--rem));
    }
}
#ff3 .authority__miura__heading small {
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .authority__miura__heading small {
        font-size: calc(2.5*var(--rem));
    }
}
@media screen and (max-width:767px) {
    #ff3 .authority__content {
        position: relative;
        overflow: hidden;
        width: auto;
        height: calc(17* var(--rem));
        padding: 0;
        padding-bottom: 0;
        transition: .5s;
    }
    #ff3 .authority__content.is-show {
        overflow: auto;
        height: auto;
    }
}
#ff3 .authority__button {
    margin-top: calc(2*var(--rem));
    font-size: calc(1.4*var(--rem));
    font-weight: 700;
    text-align: center;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .authority__button {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .authority__button span {
    position: relative;
    display: inline-block;
    padding: calc(2 * var(--rem)) calc(8 * var(--rem));
    background-color: #ffffff;
}
#ff3 .authority__button span:before, #ff3 .authority__button span:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: calc(2 * var(--rem));
    content: '';
    display: block;
    background: #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .authority__button span:before, #ff3 .authority__button span:after {
        position: absolute;
        top: calc(50% - calc(.3*var(--rem)) / 2);
        right: calc(2 * var(--rem));
        height: calc(.3*var(--rem))
    }
}
#ff3 .authority__button span:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .authority__button span.is-show:after {
    rotate: 180deg
}

#ff3 .certification {
    padding: calc(6*var(--rem)) 0 0
}
@media screen and (max-width:767px) {
    #ff3 .certification {
        padding: calc(5*var(--rem)) calc(5 * var(--rem)) 0
    }
}
#ff3 .certification__content {
    width: 100%;
    margin-top: calc(5*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: 0 calc(6*var(--rem));
    padding: calc(5*var(--rem)) calc(4.2 * var(--rem)) calc(5 * var(--rem)) calc(7.7 * var(--rem));
    border-top: 1px solid #d0d0d0;
    border-bottom: 1px solid #d0d0d0
}
@media screen and (max-width:767px) {
    #ff3 .certification__content {
        padding: calc(2.8*var(--rem));
        gap: calc(1.8*var(--rem))
    }
}
#ff3 .certification__image {
    width: calc(11.7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .certification__image {
        width: calc(14.3*var(--rem))
    }
}
#ff3 .certification__body {
    -ms-flex: 1;
    flex: 1
}
#ff3 .certification__heading {
    font-weight: 700
}
#ff3 .certification__text {
    margin-top: calc(1.5*var(--rem));
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .certification__text {
        font-size: calc(2.6*var(--rem));
        line-height: 1.53846
    }
}
#ff3 .certification__button {
    margin-top: calc(4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .certification__button {
        margin-top: calc(5*var(--rem))
    }
}
#ff3 .program {
    padding: 0
}
#ff3 .program__image {
    width: calc(60*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program__image {
        width: 100%
    }
}
#ff3 .program__body {
    -ms-flex: 1;
    flex: 1
}
#ff3 .program__heading {
    text-align: center;
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1.5
}
@media screen and (max-width:767px) {
    #ff3 .program__heading {
        font-size: calc(3.8*var(--rem));
    }
}
#ff3 .program__heading sup {
    font-size: .6em;
    vertical-align: calc(.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program__heading sup {
        font-size: .4em;
        vertical-align: calc(1.6*var(--rem))
    }
}
#ff3 .program__text {
    text-align: center;
    margin-top: calc(2*var(--rem));
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .program__text {
        text-align: left;
        font-size: calc(3*var(--rem));
        line-height: 1.93333
    }
}
#ff3 .program__notes {
    text-align: center;
    margin-top: calc(1*var(--rem));
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program__notes {
        text-align: left;
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .program__button {
    margin-top: calc(6*var(--rem))
}
#ff3 .program-list {
    margin-top: calc(3*var(--rem));
    padding: calc(6*var(--rem)) 0;
    background: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .program-list {
        margin-top: calc(6*var(--rem));
        padding: calc(3*var(--rem)) calc(5 * var(--rem)) 0
    }
}
#ff3 .program-list__inner {
    width: 100%;
    max-width: calc(80*var(--rem));
    margin-left: auto;
    margin-right: auto;
    counter-reset: list;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(3.5*var(--rem)) 0
}
#ff3 .program-list__item {
    width: 100%
}
@media screen and (max-width:767px) {
    #ff3 .program-list__item:last-child .program-list__header {
        border-bottom: none
    }
}
@media screen and (max-width:767px) {
    #ff3 .program-list__item:last-child .program-list__content {
        border-top: 1px solid #c7c7c7
    }
}
#ff3 .program-list__header {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: calc(3*var(--rem));
    border-bottom: 1px solid #c7c7c7
}
#ff3 .program-list__header:before {
    counter-increment: list;
    content: counter(list);
    width: calc(11*var(--rem));
    font-family: futura-pt, sans-serif;
    font-size: calc(6*var(--rem));
    line-height: 1;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .program-list__header:before {
        width: calc(6.5*var(--rem))
    }
}
#ff3 .program-list__header-inner:after {
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .program-list__header.is-show .program-list__header-inner:after {
    rotate: 180deg !important;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .program-list__header--heat {
    position: relative
}
#ff3 .program-list__header--heat:after {
    position: absolute;
    top: calc(50% - calc(4.5*var(--rem)));
    right: calc(11*var(--rem));
    width: calc(5.7*var(--rem));
    height: calc(6.1*var(--rem));
    display: block;
    background: url(../img/img_program05.png) no-repeat center center/contain;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .program-list__header--heat:after {
        width: calc(7.7*var(--rem));
        height: calc(8.3*var(--rem));
        top: calc(50% - calc(5.5*var(--rem)));
        right: calc(6*var(--rem))
    }
}
#ff3 .program-list__header-inner {
    -ms-flex: 1;
    flex: 1;
    position: relative;
    padding: calc(.5*var(--rem)) 0 calc(.5 * var(--rem)) calc(4 * var(--rem));
    border-left: 1px solid #c7c7c7
}
@media screen and (max-width:767px) {
    #ff3 .program-list__header-inner {
        padding: 0 0 0 calc(3*var(--rem))
    }
}
#ff3 .program-list__header-inner:before, #ff3 .program-list__header-inner:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: calc(4*var(--rem));
    content: '';
    display: block;
    background: #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .program-list__header-inner:before, #ff3 .program-list__header-inner:after {
        right: 0
    }
}
#ff3 .program-list__header-inner:after {
    rotate: 90deg
}
#ff3 .program-list__heading {
    font-size: calc(1.8*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .program-list__heading {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .program-list__lead {
    margin-top: calc(1*var(--rem));
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program-list__lead {
        margin-top: calc(.4*var(--rem));
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .program-list__content {
    display: none
}
@media screen and (max-width:767px) {
    #ff3 .program-list__content {
        padding-bottom: calc(9.8*var(--rem))
    }
}
#ff3 .program-list__text {
    margin-top: calc(2*var(--rem));
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .program-list__text {
        font-size: calc(3*var(--rem));
        line-height: 1.93333
    }
}
#ff3 .program-list__image {
    margin-top: calc(2.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image {
        margin-top: calc(4*var(--rem))
    }
}
#ff3 .program-list__image--1 {
    width: 100%;
    max-width: calc(60.4*var(--rem));
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image--1 {
        max-width: 100%
    }
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image--1 img {
        max-width: calc(112.3*var(--rem));
        width: calc(112.3*var(--rem))
    }
}
#ff3 .program-list__image--2 {
    width: 100%;
    max-width: calc(54*var(--rem));
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image--2 {
        max-width: 100%
    }
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image--2 img {
        max-width: calc(98.2*var(--rem));
        width: calc(98.2*var(--rem))
    }
}
#ff3 .program-list__image--3 {
    width: 100%;
    max-width: calc(44.4*var(--rem));
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image--3 {
        max-width: 100%
    }
}
@media screen and (max-width:767px) {
    #ff3 .program-list__image--3 img {
        max-width: calc(103.2*var(--rem));
        width: calc(103.2*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .program-list__figure {
        position: relative;
        overflow-y: scroll;
        width: calc(70*var(--rem));
        padding-bottom: calc(4.6*var(--rem))
    }
}
#ff3 .program-point {
    margin-top: calc(4*var(--rem));
    padding: calc(2.5*var(--rem)) calc(3.5 * var(--rem)) calc(2 * var(--rem));
    border-radius: calc(1*var(--rem));
    background: #fff
}
@media screen and (max-width:767px) {
    #ff3 .program-point {
        margin-top: calc(8*var(--rem))
    }
}
#ff3 .program-point__heading {
    font-weight: 700
}
#ff3 .program-point__text {
    margin-top: calc(.5*var(--rem));
    line-height: 2
}
#ff3 .program-calf {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-top: calc(3*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program-calf {
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: calc(8*var(--rem))
    }
}
#ff3 .program-calf__image {
    width: calc(29*var(--rem));
    margin-right: calc(4.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program-calf__image {
        width: 100%;
        margin: 0
    }
}
#ff3 .program-calf__body {
    -ms-flex: 1;
    flex: 1
}
#ff3 .program-calf__text {
    line-height: 2
}
#ff3 .program-calf__notes {
    margin-top: calc(.5*var(--rem));
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .program-calf__notes {
        padding-left: 1em;
        text-indent: -1em;
        font-size: calc(2.2*var(--rem))
    }
}

#ff3 .section.daily {
    padding: calc(12* var(--rem)) 0 0;
}
@media screen and (max-width:767px) {
    #ff3 .section.daily {
        padding: calc(9* var(--rem)) 0 0;
    }
}
#ff3 .daily__cost-title {
    text-align: center;
    font-size: calc(2.6*var(--rem));
    font-weight: 700;
    line-height: 1.3;
}
@media screen and (max-width:767px) {
    #ff3 .daily__cost-title {
        font-size: calc(4*var(--rem));
    }
}
#ff3 .daily__cost-title__zero {
    position: relative;
    padding-bottom: calc(1*var(--rem));
    font-size: calc(3.2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .daily__cost-title__zero {
        font-size: calc(5*var(--rem));
    }
}
#ff3 .daily__cost-title__zero:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #ed6c00;
}
#ff3 .daily__cost-title__zero em {
    font-size: calc(6.8*var(--rem));
    font-style: normal;
}
@media screen and (max-width:767px) {
    #ff3 .daily__cost-title__zero em {
        font-size: calc(9*var(--rem));
    }
}
#ff3 .daily__cost-columns {
    margin-top: calc(4*var(--rem));
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width:767px) {
    #ff3 .daily__cost-columns {
        margin-top: calc(6*var(--rem));
        display: block;
    }
}
#ff3 .daily__cost-columns__column:nth-child(1) {
    order: 2;
}
#ff3 .daily__cost-columns__column:nth-child(2) {
    order: 1;
}
#ff3 .daily__cost-columns__column__txt {
    font-size: calc(2*var(--rem));
    margin-right: calc(4*var(--rem));
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .daily__cost-columns__column__txt {
        font-size: calc(2.8*var(--rem));
        margin-top: calc(4*var(--rem));
        margin-right: 0;
        text-align: left;
    }
}
#ff3 .daily__cost-columns__column__figure {
    width: calc(13*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .daily__cost-columns__column__figure {
        width: calc(17*var(--rem));
        margin-left: auto;
        margin-right: auto;
    }
}

#ff3 .daily__columns {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns {
        display: block;
    }
}
#ff3 .daily__columns--reverse .daily__columns__column:nth-child(1) {
    order: 2;
}
#ff3 .daily__columns--reverse .daily__columns__column:nth-child(2) {
    order: 1;
}
#ff3 .daily__columns .daily__columns__column:nth-child(1) {
    width: calc(48*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns .daily__columns__column:nth-child(1) {
        width: 100%;
    }
}
#ff3 .daily__columns .daily__columns__column:nth-child(2) {
    width: calc(55*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns .daily__columns__column:nth-child(2) {
        width: 100%;
    }
}
#ff3 .daily__columns__column__title {
    padding-left: calc(11*var(--rem));
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    background-image: url("../img/ic_daily_training.png");
    background-size: calc(9*var(--rem));
    background-repeat: no-repeat;
    background-position: left;
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns__column__title {
        padding-left: 0;
        padding-top: calc(15*var(--rem));
        font-size: calc(3.8*var(--rem));
        text-align: center;
        background-size: calc(12*var(--rem));
        background-position: top center;
    }
}
#ff3 .daily__columns__column__title__under {
    position: relative;
    padding-bottom: calc(1*var(--rem));
    font-size: calc(3.2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns__column__title__under {
        font-size: calc(5*var(--rem));
    }
}
#ff3 .daily__columns__column__title__under:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #ed6c00;
}
#ff3 .daily__columns__column__txt {
    font-size: calc(2*var(--rem));
    margin-top: calc(2.5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns__column__txt {
        font-size: calc(2.8*var(--rem));
    }
}
@media screen and (max-width:767px) {
    #ff3 .daily__columns__column__figure {
        margin-top: calc(5*var(--rem));
    }
}

#ff3 .section.ems {
    padding: calc(11*var(--rem)) 0 calc(10*var(--rem));
}
#ff3 .ems__header {
    margin-top: calc(5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__header {
        margin-left: calc(-5*var(--rem));
        margin-right: calc(-5*var(--rem));
    }
}
#ff3 .ems__title {
    margin-top: calc(5*var(--rem));
    font-size: calc(2.6* var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .ems__title {
        margin-top: calc(5*var(--rem));
        font-size: calc(3.6* var(--rem));
    }
}
#ff3 .ems__txt {
    font-size: calc(2*var(--rem));
    margin-top: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__txt {
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .ems__button {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(12*var(--rem));
    margin-top: calc(3.5*var(--rem));
    border: 1px solid #efefef;
    border-radius: calc(1 * var(--rem));
    background: #fff;
    font-weight: 700;
    cursor: pointer
}
@media screen and (min-width:768px) {
    #ff3 .ems__button {
        display: none;
    }
}
#ff3 .ems__button.is-show {
    border-bottom: none;
    border-radius: calc(1 * var(--rem)) calc(1 * var(--rem)) 0 0;
}
#ff3 .ems__button span {
    position: relative;
    display: block;
    padding: 0 calc(5.3*var(--rem))
}
#ff3 .ems__button span:before, #ff3 .ems__button span:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403
}
#ff3 .ems__button span:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .ems__button.is-show span:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
@media screen and (max-width:767px) {
    #ff3 .ems__acc {
        display: none;
        border: 1px solid #efefef;
        border-top: none;
        border-radius: 0 0 calc(1 * var(--rem)) calc(1 * var(--rem));
        padding: 0 calc(4.5*var(--rem)) calc(4.5*var(--rem)) calc(4.5*var(--rem));
    }
}

#ff3 .ems__columns {
    margin-top: calc(6*var(--rem));
    display: flex;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width:767px) {
    #ff3 .ems__columns {
        margin-top: 0;
        display: block;
    }
}
#ff3 .ems__columns__column:nth-child(1) {
    width: calc(55*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__columns__column:nth-child(1) {
        width: 100%;
    }
}
#ff3 .ems__columns__column:nth-child(2) {
    width: calc(48*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__columns__column:nth-child(2) {
        width: 100%;
    }
}
#ff3 .ems__columns__column__title {
    font-size: calc(2.6* var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .ems__columns__column__title {
        font-size: calc(3* var(--rem));
    }
}
#ff3 .ems__columns__column__txt {
    font-size: calc(2*var(--rem));
    margin-top: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__columns__column__txt {
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .cross__columns {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width:767px) {
    #ff3 .cross__columns {
        display: flex!important;
        align-items: flex-start;
    }
}
#ff3 .cross__columns__column:nth-child(1) {
    width: calc(14*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .cross__columns__column:nth-child(1) {
        width: calc(17*var(--rem));
    }
}
#ff3 .cross__columns__column:nth-child(2) {
    width: calc(31*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .cross__columns__column:nth-child(2) {
        width: calc(36*var(--rem));
    }
}
#ff3 .cross__columns__column__dl {
    display: flex;
    justify-content: space-between;
}
#ff3 .cross__columns__column__dl:not(:first-of-type) {
    margin-top: calc(1*var(--rem));
}
#ff3 .cross__columns__column__dl__dt {
    min-width: calc(4*var(--rem));
    margin-right: calc(1*var(--rem));
    font-size: calc(1.4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .cross__columns__column__dl__dt {
        min-width: calc(7*var(--rem));
        margin-right: calc(0.5*var(--rem));
        font-size: calc(2.2*var(--rem));
    }
}
#ff3 .cross__columns__column__dl__dd {
    font-size: calc(1.4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .cross__columns__column__dl__dd {
        font-size: calc(2.2*var(--rem));
    }
}
#ff3 .ems__box {
    margin-top: calc(6*var(--rem));
    padding-top: calc(6*var(--rem));
    border-top: 1px solid #cccccc;
}
#ff3 .ems__box__h3 {
    font-size: calc(2.6* var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__h3 {
        font-size: calc(3.6* var(--rem));
    }
}
#ff3 .ems__box__lead {
    font-size: calc(2*var(--rem));
    margin-top: calc(1.5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__lead {
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .ems__box__lead__small {
    font-size: calc(1.4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__lead__small {
        font-size: calc(2*var(--rem));
    }
}

#ff3 .ems__box__two-columns {
    margin-top: calc(4*var(--rem));
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__two-columns {
        display: block;
    }
}
#ff3 .ems__box__two-columns__column {
    width: calc(53*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__two-columns__column {
        width: 100%;
    }
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__two-columns__column:not(:first-child) {
        margin-top: calc(6*var(--rem));
    }
}
#ff3 .ems__box__h4 {
    border: 1px solid #000000;
    padding: calc(0.9*var(--rem)) calc(1*var(--rem));
    text-align: center;
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__h4 {
        padding: calc(0.9*var(--rem)) calc(1*var(--rem));
        font-size: calc(2.5*var(--rem));
    }
}
#ff3 .ems__box__h4:not(:first-child) {
    margin-top: calc(3.5*var(--rem));
}
#ff3 .ems__box__lists {
    margin-top: calc(2*var(--rem));
    display: flex;
    flex-wrap: wrap;
}
#ff3 .ems__box__lists.ems__box__lists--academic {
    padding: calc(0*var(--rem)) calc(4.5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__lists.ems__box__lists--academic {
        padding: 0;
    }
}
#ff3 .ems__box__lists.ems__box__lists--academic .ems__box__lists__item {
    display: flex;
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: space-between;
    width: 50%;
    line-height: 1;
}
#ff3 .ems__box__lists.ems__box__lists--academic .ems__box__lists__item:nth-child(n+3) {
    margin-top: calc(2*var(--rem));
}
#ff3 .ems__box__lists.ems__box__lists--academic .ems__box__lists__item:nth-child(even) {
    padding-left: calc(3* var(--rem));
}
#ff3 .ems__box__lists.ems__box__lists--data {
    padding: calc(0*var(--rem)) calc(7.5*var(--rem));
    justify-content: center;
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__lists.ems__box__lists--data {
        padding: 0;
    }
}
#ff3 .ems__box__lists.ems__box__lists--data .ems__box__lists__item {
    padding: calc(0*var(--rem)) calc(0.5*var(--rem));
    line-height: 1;
}
#ff3 .ems__box__lists.ems__box__lists--data .ems__box__lists__item:nth-child(n+4) {
    margin-top: calc(1.5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__lists.ems__box__lists--data .ems__box__lists__item:nth-child(n+4) {
        margin-top: 0;
    }
}

#ff3 .ems__box__lists__item__txt {
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__lists__item__txt {
        font-size: calc(2.5* var(--rem));
    }
}
#ff3 .ems__box__lists__item__txt em {
    font-size: calc(6*var(--rem));
    font-style: normal;
}

#ff3 .ems__box__four-columns {
    margin-top: calc(2.5*var(--rem));
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__four-columns {
        margin-top: calc(4*var(--rem));
        flex-wrap: wrap;
    }
}
#ff3 .ems__box__four-columns__column {
    width: calc(25.7*var(--rem));
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__four-columns__column {
        width: calc(31.3*var(--rem));
    }
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__four-columns__column:nth-child(n+3) {
        margin-top: calc(2.5*var(--rem));
    }
}
#ff3 .ems__box__four-columns__column__txt {
    margin-top: calc(1*var(--rem));
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .ems__box__four-columns__column__txt {
        font-size: calc(2.5*var(--rem));
    }
}

#ff3 .loved {
    padding: calc(10*var(--rem)) 0 0
}
@media screen and (max-width:767px) {
    #ff3 .loved {
        padding: calc(10*var(--rem)) 0 0
    }
}
#ff3 .loved__h2 {
    text-align: center;
    font-weight: 700;
    font-size: calc(4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .loved__h2 {
        font-size: calc(4.7*var(--rem));
        margin-left: calc(-1.5*var(--rem));
        margin-right: calc(-1.5*var(--rem));
    }
}
#ff3 .loved__check {
    margin-top: calc(3*var(--rem));
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
}
@media screen and (max-width:767px) {
    #ff3 .loved__check {
        display: block;
        text-align: center;
    }
}
#ff3 .loved__check__item {
    position: relative;
    font-size: calc(2.4*var(--rem));
    padding-left: calc(5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .loved__check__item {
        display: inline-block;
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .loved__check__item:not(:first-child) {
    margin-left: calc(3*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .loved__check__item:not(:first-child) {
        margin-left: 0;
        margin-top: calc(1*var(--rem));
    }
}
#ff3 .loved__check__item:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: calc(3.3* var(--rem));
    height: calc(3.3* var(--rem));
    background-image: url(../img/ic-checked.png);
    background-size: cover;
}
#ff3 .loved__lead {
    text-align: center;
    font-weight: 700;
    font-size: calc(3.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .loved__lead {
        font-size: calc(3.8*var(--rem))
    }
}
#ff3 .loved__loop-wrap {
    margin-top: calc(7*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .loved__loop-wrap {
        margin-top: calc(5*var(--rem));
    }
}
#ff3 .loved__loop__item__img img {
    max-width: none;
    width: 100%;
}

#ff3 .customer {
    padding: calc(10*var(--rem)) 0;
}
#ff3 .customer__heading {
    font-size: calc(1.8*var(--rem));
    font-weight: 700;
    line-height: 1.94444;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .customer__heading {
        font-size: calc(3*var(--rem));
        line-height: 1.52174
    }
}
#ff3 .customer__heading strong {
    font-size: calc(5*var(--rem));
    font-family: futura-pt, sans-serif;
    line-height: 1.16667
}
@media screen and (max-width:767px) {
    #ff3 .customer__heading strong {
        font-size: calc(8*var(--rem))
    }
}
#ff3 .customer__buttons {
    margin-top: calc(4*var(--rem));
}
#ff3 .customer__carousel {
    position: relative;
    margin-top: calc(6*var(--rem));
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(3*var(--rem))
}
#ff3 .customer__carousel .slick-track {
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(3*var(--rem));
    padding: calc(2.5*var(--rem)) 0
}
@media screen and (max-width:767px) {
    #ff3 .customer__carousel .slick-track {
        gap: 0 calc(3*var(--rem));
        padding: calc(3*var(--rem)) 0
    }
}
#ff3 .customer__carousel .slick-slide {
    width: calc(43.5*var(--rem));
    height: auto
}
@media screen and (max-width:767px) {
    #ff3 .customer__carousel .slick-slide {
        width: calc(58*var(--rem))
    }
}
#ff3 .customer__carousel .slick-slide > div {
    height: 100%
}
#ff3 .customer__carousel .slick-dots {
    position: absolute;
    bottom: calc(-.4*var(--rem));
    left: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 calc(.6*var(--rem));
    width: 100%
}
#ff3 .customer__carousel .slick-dots li, #ff3 .customer__carousel .slick-dots button {
    bottom: calc(-.16*var(--rem));
    font-size: 0;
    line-height: 0
}
#ff3 .customer__carousel .slick-dots li {
    width: calc(4*var(--rem));
    height: calc(.2*var(--rem));
    position: relative;
    background: #c5c5c5
}
#ff3 .customer__carousel .slick-dots li.slick-active {
    background: #ff7403
}
#ff3 .customer__carousel .slick-dots button {
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    background: none
}
#ff3 .customer__item {
    position: relative;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-direction: column;
    flex-direction: column;
    width: calc(43.5*var(--rem));
    height: 100%;
    padding: calc(3.8*var(--rem)) calc(4 * var(--rem));
    border-radius: calc(2*var(--rem));
    background: #fff;
    box-shadow: calc(.1*var(--rem)) calc(.1 * var(--rem)) calc(2 * var(--rem)) 0 rgba(134, 134, 134, .35)
}
@media screen and (max-width:767px) {
    #ff3 .customer__item {
        width: calc(58*var(--rem));
        padding: calc(6*var(--rem)) calc(5 * var(--rem)) calc(5.5 * var(--rem))
    }
}
#ff3 .customer__ballon {
    position: absolute;
    line-height: 1;
    text-align: center;
    width: calc(24*var(--rem));
    top: calc(-2.5*var(--rem));
    left: 50%;
    transform: translateX(-50%);
    padding: calc(1*var(--rem)) calc(2 * var(--rem));
    background: linear-gradient(-90deg, rgba(246,114,5,1) 0%, rgba(248,167,49,1) 100%);
    color: #ffffff;
    border-radius: 100px;
    font-size: calc(2.2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .customer__ballon {
        top: calc(-3var(--rem));
        width: calc(30* var(--rem));
        padding: calc(1.5* var(--rem)) calc(2* var(--rem));
        font-size: calc(3*var(--rem));
    }
}
#ff3 .customer__ballon:after {
    content: "";
    display: block;
    position: absolute;
    right: calc(3* var(--rem));
    bottom: 0;
    transform: translateY(100%);
    width: calc(2.1* var(--rem));
    height: calc(1.2* var(--rem));
    background-image: url(../img/ic-users-ballon.png);
    background-size: cover;
}
#ff3 .customer__image {
    width: 100%;
    max-width: calc(12*var(--rem));
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .customer__image {
        max-width: calc(16*var(--rem))
    }
}
#ff3 .customer__lead {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: calc(2*var(--rem));
    font-size: calc(2.4*var(--rem));
    font-weight: 700;
    line-height: 1.66667;
    letter-spacing: -.04em
}
@media screen and (max-width:767px) {
    #ff3 .customer__lead {
        font-size: calc(3.6*var(--rem));
        line-height: 1.5;
        letter-spacing: -.01em
    }
}
#ff3 .customer__lead span {
    position: relative;
    display: block;
    padding: calc(1.5*var(--rem)) calc(1 * var(--rem)) calc(2.5 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .customer__lead span {
        padding: calc(1.5*var(--rem)) calc(1 * var(--rem)) calc(2.5 * var(--rem))
    }
}
#ff3 .customer__lead span:before, #ff3 .customer__lead span:after {
    color: #d8d8d8;
    font-size: calc(3*var(--rem));
    line-height: 1
}
#ff3 .customer__lead span:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '“'
}
#ff3 .customer__lead span:after {
    position: absolute;
    right: 0;
    bottom: 0;
    content: '”'
}
#ff3 .customer__text {
    margin-top: calc(-.8*var(--rem));
    font-size: calc(1.8*var(--rem));
    line-height: 2.25
}
@media screen and (max-width:767px) {
    #ff3 .customer__text {
        margin-top: 0;
        font-size: calc(2.6*var(--rem));
        line-height: 1.53846
    }
}
#ff3 .customer__bottom {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    margin-top: auto
}
@media screen and (max-width:767px) {
    #ff3 .customer__bottom {
        height: auto;
    }
}
#ff3 .customer__note {
    margin-top: auto;
    font-size: calc(1.2*var(--rem));
    line-height: 1.36364
}
@media screen and (max-width:767px) {
    #ff3 .customer__note {
        font-size: calc(2.2*var(--rem));
        line-height: 1.36364
    }
}
#ff3 .customer__notes {
    margin-top: calc(4*var(--rem));
    text-align: center;
    font-size: calc(1.4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .customer__notes {
        margin-top: calc(3.8*var(--rem));
        padding-left: calc(5*var(--rem));
        padding-right: calc(5*var(--rem));
        text-align: left;
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .customer__profile {
    line-height: 1;
    margin-top: calc(2*var(--rem));
    text-align: center;
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .customer__profile {
        font-size: calc(3*var(--rem));
    }
}
#ff3 .app {
    padding: calc(10* var(--rem)) 0;
    background-color: #e8e3de;
}
#ff3 .app__h2 {
    text-align: center;
    font-weight: 700;
    font-size: calc(3.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app__h2 {
        font-size: calc(5*var(--rem))
    }
}
#ff3 .apptab {
    margin-top: calc(4*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab {
        margin-top: calc(6*var(--rem));
    }
}
#ff3 .apptab__box__area {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}
#ff3 .apptab__box__area__one {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: calc(8.5*var(--rem));
    text-align: center;
    font-size: calc(2.2*var(--rem));
    border-radius: calc(4*var(--rem)) calc(4*var(--rem)) 0 0;
    background: linear-gradient(-90deg, rgba(246,114,5,1) 0%, rgba(248,167,49,1) 100%);
    color: #ffffff;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__box__area__one {
        height: calc(11.5*var(--rem));
        font-size: calc(3*var(--rem));
        line-height: 1.2;
    }
}
#ff3 .apptab__box__area__one:hover {
    cursor: pointer;
}
#ff3 .apptab__box__area__one.is-select {
    background: #ffffff;
    color: #ed6c00;
}
#ff3 .apptab__contents__main {
    display: none;
}
#ff3 .apptab__contents__main.is-show {
    display: block;
}
#ff3 .apptab__contents__main__inner {
    background: #ffffff;
    padding: calc(9*var(--rem)) calc(10*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab__contents__main__inner {
        padding: calc(10*var(--rem)) calc(5*var(--rem));
    }
}
#ff3 .apptab__h3 {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    margin-top: calc(2*var(--rem));
    text-align: center;
    font-size: calc(2.2*var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__h3 {
        font-size: calc(4*var(--rem));
    }
}
#ff3 .apptab__icon {
    margin-right: calc(4*var(--rem));
    width: calc(9*var(--rem));
    height: calc(9*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab__icon {
        width: calc(13*var(--rem));
        height: calc(13*var(--rem));
    }
}
#ff3 .apptab__columns {
    margin-top: calc(4*var(--rem));
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__columns {
        display: block;
    }
}
#ff3 .apptab__columns__column:nth-child(1) {
    width: calc(30*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab__columns__column:nth-child(1) {
        width: 100%;
    }
}
#ff3 .apptab__columns__column:nth-child(2) {
    width: calc(51.5*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab__columns__column:nth-child(2) {
        margin-top: calc(5*var(--rem));
        width: 100%;
    }
}
@media screen and (max-width:767px) {
    #ff3 .apptab__columns__column:nth-child(2) .apptab__columns__column__img {
        padding: 0 calc(2*var(--rem));
    }
}
#ff3 .apptab__columns__column__txt {
    margin-bottom: calc(1.5*var(--rem));
    text-align: center;
    font-size: calc(2.2*var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__columns__column__txt {
        font-size: calc(3.4*var(--rem));
    }
}
#ff3 .apptab__columns__column__txt__em {
    display: inline-block;
    position: relative;
    padding-bottom: calc(0.5*var(--rem));
    font-size: calc(3.6*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab__columns__column__txt__em {
        font-size: calc(6*var(--rem));
    }
}
#ff3 .apptab__columns__column__txt__em:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(3*var(--rem));
    background-color: #ffede0;
}
#ff3 .apptab__columns__column__txt__em > span {
    position: relative;
    z-index: 2;
}
#ff3 .apptab__h4 {
    margin-top: calc(5* var(--rem));
    text-align: center;
    font-size: calc(2.2* var(--rem));
    font-weight: 700;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__h4 {
        font-size: calc(3.8* var(--rem));
    } 
}
#ff3 .apptab__txt {
    margin-top: calc(1* var(--rem));
    text-align: center;
    font-size: calc(2* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .apptab__txt {
        text-align: left;
        font-size: calc(2.8* var(--rem));
    } 
}
#ff3 .apptab__button {
    margin-top: calc(3* var(--rem));
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__button {
        margin-top: calc(5* var(--rem));
    }
}
#ff3 .apptab__button a {
    display: inline-block;
    font-size: calc(1.8* var(--rem));
    padding: calc(2*var(--rem)) calc(6.3*var(--rem));
    background-color: #ffffff;
    border: 2px solid #ed6c00;
    border-radius: 100px;
    transition: .5s ease;
}
@media screen and (max-width:767px) {
    #ff3 .apptab__button a {
        display: block;
        font-size: calc(3* var(--rem));
    }
}
#ff3 .apptab__button a:hover {
    opacity: .7;
}

#ff3 .app__content {
    padding: calc(11*var(--rem)) 0 calc(8 * var(--rem));
    background: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .app__content {
        padding: 0 0 calc(5*var(--rem))
    }
}
#ff3 .app__inner {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto
}
#ff3 .app__heading {
    font-size: calc(3.6*var(--rem));
    font-weight: 700;
    line-height: 1.94444
}
#ff3 .app__button {
    margin-top: calc(6*var(--rem))
}
#ff3 .app-introduction {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}
#ff3 .app-introduction__body {
    width: 50%
}
@media screen and (max-width:767px) {
    #ff3 .app-introduction__body {
        background-color: #fff;
        width: 100%
    }
}
#ff3 .app-introduction__heading {
    font-weight: 700;
    font-size: calc(3.6*var(--rem));
    line-height: 1.72222
}
@media screen and (max-width:767px) {
    #ff3 .app-introduction__heading {
        padding-bottom: calc(2.2*var(--rem));
        font-size: calc(4.6*var(--rem));
        line-height: 1.52174;
        text-align: center
    }
}
#ff3 .app-introduction__text {
    margin-top: calc(1.2*var(--rem));
    font-size: calc(1.8*var(--rem));
    line-height: 2
}
#ff3 .app-introduction__copy {
    width: 50%
}
@media screen and (max-width:767px) {
    #ff3 .app-introduction__copy {
        position: absolute;
        bottom: calc(-63.4*var(--rem));
        left: calc(50% - calc(35.6*var(--rem)) / 2);
        z-index: 1
    }
}
#ff3 .app-introduction__image {
    width: 100%;
    max-width: calc(37*var(--rem));
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .app-introduction__image {
        max-width: calc(35.6*var(--rem))
    }
}
#ff3 .app-scene {
    display: -ms-flexbox;
    display: flex;
    margin-top: calc(5.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-scene {
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 0
    }
}
@media screen and (max-width:767px) {
    #ff3 .app-scene__item {
        width: 100%
    }
}
@media screen and (max-width:767px) {
    #ff3 .app-scene__item:nth-of-type(2) {
        display: -ms-flexbox;
        display: flex
    }
}
#ff3 .app__movie {
    margin-top: calc(6.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app__movie {
        padding: 0 calc(5*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .app__text {
        margin-top: calc(6*var(--rem));
        padding: 0 calc(5*var(--rem));
        font-size: calc(3*var(--rem));
        line-height: 1.93333
    }
}
#ff3 .app-summary {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(50% - calc(50.8*var(--rem)));
    margin-top: calc(6.2*var(--rem));
    padding: 0 calc(5*var(--rem)) calc(4.7 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-summary {
        margin-top: calc(5.6*var(--rem));
        -ms-flex-direction: column;
        flex-direction: column
    }
}
#ff3 .app-summary__text {
    width: 50%;
    font-size: calc(1.8*var(--rem));
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .app-summary__text {
        width: 100%;
        margin-top: calc(2.8*var(--rem));
        font-size: calc(3*var(--rem));
        line-height: 1.93333;
        letter-spacing: 0
    }
}
#ff3 .app-box {
    overflow: hidden;
    width: calc(50.8*var(--rem));
    border-radius: calc(2*var(--rem));
    box-shadow: 0 calc(.4*var(--rem)) calc(1.3 * var(--rem)) 0 rgba(0, 0, 0, .2)
}
@media screen and (max-width:767px) {
    #ff3 .app-box {
        width: 100%
    }
}
#ff3 .app-box__heading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #6b6b6b;
    color: #fff;
    font-weight: 700;
    font-size: calc(1.8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-box__heading {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .app-box__content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(3*var(--rem));
    padding: calc(1.6*var(--rem)) 0;
    background-color: #fff
}
@media screen and (max-width:767px) {
    #ff3 .app-box__content {
        padding: calc(2.2*var(--rem)) 0
    }
}
#ff3 .app-box__image {
    width: calc(12.1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-box__image {
        width: calc(19*var(--rem))
    }
}
#ff3 .app-box__lead {
    font-size: calc(1.7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-box__lead {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .app-box__name {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(.6*var(--rem))
}
#ff3 .app-box__name-en {
    display: block;
    margin-top: calc(1.6*var(--rem));
    font-weight: 700;
    font-size: calc(2.7*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .app-box__name-en {
        margin-top: calc(.8*var(--rem));
        font-size: calc(4*var(--rem));
        line-height: 1.25
    }
}
#ff3 .app-box__name-ja {
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-box__name-ja {
        margin-top: calc(-.2*var(--rem));
        font-size: calc(2.2*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .app-copy {
        width: 100%;
        max-width: calc(43.7*var(--rem));
        margin-left: auto;
        margin-right: auto
    }
}
#ff3 .app-list__item {
    position: relative;
    border-top: calc(.1*var(--rem)) solid #c8c8c8
}
@media screen and (max-width:767px) {
    #ff3 .app-list__item {
        border: none
    }
}
#ff3 .app-list__item:first-of-type {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(4*var(--rem));
    padding: calc(6.6*var(--rem)) 0 calc(7.6 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-list__item:first-of-type {
        -ms-flex-direction: column;
        flex-direction: column
    }
}
#ff3 .app-list__item:nth-of-type(2) {
    padding: calc(5*var(--rem)) calc(5 * var(--rem)) calc(4.4 * var(--rem))
}
#ff3 .app-list__item:nth-of-type(3) {
    padding: calc(4.6*var(--rem)) calc(5 * var(--rem)) calc(4.4 * var(--rem))
}
#ff3 .app-list__body {
    width: calc(50% - (calc(4*var(--rem)) + calc(5.2 * var(--rem))));
    margin-left: calc(5.2*var(--rem));
    padding-left: calc(1.4*var(--rem));
    border-left: calc(.2*var(--rem)) solid #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .app-list__body {
        width: calc(100% - calc(5.2*var(--rem)));
        padding: 0 calc(5*var(--rem)) 0 calc(4 * var(--rem))
    }
}
#ff3 .app-list__heading {
    font-weight: 700;
    font-size: calc(2.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-list__heading {
        font-size: calc(3.6*var(--rem))
    }
}
#ff3 .app-list__heading--display, #ff3 .app-list__heading--function {
    padding-left: calc(1.4*var(--rem));
    border-left: calc(.2*var(--rem)) solid #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .app-list__heading--display, #ff3 .app-list__heading--function {
        padding-left: calc(2.8*var(--rem))
    }
}
#ff3 .app-list__heading--function {
    position: absolute;
    top: calc(5*var(--rem));
    left: calc(5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-list__heading--function {
        position: static
    }
}
#ff3 .app-list__heading--display {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}
@media screen and (max-width:767px) {
    #ff3 .app-list__heading--display {
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}
#ff3 .app-list__heading-notes {
    padding-left: 1em;
    text-indent: -1em;
    margin-left: calc(2*var(--rem));
    font-size: calc(1.2*var(--rem));
    font-weight: 400
}
@media screen and (max-width:767px) {
    #ff3 .app-list__heading-notes {
        margin-left: calc(3*var(--rem));
        font-size: calc(2.2*var(--rem));
        line-height: 1.36364
    }
}
#ff3 .app-list__text {
    margin-top: calc(.8*var(--rem));
    font-size: calc(1.8*var(--rem));
    line-height: 2;
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .app-list__text {
        font-size: calc(3*var(--rem));
        line-height: 1.93333
    }
}
#ff3 .app-stamp {
    display: -ms-flexbox;
    display: flex;
    gap: calc(3*var(--rem));
    width: 50%
}
@media screen and (max-width:767px) {
    #ff3 .app-stamp {
        width: 100%
    }
}
#ff3 .app-stamp .slick-track {
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(3*var(--rem))
}
#ff3 .app-stamp .slick-slide {
    width: calc(34*var(--rem));
    height: auto
}
@media screen and (max-width:767px) {
    #ff3 .app-stamp .slick-slide {
        width: calc(60*var(--rem))
    }
}
#ff3 .app-stamp .slick-slide > div {
    height: 100%
}
#ff3 .app-stamp .slick-dots {
    position: absolute;
    bottom: calc(-2.4*var(--rem));
    left: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 calc(.6*var(--rem));
    width: 100%
}
#ff3 .app-stamp .slick-dots li, #ff3 .app-stamp .slick-dots button {
    font-size: 0;
    line-height: 0
}
#ff3 .app-stamp .slick-dots li {
    width: calc(4*var(--rem));
    height: calc(.2*var(--rem));
    position: relative;
    background: #c5c5c5
}
#ff3 .app-stamp .slick-dots li.slick-active {
    background: #ff7403
}
#ff3 .app-stamp .slick-dots button {
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    background: none
}
#ff3 .app-stamp__item {
    width: calc(34*var(--rem));
    height: 100%;
    padding: calc(1.6*var(--rem)) calc(1.6 * var(--rem)) calc(3.8 * var(--rem));
    border-radius: calc(1*var(--rem));
    background-color: #fff
}
@media screen and (max-width:767px) {
    #ff3 .app-stamp__item {
        width: calc(60*var(--rem));
        padding: calc(3*var(--rem))
    }
}
#ff3 .app-stamp__image {
    width: calc(30.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-stamp__image {
        width: calc(52.7*var(--rem))
    }
}
#ff3 .app-stamp__text {
    margin-top: calc(2.4*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 1.625
}
@media screen and (max-width:767px) {
    #ff3 .app-stamp__text {
        margin-top: calc(4.4*var(--rem));
        font-size: calc(2.6*var(--rem));
        line-height: 1.53846
    }
}
#ff3 .app-display {
    width: 100%;
    max-width: calc(81*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    gap: calc(6*var(--rem));
    margin-top: calc(2.6*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 1.625;
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .app-display {
        gap: calc(4*var(--rem));
        width: auto;
        margin-right: calc(-5*var(--rem));
        font-size: calc(2.6*var(--rem));
        line-height: 2.23077
    }
}
#ff3 .app-display .slick-track {
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(4*var(--rem))
}
#ff3 .app-display .slick-slide {
    width: calc(41.8*var(--rem))
}
#ff3 .app-display .slick-slide > div {
    height: 100%
}
#ff3 .app-display .slick-dots {
    position: absolute;
    bottom: calc(-2.4*var(--rem));
    left: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0 calc(.6*var(--rem));
    width: 100%
}
#ff3 .app-display .slick-dots li, #ff3 .app-display .slick-dots button {
    font-size: 0;
    line-height: 0
}
#ff3 .app-display .slick-dots li {
    width: calc(4*var(--rem));
    height: calc(.2*var(--rem));
    position: relative;
    background: #c5c5c5
}
#ff3 .app-display .slick-dots li.slick-active {
    background: #ff7403
}
#ff3 .app-display .slick-dots button {
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    background: none
}
#ff3 .app-display__image {
    width: calc(22.7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-display__image {
        width: calc(41.8*var(--rem))
    }
}
#ff3 .app-display__heading {
    margin-top: calc(1.8*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .app-display__heading {
        padding: 0 calc(1*var(--rem));
        font-size: calc(2.6*var(--rem));
        line-height: 2.23077
    }
}
@media screen and (max-width:767px) {
    #ff3 .app-display__text {
        padding: 0 calc(1*var(--rem));
        font-size: calc(2.6*var(--rem));
        line-height: 1.53846
    }
}
#ff3 .app-function {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center
}
@media screen and (max-width:767px) {
    #ff3 .app-function {
        margin-top: calc(.4*var(--rem))
    }
}
#ff3 .app-function__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    width: calc(18*var(--rem));
    padding: calc(1.2*var(--rem)) 0 calc(.4 * var(--rem))
}
#ff3 .app-function__item:not(:first-of-type) {
    border-left: calc(.1*var(--rem)) dotted #c8c8c8
}
@media screen and (max-width:767px) {
    #ff3 .app-function__item:not(:first-of-type) {
        border-width: calc(.2*var(--rem))
    }
}
#ff3 .app-function__image--1 {
    width: calc(3.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-function__image--1 {
        width: calc(4.7*var(--rem))
    }
}
#ff3 .app-function__image--2 {
    width: calc(3.1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-function__image--2 {
        width: calc(4.3*var(--rem))
    }
}
#ff3 .app-function__image--3 {
    width: calc(2.7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-function__image--3 {
        width: calc(3.7*var(--rem))
    }
}
#ff3 .app-function__image--4 {
    width: calc(3.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-function__image--4 {
        width: calc(4.8*var(--rem))
    }
}
#ff3 .app-function__heading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    height: calc(5.2*var(--rem));
    margin-top: calc(1.8*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 1.625;
    letter-spacing: 0;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .app-function__heading {
        font-size: calc(2*var(--rem));
        line-height: 1.4
    }
}
#ff3 .app-dl {
    padding-top: calc(5.4*var(--rem));
    border-top: calc(.1*var(--rem)) solid #c8c8c8
}
@media screen and (max-width:767px) {
    #ff3 .app-dl {
        margin-top: calc(1*var(--rem));
        padding: 0 calc(5*var(--rem));
        border-top: none
    }
}
#ff3 .app-dl__inner {
    width: 100%;
    max-width: calc(110*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(5*var(--rem));
    padding: calc(4.2*var(--rem)) calc(4 * var(--rem));
    border-radius: calc(2*var(--rem));
    box-shadow: 0 calc(.4*var(--rem)) calc(1.3 * var(--rem)) 0 rgba(0, 0, 0, .2);
    background-color: #fff
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__inner {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(1*var(--rem));
        padding: calc(2.4*var(--rem)) calc(3.4 * var(--rem))
    }
}
#ff3 .app-dl__header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(2*var(--rem));
    width: calc(50% - calc(5*var(--rem)))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__header {
        gap: calc(1.8*var(--rem));
        width: 100%
    }
}
#ff3 .app-dl__image {
    width: calc(12.1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__image {
        width: calc(19*var(--rem))
    }
}
#ff3 .app-dl__lead {
    font-size: calc(1.7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__lead {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .app-dl__name {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(.6*var(--rem))
}
#ff3 .app-dl__name-en {
    display: block;
    margin-top: calc(1.6*var(--rem));
    font-weight: 700;
    font-size: calc(2.7*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__name-en {
        margin-top: 0;
        font-size: calc(3.6*var(--rem));
        line-height: 1.16667
    }
}
#ff3 .app-dl__name-ja {
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__name-ja {
        margin-top: calc(-.6*var(--rem));
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .app-dl__bluetooth {
    width: calc(8*var(--rem));
    margin-top: calc(1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl__bluetooth {
        width: calc(9.6*var(--rem));
        margin-top: calc(.4*var(--rem))
    }
}
#ff3 .app-dl-list {
    display: -ms-flexbox;
    display: flex;
    gap: calc(5*var(--rem));
    width: 53%
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-list {
        gap: calc(2.2*var(--rem));
        width: 100%
    }
}
#ff3 .app-dl-list__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 50%
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-list__item {
        width: auto
    }
}
#ff3 .app-dl-list__button--1 {
    width: calc(13.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-list__button--1 {
        width: calc(24.6*var(--rem))
    }
}
#ff3 .app-dl-list__button--2 {
    width: calc(16.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-list__button--2 {
        width: calc(29.4*var(--rem))
    }
}
#ff3 .app-dl-qr {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(2*var(--rem));
    margin-top: calc(2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-qr {
        width: 100%;
        margin-top: calc(1*var(--rem))
    }
}
#ff3 .app-dl-qr__image {
    width: calc(7.4*var(--rem))
}
#ff3 .app-dl-qr__text {
    font-size: calc(1.4*var(--rem));
    letter-spacing: 0;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-qr__text {
        font-size: calc(2.2*var(--rem));
        text-align: left
    }
}
#ff3 .app-dl-qr__text small {
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-qr__text small {
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .app-dl-qr__text sup {
    font-size: .6em !important
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-qr__text sup {
        font-size: .4em !important;
        vertical-align: calc(.8*var(--rem))
    }
}
#ff3 .app-dl-notes {
    margin-top: calc(2.6*var(--rem));
    padding: 0 calc(5.2*var(--rem));
    font-size: calc(1.2*var(--rem));
    line-height: 1.66667
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-notes {
        padding: 0;
        font-size: calc(2.2*var(--rem));
        line-height: 1.36364
    }
}
@media screen and (max-width:767px) {
    #ff3 .app-dl-notes__item {
        padding-left: 1rem;
        text-indent: -1rem
    }
}
#ff3 .gift {
    padding: calc(11*var(--rem)) 0;
    background-color: #fef7f1;
}
#ff3 .gift__box {
    position: relative;
}
#ff3 .gift__box:not(:first-child) {
    margin-top: calc(6*var(--rem));
    padding-top: calc(6*var(--rem));
    border-top: 1px solid #c5c5c5;
}
#ff3 .gift__lead {
    margin-top: calc(3*var(--rem));
    font-size: calc(2*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .gift__lead {
        margin-top: calc(5*var(--rem));
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .gift__heading {
    font-weight: 700;
    font-size: calc(3.2*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .gift__heading {
        margin-top: calc(.2*var(--rem));
        font-size: calc(4*var(--rem));
    }
}
#ff3 .gift__columns {
    margin-top: calc(4*var(--rem));
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
@media screen and (max-width:767px) {
    #ff3 .gift__columns {
        display: block;
    }
}
#ff3 .gift__columns__column:nth-child(1) {
    width: calc(55*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .gift__columns__column:nth-child(1) {
        width: 100%;
    }
}
#ff3 .gift__columns__column:nth-child(2) {
    width: calc(49*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .gift__columns__column:nth-child(2) {
        margin-top: calc(1*var(--rem));
        width: 100%;
    }
}
#ff3 .gift__columns__column img {
    width: 100%;
}

#ff3 .gift__columns__column__img figcaption {
    margin-top: calc(1*var(--rem));
    text-align: right;
    font-size: calc(1.6*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .gift__columns__column__img figcaption {
        font-size: calc(2.2*var(--rem));
    }
}
#ff3 .gift__text {
    margin-bottom: calc(2.8*var(--rem));
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .gift__text {
        margin-top: calc(2.8*var(--rem));
        margin-bottom: 0;
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .gift__buttons.buttons {
    margin-top: calc(5*var(--rem));
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .gift__buttons.buttons .button.button--link {
        width: calc(65*var(--rem));
    }
}

#ff3 .plan {
    padding: calc(8.2*var(--rem)) 0;
    background-color: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .plan {
        padding: calc(10*var(--rem)) calc(5 * var(--rem)) calc(8.6 * var(--rem))
    }
}
#ff3 .plan__image {
    width: 100%;
    max-width: calc(30*var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(4.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan__image {
        max-width: calc(43.7*var(--rem))
    }
}
#ff3 .plan__lead {
    margin-top: calc(3.2*var(--rem));
    font-weight: 700;
    font-size: calc(2.8*var(--rem));
    line-height: 1.85714;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .plan__lead {
        margin-top: calc(2.2*var(--rem));
        font-size: calc(4*var(--rem));
        line-height: 1.65
    }
}
#ff3 .plan__text {
    width: 100%;
    max-width: calc(95*var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(2.4*var(--rem));
    font-size: calc(1.8*var(--rem));
    line-height: 1.77778
}
@media screen and (max-width:767px) {
    #ff3 .plan__text {
        font-size: calc(3*var(--rem));
        line-height: 1.93333;
        letter-spacing: 0
    }
}
#ff3 .plan-list {
    width: 100%;
    max-width: calc(110*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 0 calc(6*var(--rem));
    margin-top: calc(7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-list {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(6*var(--rem));
        max-width: 100%;
        margin-top: calc(6.2*var(--rem))
    }
}
#ff3 .plan-list__item {
    position: relative;
    width: calc(33.3% - calc(4*var(--rem)));
    padding: calc(5.6*var(--rem)) calc(2 * var(--rem)) calc(4.5 * var(--rem));
    background-color: #fff
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__item {
        width: 100%;
        padding: calc(3.2*var(--rem)) calc(2 * var(--rem)) calc(3.4 * var(--rem));
        border-radius: calc(1*var(--rem))
    }
}
#ff3 .plan-list__item:before {
    position: absolute;
    top: calc(-3*var(--rem));
    left: calc(1.4*var(--rem));
    width: calc(7.8*var(--rem));
    height: calc(7.8*var(--rem));
    display: block;
    border-radius: 50%;
    background: no-repeat center center / contain;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__item:before {
        width: calc(10*var(--rem));
        height: calc(10*var(--rem));
        left: calc(2*var(--rem))
    }
}
#ff3 .plan-list__item:first-of-type:before {
    background-image: url(../img/img_plan02.jpg)
}
#ff3 .plan-list__item:nth-of-type(2):before {
    background-image: url(../img/img_plan03.jpg)
}
#ff3 .plan-list__item:nth-of-type(3):before {
    background-image: url(../img/img_plan04.jpg)
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__item:nth-of-type(3) .plan-list__lead {
        text-align: left
    }
}
#ff3 .plan-list__heading {
    color: #ff7403;
    font-weight: 700;
    font-size: calc(2.8*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__heading {
        font-size: calc(4*var(--rem))
    }
}
#ff3 .plan-list__lead {
    height: calc(9*var(--rem));
    margin-top: calc(2*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 1.5;
    letter-spacing: .1em;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__lead {
        height: auto;
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .plan-list__price {
    font-weight: 700;
    font-size: calc(2.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__price {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .plan-list__price-number {
    font-size: calc(3.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__price-number {
        font-size: calc(4.6*var(--rem))
    }
}
#ff3 .plan-list__button {
    position: relative;
    cursor: pointer
}
#ff3 .plan-list__button:first-of-type {
    margin-top: calc(2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__button:first-of-type {
        margin-top: calc(2*var(--rem))
    }
}
#ff3 .plan-list__button:nth-of-type(n+2) {
    margin-top: calc(2.8*var(--rem))
}
#ff3 .plan-list__button a {
    color: #525050
}
#ff3 .plan-list__button span {
    display: block;
    padding: calc(1.4*var(--rem)) 0;
    border-bottom: calc(.1*var(--rem)) solid #c8c8c8;
    font-weight: 700;
    font-size: calc(1.6*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__button span {
        padding: calc(.8*var(--rem)) 0;
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .plan-list__button span:after {
    width: calc(3.6*var(--rem));
    height: calc(3.6*var(--rem));
    border-radius: 100%;
    position: absolute;
    top: calc(50% - calc(3.9*var(--rem)) / 2);
    right: 0;
    display: block;
    border: calc(.1*var(--rem)) solid #ff7403;
    content: ''
}
#ff3 .plan-list__button:before, #ff3 .plan-list__button:after {
    width: calc(1px + calc(1.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: calc(1.2*var(--rem));
    content: '';
    display: block;
    background: #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .plan-list__button:before, #ff3 .plan-list__button:after {
        height: calc(.3*var(--rem))
    }
}
#ff3 .plan-list__button:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .plan-list__button.is-show:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .plan-list__content {
    display: none
}
#ff3 .plan-detail {
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-detail {
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .plan-detail__text {
    margin-top: calc(1.5*var(--rem))
}
#ff3 .plan-note {
    height: calc(7.6*var(--rem));
    margin-top: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-note {
        height: auto;
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .plan-note__item {
    padding-left: 1em;
    text-indent: -1em;
    font-size: calc(1.2*var(--rem));
    line-height: 1.66667;
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .plan-note__item {
        font-size: calc(2.2*var(--rem));
        line-height: 1.54545
    }
}
#ff3 .plan__inner {
    position: relative
}
@media screen and (max-width:767px) {
    #ff3 .plan__inner {
        margin-top: calc(6.2*var(--rem));
        /* padding-top: calc(22*var(--rem)); */
        padding-top: 0;
    }
}
#ff3 .plan-comment {
    width: 100%;
    max-width: calc(110*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    gap: calc(4*var(--rem));
    margin-top: calc(5.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment {
        margin-top: calc(6.6*var(--rem))
    }
}
#ff3 .plan-comment__figure {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: calc(20.3*var(--rem));
    height: 100%
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__figure {
        width: calc(22.3*var(--rem))
    }
}
#ff3 .plan-comment__figure picture {
    height: 100%
}
#ff3 .plan-comment__figure img {
    width: 100%;
    height: 100%;
    object-fit: cover
}
#ff3 .plan-comment__body {
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    background-color: #fff
}
#ff3 .plan-comment__item {
    width: 100%;
    height: calc(15.8*var(--rem));
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    border-radius: calc(2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__item {
        height: calc(19.8*var(--rem))
    }
}
#ff3 .plan-comment__item:first-of-type .plan-comment__body:before {
    position: absolute;
    top: calc(50% - calc(1.2*var(--rem)) / 2);
    left: calc(-1*var(--rem));
    display: block;
    width: calc(1*var(--rem));
    height: calc(tan(60deg) * calc(1.2*var(--rem)) / 2);
    -webkit-clip-path: polygon(0 50%, 100% 0, 100% 100%);
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
    background-color: #fff;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__item:first-of-type .plan-comment__body:before {
        scale: 3
    }
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__item:first-of-type {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%
    }
}
#ff3 .plan-comment__item:nth-of-type(2) {
    margin-top: calc(9*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__item:nth-of-type(2) {
        margin-top: calc(0*var(--rem))
    }
}
#ff3 .plan-comment__item:nth-of-type(2) .plan-comment__image {
    -ms-flex-order: 1;
    order: 1
}
#ff3 .plan-comment__item:nth-of-type(2) .plan-comment__body:after {
    position: absolute;
    top: calc(50% - calc(1.2*var(--rem)) / 2);
    right: calc(-1*var(--rem));
    display: block;
    width: calc(1*var(--rem));
    height: calc(tan(60deg) * calc(1.2*var(--rem)) / 2);
    -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    background-color: #fff;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__item:nth-of-type(2) .plan-comment__body:after {
        scale: 3
    }
}
#ff3 .plan-comment__text {
    position: relative;
    font-size: calc(1.6*var(--rem));
    font-style: italic;
    line-height: 1.875;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .plan-comment__text {
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .plan-comment__text:before, #ff3 .plan-comment__text:after {
    color: #c88c5a;
    font-size: calc(4*var(--rem));
    line-height: 1
}
#ff3 .plan-comment__text:before {
    position: absolute;
    top: calc(-1.8*var(--rem));
    left: calc(-3.6*var(--rem));
    content: '“'
}
#ff3 .plan-comment__text:after {
    position: absolute;
    right: calc(-2.2*var(--rem));
    bottom: calc(-4.4*var(--rem));
    content: '”'
}
#ff3 .lineup__list {
    width: 100%;
    max-width: none;
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup__list {
        margin-top: calc(7*var(--rem));
        padding: 0
    }
}
#ff3 .price .section__inner{
    width:calc(110*var(--remff3));
    margin:0 auto
}
@media screen and (max-width:768px){
    #ff3 .price .section__inner{
        width:calc(65*var(--remff3))
    }
}
#ff3 .price__heading {
    margin-top: calc(2* var(--rem));
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1.94444;
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .price__heading {
        margin-top: calc(3* var(--rem));
        font-size: calc(5*var(--rem));
        line-height: 1.65217;
    }
}
#ff3 .price__sub-heading {
    text-align: center;
    margin-top: calc(5* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .price__sub-heading {
        text-align: center;
        margin-top: calc(6* var(--rem));
    }
}
#ff3 .price__sub-heading__text {
    text-align: center;
    padding-bottom: calc(.8*var(--rem));
    border-bottom: 3px solid #ed6c00;
    font-size: calc(2.6*var(--rem));
    line-height: 1;
}
@media screen and (max-width:767px) {
    #ff3 .price__sub-heading__text {
        display: inline-block;
        padding-bottom: calc(.8*var(--rem));
        font-size: calc(3.8*var(--rem));
    }
}
#ff3 .price .lineup__item{
    display:none;
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__item{
        position:relative;
        padding:0
    }
}
#ff3 .price .lineup__item.is-active{
    display:block
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__item:nth-of-type(2) .lineup__heading,#ff3 .price .lineup__item:nth-of-type(4) .lineup__heading{
        top:calc(53*var(--remff3))
    }
}
#ff3 .lineup__detail {
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
    /*margin-left: calc(2.8*var(--rem));*/
}
@media screen and (max-width:767px) {
	#ff3 .lineup__detail {
		margin-left: 0;
	}
}
	
@media screen and (max-width:767px) {
    #ff3 .lineup__detail {
        position: relative;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 0
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup__image {
        width: calc(65*var(--rem));
        margin-top: 0;
        margin-right: 0
    }
}
@media screen and (min-width:751px) {
    #ff3 .lineup__image img {
        width: 100%
    }
    #ff3 .lineup__image--01 {
        width: calc(50*var(--rem));
        margin-right: calc(4.6*var(--rem))
    }
    #ff3 .lineup__image--02 {
        width: calc(50.4*var(--rem));
        margin-right: calc(4.4*var(--rem))
    }
}
#ff3 .lineup__figure {
    text-align: right;
    width: calc(55*var(--remff3));
}
@media screen and (max-width:767px) {
    #ff3 .lineup__figure {
        width: calc(60.6*var(--remff3));
        margin-left: auto;
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup__body {
        width: 100%
    }
}

#ff3 .lineup__product_ttl{
	font-size: calc(2.8*var(--rem));
	line-height: 1.6;
	font-weight: 600;
}

@media screen and (max-width:767px) {
	#ff3 .lineup__product_ttl{
		font-size: calc(3.8*var(--rem));
		margin-top:1em;
		padding:0 calc(2*var(--rem));
	}
}

#ff3 .lineup__heading {
    font-size: calc(2.4*var(--rem));
    line-height: 2;
    letter-spacing: -.03em
}
@media screen and (max-width:767px) {
    #ff3 .lineup__heading {
        position: absolute;
        top: calc(50* var(--remff3));
        left: 0;
        font-size: calc(2.4* var(--remff3));
        line-height: calc(46 / 24);
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: calc(46 / 24* 3em);
        text-align: center;
        width: 100%;
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup__heading--01 {
        /*padding: 0 calc(6*var(--rem))*/
		padding: 0 calc(2*var(--rem));
    }
}
#ff3 .lineup__notes {
    margin-top: calc(1*var(--rem));
    padding-left: 1.3em;
    text-indent: -1.3em;
    font-size: calc(1.2*var(--rem));
    line-height: 1.42857
}
@media screen and (max-width:767px) {
    #ff3 .lineup__notes {
        padding: 0 calc(2*var(--rem)) 0 calc(3 * var(--rem));
        font-size: calc(1.9*var(--rem))
    }
}
#ff3 .lineup__coupon {
    margin-top: calc(2*var(--rem));
    width: calc(45* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .lineup__coupon {
        margin-top: calc(3*var(--rem));
        width: 100%;
    }
}
#ff3 .lineup__coupon__anchor {
    display: block;
    position: relative;
    border-radius: calc(0.5*var(--rem));
    /*padding: calc(1.65*var(--rem)) calc(2*var(--rem));*/
	padding: calc(1.65*var(--rem)) calc(1*var(--rem));
    /*background-color: #fdf0e5;*/
	background-color: #fff;
	border:1px solid #00b900;
    transition: .4s;
	text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .lineup__coupon__anchor {
        padding: calc(2*var(--rem)) calc(2*var(--rem));
		line-height: 1.4;
    }
}
#ff3 .lineup__coupon__anchor:hover {
    opacity: .7;
}
#ff3 .lineup__coupon__anchor:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    /*right: calc(3*var(--rem));*/
	right: calc(1*var(--rem));
    width: calc(0.7*var(--rem));
    height: calc(0.7*var(--rem));
    margin: auto;
    /*border-top: 1px solid #2c2c2c;
    border-right: 1px solid #2c2c2c;*/
	border-top: 1px solid #00b900;
    border-right: 1px solid #00b900;
    transform: rotate(45deg);
    box-sizing: border-box;
}
@media screen and (max-width:767px) {
    #ff3 .lineup__coupon__anchor:after {
		right: calc(3*var(--rem));
        width: calc(1*var(--rem));
        height: calc(1*var(--rem));
    }
}
#ff3 .lineup__coupon__anchor__text {
    font-weight: bold;
    font-size: calc(1.6*var(--rem));
	color: #00b900;
}
@media screen and (max-width:767px) {
    #ff3 .lineup__coupon__anchor__text {
        font-size: calc(2.9*var(--rem));
    }
}

#ff3 .lineup__button {
    margin-top: calc(7*var(--rem))
}
#ff3 .lineup__button .button--cart:after,
#ff3 .lineup-boxset .button--cart:after {
    rotate: -90deg
}
#ff3 .lineup__payment {
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(4*var(--rem));
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: calc(3*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup__payment {
        -ms-flex-direction: column;
        flex-direction: column
    }
}
#ff3 .lineup__aside {
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(4*var(--rem));
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: calc(5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup__aside {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(2*var(--rem))
    }
}
#ff3 .lineup-price {
    margin-top: calc(1.5*var(--rem));
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .lineup-price {
        margin-top: calc(2*var(--rem));
        padding: 0 calc(2*var(--rem));
        font-size: calc(4*var(--rem));
        justify-content: center;
    }
}
#ff3 .lineup-price small {
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-price small {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .lineup-price__item {
    padding: calc(.3*var(--rem)) 0
}
#ff3 .lineup-price__item:nth-of-type(n+2) {
    margin-top: calc(1*var(--rem));
    padding-top: calc(1*var(--rem));
    border-top: 1px solid #525050
}
@media screen and (max-width:767px) {
    #ff3 .lineup-price__item:nth-of-type(n+2) {
        margin-top: calc(2*var(--rem));
        padding-top: calc(.5*var(--rem))
    }
}
#ff3 .lineup-price__item .lineup-price__item__installment {
    display: inline-block;
    font-weight: normal;
    margin-bottom: calc(1.5*var(--rem));
    font-size: calc(1.5 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .lineup-price__item .lineup-price__item__installment {
        margin-bottom: calc(1.5*var(--rem));
        font-size: calc(2.2 * var(--rem));
    }
}
#ff3 .lineup-price__item .lineup-price__item__installment__small {
   font-size: calc(1.2 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .lineup-price__item .lineup-price__item__installment__small {
    font-size: calc(1.5 * var(--rem));
    }
}
#ff3 .lineup-check {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: calc(2.5*var(--rem)) calc(3 * var(--rem));
    width: calc(45*var(--rem));
    margin-top: calc(1.5*var(--rem));
    padding: calc(2.5*var(--rem)) 0 calc(2.2 * var(--rem)) calc(4.5 * var(--rem));
    background: #efefef;
    font-size: calc(1.6*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .lineup-check {
        width: 100%;
        max-width: calc(60*var(--rem));
        margin-left: auto;
        margin-right: auto;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(2*var(--rem));
        padding: calc(3.5*var(--rem)) 0 calc(3.5 * var(--rem)) calc(7 * var(--rem));
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .lineup-check__item {
    position: relative;
    padding-left: calc(2.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-check__item {
        padding-left: calc(4*var(--rem))
    }
}
#ff3 .lineup-check__item:before {
    width: calc(1.6*var(--rem));
    height: calc(1.6*var(--rem));
    position: absolute;
    top: calc(50% - calc(.9*var(--rem)));
    left: 0;
    content: '';
    display: block;
    background: url(../img/icn_check.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .lineup-check__item:before {
        width: calc(2*var(--rem));
        height: calc(2*var(--rem));
        position: absolute;
        top: calc(50% - calc(1.1*var(--rem)));
        left: 0
    }
}
#ff3 .lineup-program {
    width: calc(45*var(--rem));
    margin-top: calc(2.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-program {
        width: 100%;
        margin-top: calc(5.2*var(--rem))
    }
}
#ff3 .lineup-program__heading {
    font-weight: 700
}
#ff3 .lineup-program__list {
    margin-top: calc(1.5*var(--rem));
    counter-reset: list
}
@media screen and (max-width:767px) {
    #ff3 .lineup-program__list {
        width: 100%;
        margin-top: calc(1*var(--rem))
    }
}
#ff3 .lineup-program__item {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(6*var(--rem));
    background: #efefef;
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .lineup-program__item {
        min-height: calc(7*var(--rem));
        font-size: calc(3*var(--rem));
        letter-spacing: 0
    }
}
#ff3 .price .lineup-program__item.is-disabled {
    opacity: .25;
}
#ff3 .lineup-program__item small {
    font-size: calc(1.6*var(--rem));
    font-weight: 400
}
@media screen and (max-width:767px) {
    #ff3 .lineup-program__item small {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .lineup-program__item:before {
    counter-increment: list;
    content: counter(list);
    display: inline-block;
    width: calc(6*var(--rem));
    margin-right: calc(2*var(--rem));
    font-family: futura-pt, sans-serif;
    font-size: calc(3*var(--rem));
    font-weight: 700;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .lineup-program__item:before {
        font-weight: 500;
        font-family: futura-pt, sans-serif;
        font-size: calc(5*var(--rem))
    }
}
#ff3 .lineup-program__item:after {
    width: 2px;
    height: calc(100% - calc(2*var(--rem)));
    position: absolute;
    top: calc(1*var(--rem));
    left: calc(6*var(--rem));
    content: '';
    display: block;
    background-image: linear-gradient(to bottom, #979797, #979797 2px, transparent 2px, transparent calc(.5*var(--rem)));
    background-size: 2px calc(.5*var(--rem));
    background-repeat: repeat-y
}
#ff3 .lineup-program__item:nth-of-type(n+2) {
    margin-top: calc(1.5*var(--rem))
}
#ff3 .lineup-function {
    display: -ms-flexbox;
    display: flex;
    margin-top: calc(3*var(--rem));
    margin-right: calc(-10*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function {
        margin-top: calc(5*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function--multi {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: calc(1.6*var(--rem))
    }
}
#ff3 .lineup-function__heading {
    margin-top: calc(.3*var(--rem));
    font-weight: 700;
    margin-right: calc(2*var(--rem));
    white-space: nowrap
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__heading--multi {
        width: 100%
    }
}
#ff3 .lineup-function__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: calc(1*var(--rem)) 0;
    margin-right: calc(2*var(--rem));
    font-size: calc(1.6*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__list {
        font-size: calc(2.6*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__list--multi {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
        gap: calc(1*var(--rem)) !important;
        width: 100%
    }
}
#ff3 .lineup-function__list__caption {
    white-space: nowrap
}
#ff3 .lineup-function__list__caption small {
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__list__caption small {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .lineup-function__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(3.6*var(--rem));
    padding: 0 calc(2*var(--rem));
    border: 1px solid #979797;
    border-radius: calc(1.8*var(--rem));
    white-space: nowrap
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__item {
        height: calc(5*var(--rem));
        border-radius: calc(2.5*var(--rem))
    }
}
#ff3 .lineup-function__image {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__image {
        width: 100%;
        margin-top: calc(8*var(--rem));
        font-size: calc(3*var(--rem))
    }
}
#ff3 .lineup-function__image img {
    width: calc(4.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__image img {
        width: calc(5.9*var(--rem))
    }
}
#ff3 .lineup-function__image picture {
    margin-right: calc(1.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__image picture {
        width: calc(5.9*var(--rem));
        margin: 0 calc(6*var(--rem))
    }
}
#ff3 .lineup-function__caption {
    line-height: calc(28/16)
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__caption {
        line-height: calc(58/30)
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup-function__caption small {
        font-size: calc(3*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .lineup__button {
        margin-top: calc(5*var(--rem));
        font-size: calc(3*var(--rem))
    }
}
#ff3 .lineup-monthly {
    width: calc(49.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-monthly {
        width: 100%
    }
}
#ff3 .lineup-monthly__heading {
    position: relative;
    padding-top: calc(1.5*var(--rem));
    padding-bottom: calc(1.5*var(--rem));
    border-bottom: 2px solid #c5c5c5;
    font-size: calc(1.6*var(--rem));
    font-weight: 700;
    text-align: center;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .lineup-monthly__heading {
        font-size: calc(2.6*var(--rem));
        text-align: left
    }
}
#ff3 .lineup-monthly__heading:before, #ff3 .lineup-monthly__heading:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403
}
#ff3 .lineup-monthly__heading:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .lineup-monthly__heading.is-show:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .lineup-monthly__body {
    display: none
}
#ff3 .lineup-monthly__list {
    padding-top: calc(1.5*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 2;
    letter-spacing: 0
}
@media screen and (max-width:767px) {
    #ff3 .lineup-monthly__list {
        padding-top: calc(2.5*var(--rem));
        padding-left: calc(3.2*var(--rem));
        font-size: calc(2.6*var(--rem));
        line-height: 1.53846
    }
}
#ff3 .lineup-monthly__list:nth-of-type(n+2) {
    margin-top: calc(2*var(--rem))
}
#ff3 .lineup-jaccs {
    width: calc(49.5*var(--rem));
    margin-top: calc(1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-jaccs {
        width: 100%;
        margin-top: calc(4*var(--rem))
    }
}
#ff3 .lineup-jaccs__heading {
    font-size: calc(1.6*var(--rem));
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .lineup-jaccs__heading {
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .lineup-jaccs__heading span {
    color: #ed6c00;
    text-decoration: underline;
    cursor: pointer
}
#ff3 .lineup-jaccs__heading span:hover {
    text-decoration: none
}
#ff3 .lineup-notes {
    margin-top: calc(1*var(--rem));
    padding-left: 1.5em;
    text-indent: -1.5em;
    font-size: calc(1.2*var(--rem));
    line-height: 1.66667;
    
}
@media screen and (max-width:767px) {
    #ff3 .lineup-notes {
        font-size: calc(2.2*var(--rem));
        
    }
}
#ff3 .lineup-merit {
    width: calc(53*var(--rem));
    padding: calc(3*var(--rem)) 0 calc(3.5 * var(--rem));
    background: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .lineup-merit {
        width: 100%;
        padding: calc(3.5*var(--rem)) 0
    }
}
#ff3 .lineup-merit__heading {
    font-weight: 700;
    text-align: center
}
#ff3 .lineup-merit__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: calc(1.5*var(--rem)) calc(3 * var(--rem));
    margin-top: calc(4*var(--rem));
    padding: 0 0 0 calc(3.5*var(--rem));
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-merit__list {
        -ms-flex-direction: row; /* 横並びに変更 */
        flex-direction: row;
        -ms-flex-wrap: wrap; /* 折り返しを許可 */
        flex-wrap: wrap;
        gap: calc(.8*var(--rem));
        margin-top: calc(2.6*var(--rem));
        font-size: calc(2.6*var(--rem))
    }
}
#ff3 .lineup-merit__item {
    position: relative;
    min-width: calc(19*var(--rem));
    padding-left: calc(2.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .lineup-merit__item {
        margin-left: calc(9*var(--rem));
        padding-left: calc(4*var(--rem));
        /* width: calc(50% - calc(4.9*var(--rem))); */
    }
    #ff3 .lineup-merit__item:nth-child(n+3) {
        width: 100%; /* 3番目以降は100%幅に設定 */
    }
}
#ff3 .lineup-merit__item:before {
    width: calc(1.6*var(--rem));
    height: calc(1.6*var(--rem));
    position: absolute;
    top: calc(.4*var(--rem));
    left: 0;
    content: '';
    display: block;
    background: url(../img/icn_check.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .lineup-merit__item:before {
        width: calc(2*var(--rem));
        height: calc(2*var(--rem));
        position: absolute;
        top: calc(1*var(--rem));
        left: 0
    }
}
#ff3 .lineup-warranty {
    width: calc(110*var(--rem));
    padding: calc(3*var(--rem)) calc(3.5 * var(--rem)) calc(3.5 * var(--rem));
    background: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .lineup-warranty {
        width: 100%;
        padding: calc(4*var(--rem)) calc(5.8 * var(--rem))
    }
}
#ff3 .lineup-warranty__heading {
    font-weight: 700;
    text-align: center
}
#ff3 .lineup-warranty__heading span {
    position: relative;
    display: inline-block;
    padding-left: calc(3.9*var(--rem))
}
#ff3 .lineup-warranty__heading span:before {
    width: calc(2.9*var(--rem));
    height: calc(3.8*var(--rem));
    position: absolute;
    top: calc(50% - calc(1.9*var(--rem)));
    left: 0;
    content: '';
    display: block;
    background: url(../img/icn_warranty.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .lineup-warranty__heading span:before {
        top: calc(50% - calc(2.4*var(--rem)));
        left: calc(-.4*var(--rem))
    }
}
#ff3 .lineup-warranty__lead {
    margin-top: calc(1.5*var(--rem));
    font-size: calc(1.6*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .lineup-warranty__lead {
        font-size: calc(2.6*var(--rem));
        text-align: left
    }
}
#ff3 .lineup-warranty__button {
    margin-top: calc(1*var(--rem));
    margin-bottom: calc(1.5*var(--rem));
    font-size: calc(1.6*var(--rem));
    font-weight: 700;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .lineup-warranty__button {
        font-size: calc(2.6*var(--rem));
        text-align: left
    }
}
#ff3 .lineup-warranty__button a {
    position: relative;
    display: inline-block;
    text-decoration: underline
}
#ff3 .lineup-warranty__button a:hover {
    text-decoration: none
}
#ff3 .lineup-warranty__button a:after {
    width: calc(1.4*var(--rem));
    height: calc(1.4*var(--rem));
    position: absolute;
    top: calc(50% - calc(.7*var(--rem)));
    right: calc(-2*var(--rem));
    content: '';
    display: block;
    background: url(../img/icn_blank_gray.png) no-repeat center center/contain
}
@media screen and (max-width:767px) {
    #ff3 .lineup-warranty__button a:after {
        width: calc(2*var(--rem));
        height: calc(2*var(--rem));
        top: calc(50% - calc(1*var(--rem)));
        right: calc(-3*var(--rem))
    }
}
#ff3 .set {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    border: calc(.2*var(--rem)) solid #424242 !important;
    border-radius: calc(1*var(--rem));
    padding: calc(5.4*var(--rem)) 10px calc(5 * var(--rem)) !important
}
@media screen and (max-width:767px) {
    #ff3 .set {
        padding: calc(4.4*var(--rem)) calc(3 * var(--rem)) calc(3.8 * var(--rem)) !important;
        border-width: 1px !important
    }
}
#ff3 .set--heat {
    margin-top: calc(8*var(--rem)) !important
}
#ff3 .set__head {
    width: 100%;
    max-width: calc(110*var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: calc(1.5*var(--rem));
    border-bottom: calc(.2*var(--rem)) solid #424242
}
@media screen and (max-width:767px) {
    #ff3 .set__head {
        gap: calc(1.5*var(--rem))
    }
}
#ff3 .set__heading {
    font-weight: 700;
    font-size: calc(3.6*var(--rem));
    line-height: calc(60/36);
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .set__heading {
        font-size: calc(4*var(--rem));
        line-height: calc(50/40)
    }
}
#ff3 .set__text {
    margin-top: calc(1*var(--rem));
    font-weight: 700;
    font-size: calc(2.4*var(--rem));
    line-height: calc(40/24);
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .set__text {
        margin-top: calc(-.5*var(--rem))
    }
}
#ff3 .set__body {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: calc(7*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__body {
        margin-top: calc(6*var(--rem))
    }
}
#ff3 .set__inner {
    display: -ms-flexbox;
    display: flex;
    gap: calc(4*var(--rem));
    padding-left: calc(9*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__inner {
        display: contents;
        padding-left: 0
    }
}
#ff3 .set__content {
    width: calc(53*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__content {
        width: auto
    }
}
@media screen and (max-width:767px) {
    #ff3 .set__detail {
        display: contents
    }
}
#ff3 .set__image--01 {
    width: calc(54.7*var(--rem))
}
#ff3 .set__image--02 {
    width: calc(54.1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__image--02 {
        margin-top: calc(1.5*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set__image {
        width: 100%
    }
}
#ff3 .set .list-gift {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    margin-top: calc(5.3*var(--rem));
    padding: calc(3.5*var(--rem)) 0 calc(1.4 * var(--rem));
    border: 1px solid #424242;
    border-radius: calc(.5*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift {
        margin-top: calc(8*var(--rem));
        padding: calc(6*var(--rem)) 0 calc(3 * var(--rem))
    }
}
#ff3 .set .list-gift:before, #ff3 .set .list-gift:after {
    position: absolute;
    top: calc(-3*var(--rem));
    left: calc(50% - calc(1.5*var(--rem)));
    width: calc(3*var(--rem));
    height: calc(.3*var(--rem));
    background-color: #525050;
    content: ''
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift:before, #ff3 .set .list-gift:after {
        width: calc(5*var(--rem));
        height: calc(.5*var(--rem));
        top: calc(-5*var(--rem));
        left: calc(50% - calc(2.5*var(--rem)))
    }
}
#ff3 .set .list-gift:before {
    rotate: 90deg
}
#ff3 .set .list-gift__item {
    width: calc(22*var(--rem));
    height: calc(16*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift__item {
        width: 50%;
        height: calc(22.6*var(--rem))
    }
}
#ff3 .set .list-gift__image {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column
}
#ff3 .set .list-gift__image span {
    width: calc(22*var(--rem));
    height: calc(12.4*var(--rem));
    display: block;
    position: relative
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift__image span {
        width: 100%;
        height: calc(18*var(--rem))
    }
}
#ff3 .set .list-gift__image span img {
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 0

}
#ff3 .set .list-gift__image figcaption {
    margin-top: calc(1.2*var(--rem));
    font-weight: 700;
    font-size: calc(1.6*var(--rem));
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift__image figcaption {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .set .list-gift__image--01 img {
    width: calc(14.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift__image--01 img {
        width: calc(20.9*var(--rem))
    }
}
#ff3 .set .list-gift__image--02 img {
    width: calc(15.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set .list-gift__image--02 img {
        width: calc(22.1*var(--rem))
    }
}
#ff3 .set__subheading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    gap: calc(1.8*var(--rem));
    margin-top: calc(3.5*var(--rem))
}
#ff3 .set__subheading--heat {
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(2.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__subheading {
        -ms-flex-direction: column;
        flex-direction: column;
        gap: calc(2.2*var(--rem));
        margin-top: calc(5.5*var(--rem))
    }
}
#ff3 .set__subheading:before {
    padding: calc(.8*var(--rem)) calc(1 * var(--rem)) calc(.4 * var(--rem));
    border-radius: calc(.6*var(--rem));
    background-color: #ed6c00;
    color: #fff;
    font-weight: 700;
    font-size: calc(2.2*var(--rem));
    line-height: 1;
    content: '期間限定'
}
@media screen and (max-width:767px) {
    #ff3 .set__subheading:before {
        font-size: calc(3*var(--rem))
    }
}
#ff3 .set__subheading img {
    width: calc(29.3*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__subheading img {
        width: calc(30.3*var(--rem))
    }
}
#ff3 .set__copy {
    margin-top: calc(1.5*var(--rem));
    color: #979797;
    font-weight: 700;
    font-size: calc(1.8*var(--rem));
    letter-spacing: 0;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .set__copy {
        margin-top: calc(3*var(--rem));
        font-size: calc(3*var(--rem));
        line-height: calc(46/30)
    }
}
#ff3 .set__note {
    font-size: calc(2.4*var(--rem));
    line-height: calc(48/24)
}
@media screen and (max-width:767px) {
    #ff3 .set__note {
        -ms-flex-order: -1;
        order: -1;
        font-size: calc(3.6*var(--rem));
        line-height: calc(56/36)
    }
}
@media screen and (max-width:767px) {
    #ff3 .set__note--slim {
        padding: 0 calc(3.5*var(--rem))
    }
}
#ff3 .set__price {
    margin-top: calc(1.6*var(--rem));
    font-weight: 700;
    font-size: calc(3.2*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .set__price {
        margin-top: calc(3*var(--rem));
        font-size: calc(4*var(--rem));
        text-align: center
    }
}
#ff3 .set__price small {
    font-size: calc(1.6*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set__price small {
        font-size: calc(2.6*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-function {
        display: contents
    }
}
#ff3 .set .lineup-function__heading {
    margin-right: calc(1.5*var(--rem))
}
#ff3 .set .lineup-function__content {
    display: -ms-flexbox;
    display: flex
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-function__content {
        margin-top: calc(5*var(--rem))
    }
}
#ff3 .set .lineup-function__list {
    margin-right: calc(1*var(--rem))
}
#ff3 .set .lineup-function__item {
    padding: 0 calc(1.5*var(--rem))
}
#ff3 .set .lineup-function__item--set {
    margin-left: calc(-13*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-function__image {
        -ms-flex-order: 1;
        order: 1
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-function--multi .lineup-function__content {
        -ms-flex-direction: column;
        flex-direction: column;
        padding-bottom: calc(5*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-function--multi .lineup-function__list {
        -ms-flex-direction: row;
        flex-direction: row;
        gap: calc(1*var(--rem));
        margin-top: calc(1.5*var(--rem))
    }
}
#ff3 .set__check {
    margin-top: calc(3*var(--rem));
    background-color: #efefef
}
@media screen and (max-width:767px) {
    #ff3 .set__check {
        margin-top: calc(4*var(--rem))
    }
}
#ff3 .set .lineup-check {
    margin-top: 0
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-check {
        width: fit-content;
        padding-left: 0
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-program__item {
        letter-spacing: 0
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-program__item:before {
        width: calc(4*var(--rem)) !important;
        margin-right: calc(1*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-program__item:after {
        left: calc(4*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-merit__item {
        margin-left: calc(7*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-merit__item--order {
        -ms-flex-order: 1;
        order: 1
    }
}
@media screen and (min-width:751px) {
    #ff3 .set .lineup-merit__item--set {
        margin-top: calc(-2.5*var(--rem))
    }
}
#ff3 .set .lineup__button {
    margin-top: calc(5*var(--rem))
}
#ff3 .set .lineup__button--heat {
    margin-top: calc(4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup__button a {
        width: calc(59*var(--rem));
        letter-spacing: 0
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup__button a:after {
        right: calc(3.5*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup__aside {
        -ms-flex-order: 2;
        order: 2
    }
}
@media screen and (max-width:767px) {
    #ff3 .set .lineup-warranty {
        padding-right: calc(3.2*var(--rem));
        padding-left: calc(3.2*var(--rem))
    }
}
#ff3 .faq__list {
    width: 100%;
    margin-top: calc(4.5*var(--rem))
}
#ff3 .faq__list.is-show .faq__item:nth-of-type(n+5) {
    display: block
}
#ff3 .faq__item:nth-of-type(n+2) {
    margin-top: calc(.2*var(--rem))
}
#ff3 .faq__q {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(9*var(--rem));
    padding: calc(1.5*var(--rem)) calc(11 * var(--rem));
    background: #efefef;
    font-size: calc(1.8*var(--rem));
    text-align: center;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .faq__q {
        -ms-flex-pack: start;
        justify-content: flex-start;
        font-size: calc(2.4*var(--rem));
        padding: calc(2*var(--rem)) calc(9 * var(--rem)) calc(2 * var(--rem)) calc(3 * var(--rem));
        height: auto;
        text-align: left;
        letter-spacing: 0
    }
}
#ff3 .faq__q:before, #ff3 .faq__q:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: calc(5*var(--rem));
    content: '';
    display: block;
    background: #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .faq__q:before, #ff3 .faq__q:after {
        position: absolute;
        top: calc(50% - 1px);
        right: calc(4*var(--rem));
        height: calc(.3*var(--rem))
    }
}
#ff3 .faq__q:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .faq__q.is-show:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .faq__a {
    display: none;
    font-size: calc(1.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .faq__a {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .faq__text {
    padding: calc(1*var(--rem)) 0 calc(2 * var(--rem))
}
#ff3 .faq__text a {
    font-weight: 700;
    text-decoration: underline
}
#ff3 .faq__text a:hover {
    text-decoration: none
}
#ff3 .faq__button {
    margin-top: calc(2*var(--rem));
    font-size: calc(1.4*var(--rem));
    font-weight: 700;
    text-align: center;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .faq__button {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .faq__button span {
    position: relative;
    display: inline-block;
    padding: 0 calc(6*var(--rem))
}
#ff3 .faq__button span:before, #ff3 .faq__button span:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .faq__button span:before, #ff3 .faq__button span:after {
        position: absolute;
        top: calc(50% - calc(.3*var(--rem)) / 2);
        right: 0;
        height: calc(.3*var(--rem))
    }
}
#ff3 .faq__button span:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .faq__button span.is-show:after {
    rotate: 180deg
}
#ff3 .attention {
    margin-top: calc(10*var(--rem));
    padding: 0;
}
#ff3 .attention .section__inner {
    background: #efefef
}
#ff3 .attention__heading {
    padding: calc(5*var(--rem));
    cursor: pointer;
    font-size: calc(2.8*var(--rem));
    line-height: 1;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .attention__heading {
        font-size: calc(4*var(--rem))
    }
}
#ff3 .attention__heading span {
    position: relative;
    display: block;
    padding: 0 calc(17*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .attention__heading span {
        padding: 0
    }
}
#ff3 .attention__heading span:before, #ff3 .attention__heading span:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403
}
@media screen and (max-width:767px) {
    #ff3 .attention__heading span:before, #ff3 .attention__heading span:after {
        position: absolute;
        top: calc(50% - calc(.1*var(--rem)) / 2);
        right: 0;
        width: calc(3*var(--rem));
        height: calc(.1*var(--rem))
    }
}
#ff3 .attention__heading span:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s
}
#ff3 .attention__heading.is-show span:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1)
}
#ff3 .attention__content {
    display: none;
    padding: 0 calc(5*var(--rem)) calc(5 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .attention__content {
        padding: 0 calc(3*var(--rem)) calc(5 * var(--rem))
    }
}
#ff3 .attention__content > :first-child {
    margin-top: 0
}
#ff3 .attention__sub-heading {
    margin-top: calc(4*var(--rem));
    padding: calc(.5*var(--rem)) 0 calc(.2 * var(--rem));
    color: #fff;
    background: #6f6f6f;
    font-weight: 700;
    line-height: 1;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .attention__sub-heading {
        margin-top: calc(3*var(--rem));
        padding-bottom: calc(.6*var(--rem))
    }
}
#ff3 .attention__body {
    margin-top: calc(1*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .attention__body {
        margin-top: calc(2.2*var(--rem))
    }
}
#ff3 .attention__body > :first-child {
    margin-top: 0
}
#ff3 .attention__text {
    margin-top: calc(2.5*var(--rem));
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .attention__text {
        font-size: calc(2.8*var(--rem));
        line-height: 1.28571
    }
}
#ff3 .attention__text--center {
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .attention__text--center {
        text-align: left
    }
}
#ff3 .attention__text strong {
    color: #ed6c00;
    font-weight: 700
}
#ff3 .attention__notes {
    font-size: calc(1.6*var(--rem));
    line-height: 1.875
}
@media screen and (max-width:767px) {
    #ff3 .attention__notes {
        font-size: calc(2.4*var(--rem));
        line-height: 1.5
    }
}
#ff3 .attention-list {
    margin-top: calc(.5*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 1.875
}
@media screen and (max-width:767px) {
    #ff3 .attention-list {
        margin-top: calc(1.2*var(--rem));
        font-size: calc(2.4*var(--rem));
        line-height: 1.25
    }
}
#ff3 .attention-list__item {
    padding-left: 1em;
    text-indent: -1em
}
#ff3 .attention-list__item em {
    font-weight: 700;
    font-style: normal
}

#ff3 .section.yoridori {
    margin-top: calc(3.5 * var(--rem));
    padding: 0;
}
#ff3 .yoridori-box {
    border: 2px solid #ed6c00;
}
#ff3 .yoridori-box__contents {
    background-color: #ffffff;
    padding: calc(3.5 * var(--rem)) calc(3.5 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents {
        padding: 0 calc(4 * var(--rem)) calc(7 * var(--rem));
    }
}
#ff3 .yoridori-box__contents__columns {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns {
        display: block;
    }
}
#ff3 .yoridori-box__contents__columns__column:nth-child(1) {
    text-align: center;
    width: calc(45 * var(--rem));
    order: 2;
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns__column:nth-child(1) {
        width: 100%;
    }
}
#ff3 .yoridori-box__contents__columns__column:nth-child(2) {
    width: calc(51.2 * var(--rem));
    order: 1;
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns__column:nth-child(2) {
        margin-top: calc(4*var(--rem));
        width: 100%;
    }
}
#ff3 .yoridori-box__contents__columns__column__head span {
    display: inline-block;
    font-size: calc(2.5*var(--rem));
    padding-bottom: calc(.4*var(--rem));
    border-bottom: 2px solid #000;
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns__column__head span {
        font-size: calc(3.8*var(--rem));
        border-bottom: 1px solid #000;
    }
}
#ff3 .yoridori-box__contents__columns__column__text {
    margin-top: calc(1.5*var(--rem));
    font-size: calc(2*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns__column__text {
        margin-top: calc(3*var(--rem));
        font-size: calc(2.8*var(--rem));
    }
}
#ff3 .yoridori-box__contents__columns__column__product {
    margin-top: calc(2.5*var(--rem));
    width: calc(45*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns__column__product {
        display: none;
    }
}
#ff3 .yoridori-box__contents__columns__column__note {
    margin-top: calc(1 * var(--rem));
	font-size: calc(1.2 * var(--rem));
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	#ff3 .yoridori-box__contents__columns__column__note {
		margin-top: calc(2 * var(--rem));
		font-size: calc(2 * var(--rem));
	}
}
#ff3 .yoridori-box__contents__columns__column__button {
    margin-top: calc(3*var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .yoridori-box__contents__columns__column__button {
        margin-top: calc(3*var(--rem));
    }
    #ff3 .yoridori-box__contents__columns__column__button .button {
        width: calc(57 * var(--rem));
    }
}

#ff3 .spec__list {
    width: 100%;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto
}
@media screen and (max-width:767px) {
    #ff3 .spec__list {
        padding: 0 calc(5*var(--rem))
    }
}
#ff3 .spec__item {
    margin-top: calc(5*var(--rem))
}
#ff3 .spec__item:nth-of-type(n+2) {
    margin-top: calc(7*var(--rem));
    padding-top: calc(7*var(--rem));
    border-top: 1px solid #dcdddd
}
@media screen and (max-width:767px) {
    #ff3 .spec__item:nth-of-type(n+2) {
        padding-top: calc(5*var(--rem))
    }
}
#ff3 .spec__heading {
    color: #979797;
    font-weight: 700;
    text-align: center
}
#ff3 .spec__table {
    width: 100%;
    margin-top: calc(4*var(--rem));
    font-size: calc(1.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .spec__table {
        width: 100%;
        max-width: calc(65*var(--rem));
        margin-left: auto;
        margin-right: auto;
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .spec__table tr td {
    border-left: 1px solid #dcdddd
}
#ff3 .spec__table tr + tr th {
    border-top: 1px solid #ababab
}
#ff3 .spec__table tr + tr td {
    border-top: 1px solid #dcdddd
}
#ff3 .spec__table th {
    width: calc(25*var(--rem));
    padding: calc(1.5*var(--rem)) calc(1 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .spec__table th {
        width: calc(28*var(--rem));
        font-weight: 500;
        vertical-align: top
    }
}
#ff3 .spec__table td {
    width: calc(100% - calc(25*var(--rem)));
    padding: calc(1.5*var(--rem)) 0 calc(1.5 * var(--rem)) calc(3 * var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .spec__table td {
        width: calc(100% - calc(28*var(--rem)));
        word-break: break-all
    }
}
#ff3 .spec__button {
    margin-top: calc(2*var(--rem));
    font-size: calc(1.4*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .spec__button {
        font-size: calc(2.4*var(--rem))
    }
}
#ff3 .spec__button a {
    text-decoration: underline
}
#ff3 .spec__button a:hover {
    text-decoration: none
}
#ff3 .spec-notes {
    margin-top: calc(.5*var(--rem));
    font-size: calc(1.2*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .spec-notes {
        font-size: calc(2.2*var(--rem))
    }
}
#ff3 .spec-notes__item {
    padding-left: 1em;
    text-indent: -1em
}
.product-buy-button {
    border-radius: calc(1*var(--rem)) 0 0
}
.product-buy-button img {
    position: absolute;
    bottom: calc(1.2*var(--rem));
    left: calc(50% - calc(1.1*var(--rem)));
    width: calc(2.2*var(--rem))
}
@media screen and (max-width:767px) {
    .product-buy-button img {
        width: calc(2.6*var(--rem))
    }
}
.trade-in-modal .swiper-target-wrapper .button-prev, .trade-in-modal .swiper-target-wrapper .button-next {
    display: none
}
.trade-in-modal .life__slide__wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(3*var(--rem)) 0
}
.trade-in-modal .swiper-target .swiper-slide {
    width: 100%
}
#ff3 .detail-plan {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 12px;
    line-height: 1.66667;
    text-align: left;
    letter-spacing: .02em;
    z-index: 9999
}
#ff3 .detail-plan.is-show {
    display: -ms-flexbox;
    display: flex
}
#ff3 .detail-plan__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    z-index: 0
}
#ff3 .detail-plan__inner {
    position: relative;
    background: #fff;
    max-width: 800px;
    padding: 18px 100px 36px
}
@media screen and (max-width:767px) {
    #ff3 .detail-plan__inner {
        width: calc(100% - calc(5*var(--rem)) * 2);
        max-width: 750px;
        max-height: 76vh;
        padding: 5.33333vw;
        overflow-y: auto
    }
}
#ff3 .detail-plan__title {
    font-size: 16px;
    text-align: center;
    margin-bottom: 18px
}
#ff3 .detail-plan__subtitle {
    font-size: 14px;
    line-height: 1.42857;
    text-align: center;
    font-weight: 700;
    margin-bottom: 19px
}
@media screen and (max-width:767px) {
    #ff3 .detail-plan__subtitle {
        font-size: 3.2vw;
        line-height: 1.25;
        margin-bottom: calc(3*var(--rem))
    }
}
#ff3 .detail-plan__close {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    cursor: pointer
}
#ff3 .detail-plan__close:before, #ff3 .detail-plan__close:after {
    position: absolute;
    top: calc(50% - 1px);
    right: 20px;
    width: 20px;
    height: 1px;
    content: "";
    display: block;
    background: #000
}
#ff3 .detail-plan__close:before {
    transform: rotate(-45deg)
}
#ff3 .detail-plan__close:after {
    transform: rotate(45deg)
}
#ff3 .detail-plan__text:nth-of-type(n+2) {
    margin-top: calc(1.8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .detail-plan__text sup {
        font-size: 2.4vw
    }
}
#ff3 .detail-plan__heading {
    margin-top: 20px
}
@media screen and (max-width:767px) {
    #ff3 .detail-plan__heading {
        margin-top: 2.66667vw
    }
}
@media screen and (max-width:767px) {
    #ff3 .detail-plan__heading--sp-small {
        margin-top: 3.2vw;
        font-size: calc(2*var(--rem));
        line-height: 1.5
    }
}
#ff3 .detail-plan__list-item {
    padding-left: .5em;
    text-indent: -.5em
}
@media screen and (max-width:767px) {
    #ff3 .detail-plan__list-item {
        font-size: calc(2*var(--rem));
        line-height: 1.5
    }
}
#ff3 .modal {
    color: #231815;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    font-size: 14px;
    line-height: 2.14286;
    letter-spacing: .02em;
    background-color: rgba(0, 0, 0, 0);
    z-index: 9999;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: .4s all
}
@media screen and (max-width:767px) {
    #ff3 .modal {
        font-size: calc(2.4*var(--rem));
        line-height: 1.20833;
        padding: 0
    }
}
#ff3 .modal[data-modal=true] {
    opacity: 1;
    pointer-events: auto
}
#ff3 .modal a {
    text-decoration: none;
    color: #595959
}
#ff3 .modal__overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}
#ff3 .modal__inner {
    position: relative;
    z-index: 1;
    width: 90%;
    max-width: 800px;
    max-height: 76vh;
    padding: 10px 70px 30px;
    background-color: #fff;
    overflow: auto;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner {
        width: calc(100% - calc(5*var(--rem)) * 2);
        max-width: 750px;
        padding: 5.33333vw
    }
}
#ff3 .modal__inner img {
    width: 100%
}
#ff3 .modal__inner .modal__heading-top {
    position: relative;
    font-size: 16px;
    line-height: 2.5;
    font-weight: 700;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__heading-top {
        font-size: 3.2vw;
        line-height: 1.20833
    }
}
#ff3 .modal__inner .modal__heading {
    margin-top: 13px;
    font-size: 14px;
    line-height: 1.71429;
    text-align: center;
    padding-bottom: 5px;
    border-bottom: 1px solid #231815
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__heading {
        font-size: 3.2vw;
        line-height: 1.20833
    }
}
#ff3 .modal__inner .modal__heading--large {
    font-size: 20px;
    font-weight: 700;
    padding-bottom: 0
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__heading--large {
        margin-top: calc(4.6*var(--rem));
        font-size: 4.53333vw;
        padding-bottom: calc(2.2*var(--rem))
    }
}
#ff3 .modal__inner .modal__att {
    margin-top: 18px;
    text-align: left;
    font-size: 14px;
    line-height: 1.71429
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__att {
        margin-top: calc(2*var(--rem));
        font-size: calc(2.2*var(--rem));
        line-height: 1.31818
    }
}
#ff3 .modal__inner .modal__att li {
    padding-left: 1em;
    text-indent: -1em
}
#ff3 .modal__inner .modal__att + .modal__heading {
    margin-top: 23px
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__att + .modal__heading {
        margin-top: calc(4*var(--rem))
    }
}
#ff3 .modal__inner .modal__att + .modal__att {
    margin-top: 23px
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__att + .modal__att {
        margin-top: calc(2*var(--rem))
    }
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__att + .modal__att--note {
        margin-top: calc(3*var(--rem))
    }
}
#ff3 .modal__inner .modal__att--note {
    font-size: 12px;
    line-height: 2
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__att--note {
        margin-top: calc(2*var(--rem));
        font-size: calc(2*var(--rem));
        line-height: 1.45
    }
}
#ff3 .modal__inner .modal__text {
    margin-top: 24px;
    font-size: 14px;
    line-height: 2.14286
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__text {
        margin-top: calc(3.6*var(--rem));
        font-size: calc(2.4*var(--rem));
        line-height: 1.20833
    }
}
#ff3 .modal__inner .modal__image-step {
    margin: 10px auto 0;
    width: 512px
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__image-step {
        width: calc(62*var(--rem));
        margin-top: calc(1.6*var(--rem));
        margin-left: calc(50% - calc(62*var(--rem)) / 2);
        margin-right: calc(50% - calc(62*var(--rem)) / 2)
    }
}
#ff3 .modal__inner .modal__image-step--02 {
    width: 500px
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__image-step--02 {
        width: calc(47.1*var(--rem));
        margin-top: calc(3.6*var(--rem));
        margin-left: auto;
        margin-right: auto
    }
}
#ff3 .modal__inner .modal__button {
    margin-top: 32px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__button {
        margin-top: calc(5.6*var(--rem))
    }
}
#ff3 .modal__inner .modal__button a {
    color: #231815;
    position: relative;
    font-size: 18px;
    line-height: 1.33333;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 470px;
    height: 70px;
    padding-top: 4px;
    border: 1px solid #000;
    transition: background-color .3s cubic-bezier(.39, .575, .565, 1)
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__button a {
        font-size: calc(2.4*var(--rem));
        line-height: 1.20833;
        width: calc(59*var(--rem));
        height: calc(12*var(--rem));
        padding-top: calc(.8*var(--rem));
        margin-left: calc(50% - calc(59*var(--rem)) / 2);
        margin-right: calc(50% - calc(59*var(--rem)) / 2)
    }
}
#ff3 .modal__inner .modal__button a:hover {
    background: #ff7403
}
#ff3 .modal__inner .modal__button a small {
    font-size: 12px
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__button a small {
        font-size: calc(2*var(--rem))
    }
}
#ff3 .modal__inner .modal__button a:before {
    content: '';
    position: absolute;
    width: calc(1*var(--rem));
    height: calc(1*var(--rem));
    right: calc(2*var(--rem));
    top: calc(50% - 1.4*var(--rem)/2);
    border: solid #000;
    border-width: calc(.2*var(--rem)) calc(.2 * var(--rem)) 0 0;
    transform: rotate(45deg);
    box-sizing: border-box
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__button a:before {
        width: calc(1.6*var(--rem));
        height: calc(1.6*var(--rem));
        top: calc(50% - 1.6*var(--rem)/2);
        right: calc(2*var(--rem))
    }
}
#ff3 .modal__inner .modal__link {
    margin-top: 28px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    padding-bottom: 10px
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__link {
        margin-top: calc(3*var(--rem));
        padding-bottom: calc(2*var(--rem))
    }
}
#ff3 .modal__inner .modal__link a {
    position: relative;
    color: #231815;
    background: #dfdfdf;
    font-size: 14px;
    line-height: 1.35714;
    font-weight: 700;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 269px;
    height: 40px;
    padding-top: 4px;
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1)
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__link a {
        font-size: calc(2.4*var(--rem));
        line-height: 1.20833;
        font-weight: 400;
        width: calc(51*var(--rem));
        height: calc(6*var(--rem));
        padding-top: calc(.4*var(--rem))
    }
}
#ff3 .modal__inner .modal__link a:hover {
    opacity: .7
}
#ff3 .modal__inner .modal__link a small {
    font-size: 12px
}
#ff3 .modal__inner .modal__link a:before {
    content: '';
    position: absolute;
    width: calc(.8*var(--rem));
    height: calc(.8*var(--rem));
    right: calc(1*var(--rem));
    top: calc(50% - 1.4*var(--rem)/2);
    border: solid #000;
    border-width: calc(.2*var(--rem)) calc(.2 * var(--rem)) 0 0;
    transform: rotate(45deg);
    box-sizing: border-box
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__link a:before {
        right: calc(4*var(--rem))
    }
}
#ff3 .modal__inner .modal__link a[target=_blank]:before {
    content: '';
    background: url(../img/icn_blank.svg) no-repeat center center;
    background-size: contain;
    position: absolute;
    width: calc(1.4*var(--rem));
    height: calc(.9*var(--rem));
    right: calc(1*var(--rem));
    top: calc(50% - .8*var(--rem)/2);
    border: none;
    transform: rotate(0deg);
    filter: invert(1)
}
@media screen and (max-width:767px) {
    #ff3 .modal__inner .modal__link a[target=_blank]:before {
        width: calc(2.4*var(--rem));
        height: calc(1.8*var(--rem));
        right: calc(1.8*var(--rem));
        top: calc(50% - 1.8*var(--rem)/2)
    }
}
#ff3 .modal__close {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    cursor: pointer
}
@media screen and (max-width:767px) {
    #ff3 .modal__close {
        width: calc(10*var(--rem));
        height: calc(10*var(--rem))
    }
}
#ff3 .modal__close:before, #ff3 .modal__close:after {
    position: absolute;
    top: calc(50% - 1px);
    right: 20px;
    width: 20px;
    height: 1px;
    content: "";
    display: block;
    background: #000
}
@media screen and (max-width:767px) {
    #ff3 .modal__close:before, #ff3 .modal__close:after {
        top: calc(50% - .26667vw/2);
        right: calc(50% - 6.93333vw/2);
        width: 6.93333vw;
        height: .26667vw
    }
}
#ff3 .modal__close:before {
    transform: rotate(-45deg)
}
#ff3 .modal__close:after {
    transform: rotate(45deg)
}
#ff3 .modal__trade-heading {
    padding-top: 8px;
    font-size: 16px;
    text-align: center;
    margin-bottom: 20px
}
#ff3 .modal__trade-lead {
    font-size: 14px;
    line-height: 1.42857;
    text-align: center;
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-lead {
        font-size: calc(2.4*var(--rem));
        line-height: 1.25;
        text-align: left
    }
}
#ff3 .modal__trade-text {
    font-size: 14px;
    line-height: 1.42857;
    text-align: center
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-text {
        font-size: calc(2.4*var(--rem));
        line-height: 1.25;
        text-align: left
    }
}
#ff3 .modal__trade-head {
    margin-top: 14px;
    background: #f4f4f4;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 18px 0;
    box-sizing: border-box
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-head {
        margin-top: calc(2.6*var(--rem));
        padding: calc(3.4*var(--rem)) 0 calc(3.2 * var(--rem))
    }
}
#ff3 .modal__trade-head-image {
    width: calc(25.8*var(--rem))
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-head-image {
        width: calc(23.9*var(--rem))
    }
}
#ff3 .modal__trade-head-text {
    font-size: 16px;
    font-weight: 700;
    margin-left: 17px
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-head-text {
        font-size: calc(2.4*var(--rem));
        line-height: 1.5;
        text-align: center;
        margin-left: calc(3.4*var(--rem))
    }
}
#ff3 .modal__trade-subheading {
    margin-top: 32px;
    font-size: 20px;
    font-weight: 700
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-subheading {
        margin-top: calc(4.8*var(--rem));
        font-size: calc(2.4*var(--rem));
        line-height: 1.20833
    }
}
#ff3 .modal__trade-subheading--small {
    font-size: 18px
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-subheading--small {
        margin-top: calc(3*var(--rem));
        font-size: calc(2*var(--rem))
    }
}
@media screen and (min-width:751px) {
    #ff3 .modal__trade-subheading--small + .modal__trade-att {
        margin-top: 0
    }
}
#ff3 .modal__trade-att {
    margin-top: 30px;
    text-align: left;
    font-size: 18px;
    line-height: 1.77778
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-att {
        margin-top: calc(3*var(--rem));
        font-size: calc(2*var(--rem));
        line-height: 1.45
    }
}
#ff3 .modal__trade-att li {
    padding-left: .5em;
    text-indent: -.5em
}
#ff3 .modal__trade-note {
    text-align: left;
    font-size: 12px;
    line-height: 2.66667
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-note {
        font-size: calc(2*var(--rem));
        line-height: 1.45
    }
}
#ff3 .modal__trade-table {
    margin-top: 30px;
    width: 100%;
    border-bottom: 1px solid #ababab
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-table {
        margin-top: calc(2.6*var(--rem))
    }
}
#ff3 .modal__trade-table th, #ff3 .modal__trade-table td {
    width: 50%
}
#ff3 .modal__trade-table th:nth-of-type(2), #ff3 .modal__trade-table td:nth-of-type(2) {
    border-left: 1px solid #ababab
}
#ff3 .modal__trade-table tr {
    border-top: 1px solid #ababab
}
#ff3 .modal__trade-table thead th {
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    height: 66px;
    padding-top: 5px
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-table thead th {
        font-size: calc(2.4*var(--rem));
        height: calc(8.2*var(--rem));
        padding-top: calc(.4*var(--rem))
    }
}
#ff3 .modal__trade-table tbody td {
    font-size: 16px;
    line-height: 1.8125;
    height: 59px
}
@media screen and (max-width:767px) {
    #ff3 .modal__trade-table tbody td {
        height: auto;
        padding: calc(1.8*var(--rem)) 0;
        font-size: calc(2.2*var(--rem));
        line-height: 1.36364
    }
}
#ff3 .modal__trade-table tbody td:nth-of-type(2) {
    color: #ff7403
}
#ff3 .modal__trade-table tbody td a {
    text-decoration: underline
}
#ff3 .modal__trade-table tbody td a:hover {
    text-decoration: none
}
#ff3 .modal_title {
    font-size: 18px;
    text-align: center;
    font-weight: 700;
    margin-top: 2rem
}
#ff3 .modal_2nd_title {
    font-size: 16px;
    text-align: center;
    font-weight: 700;
    margin-top: 1.5rem;
    color: #ff6b00
}
#ff3 .modal_3rd_title {
    font-size: 14px;
    font-weight: 700;
    margin-top: 1rem
}
#ff3 .modal_mt20 {
    margin-top: 20px
}
#ff3 .modal .m-ttl-common {
    position: relative;
    margin-bottom: 24px;
    margin-top: 24px;
    padding-bottom: 12px;
    font-family: Yu Gothic, YuGothic, sans-serif;
    font-size: 20px;
    text-align: center;
    line-height: 1.3
}
@media screen and (max-width:767px) {
    #ff3 .modal .m-ttl-common {
        margin-bottom: 6.4vw;
        margin-top: 6.4vw;
        padding-bottom: 5.33333vw;
        font-size: 18px;
        font-size: 4.8vw
    }
}
#ff3 .modal .m-ttl-common:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 60px;
    height: 2px;
    margin: 0 auto;
    background-color: #094;
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAxOWE0NCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzYzZDY0OSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==);
    background: linear-gradient(90deg, #019a44, #63d649)
}
@media screen and (max-width:767px) {
    #ff3 .modal .m-ttl-common:before {
        width: 16vw;
        height: 2px
    }
}
@media screen and (max-width: 750px) {
    #ff3 .set .lineup-function__item--set {
        margin-left: inherit;
    }
}

#ff3 .howto .section__heading {
    margin-bottom: calc(8.5*var(--rem));
}

.howto__two-column {
    display: flex;
    align-items: center;
}
@media screen and (max-width: 750px) {
    .howto__two-column {
        flex-direction: column;
    }
}

.howto__column-left {
    width: 60%;
    overflow: hidden;
    border-radius: 30px;
}
.howto__column-right {
    width: 40%;
    padding-left: calc(6*var(--rem));
}
@media screen and (max-width: 750px) {
    .howto__column-left {
        border-radius: 15px;
    }
    .howto__column-left,
    .howto__column-right {
        width: 100%;
        padding: 0;
    }
}
.howto__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    max-width: 100%;
    margin: 0 auto;
  }
  .howto__video-wrapper, .howto__gif-wrapper {
    width: 100%;
  }
  .howto__video-container {
    position: relative;
    display: none;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio */
  }
  .howto__video-container.active {
    display: block;
    z-index: 1;
  }
  .howto__video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .howto__button-container {
    margin-top: 20px;
  }
  .howto__animation-gif {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio */
    overflow: hidden;
  }
  .howto__animation-gif img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* 画像を1px下に */
    transform: translateY(1px);
  }
  .howto__button {
    display: block;
    background-color: #efefef;
    border-radius: 10px;
    padding: 20px 30px;
    font-size: 18px;
    margin-bottom: calc(2*var(--rem));
    cursor: pointer;
    position: relative;
  }
  @media screen and (max-width: 750px) {
    .howto__button {
        padding: 15px 30px;
    }
  }
  .howto__button::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url('../img/howto-arrow.png');
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
  }
  .howto__button .ic-heat {
    position: relative;
    padding-right: calc(3*var(--rem));
  }
  
  .howto__button .ic-heat::after {
    content: '';
    display: inline-block;
    width: calc(4*var(--rem));
    height: calc(4*var(--rem));
    background-image: url('../img/ic-howto-heat.png');
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: -15px;
    top: 50%;
    transform: translateY(-50%);
  }
  @media screen and (max-width: 750px) {
    .howto__button .ic-heat::after {
        width: calc(6*var(--rem));
        height: calc(6*var(--rem));
        right: -20px;
    }
  }

  .howto__button:hover {
    opacity: 0.8;
  }
  @media (max-width: 750px) {
    .howto__container {
      width: 100%;
    }
    .howto__video-wrapper, .howto__gif-wrapper {
      width: 100%;
    }
  }
  @media (min-width: 751px) {
    .howto__video-wrapper, .howto__gif-wrapper {
      /* max-width: 600px; */
      /* margin: 0 auto; */
    }
  }

#ff3 .products-check_2 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: calc(1.5*var(--rem)) calc(1.2 * var(--rem));
    width: calc(45*var(--rem));
    margin-top: calc(2.5*var(--rem));
    font-size: calc(1.6*var(--rem));
    line-height: 1
}
@media screen and (max-width:767px) {
    #ff3 .products-check_2 {
        width: 100%;
        justify-content: center;
        font-size: calc(2*var(--rem));
    }
}


#ff3 .products-check__item_2 {
    position: relative;
    background: #efefef;
    padding: calc(1*var(--rem));
    display: inline;
}
#ff3 .products-check__item_2:before {
    width: calc(1.6*var(--rem));
    height: calc(1.6*var(--rem));
    position: absolute;
    top: calc(50% - calc(.9*var(--rem)));
    left: 0;
    content: '';
    display: block;
}
@media screen and (max-width:767px) {
    #ff3 .products-check__item_2:before {
        width: calc(2*var(--rem));
        height: calc(2*var(--rem));
        top: calc(50% - calc(1.1*var(--rem)))
    }
}
#ff3 .products-detail__body.pD0 {
    padding: 0;
}

#ff3 .achieve__heading_item-img {
    position: relative;
  }
  
  /*#ff3 .achieve__heading_item-img::before,
  #ff3 .achieve__heading_item-img::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    box-sizing: border-box;
  }*/
  
  /* 左側の画像 */
  /*#ff3 .achieve__heading_item-img::before {
    background-image: url('../img/achieve__heading_item-01.png');
    left: -1.5em;
  }*/
  
  /* 右側の画像 */
 /* #ff3 .achieve__heading_item-img::after {
    background-image: url('../img/achieve__heading_item-02.png');
    right: -1.5em;
  }*/
  
  /* PC向けのスタイル */
  /*@media (min-width: 768px) {
    #ff3 .achieve__heading_item-img::before,
    #ff3 .achieve__heading_item-img::after {
      height: 4em;
      width: 4em;
    }
    #ff3 .achieve__heading_item-img::before {
      left: -4.2em;
      top:0;
    }
    #ff3 .achieve__heading_item-img::after {
      right: -4.9em;

      top:0;
    }
    
  }*/
  
  /* SP向けのスタイル */
  /*@media (max-width: 767px) {
    #ff3 .achieve__heading_item-img::before,
    #ff3 .achieve__heading_item-img::after {*/
      /*height: 3.8em;*/ /* SP向けの画像サイズ */
      /*width: 3.8em;*/ /* SP向けの画像サイズ */
      /*top:5%;
    }
    #ff3 .achieve__heading_item-img::before {
      left: -4em;*/ /* SP向けの位置調整 */
   /* }
    #ff3 .achieve__heading_item-img::after {
      right: -4.6em; *//* SP向けの位置調整 */
   /* }
  }*/
  

  /* Firefox専用のスタイル調整 */
@-moz-document url-prefix() {
    /* PC向けのスタイル */
    @media (min-width: 768px) {
      #ff3 .achieve__heading_item-img::after {
        right: -4.1em; /* PC向けの位置調整 */
      }
    }
    
    /* SP向けのスタイル */
    @media (max-width: 767px) {
      #ff3 .achieve__heading_item-img::after {
        right: -3.9em; /* Firefox向けの位置調整（SP） */
      }
    }
  }


  /* 240802 追記 */
#ff3 .health-expectancy {
    padding: calc(11* var(--rem)) 0 calc(4* var(--rem));
    background: #efefef;
}
@media screen and (max-width:767px) {
    #ff3 .health-expectancy {
        padding: calc(11* var(--rem)) calc(4* var(--rem)) calc(4* var(--rem));
    }
}
.health-expectancy__inner {
    width: 100%;
    max-width: calc(76* var(--rem));
    margin-left: auto;
    margin-right: auto;
}
/* PC 用のデフォルトの高さ */
.health-expectancy__item {
    position: relative;
    overflow: hidden;
    height: calc(30 * var(--rem));
    transition: height 0.3s ease;
}

/* スマホ用のデフォルトの高さ */
@media screen and (max-width: 750px) {
    .health-expectancy__item {
        height: calc(35 * var(--rem));
    }
}
.health-expectancy__over {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(239, 239, 239, 0) 60%, rgba(239, 239, 239, 1));
    pointer-events: none; /* 透過オーバーレイがクリックイベントをブロックしないように */
}

.js-accordion-content {
}
.health-expectancy__heading {
    font-size: calc(1.8* var(--rem));
    font-weight: 700;
    line-height: 1.94444;
    padding-left: calc(11.5* var(--rem));
    position: relative;
    border-bottom: 1px solid #c7c7c7;
    margin-bottom: calc(6* var(--rem));
    padding-bottom: calc(2.5* var(--rem));
}
@media screen and (max-width:767px) {
    .health-expectancy__heading {
        font-size: calc(3* var(--rem));
        padding-left: calc(8.5* var(--rem));
        margin-bottom: calc(6* var(--rem));
        padding-bottom: calc(2.5* var(--rem));
    }
}
.health-expectancy__heading::before {
    display: inline-block;
    width: calc(4* var(--rem));
    height: calc(4* var(--rem));
    text-align: center;
    line-height: calc(4* var(--rem));
    font-family: futura-pt, sans-serif;
    font-size: calc(6* var(--rem));
    content: attr(data-number);
    position: absolute;
    left: calc(4* var(--rem));
    top: calc(1* var(--rem));
}
@media screen and (max-width:767px) {
    .health-expectancy__heading::before {
        left: calc(2* var(--rem));
        top: calc(2* var(--rem));
    }
}
.health-expectancy__heading_inner {
    border-left: 1px solid #c7c7c7;
    padding-left: calc(4* var(--rem));
    display: block;
    line-height: calc(6* var(--rem));
}
@media screen and (max-width:767px) {
    .health-expectancy__heading_inner {
        line-height: calc(4* var(--rem));
    }
}

.health-expectancy__number {
    font-size: calc(6.6* var(--rem));
    font-family: futura-pt, sans-serif;
    border-right: 1px solid #333;
}
.health-expectancy__figure picture {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-bottom: calc(2* var(--rem));
}
@media screen and (max-width:767px) {
    .health-expectancy__figure picture {
        width: 100%;
    }
}
.health-expectancy__caption {
    font-size: calc(1.2* var(--rem));
    line-height: 1.5;
    text-align: center;
    margin-bottom: calc(2* var(--rem));
}
@media screen and (max-width:767px) {
    .health-expectancy__caption {
        font-size: calc(2* var(--rem));
        text-align: left;
        margin-bottom: calc(3* var(--rem));
    }
}
.health-expectancy__text {
    margin-bottom: calc(3* var(--rem));
}
.health-expectancy__more {
    position: relative;
    background-color: #ffffff;
    padding: 16px 25px 16px 2px;
    cursor: pointer;
    display: block;
    width: calc(23* var(--rem));
    font-size: calc(1.6* var(--rem));
    margin-left: auto;
    margin-right: auto;
    border-radius: 100px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s ease;
    margin-bottom: calc(6* var(--rem));
}
@media screen and (max-width:767px) {
    .health-expectancy__more {
        padding: 10px 25px 10px 2px;
        width: calc(32* var(--rem));
        font-size: calc(3* var(--rem));
    }
}

.health-expectancy__more span {
    position: relative;
    display: block;
    padding: 0 calc(4*var(--rem)) 0 calc(5.3*var(--rem));
    text-align: center;
}

.health-expectancy__more span:before, .health-expectancy__more span:after {
    width: calc(1px + calc(2.2*var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403;
}

.health-expectancy__more span:after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1) .2s;
}

.health-expectancy__more.active span:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1);
}








.family-usage {
    position: relative;
    overflow: hidden;
    transition: height 0.3s ease;
    background: linear-gradient(to bottom, transparent 45%, #efefef 45%);
    padding-bottom: calc(10* var(--rem));
}
@media screen and (max-width:767px) {
    .family-usage {
        background: linear-gradient(to bottom, transparent 30%, #efefef 30%);
    }    
}
.family-usage__figure {
    width: 100%;
    max-width: calc(100* var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: calc(6* var(--rem));
}
@media screen and (max-width:767px) {
    .family-usage__figure {
        padding-left: calc(5* var(--rem));
        padding-right: calc(5* var(--rem));
    }
}
.family-usage__heading {
    text-align: center;
    font-size: calc(3.6* var(--rem));
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: calc(4* var(--rem));
}
.family-usage__text {
    text-align: center;
    padding-bottom: calc(8* var(--rem));
    line-height: 1.8;
}


#ff3 .feature {
    padding-top: calc(14* var(--rem));
    padding-bottom: calc(12* var(--rem));
}
#ff3 .feature__heading {
    margin-top: calc(5* var(--rem));
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1.5;
    text-align: center; 
}
@media screen and (max-width:767px) {
    #ff3 .feature__heading {
        font-size: calc(4*var(--rem));
        padding-left: calc(5* var(--rem));
        padding-right: calc(5* var(--rem));
    }
}
#ff3 .feature__content {
    width: 100%;
    margin-top: calc(7* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .feature__content {
        padding: 0 calc(5* var(--rem));
        margin-top: calc(6* var(--rem));
    }
}

#ff3 .feature__main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 25* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .feature__main {
        display: block; 
        width: 100%;
    }
}
#ff3 .feature__main:not(:first-child) {
    margin-top: calc(10* var(--rem));
}
#ff3 .feature__figure {
    width: 52%;
}
@media screen and (max-width:767px) {
    #ff3 .feature__figure {
        width: auto;
        margin-left: calc(-5* var(--rem));
        margin-right: calc(-5* var(--rem));
        margin-bottom: calc(5* var(--rem));
    }
}
#ff3 .feature__figure img,
#ff3 .feature__main__slider__item__img img,
#ff3 .slider_feature-images__item img {
    max-width: none;
    width: 100%;
}
#ff3 .feature__lead {
    margin-bottom: calc(4* var(--rem));
    text-align: center;
    font-size: calc(2.6* var(--rem));
    font-weight: 700;
    line-height: 1.5;
}
@media screen and (max-width:767px) {
    #ff3 .feature__lead {
        margin-top: calc(6* var(--rem));
        margin-bottom: calc(4* var(--rem));
        font-size: calc(3.2* var(--rem));
    }
}
#ff3 .feature__h3 {
    width: 100%;
    text-align: center;
    padding: calc(1* var(--rem)) 0;
    color: #ed6c00;
    font-size: calc(2.2* var(--rem));
    border-top: 1px solid #ed6c00;
    border-bottom: 1px solid #ed6c00;
}
@media screen and (max-width:767px) {
    #ff3 .feature__h3 {
        padding: calc(2* var(--rem)) 0;
        font-size: calc(3.2* var(--rem));
    }
    #ff3 .feature__remote .feature__h3 {
        margin-bottom: calc(4* var(--rem));
    }
}
#ff3 .feature__main__slider-wrap {
    position: relative;
    width: 42%;
}
@media screen and (max-width:767px) {
    #ff3 .feature__main__slider-wrap {
        width: 100%;
    }
}
#ff3 .feature__main__slider {
    margin-top: calc(4* var(--rem));
    padding-bottom: calc(7* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .feature__main__slider {
        margin-top: calc(6* var(--rem));
        padding-bottom: calc(11* var(--rem));
    }
}
#ff3 .feature__main__slider__item__h4 {
    display: flex;
    align-items: center;
    position: relative;
    min-height: calc(4* var(--rem));
    font-size: calc(2.2* var(--rem));
    font-weight: 700;
    line-height: 1.5;
}
@media screen and (max-width:767px) {
    #ff3 .feature__main__slider__item__h4 {
        min-height: calc(10* var(--rem));
        font-size: calc(3.5* var(--rem));
    }
}
.feature__main__slider__item__h4__number {
    position: absolute;
    left: calc(0.2* var(--rem));
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    padding: calc(0.4* var(--rem));
    border-radius: 100px;
    width: calc(4* var(--rem));
    height: calc(4* var(--rem));
    background-color: #000000;
    color: #ffffff;
    text-align: center;
}
@media screen and (max-width:767px) {
    .feature__main__slider__item__h4__number {
        width: calc(6* var(--rem));
        height: calc(6* var(--rem));
    }
}
.feature__main__slider__item__img {
    display: block;
    line-height: 1;
    margin-top: calc(2* var(--rem));
    padding-right: 1px;
}
.feature__main__slider__item__txt {
    margin-top: calc(3* var(--rem));
    font-size: calc(2* var(--rem));
    line-height: 1.5;
}
@media screen and (max-width:767px) {
    .feature__main__slider__item__txt {
        font-size: calc(2.5* var(--rem));
    }
}
.feature__main__slider__item__txt__small {
    font-size: calc(1.4* var(--rem));
}
@media screen and (max-width:767px) {
    .feature__main__slider__item__txt__small {
        font-size: calc(2* var(--rem));
    }
}
.feature__main__slider .slick-prev,
.feature__main__slider .slick-next {
    position: absolute;
    width: calc(5* var(--rem));
    height: calc(5* var(--rem));
    font-size: 0;
    z-index: 1;
    border: none;
}
@media screen and (max-width:767px) {
    .feature__main__slider .slick-prev,
    .feature__main__slider .slick-next {
        width: calc(8* var(--rem));
        height: calc(8* var(--rem));
    }
}
.feature__main__slider .slick-prev {
    left: 0px;
    bottom: 0;
    background: url('../img/previous-image.png') no-repeat center center;
    background-size: contain;
}

.feature__main__slider .slick-next {
    left: 0px;
    bottom: 0;
    background: url('../img/next-image.png') no-repeat center center;
    background-size: contain;
    margin-left: calc(6* var(--rem));
}
@media screen and (max-width:767px) {
    .feature__main__slider .slick-next {
        margin-left: calc(9* var(--rem));
    }
}
  
  /* ドット */
  
  .feature__main__slider .slick-dots {
    display: flex !important;
    justify-content: left !important;
    align-items: center;
    position: absolute;
    width: calc((100% - 17* var(--rem)));
    bottom: calc(1.5* var(--rem));
    left: calc(17* var(--rem));
    right: 0;
    text-align: center;
  }
  @media screen and (max-width:767px) {
    .feature__main__slider .slick-dots {
        width: calc((100% - 20* var(--rem)));
        bottom: calc(2.5* var(--rem));
        left: calc(20* var(--rem));
    }
  }
  
  .feature__main__slider .slick-dots li {
    margin: 0px;
    cursor: pointer;
    flex-grow: 1;
  }
  
  .feature__main__slider .slick-dots li button {
    width: 100%;
    height: 5px;
    background: #efefef;
    border: none;
    cursor: pointer;
    outline: none;
    border-radius: 0px;
    font-size: 0;
    color: transparent;
  }
  @media screen and (max-width: 750px) {
    .feature__main__slider .slick-dots li button {
      width: 100%;
      height: 4px;
    }
  }
  .feature__main__slider .slick-dots li button:before {
    content: none;
  }
  
  .feature__main__slider .slick-dots li.slick-active button {
    background: #ed6c00;
  }

#ff3 li.feature-items__item {
    display: flex;
    align-items: center;
    /* margin-bottom: calc(6* var(--rem)); */
    margin-bottom: 2vw;
}

#ff3 li.feature-items__item:last-child {
    margin-bottom: 0;
}
@media screen and (max-width:767px) {
    #ff3 .feature-items__item {
        display: block; 
        gap: 0;
        flex-direction: column;
    }
}
#ff3 .feature-items__figure {
    width: calc(130* var(--rem));
    margin-right: calc(4* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .feature-items__figure {
        width: 100%;
        margin-right: 0;
        margin-bottom: calc(4* var(--rem));
    }
}
#ff3 .feature-items__body {
    width: calc(110* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .feature-items__body {
        width: 100%;
    }
}

#ff3 .feature-items__heading {
    font-size: calc(2.2*var(--rem));
    font-weight: 700;
    margin-bottom: calc(1.5* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .feature-items__heading {
        font-size: calc(3.6* var(--rem));
        text-align: center;
        margin-bottom: calc(3* var(--rem));
    }
}
#ff3 .feature__sub {
    display: flex;
    align-items: center;
    margin-bottom: calc(10* var(--rem));
    flex-direction: row-reverse;
    justify-content: flex-start;
}
@media screen and (max-width:767px) {
    #ff3 .feature__sub {
        display: block;
        gap: 0;
        flex-direction: column;
    }
}
#ff3 .feature__sub-heading {
    font-size: calc(3*var(--rem));
    font-weight: 700;
    margin-bottom: calc(3.5* var(--rem));
    width: 80%;
}
@media screen and (max-width:767px) {
    #ff3 .feature__sub-heading {
        font-size: calc(4*var(--rem));
        text-align: left;
        padding-left: calc(5* var(--rem));
        padding-right: calc(5* var(--rem));
    }
}
#ff3 .feature__main .feature-items {
    padding-left: calc(5* var(--rem));
    width: 80%;
}
@media screen and (max-width:767px) {
    #ff3 .feature__main .feature-items {
        width: 100%;
        padding-left: 0;
    }
}
#ff3 .feature-items__item {
    /* width: 80%; */
}
#ff3 .feature__sub-content {
    width: 45%;
}
@media screen and (max-width: 750px) {
    #ff3 .feature__sub-content {
        width: 100%;
    }
}
#ff3 .feature__sub .feature__sub-content .feature__figure {
    width: 100%;
}


#ff3 .feature__sub .feature-items__figure {
    width: calc(100* var(--rem));
    margin-right: calc(4* var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .feature__sub .feature-items__figure {
        width: 100%;
        margin-right: 0;
        margin-bottom: calc(4* var(--rem));
    }
}

#ff3 .feature__sub .feature-items__item {
    margin-bottom: calc(4* var(--rem));
}
#ff3 .feature__sub-figure {
    width: calc(60* var(--rem));
}
#ff3 .feature-items__notes {
    font-size: calc(1.4*var(--rem));
    margin-top: calc(2* var(--rem));
    display: block;
}
@media screen and (max-width:767px) {
    #ff3 .feature-items__notes {
        font-size: calc(2* var(--rem));
        display: inline;
    }
}
#ff3 .feature__button {
    margin-top: calc(6* var(--rem)) ;
}


/* スライダー */

.feature__wrapper {
    position: relative;
    overflow: hidden;
    margin-top: calc(10* var(--rem));
    padding-bottom: calc(4* var(--rem));
}
@media screen and (max-width: 750px) {
    .feature__wrapper {
        overflow: inherit;
        margin-top: calc(6* var(--rem));
        padding-bottom: calc(9* var(--rem));
    }
}
.feature__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    
}
@media screen and (max-width: 750px) {
    .feature__inner {
        display: block;
    }
}

.feature__remote {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    height: 100%;    
    padding-bottom: 25px;
}
@media screen and (max-width: 750px) {
    .feature__remote {
        display: block;
        padding-bottom: 0;
    }
}
.feature__remote-inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-right: calc(6* var(--rem));
    margin-left: calc(25* var(--rem));
}
@media screen and (max-width: 750px) {
    .feature__remote-inner {
        width: 100%;
        margin-right: 0;
        display: block;
        margin-left: 0;
    }
}


@media screen and (min-width: 751px) {
    #ff3 .slider_feature-images {
        width: 55%;
    }
}
@media screen and (max-width: 750px) {
    #ff3 .slider_feature-images {
        margin-right: calc(-5* var(--rem));
        margin-left: calc(-2* var(--rem));
    }   
}
.feature__remote-image {
    margin-top: calc(5* var(--rem));
    margin-bottom: calc(3* var(--rem));
}
@media screen and (max-width: 750px) {
    .feature__remote-image {
        display: none;
    }
}
.feature__remote-figure {
    max-width: calc(32.6*var(--rem));
    position: relative;
    left: calc(3*var(--rem));
}
@media screen and (max-width: 750px) {
    .feature__remote-figure {
        margin: 0 auto;
    }
}
.slider_feature-details {
    display: none;
    width: 24vw;
    height: 13em;
}
.slider_feature-details p {
    text-align: left;
}
@media screen and (max-width: 750px) {
    .slider_feature-details {
        width: 100%;
        height: auto;
    }
}
.slider_feature-details.active {
    display: block;
}
.feature__remote-heading {
    font-size: calc(2.2*var(--rem));
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: calc(1.5* var(--rem));
}
@media screen and (max-width: 750px) {
    .feature__remote-heading {
        min-height: calc(5* var(--rem));
        font-size: calc(3.6* var(--rem));
        text-align: center;
        padding-left: calc(5* var(--rem));
        padding-right: calc(5* var(--rem));
        margin-bottom:0;
    }
}
.feature__remote-text {
    font-size: calc(2* var(--rem));
}
@media screen and (max-width: 750px) {
    .feature__remote-text {
        margin-top: calc(1* var(--rem));
        font-size: calc(2.5* var(--rem));
    }
}

.slider_feature-images .slider_feature-images__item {
    background-size: 30px;
    border-radius: 15px;
    padding: 25px;
    text-align: center;
    line-height: 1.6;
    position: relative;
}
@media screen and (max-width: 750px) {
.slider_feature-images .slider_feature-images__item {
    margin: 0 auto;
    padding: calc(1.5* var(--rem));
    width: calc(43* var(--rem))!important;
}
}

@media screen and (min-width: 751px) {
    .slider_feature-images .slick-list {
        width: 130%;
    }
}


.custom-prev,
.custom-next {
    position: absolute;
    width: calc(5* var(--rem));
    height: calc(5* var(--rem));
    z-index: 1;
    border: none;
}
@media screen and (max-width: 750px) {
    .custom-prev,
    .custom-next {
        width: calc(8* var(--rem));
        height: calc(8* var(--rem));
    }
}


.custom-prev {
    left: 0px;
    bottom: 0;
    background: url('../img/previous-image.png') no-repeat center center;
    background-size: contain;
    margin-left: calc(25* var(--rem));
}
@media screen and (max-width: 750px) {
    .custom-prev {
        margin-left: 0;
    }
}

.custom-next {
    left: 0px;
    bottom: 0;
    background: url('../img/next-image.png') no-repeat center center;
    background-size: contain;
    margin-left: calc(31* var(--rem));
}
@media screen and (max-width: 750px) {
    .custom-next {
        margin-left: calc(9* var(--rem));
    }
}

.custom-dots {
    position: absolute;
    bottom: 1.5%;
    left: 0;
    right: 0;
    text-align: center;
}
@media screen and (max-width: 750px) {
    .custom-dots {
        width: calc((100% - 20* var(--rem)));
        bottom: calc(2.5* var(--rem));
        left: calc(20* var(--rem));
    }
}  

  .custom-dots.slick-dotted.slick-slider {
    margin: 40px auto;
  }
  @media screen and (max-width: 750px) {
    .custom-dots.slick-dotted.slick-slider {
      margin: 7vh 0px 3vh 40px;
    }
  }
  
  /* ドット */
  
  .custom-dots .slick-dots {
    display: flex !important;
    justify-content: left !important;
    align-items: center;
    margin-top: 20px;
    margin-left: calc(40* var(--rem));
    margin-right: calc(15* var(--rem));
  }
  @media screen and (max-width: 750px) {
    .custom-dots .slick-dots {
      margin-left: 0px;
      margin-top: 0px;
      width: 100%;
    }
  }
  
  .custom-dots .slick-dots li {
    margin: 0px;
    cursor: pointer;
    width: 20%;
  }
  
  .custom-dots .slick-dots li button {
    width: 100%;
    height: 5px;
    background: #efefef;
    border: none;
    cursor: pointer;
    outline: none;
    border-radius: 0px;
    font-size: 0;
      color: transparent;
      transition: background 0.3s ease;
  }
  
  
  @media screen and (max-width: 750px) {
    .custom-dots .slick-dots li button {
      width: 100%;
      height: 4px;
    }
  }
  .custom-dots .slick-dots li button:before {
    content: none;
  }
  
  .custom-dots .slick-dots li.slick-active button {
    background: #ed6c00;
  }





.evolution-point {
}
.evolution-point__heading {
    font-size: calc(3.2*var(--rem));
    font-weight: 700;
    line-height: 1.53;
    text-align: center;
    margin-bottom: calc(1* var(--rem)) ;
}
@media screen and (max-width: 750px) {
    .evolution-point__heading {
        font-size: calc(3.8*var(--rem));
        margin-bottom: calc(3* var(--rem)) ;
    }
}
.evolution-point__bg {
    background-color: #e4e9eb;
}
.evolution-point__inner {
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
    padding-top: calc(10* var(--rem));
    padding-bottom: calc(10* var(--rem));
}
@media screen and (max-width: 750px) {
    .evolution-point__inner {
        padding: calc(10* var(--rem)) calc(5* var(--rem));
    }
}
.evolution-point__figure {
    text-align: center;
}
.evolution-point__figure img {
    width: calc(52.6* var(--rem));
}
.evolution-point__img {
}
.evolution__button,
.evolution-plan__button {
    width: 100%;
    max-width: calc(76* var(--rem));
    margin-left: auto;
    margin-right: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(8* var(--rem));
    margin-top: calc(3.5* var(--rem));
    border: 1px solid #ff7403;
    border-radius: calc(4* var(--rem));
    background: #fff;
    font-weight: 700;
    cursor: pointer;
}

.evolution__button span,
.evolution-plan__button span {
    position: relative;
    display: block;
    padding: 0 calc(5.3* var(--rem));
    color: #525050;
}
.evolution__button span::before,
.evolution__button span::after,
.evolution-plan__button span::before,
.evolution-plan__button span::after {
    width: calc(1px + calc(2.2* var(--rem)));
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    content: '';
    display: block;
    background: #ff7403;
}
.evolution__button span::after,
.evolution-plan__button span::after {
    rotate: 90deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1);
}
.evolution__button.is-show span::after,
.evolution-plan__button.is-show span:after {
    rotate: 180deg;
    transition: rotate .2s cubic-bezier(.39, .575, .565, 1);
}


@media screen and (max-width: 750px) {
    .evolution__button,
    .evolution-plan__button {
        height: calc(10* var(--rem));
        border-radius: calc(5* var(--rem));
    }
}

.evolution-details {
    display: block;
    padding-top: calc(5* var(--rem));

}

.evolution-details__list {
    max-width: 1320px;
    margin: 0 auto;
    display: flex;

        flex-wrap: wrap;
}
@media screen and (max-width: 750px) {
    .evolution-details__list {
        /* flexboxを解除 */
        display: block;
    }
}
.evolution-details__item {
    box-sizing: border-box;
    padding: 15px;
    margin-bottom: calc(2* var(--rem));
}
@media screen and (max-width: 750px) {
    .evolution-details__item {
        padding: 0;
        margin-bottom: calc(8* var(--rem));
    }
}
.evolution-details__item:nth-child(1),
.evolution-details__item:nth-child(2) {
    flex: 1 1 50%; /* 2カラム */
}
.evolution-details__item:nth-child(n+3) {
    flex: 1 1 25%; /* 4カラム */
}
.evolution-details__picture {
    margin-bottom: calc(3.5* var(--rem));
}
.evolution-details__img {
}
.evolution-details__heading {
    font-size: calc(2.8* var(--rem));
    font-weight: 700;
    line-height: calc(3.4 * var(--rem));
    display: flex;
    /* align-items: center; */
    align-items: flex-start;
    margin-bottom: calc(2.5* var(--rem));
}
@media screen and (max-width: 750px) {
    .evolution-details__heading {
        align-items: center;
        font-size: calc(3.6* var(--rem));
        line-height: calc(5.4 * var(--rem));
        letter-spacing: 0.01em;
    }
}
.evolution-details__title {
    width: 90%;
}
.evolution-details__number {
    display: inline-block;
    width: calc(3.4 * var(--rem));
    height: calc(3.4 * var(--rem));
    background-color: #333333;
    border-radius: 50%;
    color: #fff;
    left:  0;
    font-size: calc(1.8 * var(--rem));
    font-weight: bold;
    text-align: center;
    line-height: calc(3.4 * var(--rem));
    margin-right: calc(.5* var(--rem));
}
@media screen and (max-width: 750px) {
    .evolution-details__number {
        width: calc(5.4 * var(--rem));
        height: calc(5.4 * var(--rem));
        font-size: calc(3.8 * var(--rem));
        line-height: calc(5.4 * var(--rem));
        margin-right: calc(1* var(--rem));
    }
}
.evolution-details__text {
}
.evolution-details__note {
    font-size: calc(1.4* var(--rem));
}

@media screen and (max-width: 750px) {
    .evolution-details__note {
        font-size: calc(2* var(--rem));
    }
}










#ff3 .info {
    padding: calc(11* var(--rem)) 0 calc(13* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .info {
        padding: calc(11* var(--rem)) 0 calc(2* var(--rem));
    }
}

#ff3 .info .section__heading {
    font-size: calc(5* var(--rem));
    font-family: futura-pt, sans-serif;
    line-height: 1;
    letter-spacing: .08em;
}

@media screen and (max-width: 750px) {
    #ff3 .info .section__heading {
        font-size: calc(8* var(--rem));
    }
}

#ff3 .info .section__subheading {
    margin-top: calc(1.5* var(--rem));
    font-size: calc(1.8* var(--rem));
    line-height: 1;
    text-align: center;
}
@media screen and (max-width: 750px) {
    #ff3 .info .section__subheading {
        font-size: calc(3* var(--rem));
    }
}

/* is-fixed */
#ff3 .attach__nav {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    gap: 0;
    height: calc(6 * var(--rem));
    z-index: 99;
    translate: 0 -100%;
    background-color: #ffffff;
    border-bottom: 1px solid #efefef;
}
@media screen and (max-width: 750px) {
    #ff3 .attach__nav {
        height: calc(8.5 * var(--rem));
    }
}
#ff3 .attach__nav .attach__nav-inner .attach__carousel {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
    gap: 0;
    flex-wrap: nowrap;
}
#ff3 .attach__nav .attach__nav-inner .attach__carousel-item {
    width: calc(18.4 * var(--rem));
    border-right: 1px solid #efefef;
    height: 100%;
}
@media screen and (max-width: 750px) {
    #ff3 .attach__nav .attach__nav-inner .attach__carousel-item {
        width: calc(18.4 * var(--rem));
    }
}
#ff3 .attach__nav .attach__nav-inner .attach__carousel-item:first-child {
    border-left: 1px solid #efefef;
}

#ff3 .attach__nav .attach__nav-inner .attach__carousel-item a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(.5* var(--rem));
    padding-bottom: calc(.5 * var(--rem));
    height: calc(6* var(--rem));
    border: none;
    background-color: transparent;
}
@media screen and (max-width: 750px) {
    #ff3 .attach__nav .attach__nav-inner .attach__carousel-item a {
        font-size: calc(2 * var(--rem));
        padding-bottom: calc(1 * var(--rem));
        height: calc(8.5* var(--rem));
        letter-spacing: 0;
    }
}
#ff3 .attach__nav .attach__nav-inner .attach__carousel-image {
    display: none;
}
#ff3 .attach__nav .attach__nav-inner .attach__carousel-item a:after {
    display: block;
    content: "";
    position: absolute;
    background: url(../img/arw_logn.svg) no-repeat center center / contain;
    position: absolute !important;
    bottom: 46%;
    right: calc(1 * var(--rem));
    width: calc(1.2 * var(--rem));
    height: calc(0.8 * var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .attach__nav .attach__nav-inner .attach__carousel-item a:after {
        right: 45%;
        bottom: calc(2 * var(--rem));
    }
}
#ff3 .attach__nav.is-fixed {
    translate: 0 calc(12 * var(--remff3));
    transition: translate .3s cubic-bezier(.165,.84,.44,1) .15s;
    will-change: translate;
}
@media screen and (max-width: 750px) {
    #ff3 .attach__nav.is-fixed {
        translate: 0 calc(23 * var(--remff3));
    }
}
#ff3 .attach__nav.is-fixed.is-up {
    translate: 0 calc(7 * var(--remff3));
    transition-delay: 0s;
}
@media screen and (max-width: 750px) {
    #ff3 .attach__nav.is-fixed.is-up {
        translate: 0 calc(12.3 * var(--remff3));
    }
}
/*  */

#ff3 .info__nav {
    margin-top: calc(5* var(--rem));
    height: calc(23* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .info__nav {
        margin-top: calc(5* var(--rem));
        height: calc(47.4 * var(--rem));
    }
}
#ff3 .info__carousel {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc(2.4* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .info__carousel {
        align-items: center;
    }
}
#ff3 .info__carousel-item {
    width: calc(18* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .info__carousel-item {
        width: calc(18* var(--rem));
    }
}
@media screen and (max-width: 750px) {
    #ff3 .info__nav-inner .info__carousel {
        gap: calc(2* var(--rem));
    }
}
#ff3 .info__carousel a {
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: calc(2* var(--rem));
    position: relative;
    padding-bottom: calc(3.5* var(--rem));
    font-weight: 500;
    font-size: calc(1.8* var(--rem));
    text-align: center;
    background-color: #e4e9eb;
    border-radius:calc(2* var(--rem));
    border: 1px solid #efefef;
}
@media screen and (max-width: 750px) {
    #ff3 .info__carousel a {
        font-size: calc(2.4* var(--rem));
    }
}
#ff3 .info__carousel-image {
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}
#ff3 .info__carousel a span {
    display: block;
    line-height: 1.3;
}
@media screen and (max-width: 750px) {
    #ff3 .info__carousel a span {
    letter-spacing: -0.05em;
    line-height: 1;
    }
}

#ff3 .info__carousel a strong {
    font-weight: 400;
    font-size: calc(1.6* var(--rem));
    font-family: futura-pt, sans-serif;
    letter-spacing: 0;
}
#ff3 .info__carousel a:after {
    display: block;
    width: calc(1.5* var(--rem));
    height: calc(1* var(--rem));
    content: "";
    position: absolute;
    bottom: calc(1.5* var(--rem));
    left: calc(50% - calc(.5* var(--rem)));
    background: url(../img/arw_logn.svg) no-repeat center center / contain;
}
@media screen and (max-width: 750px) {
    #ff3 .info__carousel a:after {
        width: calc(1.8* var(--rem));
        height: calc(2* var(--rem));
        bottom: calc(1* var(--rem));
    }
}
.only-sp-carousel {
    display: none;
}
@media screen and (max-width: 750px) {
    .is-show .only-sp-carousel,
    .is-up .only-sp-carousel {
        display: block;
    }   
}

#lineup .lineup__subtitle{
    text-align: center;
    margin-top:calc(4*var(--remff3));
    font-size:calc(2.2*var(--remff3));
}
@media screen and (max-width:768px){
    #lineup .lineup__subtitle{
        font-size:calc(3*var(--remff3));
    }
}
#lineup .table-lineup-wrapper {
    margin-bottom:calc(8*var(--remff3))
}
#lineup .table-lineup{
    border-collapse:collapse;
    width:100%;
    margin-top:calc(6*var(--remff3))
}
@media screen and (max-width:768px){
    #lineup .table-lineup{
        display:block;
        width:calc(130.7*var(--remff3));
        margin-right:calc(3.5*var(--remff3))
    }
}
@media screen and (max-width:768px){
    #lineup .table-lineup-wrapper{
        width:100vw;
        margin-left:calc(-3.5*var(--remff3));
        margin-right:calc(-3.5*var(--remff3));
        padding-left:calc(3.5*var(--remff3))
    }
}
@media screen and (max-width:768px){
    #lineup .table-lineup-wrapper-inner{
        width:calc(134.2*var(--remff3));
        padding-right:calc(3.5*var(--remff3));
        margin-bottom:calc(4*var(--remff3))
    }
}
#lineup .table-lineup-wrapper .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    top: 0;
    height: calc(.4* var(--remff3));
    background: #191817;
}
#lineup .table-lineup-wrapper .simplebar-track.simplebar-horizontal{
    left:calc(3.5*var(--remff3));
    width:calc(68*var(--remff3));
    height: calc(.4* var(--remff3));
    background: #d1d1d1;
}

#lineup .table-lineup__thead{
    border-bottom:1px solid #d1d1d1
}
@media screen and (max-width:768px){
    #lineup .table-lineup__thead{
        display:block
    }
}
@media screen and (max-width:768px){
    #lineup .table-lineup__thead-row{
        display:-ms-flexbox;
        display:flex
    }
}
#lineup .table-lineup__thead .table-lineup__thead-heading{
    width:25%;
    padding-bottom:calc(2.5*var(--remff3))
}
#lineup .table-lineup__thead .table-lineup__thead-image{
    width:calc(20*var(--remff3));
    margin:0 auto
}
@media screen and (max-width:768px){
    #lineup .table-lineup__thead .table-lineup__thead-image{
        width:calc(28.9*var(--remff3))
    }
}
#lineup .table-lineup__thead .table-lineup__thead-text{
    font-size:calc(2.2*var(--remff3));
    line-height:calc(28/22);
    letter-spacing:0;
    text-align:center;
    margin-top:calc(1.4*var(--remff3))
}
@media screen and (max-width:768px){
    #lineup .table-lineup__thead .table-lineup__thead-text{
        font-size:calc(2.8*var(--remff3));
        line-height:calc(28/28);
        margin-top:calc(2.6*var(--remff3))
    }
}
#lineup .table-lineup__thead .table-lineup__thead-text small{
    font-size:calc(1.6*var(--remff3))
}
@media screen and (max-width:768px){
    #lineup .table-lineup__thead .table-lineup__thead-text small{
        font-size:calc(2*var(--remff3))
    }
}
@media screen and (max-width:768px){
    #lineup .table-lineup__tbody{
        display:block
    }
}
#lineup .table-lineup__heading{
    color:rgba(26,26,26,.5);
    font-size:calc(2.2*var(--remff3));
    line-height:1;
    text-align:center;
    padding-top:calc(3*var(--remff3));
    padding-bottom:calc(2.8*var(--remff3))
}
@media screen and (max-width:768px){
    #lineup .table-lineup__heading{
        font-size:calc(2.8*var(--remff3));
        width:calc(68*var(--remff3));
        top:0;
        left:calc(3.5*var(--remff3));
        position:sticky;
        display:block;
        padding-top:calc(4*var(--remff3));
        padding-bottom:calc(3.8*var(--remff3))
    }
}
#lineup .table-lineup__row{
    border-bottom:1px solid #d1d1d1
}
@media screen and (max-width:768px){
    #lineup .table-lineup__row{
        display:-ms-flexbox;
        display:flex;
        width:100%
    }
}
#lineup .table-lineup__row:has(.table-lineup__heading){
    border-bottom:none;
    position:relative
}
#lineup .table-lineup__data{
    font-size:calc(1.6*var(--remff3));
    line-height:calc(24/16);
    text-align:center;
    padding-bottom:calc(2.4*var(--remff3));
    vertical-align:middle
}
@media screen and (max-width:768px){
    #lineup .table-lineup__data{
        width:25%;
        font-size:calc(2.4*var(--remff3));
        line-height:calc(40/24);
        padding-bottom:calc(2.4*var(--remff3))
    }
}
@media screen and (max-width:768px){
    #lineup .table-lineup__data p{
        font-size:calc(2*var(--remff3));
        line-height:calc(30/20)
    }
}
@media screen and (max-width:768px){
    #lineup .table-lineup__data p strong{
        font-size:calc(2.4*var(--remff3))
    }
}
#lineup .table-lineup__data p+p{
    margin-top:calc(1.2*var(--remff3))
}
@media screen and (max-width:768px){
    #lineup .table-lineup__data p+p{
        margin-top:calc(1.8*var(--remff3))
    }
}
#lineup .table-lineup__data.cp_price .cp{
	font-weight:bold;
}
#lineup .table-lineup__data.cp_price .normal{
	text-decoration: line-through;
}
#lineup .table-lineup__row:last-of-type{
    border-bottom:1px solid #d1d1d1
}

.lineup-table {
    width: 100%;
    max-width: calc(100* var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(8* var(--rem));
    margin-bottom: calc(8* var(--rem));
}
@media screen and (max-width: 750px) {
    .lineup-table {
        padding: 0 calc(5* var(--rem));
    }
}
.lineup-table__content {
    width: 100%;
}
@media screen and (max-width: 750px) {
    .lineup-table__content {
        width: 100%;
        display: flex;
        flex-direction: column;
    }
}
.lineup-table__content th {
    padding: calc(2.5* var(--rem)) calc(3.5* var(--rem));
}
.lineup-table__content td {
    padding: calc(2.5* var(--rem)) calc(1.5* var(--rem)) calc(2.5* var(--rem)) calc(10* var(--rem));
}
.lineup-table__content td.ta-c {
    text-align: center;
    padding: calc(2.5* var(--rem)) 0;
}
.lineup-table__content tr:first-child {
    border-bottom: 1px solid #e9e9e9;
}
@media screen and (max-width: 750px) {
    .lineup-table__content tr {
        display: flex;
        flex-wrap: wrap;
        border:none;
    }
    .lineup-table__content th {
        width: 100%;
        flex: 1 1 100%;
        white-space: normal;
        font-size: calc(2.2* var(--rem));
        text-align: center;
        padding: calc(1* var(--rem)) calc(3.5* var(--rem));
    }
    .lineup-table__content td {
        width: 50%;
        flex: 1 1 50%;
        padding: calc(2.5* var(--rem)) calc(2.5* var(--rem));
        font-size: calc(2.6* var(--rem));
    }
}

.lineup-table__row {
    border-bottom: 1px solid #e9e9e9;
}
.lineup-table__header {
    background-color: #efefef;
    white-space: nowrap;
    font-size: calc(2* var(--rem));
    vertical-align: top;
}
.lineup-table__cell {
    font-size: calc(2* var(--rem));
}
.lineup-table__image {
    width: calc(22* var(--rem));
}
@media screen and (max-width: 750px) {
    .lineup-table__image {
        margin-bottom: calc(3* var(--rem));
    }
}

#ff3 .lineup-merit.orange {
    border: 1px solid #ed6c00;
    background-color: #fff;
    width: 100%;
    max-width: calc(110* var(--rem));
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 750px) {
    #ff3 .lineup-merit.orange {
        width: 90%;
        margin: 0 auto;
    }
}
#ff3 .lineup-merit.orange .lineup-merit__heading {
    color: #ed6c00;
    font-size: calc(1.8* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .lineup-merit.orange .lineup-merit__heading {
        font-size: calc(2.6* var(--rem));
    }
}
#ff3 .lineup-merit.orange .lineup-merit__list {
    width: 770px;
    margin-left: auto;
    margin-right: auto;
    align-content: flex-start;
    margin-top: calc(2* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .lineup-merit.orange .lineup-merit__list {
        width: auto;
    }
}
#ff3 .lineup-merit.orange .lineup-merit__item {
    min-width: auto;
    font-size: calc(1.8* var(--rem));
}
@media screen and (max-width: 750px) {
    #ff3 .lineup-merit.orange .lineup-merit__item {
        font-size: calc(2.6* var(--rem));
        margin-left: 0;
    }
    #ff3 .lineup-merit.orange .lineup-merit__item span {
        font-size: calc(2* var(--rem));
    }
}

#ff3 .lineup-merit.orange .lineup-merit__item:before {
    background: url(../img/icn_check-orange.png) no-repeat center center / contain;
}
#ff3 .lineup__body .lineup__button {
    margin-top: calc(3* var(--rem));
}
#ff3 .lineup__body .lineup__button .buttons {
    flex-direction: column;
}
#ff3 .lineup__body .lineup__button .buttons .buttons__item {
    margin-bottom: calc(2* var(--rem));
}
#ff3 .lineup-warranty .lineup-notes {
    text-align: center;
}
@media screen and (max-width: 750px) {
    #ff3 .lineup-warranty .lineup-notes {
        text-align: left;
    }
}
#ff3 .lineup-warranty .lineup-notes li  {
    display: inline;
}
@media screen and (max-width: 750px) {
    #ff3 .lineup-warranty .lineup-notes li  {
        display: block;
    }
}
.lineup-boxset {
    border: 4px solid #ececec;
    padding: calc(4*var(--remff3)) calc(8*var(--remff3)) calc(5*var(--remff3));
    margin-top: calc(8*var(--remff3));
}
.lineup-boxset-inner {
    display: flex;
    column-gap: calc(9*var(--remff3));
    margin-bottom: calc(2*var(--remff3));
}
.lineup-boxset-image {
    width: calc(39.2*var(--remff3));
}
.lineup-boxset-text {
    margin-top: calc(5*var(--remff3));
}
.lineup-boxset-text .ttl {
    font-size: calc(2.8*var(--remff3));
    line-height: 1.64;
}
.lineup-boxset-text .txt {
    font-size: calc(1.8*var(--remff3));
    line-height: 2;
    /*margin-top: calc(3*var(--remff3));*/
   margin-top: calc(2*var(--remff3));
}

.lineup-boxset-text .box-price{
	font-size: calc(1.6*var(--remff3));
	font-weight: 600;
}
.lineup-boxset-text .box-price .num{
	font-size: calc(2.4*var(--remff3));
}
.lineup-boxset-text .att{
	font-size: calc(1.2*var(--remff3));
}

#ff3 .price .lineup-boxset .button {
    margin: 0 auto;
    height: calc(9*var(--remff3));
    font-size: calc(1.95*var(--remff3));
}
@media screen and (max-width: 768px) {
    #ff3 .price .lineup-boxset .button {
        width: 100%;
    }
}
#ff3 .price .lineup-boxset .button--cart:before {
    top: 50%;
    transform: translateY(-50%);
    left: calc(5*var(--remff3));
}
#ff3 .price .lineup-boxset .button--cart.button--giftset span {
    font-size: calc(1.8* var(--rem));
}
@media screen and (max-width: 768px) {
    #ff3 .price .lineup-boxset .button--cart.button--giftset span {
        font-size: calc(2.3* var(--rem));
    }
}
@media screen and (max-width: 768px) {
    .lineup-boxset {
        border-top: calc(0.3*var(--remff3)) solid #ececec;
        border-left: none;
        border-right: none;
        border-bottom: none;
        margin-top: calc(8*var(--remff3));
        padding: calc(7.8*var(--remff3)) 0 0;
   }
    .lineup-boxset-inner {
        flex-direction: column;
        row-gap: calc(3*var(--remff3));
        text-align: center;
        align-items: center;
        margin-bottom: calc(3*var(--remff3));
   }
    .lineup-boxset-image {
        width: calc(59.1*var(--remff3));
   }
    .lineup-boxset-text {
        margin-top: 0;
   }
    .lineup-boxset-text .ttl {
        font-size: calc(3.2*var(--remff3));
        line-height: 1.75;
   }
    .lineup-boxset-text .txt {
        font-size: calc(2.6*var(--remff3));
        line-height: 1.69;
        margin-top: calc(2*var(--remff3));
   }
	
    .lineup-boxset-text .box-price{
		font-size: calc(2.4*var(--remff3));
	}
    .lineup-boxset-text .box-price .num{
		font-size: calc(3.8*var(--remff3));
	}
    .lineup-boxset-text .att{
		font-size: calc(2.2*var(--remff3));
	}
	
    #ff3 .price .lineup-boxset .button {
        height: calc(13*var(--remff3));
        font-size: calc(2.8*var(--remff3));
   }
    #ff3 .price .lineup-boxset .button--cart:before {
        left: calc(7.5*var(--remff3));
   }
}
@media screen and (min-width: 767px) {
    #ff3 .price .lineup-boxset__buttons {
        display: flex;
    }
    #ff3 .price .lineup-boxset .button:nth-child(2) {
        margin-left: calc(3*var(--remff3));
    }
}
@media screen and (max-width: 768px) {
    #ff3 .price .lineup-boxset .button:nth-child(2) {
        margin-top: calc(3*var(--remff3));
    }
}

#ff3 .price{
    padding-top:calc(14.3*var(--remff3))
}
@media screen and (max-width:768px){
    #ff3 .price{
        padding-top:calc(16*var(--remff3))
    }
}
#ff3 .price .lineup__toggle{
    display:-ms-flexbox;
    display:flex;
    -ms-flex-pack:center;
    justify-content:center;
    gap:calc(.9*var(--remff3));
    margin-top:calc(4*var(--remff3))
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__toggle{
        margin-top:calc(5*var(--remff3))
    }
}
#ff3 .price .lineup__toggle-item{
    width:calc(13.8*var(--remff3));
    cursor:pointer
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__toggle-item{
        width:calc(16.2*var(--remff3))
    }
}
#ff3 .price .lineup__toggle-item.is-active .lineup__toggle-image:before,#ff3 .price .lineup__toggle-item:hover .lineup__toggle-image:before{
    opacity:1
}
#ff3 .price .lineup__toggle-image{
    position:relative;
    width:100%
}
#ff3 .price .lineup__toggle-image:before{
    position:absolute;
    bottom:0;
    left:0;
    z-index:2;
    width:100%;
    height:100%;
    border:calc(.4*var(--remff3)) solid #505050;
    box-sizing:border-box;
    content:'';
    opacity:0;
    transition:opacity .2s cubic-bezier(.39,.575,.565,1)
}
#ff3 .price .lineup__toggle-text{
    font-size:calc(1.8*var(--remff3));
    line-height:1.1;
    text-align:center;
    letter-spacing:0;
    margin-top:calc(1.8*var(--remff3))
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__toggle-text{
        font-size:calc(2*var(--remff3));
        line-height:1.3;
        margin-top:calc(1.4*var(--remff3))
    }
}
#ff3 .price .lineup__toggle-text small{
    font-size:calc(1.2*var(--remff3))
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__toggle-text small{
        font-size:calc(1.6*var(--remff3))
    }
}
#ff3 .price-lineup-merit{
    padding:calc(3*var(--remff3)) 0 calc(3.5 * var(--remff3));
    background:#efefef;
    margin-top:calc(8*var(--remff3));
}
@media screen and (max-width:768px){
    #ff3 .price-lineup-merit{
        width:100%;
        padding:calc(5.5*var(--remff3)) 0
    }
}
#ff3 .price-lineup-merit__heading{
    text-align:center
}
@media screen and (max-width:768px){
    #ff3 .price-lineup-merit__heading{
        font-size:calc(3.6*var(--remff3));
    }
}
#ff3 .price-lineup-merit__list{
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:calc(1*var(--remff3)) calc(4 * var(--remff3));
    margin-top:calc(2.5*var(--remff3));
    padding:0 calc(14*var(--remff3));
    font-size:calc(1.8*var(--remff3));
    line-height:2
}
@media screen and (max-width:768px){
    #ff3 .price-lineup-merit__list{
        -ms-flex-direction:column;
        flex-direction:column;
        gap:calc(.8*var(--remff3));
        margin-top:calc(2.6*var(--remff3));
        padding:0 calc(6*var(--remff3));
        font-size:calc(3*var(--remff3));
        line-height:1.4
    }
}
#ff3 .price-lineup-merit__item{
    position:relative;
    padding-left:calc(3.5*var(--remff3))
}
@media screen and (max-width:768px){
    #ff3 .price-lineup-merit__item{
        padding-left:calc(6*var(--remff3))
    }
    #ff3 .price-lineup-merit__item:not(:first-child){
        margin-top: calc(1.5*var(--remff3));
    }
}
#ff3 .price-lineup-merit__item:before{
    width:calc(2.8*var(--remff3));
    height:calc(2.8*var(--remff3));
    position:absolute;
    top:calc(.4*var(--remff3));
    left:0;
    content:'';
    display:block;
    background:url(../img/ic_merit-check.png) no-repeat center center/contain
}
@media screen and (max-width:768px){
    #ff3 .price-lineup-merit__item:before{
        width:calc(4*var(--remff3));
        height:calc(4*var(--remff3));
        position:absolute;
        left:0
    }
}
@media screen and (max-width:768px){
    #ff3 .price-lineup-merit__item__small {
        font-size:calc(2.2*var(--remff3))
    }
}

#ff3 .price .lineup__item{
    display:none;
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__item{
        position:relative;
    }
}

#ff3 .price .lineup__item.is-active{
    display:block
}
@media screen and (max-width:768px){
    #ff3 .price .lineup__item:nth-of-type(2) .lineup__heading,#ff3 .price .lineup__item:nth-of-type(4) .lineup__heading{
        top:calc(53*var(--remff3))
    }
}
#ff3 .price .lineup__item:nth-of-type(n+2) {
    border-top: none;
}

#ff3 .customer-service-center-wrap {
    background-color: #e4e9eb;
    width: calc(110*var(--rem));
    margin-left: auto;
    margin-right: auto;
    padding: calc(6*var(--rem)) calc(6*var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .customer-service-center-wrap {
        width: 100%;
        padding: calc(11*var(--rem)) calc(6*var(--rem));
    }
}

.customer-service-center{text-align:center;position:relative;margin-bottom:50px}
.customer-service-center::before{content:'';position:absolute;bottom:-50px;left:50%;transform:translateX(-50%);width:70px;height:2px;background-color:#ed6c00}
.customer-service-center__lead{margin-bottom:20px}
.customer-service-center__head{font-size:calc(3.0*var(--rem));margin-bottom:10px}
.customer-service-center__body{display:flex;align-items:flex-end;width:620px;margin:0 auto}
.customer-service-center__body a{cursor:default;pointer-events:none}
.customer-service-center__img{margin-right:20px}
.customer-service-center__info{width:300px;text-align:left;font-size:calc(1.6*var(--rem));line-height:1.4}
@media screen and (max-width:767px){
    .customer-service-center{margin-bottom:40px}
    .customer-service-center__lead{line-height:1.6}
    .customer-service-center::before{bottom:-40px;width:45px;height:2px}
    .customer-service-center__head{font-size:calc(4.2*var(--rem));margin-bottom:5px}
    .customer-service-center__body{display:block;width:100%;margin:0 auto}
    .customer-service-center__body a{cursor:pointer;pointer-events:auto}
    .customer-service-center__img{background-color: #fff;border-radius:4px;margin:0 auto 10px;padding:15px 40px;line-height:1}
    .customer-service-center__info{width:100%;text-align:center;font-size:calc(2.4*var(--rem))}
}
.customer-service-center__attention {
    margin-top: calc(3* var(--rem));
    margin-left: auto;
    margin-right: auto;
    max-width: calc(80* var(--rem));
    padding: calc(3* var(--rem));
    border: 1px solid #c8c8c8;
}
@media screen and (max-width: 767px) {
    .customer-service-center__attention {
        margin-top: calc(6 * var(--rem));
        margin-left: calc(5 * var(--rem));
        margin-right: calc(5 * var(--rem));
    }
}
.customer-service-center__attention__heading {
    color: #f00;
    font-size: calc(2* var(--rem));
}
@media screen and (max-width: 767px) {
    .customer-service-center__attention__heading {
        font-size: calc(3* var(--rem));
    }
}
.customer-service-center__attention__text {
    text-align: left;
    margin-top: calc(2* var(--rem));
    font-size: calc(1.5* var(--rem));
}
@media screen and (max-width: 767px) {
    .customer-service-center__attention__text {
        font-size: calc(2* var(--rem));
    }
}
.customer-service-center__attention__anchor {
    display: inline-block;
    margin-top: calc(1 * var(--rem));
    font-size: calc(1.6* var(--rem));
    border-bottom: 1px solid #000;
}
@media screen and (max-width: 767px) {
    .customer-service-center__attention__anchor {
        margin-top: calc(3 * var(--rem));
        font-size: calc(2.5* var(--rem));
    }
}
#wrapper #ff3 .pc{display:block}
#wrapper #ff3 .sp{display:none}
@media screen and (max-width:767px){
    #wrapper #ff3 .pc{display:none}
    #wrapper #ff3 .sp{display:block}
    #wrapper #ff3 .comparison_bnr/*,
    #wrapper #ff3 .footfitlite__banners*/{margin:0 7.4666666667vmin}
}
#ff3 .section.about{
    /*padding: calc(10* var(--rem)) 0 0;*/
	padding: 0;
}
#ff3 .about__inner{
    width:calc(70*var(--remff3));
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width:767px){
    #ff3 .about__inner{
        width:calc(65*var(--remff3));
    }
}
#ff3 .about__heading{
    text-align: center;
    font-size:calc(3.2*var(--remff3));
    font-weight: 700;
    letter-spacing: 0em;
}
@media screen and (max-width:767px){
    #ff3 .about__heading{
        font-size:calc(5*var(--remff3));
    }
}
#ff3 .about__lead{
    text-align: center;
    margin-top:calc(1.5*var(--remff3));
    font-size:calc(2.6*var(--remff3));
}
@media screen and (max-width:767px){
    #ff3 .about__lead{
        margin-top:calc(1*var(--remff3));
        font-size:calc(4.2*var(--remff3));
    }
}
#ff3 .about-carousel{
    position: relative;
    width:calc(52*var(--remff3));
    margin-top:calc(6*var(--remff3));
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width:768px){
    #ff3 .about-carousel{
        width:calc(61*var(--remff3));
        margin-top:calc(7*var(--remff3))
    }
}
#ff3 .about-carousel .slick-list{
    overflow:hidden;
}
#ff3 .about-carousel .slick-track{
    overflow:visible
}
#ff3 .about-carousel .about-carousel__item{
    width:calc(52*var(--remff3));
    height:calc(38.2*var(--remff3))
}

#ff3 .about-carousel__item{
    display:-ms-inline-flexbox!important;
    display:inline-flex!important;
    -ms-flex-align:center;
    align-items:center
}
#ff3 .about-carousel .about-carousel__item video,
#ff3 .about-carousel .about-carousel__item img{
    width:100%;
}
#ff3 .about-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: calc(2.2*var(--remff3));
    height: calc(7.3*var(--remff3));
    border: none;
    background: url(../img/ic-about-carousel-arrow.png) no-repeat center center;
    background-size: contain;
    cursor: pointer;
    font-size: 0;
}
#ff3 .about-carousel .slick-prev {
    left: calc(-9*var(--remff3));
    transform: translateY(-50%) scale(-1, 1);
}
@media screen and (max-width:768px){
    #ff3 .about-carousel .slick-prev {
        left: calc(-4*var(--remff3));
    }
}
#ff3 .about-carousel .slick-next {
    right: calc(-9*var(--remff3));
}
@media screen and (max-width:768px){
    #ff3 .about-carousel .slick-next {
        right: calc(-4*var(--remff3));
    }
}

#ff3 .about-carousel-thumb-wrapper {
    position: relative;
    margin-top:calc(4*var(--remff3));
    padding-bottom:calc(9*var(--remff3));
}
@media screen and (max-width:768px){
    #ff3 .about-carousel-thumb-wrapper {
        margin-top:calc(3*var(--remff3));
        padding-bottom:calc(12*var(--remff3));
    }
}
#ff3 .about-carousel-thumb{
    display:-ms-flexbox;
    display:flex;
    justify-content: space-between;
}
@media screen and (max-width:768px){
    #ff3 .about-carousel-thumb{
        flex-wrap: wrap;
        margin-left:calc(12.5*var(--remff3));
        margin-right:calc(12.5*var(--remff3));
    }
}
#ff3 .about-carousel-thumb__item{
    width:calc(10.2*var(--remff3));
    height:calc(10.2*var(--remff3));
    cursor:pointer;
    border: 1px solid #cccccc;
}
@media screen and (max-width:768px){
    #ff3 .about-carousel-thumb__item{
        width:calc(12*var(--remff3));
        height:calc(12*var(--remff3));
        -ms-flex:0 0 auto;
        flex:0 0 auto;
    }
}
@media screen and (max-width:768px){
    #ff3 .about-carousel-thumb__item:nth-child(n+4){
        margin-top:calc(2*var(--remff3));
    }
}
#ff3 .about-carousel-thumb__item.is-active {
    border-color: #000000;
}
#ff3 .about-carousel-thumb__item img{
    width:calc(10.2*var(--remff3))
}
@media screen and (max-width:768px){
    #ff3 .about-carousel-thumb__item img{
        width:calc(12*var(--remff3))
    }
}
#ff3 .about-carousel-thumb__item figcaption {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height:calc(5*var(--remff3));
    text-align: center;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    pointer-events: none;
    transition: opacity .5s;
}
@media screen and (max-width:768px){
    #ff3 .about-carousel-thumb__item figcaption {
        justify-content: flex-start;
        height: calc(7* var(--remff3));
        text-align: left;
        font-size: calc(2.4*var(--remff3));
    }
}
#ff3 .about-carousel-thumb__item.is-active figcaption {
    opacity: 1;
 }
 #ff3 .about .buttons {
    margin-top:calc(5*var(--remff3));
 }

 #ff3 .about .about__black-lead {
    margin-top: calc(8* var(--rem));
    font-weight: 700;
    font-size: calc(2.8* var(--rem));
    line-height: 1.85714;
    text-align: center;
 }
 @media screen and (max-width:768px){
    #ff3 .about .about__black-lead {
        margin-top: calc(11* var(--rem));
        font-size: calc(3.8* var(--rem));
    }
 }
 #ff3 .about .banners {
    margin-top: calc(2* var(--rem));
 }
 @media screen and (max-width:768px){
    #ff3 .about .banners {
        margin-top: calc(3* var(--rem));
     }
 }

.mt60 {
	margin-top: 60px;
}

#ff3 .footfitlite__banners{
	margin:30px auto 0;
	text-align: center;
	width:calc(110* var(--rem));
}
#ff3 .footfitlite__banners img{
	max-width: 1102px;
	width:100%;
	/*max-width: 1102px; */
}
@media screen and (max-width:768px){
	#ff3 .footfitlite__banners{
		margin:30px auto 0;
		width:calc(65* var(--rem));
}
}
#ff3 .footfitlite__banners a:hover{opacity: .7}

/**/
#ff3 .section.feature .buttons{
	margin-top:calc(10*var(--rem));
}
/*#ff3 .app .component-button{
	margin-top:calc(6*var(--rem))}

@media screen and (max-width:750px){
	#ff3 .app .component-button{
		margin-top:calc(8*var(--rem))}
}*/

/*#ff3 .component-button a[href^="#"],
#ff3 .component-button--cart a{
	gap:calc(.6*var(--rem));
	border:none;
	background:linear-gradient(#fbb04e,#e05656);
	transition:background .3s cubic-bezier(.39,.575,.565,1)
}

@media(hover:hover){
	#ff3 .component-button a[href^="#"]:hover,
	#ff3 .component-button--cart a:hover{
		background:linear-gradient(#e05656,#fbb04e);
		color:#fff}
	
	#ff3 .component-button--cart a:hover:before,
	#ff3 .component-button--cart a:hover:after{background:#fff}}

@media(hover:none){
	#ff3 .component-button a[href^="#"]:active,
	#ff3 .component-button--cart a:active{
		background:linear-gradient(#e05656,#fbb04e);color:#fff
	}
	
	#ff3 .component-button a[href^="#"]:active:before,
	#ff3 .component-button a[href^="#"]:active:after,
	#ff3 .component-button--cart a:active:before,
	#ff3 .component-button--cart a:active:after{
		background:#fff}
}

#ff3 .component-button a[target=_blank]{
	height:calc(7*var(--rem));
	border:1px solid #333;
	border-radius:calc(7*var(--rem));
	box-shadow:none;
	font-size:calc(1.8*var(--rem))}

@media screen and (max-width:750px){
	#ff3 .component-button a[target=_blank]{
		height:calc(10*var(--rem));
		font-size:calc(2.8*var(--rem))}
}

#ff3 .component-button.is-disabled a{
	background:#CCC
}*/

#ff3 .tribute-live.tribute-live--top {
    max-width: calc(90* var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: calc(4* var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .tribute-live.tribute-live--top {
        max-width: calc(65* var(--rem));
    }
}
#ff3 .tribute-live.tribute-live--bottom {
    margin-top: calc(4* var(--rem));
    margin-bottom: calc(4* var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .tribute-live.tribute-live--bottom {
        margin-top: calc(10* var(--rem));
        margin-bottom: calc(10* var(--rem));
    }
}
#ff3 .js-tribute-live {
    margin-top: -100vh;
    padding-top: 100vh;
}
@media screen and (max-width:768px){
    #ff3 .js-tribute-live {
        margin-top: 0vh;
        padding-top: 0vh;
    }
}
#ff3 .tribute-live__columns {
    border: 1px solid #cccccc;
}
@media screen and (min-width:768px){
    #ff3 .tribute-live__columns {
        display: flex;
    }
}
@media screen and (min-width:768px){
    #ff3 .tribute-live__columns__column:nth-child(1) {
        width: 36.1%;
    }
}
@media screen and (min-width:768px){
    #ff3 .tribute-live__columns__column:nth-child(2) {
        width: 63.9%;
    }
}
#ff3 .tribute-live__columns__column:nth-child(2) {
    padding: calc(2* var(--rem)) calc(3* var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .tribute-live__columns__column:nth-child(2) {
        padding: calc(4* var(--rem));
    }
}
@media screen and (min-width:768px){
    #ff3 .tribute-live--bottom .tribute-live__columns__column:nth-child(1) {
        width: 41.2%;
    }
}
@media screen and (min-width:768px){
    #ff3 .tribute-live--bottom .tribute-live__columns__column:nth-child(2) {
        width: 58.8%;
    }
}
#ff3 .tribute-live--bottom .tribute-live__columns__column:nth-child(2) {
    padding: calc(2* var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .tribute-live--bottom .tribute-live__columns__column:nth-child(2) {
        padding: calc(4* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__txt {
    margin-top: calc(1 * var(--rem));
    font-size: calc(1.8* var(--rem));
    letter-spacing: 0;
}
@media screen and (max-width:768px){
    #ff3 .tribute-live__columns__column__txt {
        margin-top: 0;
        font-size: calc(3.2* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__txt__em {
    color: #ec6c00;
}
#ff3 .tribute-live__columns__column__txt__small {
    font-size: calc(1.4* var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .tribute-live__columns__column__txt__small {
        font-size: calc(2* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__button {
    margin-top: calc(2* var(--rem));
}
@media screen and (max-width:768px){
    #ff3 .tribute-live__columns__column__button {
        margin-top: calc(4* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__button__anchor {
    position: relative;
    display: flex;
    margin-left: auto;
    margin-right: auto;
    justify-content: center;
    align-items: center;
    width: calc(30* var(--rem));
    height: calc(5* var(--rem));
    color: #ffffff;
    background-color: #ec6c00;
    font-size: calc(1.6* var(--rem));
    letter-spacing: 0;
    border-radius: calc(.6 * var(--rem));
    transition: opacity .5s;
}
@media screen and (max-width:768px){
    #ff3 .tribute-live__columns__column__button__anchor {
        max-width: 100%;
        width: calc(57* var(--rem));
        height: calc(10* var(--rem));
        font-size: calc(3* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__button__anchor:hover {
    opacity: .7;
}
#ff3 .tribute-live__columns__column__button__anchor::after {
    width: calc(1.6 * var(--rem));
    height: calc(.8 * var(--rem));
    position: absolute;
    top: calc(50% - calc(.4 * var(--rem)));
    right: calc(3 * var(--rem));
    content: '';
    display: block;
    background: url(../img/arw_down.png) no-repeat center center / contain;
}
@media screen and (max-width: 767px) {
    #ff3 .tribute-live__columns__column__button__anchor::after {
        width: calc(2.7 * var(--rem));
        height: calc(4.1 * var(--rem));
        position: absolute;
        top: calc(50% - calc(4.1 * var(--rem)) / 2);
        right: calc(5 * var(--rem));
    }
}
#ff3 .tribute-live__columns__column__button__anchor[target="_blank"]::after {
    width: calc(1.4 * var(--rem));
    height: calc(1.4 * var(--rem));
    position: absolute;
    top: calc(50% - calc(.7 * var(--rem)));
    right: calc(3 * var(--rem));
    content: '';
    display: block;
    background: url(../img/icn_blank_white.png) no-repeat center center / contain;
}
@media screen and (max-width: 767px) {
    #ff3 .tribute-live__columns__column__button__anchor[target="_blank"]::after {
        width: calc(3 * var(--rem));
        height: calc(3 * var(--rem));
        position: absolute;
        top: calc(50% - calc(1.5 * var(--rem)));
        right: calc(5 * var(--rem));
    }
}
#ff3 .tribute-live__columns__column__date {
    margin-top: calc(2* var(--rem));
    background-color: #f2f2f2;
    padding: calc(2 * var(--rem));
    letter-spacing: 0em;
}
@media screen and (max-width: 767px) {
    #ff3 .tribute-live__columns__column__date {
        margin-top: calc(3* var(--rem));
        padding: calc(2 * var(--rem));
    }
}
#ff3 .tribute-live__columns__column__date__end {
    margin-bottom: calc(1* var(--rem));
    text-align: center;
    font-size: calc(1.6* var(--rem));
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    #ff3 .tribute-live__columns__column__date__end {
        font-size: calc(2.6* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__date dl {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
    width: calc(40 * var(--rem));
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 767px) {
    #ff3 .tribute-live__columns__column__date dl {
        width: 100%;
    }
}
#ff3 .tribute-live__columns__column__date dl dt,
#ff3 .tribute-live__columns__column__date dl dd {
    font-size: calc(1.6* var(--rem));
}
@media screen and (max-width: 767px) {
    #ff3 .tribute-live__columns__column__date dl dt,
    #ff3 .tribute-live__columns__column__date dl dd {
        font-size: calc(2.2* var(--rem));
    }
}
#ff3 .tribute-live__columns__column__date dl dt {
    font-weight: bold;
}

/*--20250704--*/
#ff3 .price .price-note{
	margin-top:20px;
}

@media screen and (max-width:750px){
	#ff3 .price .price-note{
		margin-top:2.66666vw;
	}
}

#ff3 .price .price-note__heading{
	color:#ed6c00;
	font-weight:700;
	font-size:14px;
	line-height:1;
}

@media screen and (max-width:750px){
	#ff3 .price .price-note__heading{
		font-size:3.2vw;
	}
}

#ff3 .price .price-note__text{
	margin-top:5px;
	font-size:12px;
	line-height:1.4;
}

@media screen and (max-width:750px){
	#ff3 .price .price-note__text{
		margin-top:0.66666vw;
		font-size:2.66666vw;
		line-height:1.4}
}

#ff3 .price .price-note__text a{
	font-weight:700;text-decoration:underline;
}
#ff3 .bnr-link{
	text-align: center;
	margin:calc(12*var(--rem)) auto 0;
	max-width: 900px;
	
}
@media screen and (max-width: 767px) {
	#ff3 .bnr-link{
		max-width: 90vw;
		margin:calc(12*var(--rem)) auto 0;
}
}

#ff3 .bnr-link .link-txt{
	text-align: center;
	font-size:  calc(1.8 * var(--rem));
}

@media screen and (max-width: 767px) {
	#ff3 .bnr-link .link-txt{
		font-size:calc(2.8 * var(--rem));
	}
}

#ff3 .bnr-link a:hover {
	opacity: 0.7;
}
/*--keiro2025--*/
#ff3 .campaign_detail{
	width:100%;
	/*background: #e2ded3;*/
	/*margin:4.375vw auto 0;*/
	margin:0 auto;
	text-align: center;
}
@media screen and (max-width: 767px) {
	#ff3 .campaign_detail{
		margin:4.375vw auto 0;
	}
}

#ff3 .campaign_detail img{
	max-width: 1100px;
	width:100%;
	margin:0 auto;
}
#ff3 .campaign_ttl{
	color:  rgb(237, 108, 0);
	display: block;
	font-size: 14px;
}
@media screen and (max-width: 767px) {
	#ff3 .campaign_ttl{
		font-size: 3.2vw;
		margin-top:5.33333vw;

	}
}

#ff3 .lineup-price__item.campaign_price{
	color:  rgb(237, 108, 0);
}

#ff3 .normal_ttl{
	font-size: 12px;
	margin-top:15px;
}
@media screen and (max-width: 767px) {
	#ff3 .normal_ttl{
	font-size: 3.2vw;

}
}
#ff3 .section.campaign_detail{
	padding:auto 0;
}

#ff3 .component-dot .slick-dots {
    margin-top: calc(3*var(--rem));
	display: -ms-inline-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	gap: calc(1*var(--rem))
}
#ff3 .component-dot .slick-dots li {
	font-size: 0;
	line-height: 0;
	padding: 0
}
#ff3 .component-dot .slick-dots li button {
	width: calc(.8*var(--rem));
	height: calc(.8*var(--rem));
	position: relative;
	overflow: hidden;
	padding: 0;
	border: none;
	border-radius: calc(1.2*var(--rem));
	outline: none;
	background-color: #afafaf;
	line-height: 0;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
	transition: width .3s cubic-bezier(.39, .575, .565, 1)
}
@media screen and (max-width:767px) {
	#ff3 .component-dot .slick-dots li button {
		width: calc(1.2*var(--rem));
		height: calc(1.2*var(--rem))
	}
}
#ff3 .component-dot .slick-dots li button:after {
	display: block;
	content: "";
	position: absolute;
	inset: 0;
	width: 0;
	border-radius: calc(1.2*var(--rem));
	background-color: #333;
	will-change: scale
}
#ff3 .component-dot .slick-dots li.slick-active button {
	width: calc(3.3*var(--rem))
}
@media screen and (max-width:767px) {
	#ff3 .component-dot .slick-dots li.slick-active button {
		width: calc(4.5*var(--rem))
	}
}
#ff3 .component-dot .slick-dots li.slick-active button:after {
	width: 100%;
	transition: width 3.4s linear
}

#ff3 .easy .easy-box {
    width: 100%;
    max-width: calc(37 * var(--rem));
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(2 * var(--rem));
    border: calc(.2 * var(--rem)) solid #e8e3de;
    border-radius: calc(.8 * var(--rem));
    text-align: center;
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box {
        width: 100%;
        max-width: 100%;
        margin-top: 0;
        border-radius: calc(1 * var(--rem));
    }
}
#ff3 .easy .easy-box__heading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: calc(3.6 * var(--rem));
    background-color: #e8e3de;
    font-size: calc(2 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__heading {
        height: calc(7.5 * var(--rem));
        font-size: calc(3.6 * var(--rem));
    }
}
#ff3 .easy .easy-box__content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: calc(1 * var(--rem)) 0;
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__content {
        padding: calc(2 * var(--rem)) 0;
    }
}
#ff3 .easy .easy-box__text {
    font-size: calc(2.4 * var(--rem));
    line-height: 1;
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__text {
        font-size: calc(4 * var(--rem));
    }
}
#ff3 .easy .easy-box__text span {
    font-size: calc(2 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__text span {
        font-size: calc(3 * var(--rem));
    }
}
#ff3 .easy .easy-box__text em {
    font-style: normal;
    color: #ed6c00;
    font-size: calc(4.4 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__text em {
        font-size: calc(8.6 * var(--rem));
    }
}
#ff3 .easy .easy-box__text small {
    font-size: calc(1.8 * var(--rem));
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__text small {
        font-size: calc(3 * var(--rem));
    }
}
#ff3 .easy .easy-box__note {
    margin-top: calc(.6 * var(--rem));
    font-size: calc(1.2 * var(--rem));
    line-height: 1.5;
}
@media screen and (max-width:767px) {
    #ff3 .easy .easy-box__note {
        margin-top: calc(1.6 * var(--rem));
        font-size: calc(2 * var(--rem));
    }
}
#ff3 .section-ls {
  position: relative;
  background-color: #e4e9eb;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls {
    margin-top: 100px;
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls {
    margin-top: 6.25vw;
    padding-top: 6.25vw;
    padding-bottom: 6.25vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls {
    margin-top: 16vmin;
    padding: 16vmin 6.66666666667vmin;
  }
}
#ff3 .section-ls__inner {
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls__inner {
    width: 1100px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls__inner {
    width: 68.75vw;
  }
}
#ff3 .section-ls .section-ls__h2 {
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__h2 {
    font-size: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__h2 {
    font-size: 1.875vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls .section-ls__h2 {
    font-size: 5.6vmin;
  }
}

#ff3 .section-ls .section-ls__box {
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box {
    margin-top: 50px;
    padding: 70px;
    border-radius: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box {
    margin-top: 50px;
    padding: 4.375vw;
    border-radius: 0.625vw;
  }
}
@media screen and (max-width: 767px) {
    #ff3 .section-ls .section-ls__box {
      margin-top: 8vmin;
      padding: 10vmin 6.66666666667vmin;
      border-radius: 2.66666666667vmin;
    }
}

#ff3 .section-ls .section-ls__box__balloon {
  display: block;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__balloon {
    width: 570px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__balloon {
    width: 35.625vw;
  }
}
@media screen and (max-width: 767px) {
    #ff3 .section-ls .section-ls__box__balloon {
      width: 100%;
    }
}
#ff3 .section-ls .section-ls__box__balloon img {
  height: 100%;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__columns {
    margin-left: auto;
    margin-right: auto;
    max-width: 840px;
    margin-top: 60px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__columns {
    margin-top: 3.75vw;
    max-width: 52.5vw;
  }
}
@media screen and (max-width: 767px) {
    #ff3 .section-ls .section-ls__box__columns {
      margin-top: 9.33333333333vmin;
    }
}

@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__columns__column:nth-child(1) {
    width: 330px;
  }
  #ff3 .section-ls .section-ls__box__columns__column:nth-child(2) {
    margin-top: 30px;
    width: 440px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__columns__column:nth-child(1) {
    width: 20.625vw;
  }
  #ff3 .section-ls .section-ls__box__columns__column:nth-child(2) {
    margin-top: 1.875vw;
    width: 27.5vw;
  }
}
@media screen and (max-width: 767px) {
    #ff3 .section-ls .section-ls__box__product {
      display: block;
      margin-top: 5vmin;
      margin-left: auto;
      margin-right: auto;
      width: 52.9333333333vmin;
    }
}
#ff3 .section-ls .section-ls__box__product img {
  height: auto;
}

#ff3 .section-ls .section-ls__box__subheading {
  text-align: center;
  line-height: 1;
}
#ff3 .section-ls .section-ls__box__subheading span {
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__subheading span {
    font-size: 20px;
    padding: 0 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__subheading span {
    font-size: 1.25vw;
    padding: 0 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls .section-ls__box__subheading span {
    font-size: 4vmin;
    padding: 0 4vmin;
  }
}
#ff3 .section-ls .section-ls__box__subheading span:before,
#ff3 .section-ls .section-ls__box__subheading span:after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  width: 1px;
  background-color: #333333;
}
#ff3 .section-ls .section-ls__box__subheading span:before {
    inset: 0 auto 0 0;
    rotate: -45deg;
}
#ff3 .section-ls .section-ls__box__subheading span:after {
    inset: 0 0 0 auto;
    rotate: 45deg;
}

#ff3 .section-ls .section-ls__box__heading {
  font-family: futura-pt, sans-serif;
  color: #ed6c00;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__heading {
    margin-top: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__heading {
    margin-top: 0.625vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls .section-ls__box__heading {
    margin-top: 2vmin;
  }
}
#ff3 .section-ls .section-ls__box__heading__em {
  line-height: 1;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__heading__em {
    font-size: 74px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__heading__em {
    font-size: 4.625vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls .section-ls__box__heading__em {
    font-size: 15.7333333333vmin;
  }
}
#ff3 .section-ls .section-ls__box__heading__small {
  line-height: 1;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__heading__small {
    font-size: 32px;
    letter-spacing: 0em;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__heading__small {
    font-size: 2vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls .section-ls__box__heading__small {
    font-size: 6.93333333333vmin;
    letter-spacing: -0.01em;
  }
}

#ff3 .section-ls .section-ls__box__paragraph {
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  #ff3 .section-ls .section-ls__box__paragraph {
    margin-top: 30px;
    font-size: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1600px) {
  #ff3 .section-ls .section-ls__box__paragraph {
    margin-top: 1.825vw;
    font-size: 1.125vw;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls .section-ls__box__paragraph {
    font-size: 3.73333333333vmin;
  }
}
@media screen and (max-width: 767px) {
  #ff3 .section-ls__button {
    margin-top: calc(3 * var(--rem));
  }
}
@media screen and (max-width: 767px) {
    #ff3 .section-ls__button .button {
        width: 100%;
    }
}
/*--在庫表記 KV--*/
#ff3 .kv_attention{
	margin: 4.375vw auto 3.125vw;
  background-color: #ffe0e0;
  max-width: calc(110*var(--remV));
  max-width: 1130px;
  padding: 40px 50px;
font-size: calc(1.8 * var(--rem));
	text-align: center;
}

@media all and (max-width: 767px) {
	#ff3 .kv_attention{
	margin: 5.17vh auto 5.213vh;
    width: 90vw;
    padding: 4.171vh 3vw;
	font-size: calc(2.4 * var(--rem));
}
}

#ff3 .kv_attention .att-ttl{
	font-weight: bold;
	color: #f00;
	font-size: calc(2.0 * var(--rem));
}
@media all and (max-width: 767px) {
	#ff3 .kv_attention .att-ttl{
		font-size: calc(2.8 * var(--rem));
		
	}
}
#ff3 .kv_attention .date{
	font-weight: bold;
}
@media all and (max-width: 767px) {
	#ff3 .kv_attention .date{}
}
/*--在庫表記 cart--*/
#ff3 .cart_attention{
	margin:0 auto;
	text-align: center;
	font-size: calc(1.5 * var(--rem));
	width: calc(45*var(--rem));

}
@media all and (max-width: 767px) {
	#ff3 .cart_attention{
		font-size: calc(2.4 * var(--rem));
		width:100%;
	}
}
#ff3 .cart_attention .cart_attention_inner{
	max-width:calc(47*var(--remV));
	background-color: #ffe0e0;
	/*margin:calc(2 * var(--rem)) auto 0;*/
	margin:calc(3 * var(--rem)) auto 0;
	border-radius: 10px;
  border: 1px solid #333;
  padding: calc(2 * var(--rem)) calc(2.5 * var(--rem));
	line-height: 1.5;
}
@media all and (max-width: 767px) {
	#ff3 .cart_attention .cart_attention_inner{
	max-width: calc(80*var(--remV));
	line-height: 1.8;
}
}
#ff3 .cart_attention .ttl{
font-size: calc(1.8 * var(--rem));
  font-weight: bold;
  color: #f00;
  text-align: center;
	text-decoration: underline;
	margin-bottom: calc(1.4 * var(--rem));
}
@media all and (max-width: 767px) {
	#ff3 .cart_attention .ttl{
		 font-size: calc(2.8 * var(--rem));
		margin-bottom: calc(1.8 * var(--rem));
	}
}
#ff3 .cart_attention .date{
	font-weight: bold;
	font-size: calc(1.8 * var(--rem));
	margin:calc(1 * var(--rem)) auto;
	display: inline-block;
}
@media all and (max-width: 767px) {
	#ff3 .cart_attention .date{
		font-size: calc(3.0 * var(--rem));
	}
}
#ff3 .cart_attention .sml{
	font-size: calc(1.2 * var(--rem));
}
@media all and (max-width: 767px) {
	#ff3 .cart_attention .sml{
		font-size: calc(1.8 * var(--rem));}
}
#ff3 .cart_attention a.shop-link-btn{
	display: inline-block;
	margin:calc(1.5 * var(--rem)) auto calc(0.5 * var(--rem));
}

#ff3 .cart_attention .size-col{
	color: #f00;
	font-weight: 600;
}
/*--cp-price-normal--*/
#ff3 .lineup-price.cp-price-normal .lineup-price__item .cp_normal{
	text-decoration: line-through;
}
/*--highlight--*/
:root {
  --remV: 10px;
}
@media screen and (max-width: 1280px) {
  :root {
    --remV: calc(10vw / 1280 * 100);
  }
}
@media screen and (max-width: 750px) {
  :root {
    --remV: calc(10vw / 750 * 100);
  }
}
#ff3 .highlight {
  /*padding: calc(10 * var(--remV)) 0 calc(12 * var(--remV));*/
	padding: calc(10 * var(--remV)) 0 0;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight {
    /*padding: calc(15 * var(--remV)) 0 calc(14 * var(--remV));*/
	  padding: calc(15 * var(--remV)) 0 0;
  }
}
#ff3 .highlight__heading {
  /*font-size: calc(5.6 * var(--remV));*/
  font-size: calc(3.2 * var(--remV));
	font-weight: bold;
	text-align: center;
  line-height: calc(100 / 72);
}
@media screen and (max-width: 750px) {
  #ff3 .highlight__heading {
    /*font-size: calc(7.2 * var(--remV));*/
	  font-size: calc(5.2 * var(--remV));
  }
}
#ff3 .highlight .highlight-list {
  margin-top: calc(7 * var(--remV));
  padding-bottom: calc(3.6 * var(--remV));
}

#ff3 .highlight .highlight-list .slick-slide {
  position: relative;
  z-index: 1;
}

#ff3
  .highlight
  .highlight-list
  .slick-slide.slick-active
  .highlight-list__item,
#ff3
  .highlight
  .highlight-list
  .slick-slide.slick-active
  .highlight-list__image-delay {
  opacity: 1;
}

#ff3 .highlight .highlight-list__item {
  opacity: 0.5;
  width: calc(70 * var(--remV)) !important;
  padding: 0 calc(1 * var(--remV));
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  will-change: opacity;
　
}
@media screen and (max-width: 750px) {

  #ff3 .highlight .highlight-list__item {
    width: calc(57 * var(--remV)) !important;
  }
}

#ff3 .highlight .highlight-list__content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: calc(11 * var(--remV));
  border-radius: calc(1.2 * var(--remV)) calc(1.2 * var(--remV)) 0 0;
  border-top: 2px solid #e8e3df;
  border-left: 2px solid #e8e3df;
  border-right: 2px solid #e8e3df;
  background-color: #fff;
  box-sizing: border-box;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__content {
    height: calc(27.5 * var(--remV));
    border-radius: calc(1.2 * var(--remV)) calc(1.2 * var(--remV)) 0 0;
  }
}

#ff3 .highlight .highlight-list__number {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  font-size: calc(5.6 * var(--remV));
  font-family: futura-pt, sans-serif;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__number {
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: calc(8 * var(--remV));
  }
}

#ff3 .highlight .highlight-list__number:after {
  display: block;
  width: 1px;
  height: calc(4.5 * var(--remV));
  content: "";
  margin-right: calc(3.5 * var(--remV));
  margin-left: calc(2.8 * var(--remV));
  background-color: #333;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__number:after {
    display: block;
    width: calc(0.2 * var(--remV));
    height: calc(9.3 * var(--remV));
    content: "";
    margin-right: calc(3.4 * var(--remV));
    margin-left: calc(3 * var(--remV));
  }
}
#ff3 .highlight .highlight-list__text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: 100%;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__text {
    position: static;
  }
}
#ff3 .highlight .highlight-list__subheading {
  font-weight: 700;
  font-size: calc(2.4 * var(--remV));
  font-family: YakuHanJP_Narrow, "游ゴシック体", YuGothic, "游ゴシック",
    Yu Gothic, sans-serif;
  line-height: calc(58 / 38);
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__subheading {
    /*font-size: calc(3.8 * var(--remV));*/
	  font-size: calc(3.2 * var(--remV));
	  letter-spacing:-0.02em;
  }
}
#ff3 .highlight .highlight-list__subheading sup {
  vertical-align: middle;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__subheading sup {
    font-size: calc(2 * var(--remV)) !important;
  }
}

#ff3 .highlight .highlight-list__note {
  position: absolute;
  /*bottom: calc(2.4 * var(--remV));*/
  bottom: calc(1.0 * var(--remV));
  left: 0;
  font-size: calc(1.4 * var(--remV));
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__note {
    /*right: 0;
    bottom: calc(5 * var(--remV));*/
	bottom: calc(0.4 * var(--remV));
    font-size: calc(2 * var(--remV));
    text-align: left;
	line-height: 1.2;
	padding-left: 8em;
  }
}

#ff3 .highlight .highlight-list__image {
  overflow: hidden;
  border-radius: 0 0 calc(1.2 * var(--remV)) calc(1.2 * var(--remV));
  border-bottom: 2px solid #e8e3df;
  border-left: 2px solid #e8e3df;
  border-right: 2px solid #e8e3df;
  box-sizing: border-box;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__image {
    height: calc(68.7 * var(--remV));
    border-radius: 0 0 calc(1.2 * var(--remV)) calc(1.2 * var(--remV));
  }
}

#ff3 .highlight .highlight-list__image img,
#ff3 .highlight .highlight-list__image video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#ff3 .highlight .highlight-list__image-delay {
  position: absolute;
  right: calc(3.4 * var(--remV));
  bottom: calc(13.4 * var(--remV));
  overflow: hidden;
  opacity: 0;
  width: calc(21.5 * var(--remV));
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.6s;
  will-change: opacity;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list__image-delay {
    width: calc(55 * var(--remV));
    right: calc(1 * var(--remV));
    bottom: 0;
    border-radius: 0 0 calc(1.2 * var(--remV)) calc(1.2 * var(--remV));
  }
}

#ff3 .highlight .component-button {
  margin-top: calc(8 * var(--remV));
}

/**/
#ff3 .highlight {
  position: relative;
}
#ff3 .highlight:before {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  -webkit-mask: url(../img/bg_grid.png) top center/100% auto;
  mask: url(../img/bg_grid.png) top center/100% auto;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight:before {
    -webkit-mask-size: 250% auto;
    mask-size: 250% auto;
  }
}
#ff3 .highlight {
  /*background: linear-gradient(46deg, #c7e0fd, #f5f5f5);*/
}
#ff3 .highlight:before {
  background: linear-gradient(46deg, #fff, #ccc 50%);
}
#ff3 .highlight .highlight-list__number {
  line-height: 0.7;
}
@media screen and (max-width: 750px) {
  #ff3 .highlight .highlight-list {
    margin-top: calc(10.4 * var(--remV));
  }
  #ff3 .highlight .highlight-list__content > * {
    height: calc(14.5 * var(--remV));
  }
  #ff3
    .highlight
    .highlight-list__content:has(br:nth-of-type(n + 2))
    .highlight-list__number:after {
    height: 100%;
  }
  #ff3 .highlight .highlight-list__text {
    -ms-flex-align: start;
    align-items: flex-start;
	  
	}
  #ff3 .highlight .highlight-list__subheading {
    margin-top: calc(-1.2 * var(--remV));
  }
}
