@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;800&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@800&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%;
}
.fadeDownAnim,.prizeAnim {
    opacity: 0;
}
/* ---------------------------------------------
    共通レイアウト
--------------------------------------------- */
.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;
}
/* ============================================ */
img {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    margin: auto;
}
.delay-time04 {
    animation-delay: 0.4s;
}
.timing-ease {
    animation-timing-function: ease;
}
.timing-easeout {
    animation-timing-function: ease-out;
}
.countinfinite {
    animation-iteration-count: infinite;
}
@keyframes fadeDownMotion {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.fadeDown {
    animation-name: fadeDownMotion;
    animation-duration: 800ms;
    animation-fill-mode: forwards;
    opacity: 0;
}

 @keyframes prizeiconMotion {
    0% {
         opacity: 0;
        transform: translateY(-30px)scaleY(.9);
    }
    70% {
         opacity: 1;
        transform: translateY(-5px)scaleY(.6);
    }
    100% {
          opacity: 1;
        transform: translateY(0)scaleY(1);
    }
}
.prizeMotion {
    animation-name: prizeiconMotion;
    animation-duration: 400ms;
    animation-fill-mode: forwards;
    transform-origin: center bottom;
    animation-timing-function: ease-out;
}


/* == 全体背景 ========================================== */
#fp-wrap {
    border-top: none;
    border-bottom: none;
    margin: 0 auto;
    background: #FFF url(../img/bg.jpg) repeat-y center top;
    background-size: 100%;
    position: relative;
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    color: #000;
    font-feature-settings: "palt";
}
.winners-contents__list2 ul li dl dt:before, .list-winners__name span:before, .prize-title dt:before {
    content: "「 ";
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    font-weight: 500;
}
.drama-title dt:before, .link-drama dd span:before {
    content: "『 ";
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    font-weight: 500;
}
.winners-contents__list2 ul li dl dt:after, .list-winners__name span:after, .prize-title dt:after {
    content: " 」";
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    font-weight: 500;
}
.drama-title dt:after, .link-drama dd span:after {
    content: " 』";
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    font-weight: 500;
}
.link-basic {
    width: min(35vw, 350px);
    margin: min(6vw, 60px) auto 0 auto;
}
#award .link-basic {
    margin-top: min(8vw, 80px);
}
.news-page__line {
    width: 100%;
    border-bottom: 1px solid #000;
    margin-top: min(8vw, 80px);
}
#news-page .link-basic {
    margin-top: min(8vw, 80px);
}
.link-basic__new {
    margin-top: min(4vw, 40px);
}
.link-basic a {
    display: block;
    background: #FFF url(../img/arrow.png) no-repeat right min(1.5vw, 15px) center;
    background-size: min(3.6vw, 36px);
    text-align: center;
    color: #000;
    line-height: 1;
    font-weight: 700;
    padding: 1.2em 0;
    border-radius: 100px;
    font-size: min(2vw, 20px);
    border: 2px solid #000;
}
.link-basic__new a {
    padding: 1em 0;
    background-color: #f8e0cc;
}
.link-basic__new a span {
    display: block;
    font-size: min(1.6vw, 16px);
    font-weight: 500;
    color: #454545;
    margin-top: .5em;
}
.link-drama {
    width: 90%;
    max-width: 1080px;
    margin: min(3vw, 30px) auto 0 auto;
}
.link-1 li {
    width: 48.5%;
    margin-left: auto;
    margin-right: auto;
}
.link-drama ul {
    display: flex;
    flex-wrap: wrap;
}
.link-2 li {
    width: 48.5%;
}
.link-2 li:first-child {
    margin-right: 3%;
}
.link-drama li a {
    display: block;
}
.link-drama li.moueewa a, .link-drama li.kintsukuroi a {
    border: 1px solid #cea20c;
}
.link-drama li.tver a {
    border: 1px solid #008dcb;
}
@media screen and (max-width: 768px) {
    .link-basic {
        width: 80vw;
        margin: 10.67vw auto 0 auto;
    }
    #award .link-basic {
        margin-top: 16vw;
    }
    .news-page__line {
        margin-top: 16vw;
    }
    #news-page .link-basic {
        margin-top: 16vw;
    }
    .link-basic__new {
        margin-top: 8vw;
    }
    .link-basic a {
        display: block;
        background: #FFF url(../img/arrow.png) no-repeat right 3.5vw center;
        background-size: 8vw;
        font-size: 4.27vw;
        padding: 1.4em 0;
    }
    .link-basic__new a {
        background-color: #f8e0cc;
        padding: 1em 0;
    }
    .link-basic__new a span {
        font-size: 3.73vw;
    }
    .link-drama {
        margin: 0 auto 0 auto;
    }
    .link-drama ul {
        display: block;
    }
    .link-drama li {
        width: 100%;
        margin-top: 4vw;
    }
    .link-drama li:first-child {
        margin-right: 0;
    }
}
/*_________________________________________________________ 

お知らせ

 _________________________________________________________*/
