@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Dela+Gothic+One&display=swap');
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-style: normal;
}
select {
    margin: 0 0 0 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-style: normal;
    font-weight: normal;
    font-size: 100%;
}
p,
address,
blockquote,
pre,
div,
abbr,
acronym,
dfn,
cite,
q,
code,
kbd,
samp,
var,
dl,
ol,
ul,
caption,
th {
    font-weight: normal;
    font-style: normal;
}
ul,
li,
ol {
    list-style: none;
}
a {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
}
html,
body,
form,
fieldset,
p,
div,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ul,
dl,
dt,
dd {
    -webkit-text-size-adjust: 100%;
}
img {
    vertical-align: bottom;
    width: 100%;
    height: auto;
}
html {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
}
body {
    line-height: 1.6 !important;
    color: #000000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
}
/* ---------------------------------------------
    共通レイアウト
--------------------------------------------- */
.pc {
    display: block;
}
.sp {
    display: none;
}
.tab-sp {
    display: none;
}
@media screen and (max-width: 1080px) {
    .sp {
        display: none;
    }
    .tab-sp {
        display: block;
    }
    .pc {
        display: block;
    }
}
@media screen and (max-width: 768px) {
    .sp {
        display: block;
    }
    .tab-sp {
        display: block;
    }
    .pc {
        display: none;
    }
}
.cx_smartphoneview #cx_commonPageTopBtn {
    width: 52px;
    height: 52px;
    bottom: 15px;
}
.cx_smartphoneview #cx_commonPageTopBtn a {
    width: 52px;
    height: 52px;
    line-height: 52px;
    font-size: 22px;
}
.pink {
    color: #ff577b;
}
.green {
    color: #6db803;
}
/* ============================================ */
img {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    margin: auto;
}
.flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.small {
    font-size: 70%;
}
.countinfinite {
    animation-iteration-count: infinite;
}
.icon_present {
    animation-name: presentMotion;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
}
@keyframes presentMotion {
    0% {
        transform: translate(0, 0) rotate(0);
    }
    10% {
        transform: translate(0, 0) rotate(0) scale(1);
    }
    20% {
        transform: translate(0, 0) rotate(0) scale(0.9);
    }
    30% {
        transform: translate(0, 0) rotate(10deg) scale(1.3);
    }
    40% {
        transform: translate(0, 0) rotate(-10deg) scale(1.3);
    }
    50% {
        transform: translate(0, 0) rotate(10deg) scale(1.3);
    }
    60% {
        transform: translate(0, 0) rotate(-10deg) scale(1.3);
    }
    70% {
        transform: translate(0, 0) rotate(0) scale(1);
    }
    80% {
        transform: translate(0, 10px) rotate(0) scale(1) scaleY(.8);
    }
    90% {
        transform: translate(0, 0) rotate(0);
    }
    100% {
        transform: translate(0, 0) rotate(0);
    }
}
@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
.rotate-icon {
    animation: rotate 4s linear infinite;
}
@keyframes swing {
    20% {
        transform: rotate(10deg);
    }
    40% {
        transform: rotate(-5deg);
    }
    60% {
        transform: rotate(10deg);
    }
    80% {
        transform: rotate(-5deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
.swing-icon {
    animation: swing 1.5s ease-in-out infinite;
}
@media screen and (max-width: 768px) {
    @keyframes rotateMotion {
        0% {
            transform: translate(0, 0) rotate(0);
        }
        10% {
            transform: translate(0, 0) rotate(0) scale(1);
        }
        20% {
            transform: translate(0, 0) rotate(0) scale(0.9);
        }
        30% {
            transform: translate(0, 0) rotate(10deg) scale(1.2);
        }
        40% {
            transform: translate(0, 0) rotate(-10deg) scale(1.2);
        }
        50% {
            transform: translate(0, 0) rotate(10deg) scale(1.2);
        }
        60% {
            transform: translate(0, 0) rotate(-10deg) scale(1.2);
        }
        70% {
            transform: translate(0, 0) rotate(0) scale(1);
        }
        80% {
            transform: translate(0, 1vw) rotate(0) scale(1) scaleY(.95);
        }
        90% {
            transform: translate(0, 0) rotate(0);
        }
        100% {
            transform: translate(0, 0) rotate(0);
        }
    }
}
.comingsoon {
    text-align: center;
    font-size: min(2vw, 20px);
    margin-top: min(2vw, 20px);
    font-weight: 700;
}
@media screen and (max-width: 768px) {
    .comingsoon {
        font-size: 4.8vw;
        margin-top: 3.33vw;
    }
}
/* == 全体背景 ========================================== */
#fp-wrap {
    border-top: none;
    border-bottom: none;
    margin: 0 auto;
    background-color: #FFF;
    position: relative;
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    color: #333333;
    font-weight: 500;
    letter-spacing: -.01em;
}
/* == メインビジュアル ========================================== */
#fp-wrap .l-mainvisual {
    width: 100%;
    margin: 0 auto;
    height: 610px;
    position: relative;
    overflow: hidden;
    background: url(../img/bg_april.png) no-repeat center bottom -110px;
    background-size: 1800px;
}
.l-mainvisual__box {
    width: 94%;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    text-align: center;
}
.l-mainvisual__title {
    width: 630px;
    margin: 20px auto 0 auto;
    line-height: 1;
}
.l-mainvisual__date {
    position: relative;
    margin-top: -15px;
}
.l-mainvisual__box h2 {
    font-size: 35px;
    line-height: 1.3;
    margin-top: 50px;
    letter-spacing: -.05em;
    font-weight: 800;
    box-sizing: border-box;
    background: url(../img/main_lead_bg.png) no-repeat center bottom;
    background-size: 630px;
}
.l-mainvisual__box h2 span.en {
    font-size: 40px;
    letter-spacing: 0;
    font-weight: 700;
}
@media screen and (max-width: 768px) {
    #fp-wrap .l-mainvisual {
        height: auto;
        padding: 10.67vw 0 12vw 0;
        background: url(../img/bg_april.png) no-repeat center bottom -24vw;
        background-size: 400%;
    }
    .l-mainvisual__box {
        width: 90%;
        max-width: auto;
    }
    .l-mainvisual__title {
        width: 90%;
        margin: 4.67vw auto 0 auto;
        line-height: 1;
    }
    .l-mainvisual__date {
        position: relative;
        margin-top: 0;
    }
    .l-mainvisual__box h2 {
        font-size: 5.33vw;
        line-height: 1.3;
        margin-top: 0;
        background: url(../img/main_lead_bg.png) no-repeat center bottom;
        background-size: 100%;
    }
    .l-mainvisual__box h2 span.en {
        font-size: 6vw;
        letter-spacing: 0;
        font-weight: 700;
    }
}
.present {
    padding: min(5vw, 50px) 0 min(7vw, 70px) 0;
    background: #0492e4;
}
.title {
    text-align: center;
    color: #6db803;
    margin-top: min(8vw, 60px);
}
.present-title {
    color: #FFF;
    margin-top: 0;
}
.present-title__icon {
    width: min(7vw, 70px);
    margin: 0 auto;
}
.title-icon {
    width: min(16vw, 160px);
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
}
.title-icon img {
    width: 50%;
}
.title h3 {
    font-size: min(4.6vw, 46px);
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .04em;
    line-height: 1;
    margin-top: min(2vw, 20px);
}
@media screen and (max-width: 768px) {
    .present {
        padding: 8vw 0 12vw 0;
    }
    .title {
        margin-top: 13.33vw;
    }
    .present-title {
        margin-top: 0;
    }
    .present-title__icon {
        width: 10.67vw;
        margin: 0 auto;
    }
    .title-icon {
        width: 29.33vw;
        margin: 0 auto;
    }
    .title h3 {
        font-size:9.07vw;
        margin-top:4vw;
    }
}
.present-comingsoon {
    text-align: center;
    color: #FFF;
    padding: min(5vw, 50px) 0;
    font-size: min(2vw, 20px);
    font-weight: 600;
}
.present-comingsoon span {
    color: #ffea00;
    font-size: min(6vw, 60px);
    display: block;
    margin-bottom: min(1.5vw, 15px);
}
.present-list,
.guide-list {
    width: 94%;
    max-width: 1160px;
    margin: min(6vw, 60px) auto 0 auto;
    position: relative;
}
.present-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
}
.guide-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    box-sizing: border-box;
}
.present-list li {
    width: calc((100% - 5%)/ 3);
    margin-right: 2.5%;
    box-sizing: border-box;
}
.guide-list li {
    width: calc((100% - 5%)/ 3);
    margin-right: 2.5%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: min(.5vw, 5px) solid #6db803;
    border-radius: min(1.5vw, 15px);
    position: relative;
}
.present-list li:nth-child(3n),
.guide-list li:nth-child(3n) {
    margin-right: 0;
}
@media screen and (max-width: 768px) {
    .present-comingsoon {
        padding: 8vw;
        font-size: 4vw;
    }
    .present-comingsoon span {
        font-size: 10vw;
        margin-bottom: 2.5vw;
    }
    .present-list,
    .guide-list {
        margin: 0 auto;
        width: 90%;
    }
    .present-list ul {
        display: block;
    }
    .guide-list ul {
        display: block;
    }
    .present-list li {
        width: 100%;
        margin-right: 0;
        margin-top: 9.33vw;
    }
    .guide-list li {
        display: block;
        width: 100%;
        margin-right: 0;
        border: 1.07vw solid #6db803;
        border-radius: 2.67vw;
        position: relative;
        margin-top: 9.33vw;
    }
}
.present-list li a, .present-item__cs {
    display: block;
    color: #333333;
    background: #FFF;
    border-radius: min(1.5vw, 15px);
}
@media screen and (min-width: 767px) {
    .present-list li a, .link-program a, .link-history a, .info-txt__link a {
        transition-duration: 0.3s;
    }
    .present-list li a:hover, .link-program a:hover, .link-history a:hover, .info-txt__link a:hover {
        opacity: .8;
        transform: scale(.98, .98);
    }
}
.present-info {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
}
.present-info__prize p {
    font-family: "Dela Gothic One", sans-serif;
    letter-spacing: .08em;
    font-size: min(3vw, 30px);
    line-height: 1;
    padding: min(1vw, 10px) min(2vw, 20px) min(1.4vw, 14px) min(2vw, 20px);
    border-top-left-radius: min(1.5vw, 15px);
    border-bottom-right-radius: min(1.5vw, 15px);
    color: #FFF;
}
.present-info__prize p:after {
    content: "賞";
    font-size: min(2vw, 20px);
}
.present-info__point {
    padding: min(1vw, 10px) min(1vw, 15px) 0 0;
}
.present-info__point dt {
    background: #fe3663;
    color: #FFF;
    text-align: center;
    font-size: min(1.3vw, 13px);
    line-height: 1;
    padding: min(.5vw, 5px) min(1vw, 10px);
    border-radius: min(.3vw, 3px);
    letter-spacing: .04em;
}
.present-info__point dd {
    color: #fe3663;
    font-weight: 700;
    font-size: min(1.8vw, 18px);
    line-height: 1;
    margin-top: min(.3vw, 3px);
    text-align: center;
}
.present-item figure {
    width: 100%;
    margin: min(1vw, 10px) auto 0 auto;
    box-sizing: border-box;
}
.guide-item figure {
    width: 94%;
    margin: min(1vw, 10px) auto 0 auto;
    box-sizing: border-box;
}
.present-item__name {
    width: 100%;
    text-align: center;
    padding: min(2vw, 20px) 0;
}
.present-item__name dt {
    font-size: min(1.9vw, 19px);
    font-weight: 700;
    line-height: 1.5;
}
.present-item__name dd {
    font-size: min(1.6vw, 16px);
    font-weight: 700;
    line-height: 1;
    margin-top: min(.5vw, 5px);
}
.present-item__name dd span {
    font-size: min(3.5vw, 35px);
    font-family: "Dela Gothic One", sans-serif;
    letter-spacing: .04em;
}
.present-item__link {
    border-bottom-left-radius: min(1.6vw, 16px);
    border-bottom-right-radius: min(1.6vw, 16px);
    line-height: 1;
    padding: min(2.4vw, 24px) 0;
    font-size: min(1.8vw, 18px);
    font-weight: 700;
    border: min(.6vw, 6px) solid #FFF;
    color: #FFF;
    text-align: center;
    background-size: min(2.4vw, 24px);
    background-repeat: no-repeat;
    background-position: right min(2vw, 20px) center;
}
.presentA .present-info__prize p,
.presentA .present-item__link {
    background-color: #1162e8;
}
.presentB .present-info__prize p,
.presentB .present-item__link {
    background-color: #f23333;
}
.presentC .present-info__prize p,
.presentC .present-item__link {
    background-color: #00a814;
}
.presentA .present-item__link {
    background-image: url(../img/arrow_present_a.png);
}
.presentB .present-item__link {
    background-image: url(../img/arrow_present_b.png);
}
.presentC .present-item__link {
    background-image: url(../img/arrow_present_c.png);
}
.presentA .present-item__name dd {
    color: #1162e8;
}
.presentB .present-item__name dd {
    color: #f23333;
}
.presentC .present-item__name dd {
    color: #00a814;
}
.present-item__cs .present-item__link {
    background-color: #aaa;
    background-image: none;
}
.present-logo {
    text-align: right;
    margin-top: min(2vw, 30px);
}
.present-logo p {
    color: #FFF;
    font-size: min(1.8vw, 18px);
    font-weight: 600;
}
.present-logo p span {
    font-size: min(3vw, 30px);
}
.present-logo img {
    width: min(20vw, 220px);
}
.present-attention {
    font-size: min(1.7vw, 17px);
    line-height: 1;
    margin-top: min(3vw, 30px);
    color: #FFF;
    text-align: right;
    font-weight: 600;
    letter-spacing: .02em;
}
.guide-attention {
    font-size: min(1.7vw, 17px);
    line-height: 1;
    margin-top: min(3vw, 30px);
    text-align: right;
    font-weight: 600;
    letter-spacing: .02em;
}