#news {
    background: #FFF;
}
.news-contents {
    width: 100%;
    max-width: 1200px;
    margin: min(4vw, 40px) auto 0 auto;
}
.slider {
    position: relative;
    width: 100%;
    margin: auto;
}
.slider * {
    box-sizing: border-box;
}
.slider .swiper-container {
    width: 90%;
    height: min(37vw, 420px);
    padding: 0;
}
.slider .swiper-slide {
    padding: .4em;
    box-sizing: border-box;
}
.slide {
    padding: 1em;
    background: url(../img/bg4.png) repeat;
    height: min(37vw, 420px);
}
.slider__item a, .news-item a {
    display: block;
    height: 100%;
    position: relative;
}
.slider__item a {
    z-index: 30;
}
.slider__photo, .news-photo {
    width: 100%;
    position: relative;
    overflow: hidden;
    height: auto;
    padding-top: 66.7%;
    margin: 0;
    border: 2px solid #000;
    background: #FFF url(../img/bg2.png) no-repeat center top;
    background-size: 100%;
}
.slider__photo img, .news-photo img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.slider__photo_v img, .news-photo__v img {
    -o-object-fit: contain;
    object-fit: contain;
}
.slider__update, .news-update {
    margin-top: 1.2em;
    line-height: 1.2;
    color: #454545;
    font-size: min(1.5vw, 15px);
    display: flex;
    align-items: center;
}
.news-update {
    color: #c07132;
}
.slider__text, .news-text {
    margin-top: min(.5vw, 5px);
    color: #000;
}
.slider__text p, .news-text p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    font-size: min(1.7vw, 17px);
    line-height: 1.65;
}
.slider .swiper-next, .slider .swiper-prev {
    position: absolute;
    top: 50%;
    display: block;
    width: min(3.6vw, 36px);
    height: min(3.6vw, 36px);
    background-image: url("../img/arrow.png");
    background-size: min(3.6vw, 36px);
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 2;
    cursor: pointer;
    margin-top: min(-2.4vw, -24px);
}
.slider .swiper-prev {
    left: min(1vw, 10px);
    transform: scale(-1, 1);
}
.slider .swiper-next {
    right: min(1vw, 10px);
}
.slider .swiper-next.swiper-button-disabled, .slider .swiper-prev.swiper-button-disabled {
    opacity: 0;
    cursor: default;
}
@media screen and (max-width: 768px) {
    .news-contents {
        margin: 8vw auto 0 auto;
    }
    .slider .swiper-container {
        width: 100%;
        height: 88vw;
    }
    .slider .swiper-slide {
        height: auto;
        padding: 0 !important;
    }
    .slide {
        height: 88vw;
    }
    .slider__text, .news-text {
        margin-top: 2vw;
    }
    .slider__text p, .news-text p {
        margin-bottom: 1em;
        font-size: 4vw
    }
    .slider__update, .news-update {
        font-size: 3.47vw;
    }
    .slider .swiper-next, .slider .swiper-prev {
        width: 10.67vw;
        height: 10.67vw;
        background-size: 10.67vw;
    }
    .slider .swiper-slide-prev, .slider .swiper-slide-next {
        opacity: 0.6;
    }
}
.news-list {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: min(3vw, 30px);
}
.news-list ul {
    display: flex;
    flex-wrap: wrap;
}
.news-list li {
    width: calc((100% - min(6vw, 60px))/ 3);
    margin-right: min(3vw, 30px);
    margin-top: min(5vw, 50px);
}
.news-list li:nth-child(3n) {
    margin-right: 0
}
@media screen and (max-width:768px) {
    .news-list {
        width: 90%;
    }
    .news-list ul {
        width: 100%;
        max-width: auto;
        margin: 0 auto;
        display: block;
        padding-top: 0;
    }
    .news-list li {
        width: 100%;
        margin-top: 8vw;
    }
    .news-list li a {
        display: block;
    }
}
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 min(.8vw, 8px);
    list-style-type: none;
    padding: 0;
    margin-top: min(8vw, 80px);
}
.pagination a {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 2em;
    height: 2em;
    border-radius: 100px;
    background-color: rgba(255, 255, 255, .8);
    color: #000;
    font-size: min(2vw, 20px);
}
.pagination a:hover {
    opacity: .6;
}
.pagination a:not(:hover) {
    text-decoration: none;
}
.pagination .current a {
    background-color: #c07132;
    color: #fff;
    pointer-events: none;
}
@media screen and (max-width:768px) {
    .pagination {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 0 2vw;
        list-style-type: none;
        padding: 0;
        margin-top: 14vw;
    }
    .pagination a {
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 2em;
        height: 2em;
        border-radius: 100px;
        font-size: 4.8vw;
    }
}
/*_________________________________________________________ 

メインビジュアル・ナビ

 _________________________________________________________*/
#fp-wrap .l-mainvisual {
    width: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    text-align: center;
}
.l-mainvisual h1 {
    width: 84%;
    max-width: 960px;
    margin: min(6vw, 80px) auto 0 auto;
    line-height: 1;
}
.l-mainvisual__ver2 h1 {
    width: 84%;
    max-width: 900px;
    margin: min(3vw, 40px) auto 0 auto;
    line-height: 1;
}
.header {
    width: 100%;
    margin: 0 auto;
}
.header h1 img {
    display: block;
    width: min(36vw, 360px);
    margin: 0 auto;
}
.header h1 a {
    display: block;
    width: 100%;
    padding: min(4vw, 40px) 0;
}
#nav:before, #winners:before {
    content: "";
    display: block;
    width: 100%;
    height: min(.5vw, 5px);
    background: url(../img/bg_line.png) repeat-x center top;
    background-size: min(50vw, 500px);
}
#nav:after, #winners:after {
    content: "";
    display: block;
    width: 100%;
    height: min(.5vw, 5px);
    background: url(../img/bg_line.png) repeat-x center bottom;
    background-size: min(50vw, 500px);
}
.l-mainvisual__ver2 h1+#nav {
    margin-top: min(5vw, 60px);
}
#nav {
    margin-top: min(8vw, 100px);
    margin-bottom: min(4vw, 40px);
}
.nav-page {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
#nav ul {
    width: 100%;
    background: #000 url(../img/bg2.png) repeat center top;
    background-size: min(30vw, 300px);
    position: relative;
    margin: 0 auto;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    height: min(9vw, 120px);
}
#nav ul li {
    display: flex;
    align-items: center;
    justify-content: center;
}
#nav ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    /*padding: 0 min(2.5vw, 2em);*/
    padding: 0 min(3vw, 3em);
    color: #FFF;
    border-right: 1px solid #FFF;
    font-size: min(1.7vw, 19px);
    font-weight: 800;
    display: inline;
    transition: opacity .3s ease;
    letter-spacing: .05em;
    text-align: center;
}
#nav ul li:last-child a {
    border-right: 0;
}
#nav ul li a span {
    font-size: min(1.4vw, 14px);
    font-weight: 500;
    color: #c07132;
    display: block;
    width: 100%;
    margin-top: min(.5vw, 5px);
    letter-spacing: .12em;
}
#nav ul li a:hover {
    background-size: 100% 1px;
    opacity: .6;
}
.link-x {
    padding: min(4vw, 40px) 0 0 0;
}
.link-x a img {
    width: min(36vw, 360px);
    border: 1px solid rgba(0, 0, 0, .4);
    transition: opacity .3s ease;
}
.link-x a:hover img {
    opacity: .6;
}
#crumb {
    width: 94%;
    margin: 30px auto 0 auto;
}
#crumb ul {
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}
#crumb li {
    font-size: 16px;
    display: inline-block;
    background: url(../img/arrow_crumb.png) no-repeat right 15px center;
    background-size: 8px;
    color: #000;
    padding: 0 40px 0 0;
}
#crumb li a {
    color: #666;
}
#crumb li a:hover {
    opacity: .6;
}
#crumb li.current {
    background: none;
    color: #000;
}
@media screen and (max-width: 768px) {
    .link-x {
        margin: 4vw auto 0 auto;
        padding-bottom: 4vw;
    }
    .link-x a img {
        width: 76%;
    }
    .l-mainvisual h1 {
        width: 88%;
        margin: 10.67vw auto 0 auto;
        line-height: 1;
    }
    .l-mainvisual__ver2 h1 {
        width: 88%;
        margin: 6.4vw auto 0 auto;
    }
    .header {
        border-top: 1px solid #d6c8bf;
    }
    .header h1 img {
        width: 68vw;
    }
    .header h1 a {
        padding: 6vw 0;
    }
    #nav:before, #winners:before {
        content: "";
        display: block;
        width: 100%;
        height: 1vw;
        background: url(../img/bg_line.png) repeat-x center top;
        background-size: 60vw;
    }
    #nav:after, #winners:after {
        content: "";
        display: block;
        width: 100%;
        height: 1vw;
        background: url(../img/bg_line.png) repeat-x center bottom;
        background-size: 60vw;
    }
    #nav {
        margin-top: 10.67vw;
        margin-bottom: 8vw;
    }
    .l-mainvisual__ver2 h1+#nav {
        margin-top: 6.4vw;
    }
    #nav ul {
        width: 100%;
        background: #000 url(../img/bg2.png) repeat center top;
        background-size: 8vw;
        height: 100%;
        justify-content: start;
    }
    #nav ul li {
        width: 50%;
        border-bottom: 1px solid #666;
        box-sizing: border-box;
    }
    #nav ul li:nth-child(odd) {
        border-right: 1px solid #666;
    }
    #nav ul li:nth-child(5), #nav ul li:last-child {
        border-bottom: 0;
    }
    #nav ul li a {
        width: 100%;
        display: block;
        padding: 3.73vw 0;
        line-height: 1.4;
        letter-spacing: .02em;
        border-right: none;
        font-size: 4vw;
        font-weight: 600;
    }
    #nav ul li.nav-x a {
        padding: 0;
    }
    #nav ul li.nav-x a img {
        width: 40vw;
    }
    #nav ul li a span {
        font-size: 3.2vw;
        margin-top: 1.33vw;
        line-height: 1;
        letter-spacing: .1em;
    }
    #crumb {
        width: 90%;
        margin: 5.33vw auto 0 auto;
    }
    #crumb li {
        font-size: 3.73vw;
        background: url(../img/arrow_crumb.png) no-repeat right 2vw center;
        background-size: 1.5vw;
        padding: 0 6vw 0 0;
    }
}
.title {
    width: 800px;
    margin: 0 auto;
    text-align: center;
    color: #000;
    position: relative;
    height: 130px;
}
#award-page .title {
    height: 200px;
}
.title-bg {
    width: 180px;
    position: absolute;
    bottom: 0;
    left: 300px;
    z-index: 1;
}
.title-bg__line {
    width: 160px;
    position: absolute;
    left: 20px;
    bottom: 0;
    z-index: 1;
}
.mask {
    width: 160px;
    height: 90px;
    position: absolute;
    left: 20px;
    bottom: 4px;
    background: url(../img/bg.jpg) no-repeat center top;
    background-size: 160px;
    z-index: 1;
}
.mask2 {
    width: 160px;
    height: 90px;
    position: absolute;
    left: 20px;
    bottom: 4px;
    background: #FFF;
    background-size: 160px;
    z-index: 1;
}
.mask3 {
    width: 160px;
    height: 90px;
    position: absolute;
    left: 20px;
    bottom: 4px;
    background: url(../img/bg2.png) no-repeat center top;
    background-size: 160px;
    z-index: 1;
}
.title-bg__pen {
    width: 54px;
    position: absolute;
    left: 20px;
    bottom: 12px;
    z-index: 10;
}
@keyframes lineMotion {
    0% {
        transform: scaleX(1.0);
    }
    100% {
        transform: scaleX(0);
    }
}
.line-img {
    animation-name: lineMotion;
    animation-duration: 1.2s;
    animation-fill-mode: forwards;
    transform-origin: right center;
}
@keyframes penMotion {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(160px);
    }
}
.pen-img {
    animation-name: penMotion;
    animation-duration: 1.2s;
    animation-fill-mode: forwards;
}
@media screen and (max-width: 1000px) {
    .title {
        width: 640px;
        height: 110px;
    }
    #award-page .title {
        height: 170px;
    }
    .title-bg {
        width: 144px;
        position: absolute;
        bottom: 0;
        left: 240px;
    }
    .title-bg__line {
        width: 128px;
        position: absolute;
        left: 16px;
        bottom: 0;
        z-index: 1;
    }
    .mask {
        width: 128px;
        height: 72px;
        position: absolute;
        left: 16px;
        bottom: 3px;
        background: url(../img/bg.jpg) no-repeat center top;
        background-size: 160px;
        z-index: 1;
    }
    .mask2 {
        width: 128px;
        height: 72px;
        position: absolute;
        left: 16px;
        bottom: 3px;
        background: #FFF;
        background-size: 128px;
        z-index: 1;
    }
    .mask3 {
        width: 128px;
        height: 72px;
        position: absolute;
        left: 16px;
        bottom: 3px;
        background: url(../img/bg2.png) no-repeat center top;
        background-size: 160px;
        z-index: 1;
    }
    .title-bg__pen {
        width: 43px;
        position: absolute;
        left: 16px;
        bottom: 12px;
        z-index: 10;
    }
    @keyframes penMotion {
        0% {
            transform: translateX(0);
        }
        95% {
            transform: translateX(128px);
        }
        100% {
            transform: translateX(128px);
        }
    }
    .pen-img {
        animation-name: penMotion;
        animation-duration: 1.2s;
        animation-fill-mode: forwards;
        animation-timing-function: ease;
    }
}
.winners .title h2 {
    color: #FFF;
}
#award-page h2 {
    line-height: 1.15;
}
.title h2 {
    font-size: min(3.2vw, 32px);
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1;
}
.title p {
    font-size: min(1.5vw, 15px);
    font-weight: 600;
    margin-top: min(1.5vw, 15px);
    letter-spacing: .15em;
    color: #c07132;
    line-height: 1;
}
.box {
    padding: min(9vw, 90px) 0;
}
@media screen and (max-width: 768px) {
    .box {
        padding: 13.33vw 0;
    }
    .title {
        width: 100%;
        height: 25vw;
    }
    .title-bg {
        width: 30vw;
        position: absolute;
        bottom: 0;
        left: 30vw;
        z-index: 1;
    }
    .title-bg__line {
        width: 28vw;
        position: absolute;
        left: 3.2vw;
        bottom: 0;
        z-index: 1;
    }
    .mask {
        width: 29vw;
        height: 14.4vw;
        position: absolute;
        left: 2.8vw;
        bottom: 0.64vw;
        background: url(../img/bg.jpg) no-repeat center top;
        background-size: 32vw;
        z-index: 1;
    }
    .mask2 {
        width: 29vw;
        height: 14.4vw;
        position: absolute;
        left: 2.8vw;
        bottom: 0.64vw;
        background: #FFF;
        background-size: 160px;
        z-index: 1;
    }
    .mask3 {
        width: 29vw;
        height: 14.4vw;
        position: absolute;
        left: 2.8vw;
        bottom: 0.64vw;
        background: url(../img/bg2.png) no-repeat center top;
        background-size: 32vw;
        z-index: 1;
    }
    .title-bg__pen {
        width: 8.64vw;
        position: absolute;
        left: 3.2vw;
        bottom: 3vw;
        z-index: 10;
    }
    @keyframes penMotion {
        0% {
            transform: translateX(0);
        }
        95% {
            transform: translateX(28vw);
        }
        100% {
            transform: translateX(28vw);
        }
    }
    .pen-img {
        animation-name: penMotion;
        animation-duration: 1.2s;
        animation-fill-mode: forwards;
        animation-timing-function: ease;
    }


    #award-page .title {
        height: 40vw;
    }
    .title h2 {
        font-size: 6vw;
    }
    .title p {
        font-size: 3.33vw;
        margin-top: 2.67vw
    }
}
.about-contents {
    width: min(96vw, 1030px);
    margin: min(5vw, 50px) auto 0 auto;
    position: relative;
}
.about-inner {
    width: 96%;
    max-width: 1000px;
    margin: 0 auto;
    border: 2px solid #000;
    background: #FFF url(../img/about_bg.png) repeat left center;
    background-size: 50px;
    box-sizing: border-box;
    height: min(50vw, 500px);
    position: relative;
    z-index: 2;
}
.about-inner h3 {
    width: min(36vw, 360px);
    margin: min(8vw, 80px) auto 0 auto;
    display: block;
}
.about-inner p {
    text-align: center;
    width: 100%;
    font-size: min(1.8vw, 18px);
    font-weight: 600;
    line-height: 2.4;
    letter-spacing: .05em;
    margin: min(6vw, 60px) auto 0 auto;
}
.about-outer {
    width: 96%;
    max-width: 1000px;
    margin: 0 auto;
    border: 2px solid #000;
    background: #FFF;
    box-sizing: border-box;
    height: min(50vw, 500px);
    position: absolute;
    right: 0;
    top: min(6.4vw, 64px);
    z-index: 1;
}
.about-contents:before {
    content: "";
    display: block;
    width: min(90vw, 900px);
    height: min(4vw, 40px);
    margin: 0 auto;
    background: url(../img/logo_about2.png) no-repeat center bottom min(-.3vw, -3px);
    background-size: min(90vw, 900px);
    position: relative;
    z-index: 2;
}
.about-contents:after {
    content: "";
    display: block;
    width: min(90vw, 900px);
    height: min(3.6vw, 36px);
    margin: min(2.2vw, 22px) auto 0 auto;
    background: url(../img/logo_about2.png) no-repeat center top 0;
    background-size: min(90vw, 900px);
    position: relative;
    z-index: 2;
}
@media only screen and (max-width: 768px) {
    .about-contents {
        width: 96vw;
        margin: 8vw auto 0 auto;
    }
    .about-inner {
        width: 90vw;
        background: #FFF url(../img/about_bg.png) repeat left center;
        background-size: 5.33vw;
        box-sizing: border-box;
        height: 144vw;
    }
    .about-inner h3 {
        width: 70%;
        margin: 12vw auto 0 auto;
        display: block;
    }
    .about-inner p {
        text-align: left;
        width: 86%;
        font-size: 4vw;
        line-height: 1.9;
        letter-spacing: .02em;
        margin: 8vw auto 0 auto;
    }
    .about-outer {
        width: 90vw;
        height: 144vw;
        position: absolute;
        right: 0;
        top: 7.5vw;
        z-index: 1;
    }
    .about-contents:before {
        content: "";
        display: block;
        width: 84vw;
        height: 4vw;
        margin: 0 auto;
        background: url(../img/logo_about2.png) no-repeat center bottom -.5vw;
        background-size: 100%;
        position: relative;
        z-index: 2;
    }
    .about-contents:after {
        content: "";
        display: block;
        width: 84vw;
        height: 4vw;
        margin: 3vw auto 0 auto;
        background: url(../img/logo_about2.png) no-repeat center top 0;
        background-size: 100%;
        position: relative;
        z-index: 2;
    }
}
/*_________________________________________________________ 

受賞作品

 _________________________________________________________*/