@media screen and (max-width:768px) {
    .present-list li a, .present-item__cs {
        border-radius: 2.67vw;
    }
    .present-info__prize p {
        font-size: 9.07vw;
        line-height: 1;
        padding: 2vw 4vw 2.67vw 4vw;
        border-top-left-radius: min(1.5vw, 15px);
        border-bottom-right-radius: min(3.2vw, 32px);
        color: #FFF;
    }
    .present-info__prize p:after {
        content: "賞";
        font-size: 4vw;
    }
    .present-info__point {
        padding: 2.67vw 2.67vw 0 0;
    }
    .present-info__point dt {
        font-size: 3.2vw;
        padding: 1.33vw 2.67vw;
        border-radius: 0.53vw;
    }
    .present-info__point dd {
        font-size: 4vw;
        margin-top: 0.8vw;
    }
    .present-item figure,
    .guide-item figure {
        margin: 2.67vw auto 0 auto;
    }
    .present-item__name {
        padding: 4vw 0;
    }
    .present-item__name dt {
        font-size: 4.8vw;
        line-height: 1.5;
    }
    .present-item__name dd {
        font-size: 3.73vw;
        margin-top: 2vw;
    }
    .present-item__name dd span {
        font-size: 8vw;
    }
    .present-item__link {
        border-bottom-left-radius: 2.67vw;
        border-bottom-right-radius: 2.67vw;
        padding: 5.33vw 0;
        font-size: 4vw;
        border: 1.07vw solid #FFF;
        background-size: 4vw;
        background-position: right 4vw center;
    }
    .present-logo {
        margin-top: 6.4vw;
    }
    .present-logo img {
        width: 48vw;
    }
    .present-logo p {
        font-size: 3.2vw;
    }
    .present-logo p span {
        font-size: 5.33vw;
    }
    .present-attention {
      
        font-size: 4vw;
        margin: 6.4vw auto 0 auto;
        line-height: 1.8;
        text-align: center;
       
    }
    .guide-attention {
    font-size: 4vw;
        margin: 6.4vw auto 0 auto;
        line-height: 1.8;
        text-align: center;
    }
}
.guide-item__step {
    position: relative;
    width: min(5vw, 60px);
    height: min(5vw, 60px);
    background: url(../img/guide_bg.png) no-repeat center top;
    background-size: min(5vw, 60px);
    font-family: "Dela Gothic One", sans-serif;
    color: #FFF;
    font-size: min(3.6vw, 40px);
    line-height: 1;
    padding-top: min(.5vw, 5px);
    text-align: center;
    margin: min(-2.5vw, -30px) auto 0 auto;
}
.guide-item dl {
    width: 100%;
}
.guide-item__title {
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .04em;
    font-size: min(2.3vw, 28px);
    text-align: center;
    line-height: 1.4;
    padding: min(1.5vw, 15px) 0;
}
.guide-item__txt {
    width: 100%;
    box-sizing: border-box;
    padding: min(1.8vw, 20px);
    color: #FFF;
    letter-spacing: .02em;
    line-height: 1.7;
    background: #6db803;
    flex-grow: 1;
    font-size: min(1.6vw, 16px);
}
.guide-item__txt span, .present-attention span {
    color: #f6ff00;
}
@media screen and (max-width: 768px) {
    .guide-item__step {
        position: relative;
        width: 10.67vw;
        height: 10.67vw;
        background: url(../img/guide_bg.png) no-repeat center top;
        background-size: 10.67vw;
        font-size: 6.67vw;
        padding-top: 1.33vw;
        margin: -5.33vw auto 0 auto;
    }
    .guide-item dl {
        width: 100%;
    }
    .guide-item__title {
        font-size: 6.67vw;
        padding: 3.33vw 0;
        line-height: 1.3;
    }
    .guide-item__txt {
        padding: 4vw;
        line-height: 1.6;
        font-size: 4vw;
        letter-spacing: .01em;
    }
}
.program {
    background: url(../img/bg_april.png) no-repeat center bottom -240px;
    background-size: 1800px;
    padding-bottom: 100px;
    padding-top: min(4vw, 40px);
}
.program-list {
    width: 86%;
    max-width: 700px;
    margin: min(4vw, 40px) auto 0 auto;
    position: relative;
}
.program-list li {
    background: #FFF;
}
.program-list__weekday {
    border: min(.5vw, 5px) solid #6db803;
    border-radius: min(1.5vw, 15px);
}
.program-list__weekday dt {
    background: #6db803;
}
.program-list__weekday dd span {
    color: #6db803;
}
.program-list__saturday {
    border: min(.5vw, 5px) solid #0ba1df;
    border-radius: min(1.5vw, 15px);
    margin-top: min(2vw, 20px);
}
.program-list__saturday dt {
    background: #0ba1df;
}
.program-list__saturday dd span {
    color: #0ba1df;
}
.program-list__sunday {
    border: min(.5vw, 5px) solid #fc6d8b;
    border-radius: min(1.5vw, 15px);
    margin-top: min(2vw, 20px);
}
.program-list__sunday dt {
    background: #fc6d8b;
}
.program-list__sunday dd span {
    color: #fc6d8b;
}
.program-list dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
}
.program-list dt {
    width: 40%;
    color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: min(4.6vw, 46px);
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.program-list dd {
    width: 60%;
    display: flex;
    align-items: center;
    line-height: 1.4;
    position: relative;
    justify-content: space-between;
    box-sizing: border-box;
    padding: min(1.5vw, 15px) min(2vw, 20px) min(2vw, 20px) min(3vw, 30px);
    font-size: min(1.8vw, 18px);
    font-weight: 500;
}
.program-list dd span {
    font-size: min(4.8vw, 48px);
    font-weight: 600;
}
.link-program {
    width: min(40vw, 400px);
    margin: min(3vw, 30px) auto 0 auto;
}
.link-program a {
    width: 100%;
    display: block;
    border-radius: 100px;
    line-height: 1;
    padding: min(3vw, 30px) 0;
    font-size: min(2vw, 20px);
    font-weight: 700;
    border: min(.4vw, 4px) solid #FFF;
    color: #FFF;
    text-align: center;
    background: #6db803 url(../img/arrow_green.png) no-repeat right min(2vw, 20px) center;
    background-size: min(2.4vw, 24px);
    box-shadow: 1px 1px 0 #6db803;
}
.program-attention {
    width: 750px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
    margin: min(5vw, 50px) auto 0 auto;
}
.program-attention .item-title__logo {
    width: 140px;
    padding-right: min(1.5vw, 15px);
    line-height: 1;
}
.program-attention p.program-attention__txt1 {
    font-size: 30px;
    font-weight: 700;
    color: #fe3663;
    padding: .2em .5em;
    background: #ffea00;
    border-radius: min(.4vw, 4px);
    margin-right: .5em;
    line-height: 1;
}
.program-attention p.program-attention__txt2 {
    font-size: 30px;
    font-weight: 700;
    color: #fe3663;
    line-height: 1;
}
@media screen and (max-width: 768px) {
    .program {
        background: url(../img/bg_april.png) no-repeat center bottom -32vw;
        background-size: 300%;
        padding-bottom: 13.33vw;
        padding-top: 6.4vw;
    }
    .program-list {
        width: 90%;
        margin: 4.8vw auto 0 auto;
    }
    .program-list__weekday {
        border: 1.07vw solid #6db803;
        border-radius: 2.67vw;
    }
    .icon_livenews_it {
        width: 40vw;
        margin-top: 2.67vw;
    }
    .program-list__saturday {
        border: 1.07vw solid #0ba1df;
        border-radius: 2.67vw;
        margin-top: 3.2vw;
    }
    .program-list__sunday {
        border: 1.07vw solid #fc6d8b;
        border-radius: 2.67vw;
        margin-top: 3.2vw;
    }
    .program-list dt {
        font-size: 4.8vw;
        font-family: "Dela Gothic One", sans-serif;
        font-weight: 400;
        font-style: normal;
        width: 28%;
    }
    .program-list dd {
        width: 72%;
        display: block;
        padding: 2.5vw 4vw 4vw 4vw;
        font-size: 3.47vw;
    }
    .program-list dd span {
        font-size: 8vw;
    }
    .link-program {
        width: 74.67vw;
        margin: 4.8vw auto 0 auto;
    }
    .link-program a {
        padding: 4.8vw 0;
        font-size: 4vw;
        font-weight: 700;
        border: 0.8vw solid #FFF;
        background: #6db803 url(../img/arrow_green.png) no-repeat right 4.8vw center;
        background-size: 4.8vw;
        box-shadow: 1px 1px 0 #6db803;
    }
    .program-attention {
        width: 100%;
        margin: 8vw auto 0 auto;
    }
    .program-attention .item-title__logo {
        width: 24vw;
        padding-right: 2vw;
    }
    .program-attention p.program-attention__txt1 {
        font-size: 5.33vw;
        border-radius: 1.07vw;
    }
    .program-attention p.program-attention__txt2 {
        font-size: 5.33vw;
    }
}
.info-logo {
    width: 300px;
    margin: 60px auto 0 auto;
}
.link-history {
    width: min(80vw, 800px);
    margin: min(3vw, 30px) auto 0 auto;
}
.link-history a {
    width: 100%;
    display: block;
    border-radius: 100px;
    line-height: 1;
    padding: min(5vw, 50px) 0;
    font-size: min(3.6vw, 36px);
    font-weight: 700;
    border: min(.4vw, 4px) solid #FFF;
    color: #FFF;
    text-align: center;
    background: #ff577b url(../img/arrow_pink.png) no-repeat right min(5vw, 50px) center;
    background-size: min(3.6vw, 36px);
    box-shadow: 1px 1px 0 #ff577b;
}
.link-history__cs {
    width: min(80vw, 800px);
    margin: min(3vw, 30px) auto 0 auto;
    border-radius: 100px;
    line-height: 1;
    padding: min(3vw, 30px) 0;
    font-size: min(3.6vw, 36px);
    font-weight: 700;
    border: min(.4vw, 4px) solid #FFF;
    color: #FFF;
    text-align: center;
    background: #aaa;
    box-shadow: 1px 1px 0 #ccc;
}
.link-history__cs span {
    font-size: 60%;
    font-weight: 500;
}
.info-attention {
    text-align: center;
    line-height: 1.8;
    margin-top: min(3vw, 30px);
    font-size: min(1.7vw, 17px);
}
.info-txt, .qa {
    width: 94%;
    max-width: 800px;
    margin: 0 auto;
    padding: 0 0 min(8vw, 80px) 0;
    font-size: min(1.7vw, 17px);
    line-height: 1.9;
}
.info-txt dt {
    margin-top: min(5vw, 50px);
    border-bottom: 1px solid #ff577b;
    color: #ff577b;
    font-weight: 700;
    font-size: min(2vw, 20px);
    line-height: 1;
    padding-bottom: min(1.5vw, 15px);
}
.qa-title {
    border-bottom: 1px solid #ff577b;
    color: #ff577b;
    font-weight: 700;
    font-size: min(2vw, 20px);
    line-height: 1;
    padding-bottom: min(1.5vw, 15px);
}
.info-txt p {
    margin-top: min(2vw, 20px);
}
.info-txt p span {
    font-weight: bold;
}
.info-txt__link {
    margin-top: min(.5vw, 5px);
}
.info-txt__link a {
    display: inline-block;
    background: #6db803 url(../img/arrow_green.png) no-repeat right 15px center;
    background-size: 15px;
    color: #FFF;
    line-height: 1;
    font-weight: 700;
    padding: min(1.5vw, 15px) min(4vw, 40px) min(1.5vw, 15px) min(2vw, 20px);
    border-radius: 100px;
}
@media screen and (max-width: 768px) {
    .info-logo {
        width: 53.33vw;
        margin: 10.67vw auto 0 auto;
    }
    .link-history {
        width: 90%;
        margin: 5.33vw auto 0 auto;
    }
    .link-history a {
        padding: 8vw 0;
        font-size: 4.8vw;
        font-weight: 700;
        border: 0.8vw solid #FFF;
        background: #ff577b url(../img/arrow_pink.png) no-repeat right 4.8vw center;
        background-size: 4.8vw;
        box-shadow: 1px 1px 0 #ff577b;
    }
    .link-history__cs {
        width: 90%;
        margin: 5.33vw auto 0 auto;
        line-height: 1;
        padding: 4.8vw 0;
        font-size: 4.8vw;
        border: 0.8vw solid #FFF;
    }
    .info-attention {
        width: 90%;
        font-size: 3.73vw;
        margin: 6.4vw auto 0 auto;
        line-height: 1.8;
        text-align: left;
    }
    .info-txt, .qa {
        width: 90%;
        margin: 0 auto;
        padding: 0 0 13.33vw 0;
        font-size: 4vw;
    }
    .info-txt dt {
        margin-top: 14.67vw;
        font-size: 4vw;
        padding-bottom: 2.67vw;
    }
    .qa-title {
        font-size: 4vw;
        padding-bottom: 2.67vw;
    }
    .info-txt p {
        margin-top: 4vw;
        line-height: 1.8;
    }
    .info-txt__link {
        margin-top: 2vw;
    }
    .info-txt__link a {
        display: inline-block;
        background: #6db803 url(../img/arrow_green.png) no-repeat right 4vw center;
        background-size: 4vw;
        font-size: 3.73vw;
        padding: 4vw 11.33vw 4vw 4.8vw;
    }
}
.qa-list {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
}
.qa-list li {
    font-size: min(1.7vw, 17px);
    margin-top: min(2vw, 20px);
}
.qa-list__item li:first-child {
    margin-top: 0;
}
.qa-list li dl {
    border: 1px solid #6db803;
    border-radius: min(1vw, 10px);
}
.qa-list dt.open {
    background: #f2f8eb url(../img/close.png) no-repeat right min(2vw, 20px) center;
    background-size: min(2.2vw, 22px);
    color: #5ea600;
}
.qa-list dt {
    cursor: pointer;
    background: #FFF url(../img/open.png) no-repeat right min(2vw, 20px) center;
    background-size: min(2.2vw, 22px);
    padding: min(2.8vw, 28px) min(8vw, 80px) min(2.8vw, 28px) min(2.5vw, 25px);
    -webkit-transition: 0.1s ease-out;
    transition: 0.1s ease-out;
    line-height: 1.7;
    font-weight: 700;
    border-radius: min(1vw, 10px);
}
.qa-list dd {
    background: #FFF;
    display: none;
    padding: min(2.4vw, 24px) min(2.5vw, 25px);
    line-height: 1.9;
    overflow-wrap: break-word;
    border-radius: min(1vw, 10px);
}
.qa-list dd span {
    font-weight: 700;
}
.qa-list dd a {
    color: #ff577b;
    text-decoration: underline;
}
p.indent {
    text-indent: -.75em;
    padding-left: .75em;
}
@media screen and (min-width: 767px) {
    .qa-list dt:hover {
        background-color: #f2f8eb;
        color: #5ea600;
    }
}
@media only screen and (max-width: 768px) {
    .qa-list {
        width: 100%;
    }
    .qa-list li {
        font-size: 4vw;
        margin-top: 4vw;
    }
    .qa-list__item li:first-child {
        margin-top: 0;
    }
    .qa-list dt.open {
        background: #f2f8eb url(../img/close.png) no-repeat right 3vw center;
        background-size: 5.33vw;
    }
    .qa-list dl {
        border-radius: 2.67vw;
    }
    .qa-list dt {
        cursor: pointer;
        background: #FFF url(../img/open.png) no-repeat right 3vw center;
        background-size: 5.33vw;
        padding: 4.8vw 12vw 4.8vw 4.8vw;
        border-radius: 2.67vw;
    }
    .qa-list dd {
        padding: 4.8vw;
        border-radius: 2.67vw;
    }
}