.winners-inner {
    background-color: #000;
    background-image: url(../img/bg_winners.png), url(../img/bg_winners.png), url(../img/bg2.png);
    background-repeat: no-repeat, no-repeat, repeat;
    background-position: left -150px top -200px, right -200px bottom -200px, center top;
    background-size: 600px, 600px, 300px;
}
.winners-contents {
    width: 94%;
    max-width: 1080px;
    margin: min(5vw, 50px) auto 0 auto;
    background: #FFF;
    box-sizing: border-box;
    padding: min(4vw, 40px) min(3vw, 45px);
}
.winners-contents h3 {
    font-size: min(3vw, 30px);
    text-align: center;
    font-weight: 700;
}
.winners-contents__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    margin-top: min(4vw, 40px);
}
.winners-contents__list1 {
    width: 46%;
}
.winners-list1__inner {
    padding: min(.4vw, 4px);
    background: url(../img/bg3.png) repeat;
    background-size: 300px;
}
.winners-contents__prize {
    background: #FFF url(../img/about_bg.png) repeat left center;
    background-size: min(4vw, 40px);
    box-sizing: border-box;
    padding-bottom: min(3vw, 30px);
}
.winners-contents__prize .prize {
    font-size: min(3.2vw, 32px);
    text-align: center;
    padding-top: min(2vw, 20px);
}
.winners-contents__prize .prize p {
    font-weight: 700;
    line-height: 1.3;
}
.winners-contents__prize .prize-icon {
    display: block;
    width: min(4.4vw, 44px);
    margin: 0 auto;
    position: relative;

}
.winners-contents__prize .prize-title {
    text-align: center;
    width: 90%;
    margin: 0 auto;
}
.winners-contents__prize .prize-title dt {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    font-size: min(4.4vw, 44px);
    letter-spacing: -.05em;
    line-height: 1.2;
    margin-top: min(1vw, 10px);
}
.winners-contents__prize .prize-title dd {
    color: #454545;
    font-size: min(3vw, 30px);
    line-height: 1.5;
    margin-top: min(.5vw, 5px);
}
.prize-link {
    width: min(19.5vw, 220px);
}
.winners-contents__prize .prize-link {
    margin: min(1.5vw, 15px) auto 0 auto;
}
.prize-link a {
    border-radius: 100px;
    display: block;
    background-image: url(../img/icon_book1.png), url(../img/bg2.png);
    background-repeat: no-repeat, repeat;
    background-position: left min(1.8vw, 18px) center, center center;
    background-size: min(1.3vw, 15px), min(30vw, 300px);
    font-size: min(1.6vw, 17px);
    line-height: 1;
    padding: 1em 0 1em min(4vw, 50px);
    color: #FFF;
}
.winners-contents__drama {
    width: 92%;
    margin: min(3vw, 30px) auto 0 auto;
    background: #FFF url(../img/bg.jpg) repeat-y center top;
    background-size: 100%;
    padding: min(1.6vw, 20px);
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.winners-contents__drama figure {
    width: 50%;
}
.winners-contents__drama figure img {
    border: 2px solid #000;
}
.winners-contents__drama .drama-title {
    width: 50%;
    box-sizing: border-box;
    padding-left: 1.5em;
    font-size: min(1.5vw, 15px);
    color: #454545;
    line-height: 1.3;
}
.winners-contents__drama .drama-title dt {
    color: #000;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    font-size: min(2.2vw, 22px);
    letter-spacing: -.08em;
    line-height: 1.2;
}
.winners-contents__drama .drama-title dd {
    padding: .4em 0 .6em 0;
    font-size: min(1.7vw, 17px);
}
.winners-contents__drama .drama-link a {
    display: block;
    line-height: 1;
    background: #FFF;
    text-align: center;
    font-weight: 500;
    border: 2px solid #000;
    padding: .6em 0;
    border-radius: 100px;
    color: #000;
    font-size: min(1.6vw, 17px);
}
.winners-contents__list2 {
    width: 48%;
    margin-left: 5%;
}
.winners-contents__list2 p {
    background: url(../img/bg_line2.png) repeat-x left bottom;
    background-size: min(25vw, 250px);
    padding-bottom: min(1vw, 10px);
    font-size: min(2.4vw, 24px);
    font-weight: 700;
}
.winners-contents__list2 ul li {
    padding: 1.7em 0;
    border-bottom: 1px solid #000;
}
.winners-contents__list2 ul li {
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.winners-contents__list2 ul li dl {
    max-width: 55%;
}
.winners-contents__list2 ul li dl dd {
    color: #454545;
    font-size: min(1.8vw, 18px);
}
.winners-contents__list2 ul li dl dt {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    font-size: min(2vw, 22px);
    color: #000;
    line-height: 1.3;
    margin-bottom: .2em;
}
@media only screen and (max-width: 768px) {
    .winners-inner {
        background-color: #000;
        background-image: url(../img/bg_winners.png), url(../img/bg_winners.png), url(../img/bg2.png);
        background-repeat: no-repeat, no-repeat, repeat;
        background-position: left -15vw top -15vw, right -15vw bottom -15vw, center top;
        background-size: 58.67vw, 58.67vw, 300px;
    }
    .winners-contents {
        width: 94%;
        margin: 8vw auto 0 auto;
        padding: 8vw 4.8vw;
    }
    .winners-contents h3 {
        font-size: 5.33vw;
        line-height: 1.4;
    }
    .winners-contents__list {
        display: block;
        margin-top: 4vw;
    }
    .winners-contents__list1 {
        width: 100%;
    }
    .winners-list1__inner {
        padding: 0.53vw;
        background: url(../img/bg3.png) repeat;
        background-size: 300px;
    }
    .winners-contents__prize {
        background: #FFF url(../img/about_bg.png) repeat left center;
        background-size: 5.33vw;
        padding-bottom: 5.33vw;
    }
    .winners-contents__prize .prize {
        font-size: 6.4vw;
        padding-top: 4vw;
    }
    .winners-contents__prize .prize-icon {
        width: 8vw;
    }
    .winners-contents__prize .prize-title dt {
        font-size: 8.53vw;
        margin-top: 0;
    }
    .winners-contents__prize .prize-title dd {
        color: #454545;
        font-size: 5.3vw;
        margin-top: 2vw;
        padding-bottom: 2vw;
    }
    .prize-link {
        width: 54vw;
        margin: 2vw auto 0 auto;
    }
    .prize-link a {
        border-radius: 100px;
        display: block;
        background-image: url(../img/icon_book1.png), url(../img/bg2.png);
        background-repeat: no-repeat, repeat;
        background-position: left 5.33vw center, center center;
        background-size: 3.47vw, 300px;
        font-size: 4vw;
        line-height: 1;
        padding: 3.73vw 0 3.73vw 13vw;
        color: #FFF;
        text-align: left;
    }
    .winners-contents__prize .winners-contents__drama {
        width: 84%;
        margin: 4.8vw auto 0 auto;
        padding: 4vw;
        display: block;
    }
    .winners-contents__drama figure {
        width: 100%;
    }
    .winners-contents__prize .drama-title {
        width: 100%;
        padding-left: 0;
        font-size: 3.73vw;
        margin-top: 2.5vw;
    }
    .winners-contents__prize .drama-title dt {
        font-size: 4.8vw;
    }
    .winners-contents__prize .drama-title dd {
        padding: .4em 0 .6em 0;
        font-size: 4vw;
    }
    .winners-contents__prize .drama-link {
        width: 54vw;
        margin: 0 auto;
    }
    .winners-contents__prize .drama-link a {
        padding: 3.73vw 0;
        font-size: 4vw;
    }
    .winners-contents__list2 {
        width: 100%;
        margin-left: 0;
    }
    .winners-contents__list2 p {
        background: url(../img/bg_line2.png) repeat-x left bottom;
        background-size: 200px;
        padding-bottom: 2vw;
        font-size: 4.8vw;
        margin-top: 9.33vw;
    }
    .winners-contents__list2 ul li {
        padding: 1.4em 0;
        border-bottom: 1px solid #000;
    }
    .winners-contents__list2 ul li {
        display: block;
        text-align: center;
    }
    .winners-contents__list2 ul li dl {
        box-sizing: border-box;
        max-width: 100%;
    }
    .winners-contents__list2 ul li dl dd {
        font-size: 4vw;
    }
    .winners-contents__list2 ul li dl dt {
        font-size: 4.8vw;
        line-height: 1.2;
    }
}
.works-top {
    padding-top: min(4vw, 40px);
}
.list-works {
    width: 90%;
    max-width: 1080px;
    margin: min(8vw, 80px) auto 0 auto;
    box-sizing: border-box;
    padding-bottom: min(2vw, 20px);
}
.list-works__top {
    max-width: 1040px;
    padding-bottom: 0;
    margin-top: min(4vw, 40px);
}
.list-works__txt {
    font-size: min(2vw, 20px);
    font-weight: 700;
    text-align: center;
}
.list-works ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: min(6vw, 60px);
    width: 100%;
}
.list-works ul li {
    width: calc((100% - min(5vw, 50px))/ 2);
    margin-right: min(5vw, 50px);
    margin-top: min(8vw, 80px);
}
.list-works ul li:nth-child(-n+2) {
    margin-top: 0
}
.list-works ul li:nth-child(2n) {
    margin-right: 0
}
.list-works ul li figure p {
    text-align: right;
    color: #454545;
    font-size: min(1.4vw, 14px);
    margin-top: .5em;
}
.list-works ul li figure img {
    width: 100%;
    border: 2px solid #000;
}
.list-works__name {
    font-weight: 700;
    line-height: 1;
    padding-bottom: min(2vw, 20px);
    margin-bottom: min(2vw, 20px);
    margin-top: min(3vw, 30px);
    background: url(../img/bg_line2.png) repeat-x left bottom;
    background-size: 250px;
    position: relative;
}
.list-works__name dt {
    color: #c07132;
    font-size: min(1.6vw, 16px);
}
.list-works__name dd {
    margin-top: min(1vw, 10px);
    font-size: min(2.8vw, 28px);
    font-weight: 800;
    color: #000;
    margin-right: .5em;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    letter-spacing: .01em;
}
.list-works__list p {
    line-height: 1.4;
    padding: .2em .6em;
    font-size: min(1.6vw, 16px);
}
.list-works__list p:nth-child(odd) {
    background-color: rgba(255, 255, 255, .7);
}
@media only screen and (max-width: 768px) {
    #works-top {
        padding-top: 6vw;
    }
    .list-works {
        width: 86%;
        margin: 10.33vw auto 0 auto;
        padding-bottom: 4vw;
    }
    .list-works__top {
        padding-bottom: 0 !important;
    }
    .list-works__txt {
        font-size: 4vw;
        font-weight: 700;
        text-align: center;
    }
    .list-works ul {
        display: block;
    }
    .list-works ul li {
        width: 100%;
        margin-right: 0;
        margin-top: 10.33vw;
    }
    .list-works ul li:first-child {
        margin-top: 8vw !important;
    }
    .list-works ul li:nth-child(-n+2) {
        margin-top: 10.33vw;
    }
    .list-works ul li:nth-child(2n) {
        margin-right: 0
    }
    .list-works ul li figure p {
        font-size: 2.93vw;
    }
    .list-works__name {
        padding-bottom: 4.8vw;
        margin-bottom: 4vw;
        margin-top: 5.33vw;
        background: url(../img/bg_line2.png) repeat-x left bottom;
        background-size: 250px;
        position: relative;
    }
    .list-works__name dt {
        font-size: 3.73vw;
    }
    .list-works__name dd {
        margin-top: 2vw;
        font-size: 6vw;
        font-weight: 800;
    }
    .list-works__list p {
        line-height: 1.4;
        padding: .4em .6em;
        font-size: 3.73vw;
    }
    .list-works__list p:nth-child(odd) {
        background-color: rgba(255, 255, 255, .7);
    }
}
/*_________________________________________________________ 

リスト表示

 _________________________________________________________*/
.list {
    margin: min(2vw, 20px) auto 0 auto;
    width: 90%;
    max-width: 1000px;
}
.list ul li {
    border-bottom: 1px solid rgba(0, 0, 0, .6);
}
.list ul li dl {
    padding: min(2vw, 20px) 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}
.list dl {
    font-size: min(1.7vw, 17px);
    font-weight: 500;
}
.list ul li dt {
    width: min(20vw, 200px);
    flex-shrink: 0;
    font-weight: 700;
    box-sizing: border-box;
}
.list-winners dt.prize {
    background: url(../img/icon_prize.png) no-repeat left top min(.4vw, 4px);
    background-size: min(2.4vw, 24px);
    padding-left: min(3vw, 30px);
}
.list ul li dd {
    line-height: 1.9;
    font-weight: 500;
    letter-spacing: .03em;
}
.list-title {
    font-size: min(2vw, 20px);
    font-weight: 700 !important;
    letter-spacing: .03em;
    margin-top: min(12vw, 120px);
    line-height: 1;
    padding-bottom: min(3vw, 30px);
    margin-bottom: min(1vw, 10px);
    background: url(../img/bg_line2.png) repeat-x left bottom;
    background-size: 250px;
    position: relative;
}
.list-title span {
    background: #c07132;
    color: #FFF;
    font-weight: 500;
    font-size: min(1.6vw, 16px);
    padding: .5em .5em;
    margin-left: 1em;
    position: absolute;
    margin-top: -.3em;
}
.list-award {
    margin: min(2vw, 20px) auto 0 auto;
    width: 90%;
    max-width: 1000px;
}
.list-award__txt {
    font-size: min(1.8vw, 18px);
    font-weight: 500;
    margin-top: 1em;
    letter-spacing: .05em;
}
.list-award ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    flex-wrap: wrap;
    margin-top: 1.5em;
}
.list-award li {
    width: 50%;
    font-size: min(1.7vw, 17px);
    padding: .4em 1.2em;
    box-sizing: border-box;
    background: #FFF;
    border-bottom: 1px solid #ddcebf;
    border-right: 1px solid #ddcebf;
}
.list-award li:nth-child(even) {
    border-right: none;
}
@media only screen and (max-width: 768px) {
    .list {
        margin: 4vw auto 0 auto;
        width: 88%;
    }
    .list ul li dl {
        padding: 4vw 0;
        display: block;
    }
    .list dl {
        font-size: 4vw;
    }
    .list ul li dt {
        width: 100%;
        font-size: 4vw;
    }
    .list-winners dt.prize {
        background: url(../img/icon_prize.png) no-repeat left top 1vw;
        background-size: 4.8vw;
        padding-left: 6vw;
    }
    .list ul li dd {
        line-height: 1.8;
        margin-top: 1.33vw;
    }
    .list-title {
        font-size: 4.8vw;
        margin-top: 13.33vw;
        line-height: 1.5;
        padding-bottom: 2.67vw;
        margin-bottom: 1.33vw;
        background: url(../img/bg_line2.png) repeat-x left bottom;
        background-size: 200px;
    }
    .list-title span {
        font-size: 4vw;
        padding: .1em .5em;
        margin-left: .5em;
        position: absolute;
        margin-top: -.05em;
    }
    .list-award {
        margin: 4vw auto 0 auto;
        width: 88%;
    }
    .list-award__txt {
        font-size: 3.73vw;
        margin-top: 4vw;
    }
    .list-award ul {
        margin-top: 1.5em;
    }
    .list-award li {
        font-size: 3.47vw;
        padding: .5em .8em;
        line-height: 1.5;
    }
}
.list-winners__title {
    font-size: min(2.2vw, 22px);
    font-weight: 700 !important;
    letter-spacing: .03em;
    margin-top: min(8vw, 80px);
    line-height: 1;
    padding-bottom: min(2vw, 20px);
    margin-bottom: min(1vw, 10px);
    background: url(../img/bg_line2.png) repeat-x left bottom;
    background-size: 250px;
    position: relative;
}
.list-winners__title span {
    font-size: min(1.8vw, 18px);
    font-weight: 500;
    display: inline-block;
    margin-left: .5em;
}
.list-winners dd .list-winners__item:last-child .list-winners__scenario {
    margin-bottom: 0;
}
.list-winners__name {
    color: #454545;
    line-height: 1.8;
}
.list-winners__name span {
    font-size: min(2vw, 20px);
    font-weight: 800 !important;
    color: #000;
    margin-right: .5em;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    letter-spacing: .01em;
}
.list-winners__scenario {
    line-height: min(4vw, 40px);
    background: url(../img/icon_book2.png) no-repeat left center;
    background-size: min(1.5vw, 15px);
    padding-left: min(2.5vw, 25px);
    margin: 0 0 min(2.5vw, 25px) 0;
}
.list-winners__scenario a {
    font-size: min(1.6vw, 16px);
    color: #000;
    text-decoration: underline;
}
.list-winners__scenario a:hover {
    opacity: .6;
}
@media only screen and (max-width: 768px) {
    .list-winners__title {
        font-size: 4.8vw;
        margin-top: 13.33vw;
        line-height: 1.4;
        padding-bottom: 2.67vw;
        margin-bottom: 1.33vw;
        background: url(../img/bg_line2.png) repeat-x left bottom;
        background-size: 200px;
    }
    .list-winners__title span {
        font-size: 3.73vw;
        display: block;
        margin-left: 0;
        margin-top: .2em;
    }
    .list-winners__name {
        font-size: 4vw;
        margin-bottom: 1.5vw;
        line-height: 1.6;
    }
    .list-winners__name span {
        font-size: 4.53vw;
        font-weight: 700;
        color: #000;
        margin-right: .5em;
        display: block;
        line-height: 1.5;
    }
    .list-winners__scenario {
        line-height: 4.8vw;
        background: url(../img/icon_book2.png) no-repeat left center;
        background-size: 3.2vw;
        padding-left: 5.33vw;
        margin: 0 0 6.4vw 0;
    }
    .list-winners__scenario a {
        font-size: 3.73vw;
        color: #000;
        text-decoration: underline;
    }
}
/*_________________________________________________________ 

よくある質問

 _________________________________________________________*/
.qa {
    background: #FFF;
}
.qa-list {
    width: 90%;
    max-width: 800px;
    margin: min(8vw, 80px) auto 0 auto;
    font-size: min(1.7vw, 17px);
    line-height: 1.9;
    box-sizing: border-box;
}
.qa-list li {
    font-size: min(1.7vw, 17px);
    letter-spacing: .05em;
    margin-top: min(2vw, 20px);
    border: 2px solid;
    border-image-source: url(../img/bg3.png);
    border-image-slice: 50px;
    border-image-outset: 0;
    border-image-width: 100%;
}
.qa-list__item li:first-child {
    margin-top: 0;
}
.qa-list li dl {
    background: #FFF;
}
.qa-list li dt.open {
    background-image: url(../img/close.png), url(../img/bg4.png);
    background-repeat: no-repeat, repeat;
    background-position: right min(3vw, 30px) center, center center;
    background-size: min(1.5vw, 15px), 250px;
}
.qa-list dt {
    cursor: pointer;
    background: url(../img/open.png) no-repeat right min(3vw, 30px) center;
    background-size: min(1.5vw, 15px);
    padding: min(2.4vw, 24px) min(8vw, 80px) min(2.4vw, 24px) min(2.5vw, 25px);
    -webkit-transition: 0.1s ease-out;
    transition: 0.1s ease-out;
    line-height: 1.7;
    font-weight: 700;
}
.qa-list dd {
    display: none;
    background: url(../img/bg4.png) repeat center center;
    background-size: 250px;
    padding: 0 min(2.5vw, 25px) min(2.4vw, 24px) min(2.5vw, 25px);
    line-height: 1.9;
    overflow-wrap: break-word;
    font-size: min(1.6vw, 16px);
    font-weight: 500;
}
.qa-list dd span {
    font-weight: 700;
    display: inline-block;
    margin: .3em 0;
}
.qa-list dd a {
    color: #ff577b;
    text-decoration: underline;
}
p.indent {
    text-indent: -.8em;
    padding-left: .8em;
}
@media only screen and (min-width: 767px) {
    .prize-link a, .slider__item a, .drama-link a, .link-basic a, .link-drama a, .news-list li a {
        transition-duration: 0.3s;
    }
    .prize-link a:hover, .slider__item a:hover, .drama-link a:hover, .link-basic a:hover, .link-drama a:hover, .news-list li a:hover {
        transform: scale(.98, .98);
        opacity: .8;
    }
    .qa-list dt:hover {
        background-image: url(../img/open.png), url(../img/bg4.png);
        background-repeat: no-repeat, repeat;
        background-position: right min(3vw, 30px) center, center center;
        background-size: min(1.5vw, 15px), 250px;
    }
    .qa-list dt.open:hover {
        background-image: url(../img/close.png), url(../img/bg4.png);
        background-repeat: no-repeat, repeat;
        background-position: right min(3vw, 30px) center, center center;
        background-size: min(1.5vw, 15px), 250px;
    }
}
@media only screen and (max-width: 768px) {
    .qa-list {
        width: 88%;
        margin: 8vw auto 0 auto;
        padding: 0;
        font-size: 3.73vw;
    }
    .qa-list li {
        font-size: 4vw;
        margin-top: 4vw;
    }
    .qa-list__item li:first-child {
        margin-top: 0;
    }
    .qa-list li dt.open {
        background-image: url(../img/close.png), url(../img/bg4.png);
        background-repeat: no-repeat, repeat;
        background-position: right 4.8vw center, center center;
        background-size: 3.33vw, 250px;
    }
    .qa-list dt:hover {
        background-image: url(../img/open.png), url(../img/bg4.png);
        background-repeat: no-repeat, repeat;
        background-position: right 4.8vw center, center center;
        background-size: 3.33vw, 250px;
    }
    .qa-list dt {
        cursor: pointer;
        background: url(../img/open.png) no-repeat right 4.8vw center;
        background-size: 3.33vw;
        padding: 4.8vw 12vw 4.8vw 4.8vw;
        font-size: 3.73vw;
    }
    .qa-list dd {
        padding: 0 4.8vw 4.8vw 4.8vw;
        font-size: 3.73vw;
        line-height: 1.8;
    }
}
/*_________________________________________________________ 

ページトップ

 _________________________________________________________*/
#page-top a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90px;
    height: 100px;
    background: url(../img/pagetop.png) no-repeat;
    background-size: 90px;
    text-indent: -10000px;
    transition: all 0.3s;
}
#page-top {
    position: fixed;
    right: 20px;
    bottom: 60px;
    z-index: 100;
    opacity: 100;
    transform: translateX(110px);
}
@media screen and (max-width:750px) {
    #page-top a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 17vw;
        height: 18.5vw;
        background: url(../img/pagetop.png) no-repeat;
        background-size: 17vw;
    }
    #page-top {
        position: fixed;
        right: 3vw;
        bottom: 18vw;
        z-index: 2;
        opacity: 0;
        transform: translateX(120px);
    }
}
#page-top.LeftMove {
    animation: LeftAnime 0.5s forwards;
}
@keyframes LeftAnime {
    from {
        opacity: 0;
        transform: translateX(120px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
#page-top.RightMove {
    animation: RightAnime 0.5s forwards;
}
#page-top2.RightMove {
    animation: RightAnime 0.5s forwards;
}
@keyframes RightAnime {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 1;
        transform: translateX(120px);
    }
}