@charset "utf-8";
.container {
    width: 100%;
    height: inherit;
    display: block;
    justify-content: center;
    background: #fff;
    position: relative;
    color: #333;
}
header {
    position: absolute;
    top: calc(100vh - 180px);
    z-index: 100;
    text-align: center;
    width: 100%;
    pointer-events: none;
}
header.scroll {
    top: 0;
    left: 0;
    position: fixed;
    z-index: 100;
    display: flex;
    padding: 10px 3em;
    justify-content: space-between;
    align-items: flex-start;
}
header a {
    pointer-events: all;
}
header svg {
    transition: .3s ease;
}
header.scroll svg {
    width: 400px;
    height: 44px;
}
header.scroll svg path {
    stroke: none;
    fill: #FFFA79;
}
header.writerHeader svg path {
    stroke: none;
    fill: #fff;
}
header.novelHeader svg path {
    stroke: none;
    fill: #FFA8B9;
}
header.answerHeader svg path {
    stroke: none;
    fill: #fff;
}
header.contactHeader svg path {
    stroke: none;
    fill: #4DEAFF;
}
header.novelPageHeader svg path {
    stroke: none;
    fill: #A1AFFF;
}
/* header.infoHeader svg path {
    stroke: none;
    fill: #333;
} */
.menuTtl {
    width: 8em;
    padding-bottom: 6px;
    border-bottom: 2px solid;
    text-align: left;
    transition: .3s ease;
}
.menuTtl span {
    display: none;
}
header.aboutHeader .ab {
    display: block;
}
header.writerHeader .wr {
    display: block;
}
header.novelHeader .no {
    display: block;
}
header.answerHeader .an {
    display: block;
}
header.contactHeader .co {
    display: block;
}
header.novelPageHeader .novelTime {
    display: block;
}
.menu {
    display: none;
}
.scroll .menu {
    display: block;
}
.menuTtl {
    font-size: 1.8rem;
}
.menuBtn {
    text-align: right;
    margin-top: 10px;
}
.menuBtn a {
    color: #333;
    font-size: 1.3rem;
    display: inline-block;
    padding: 6px 0 6px 20px;
    border-top: 2px solid;
    pointer-events: all;
}
.menuBox {
    transform: translateX(100%);
    transition: transform .5s ease;
    pointer-events: all;
}
.menuBox.active {
    transform: translateX(0);
}
.menuBox li {
    transform: translateX(100%);
    transition: transform .5s ease;
}
.menuBox li:nth-child(1) {
    transition-delay: 0.2s;
}
.menuBox li:nth-child(2) {
    transition-delay: 0.4s;
}
.menuBox li:nth-child(3) {
    transition-delay: 0.6s;
}
.menuBox li:nth-child(4) {
    transition-delay: 0.8s;
}
.menuBox li:nth-child(5) {
    transition-delay: 1s;
}
.menuBox li:nth-child(6) {
    transition-delay: 1.2s;
}
.menuBox.active li {
    transform: translateX(0);
}
.menuBox a {
    display: block;
    margin: 0.5em 0;
    padding: 0.2em 0;
    text-align: right;
    color: #333;
    font-size: 1.4em;
}
.firstView {
    position: relative;
    height: calc(100vh - 100px);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FF748F;
    animation: fv 10s infinite;
    -webkit-animation: fv 10s infinite;
}
@keyframes fv {
    0% { background: #FF748F; }
    30% { background: #A360FF; }
    60% { background: #4DEAFF; }
    80% { background: #FFFA79; }
    100% { background: #FF748F; }
}
.clock {
    position: relative;
    width: 100px;
    height: 100px;
    margin-bottom: 6em;
}
.clock .tick {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    width: 3px;
    height: 16px;
    background: #333;
    border-radius: 25px;
    transition: .3s ease;
}
.clock .tick1 {
    transform: rotate(0);
    margin-top: -37px;
}
.clock .tick1.long {
    transform: rotate(0) scaley(2);
    /* margin-top: -38px;
    margin-left: 23px; */
}
.clock .tick2 {
    transform: rotate(30deg);
    margin-top: -30px;
    margin-left: 18px;
}
.clock .tick2.long {
    transform: rotate(30deg) scaley(2);
    /* margin-top: -38px;
    margin-left: 23px; */
}
.clock .tick3 {
    transform: rotate(60deg);
    margin-top: -17px;
    margin-left: 30px;
}
.clock .tick3.long {
    transform: rotate(60deg) scaley(2);
}
.clock .tick4 {
    transform: rotate(90deg);
    margin-top: 0;
    margin-left: 34px;
}
.clock .tick4.long {
    transform: rotate(90deg) scaley(2);
}
.clock .tick5 {
    transform: rotate(120deg);
    margin-top: 17px;
    margin-left: 30px;
}
.clock .tick5.long {
    transform: rotate(120deg) scaley(2);
}
.clock .tick6 {
    transform: rotate(150deg);
    margin-top: 30px;
    margin-left: 18px;
}
.clock .tick6.long {
    transform: rotate(150deg) scaley(2);
}
.clock .tick7 {
    transform: rotate(0);
    margin-top: 37px;
}
.clock .tick7.long {
    transform: rotate(0) scaley(2);
}
.clock .tick8 {
    transform: rotate(30deg);
    margin-top: 30px;
    margin-left: -18px;
}
.clock .tick8.long {
    transform: rotate(30deg) scaley(2);
}
.clock .tick9 {
    transform: rotate(60deg);
    margin-top: 17px;
    margin-left: -30px;
}
.clock .tick9.long {
    transform: rotate(60deg) scaley(2);
}
.clock .tick10 {
    transform: rotate(90deg);
    margin-top: 0;
    margin-left: -34px;
}
.clock .tick10.long {
    transform: rotate(90deg) scaley(2);
}
.clock .tick11 {
    transform: rotate(120deg);
    margin-top: -17px;
    margin-left: -30px;
}
.clock .tick11.long {
    transform: rotate(120deg) scaley(2);
}
.clock .tick12 {
    transform: rotate(150deg);
    margin-top: -30px;
    margin-left: -18px;
}
.clock .tick12.long {
    transform: rotate(150deg) scaley(2);
}
h2 {
    font-size: 8rem;
    font-weight: bold;
}
p {
    margin-bottom: 0;
}
.about {
    display: flex;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
    padding: 150px 0;
}
.aboutInner {
    width: 50%;
    position: relative;
    padding: 30px 0;
}
.aboutInner:after {
    content: "";
    z-index: -1;
    position: absolute;
    right: 0;
    top: 0;
    width: 60%;
    height: 100%;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d0adff+0,c9f9ff+100 */
    background: #d0adff; /* Old browsers */
    background: -moz-linear-gradient(top, #d0adff 0%, #c9f9ff 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #d0adff 0%,#c9f9ff 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #d0adff 0%,#c9f9ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d0adff', endColorstr='#c9f9ff',GradientType=0 ); /* IE6-9 */
}
.aboutInner h2 {
    margin-bottom: 40px;
}
.aboutInner .aboutText {
    text-align: left;
    padding-right: 15em;
    line-height: 2;
    margin-bottom: 80px;
}
.aboutInner h3 {
    font-weight: bold;
    font-size: 5rem;
    margin-bottom: 20px;
}
.aboutSche {
    /* padding-right: 32em; */
}
.aboutSche li {
    display: flex;
}
.aboutScheDay span {
    display: block;
    font-size: 1.4rem;
}
.aboutScheTtl {
    width: 200px;
    padding: 20px 0;
    border: 1px solid;
    font-size: 1.6rem;
    margin-bottom: 24px;
    background: #fff;
    margin-right: 20px;
}
.aboutScheDay {
    width: 250px;
    font-size: 2.6rem;
    margin-bottom: 24px;
    text-align: left;
}
.writer {
    padding: 100px 0;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffc4cf+0,fffdd1+100 */
    background: #ffc4cf; /* Old browsers */
    background: -moz-linear-gradient(45deg, #ffc4cf 0%, #fffdd1 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg, #ffc4cf 0%,#fffdd1 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg, #ffc4cf 0%,#fffdd1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc4cf', endColorstr='#fffdd1',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.writerInner {
    width: 860px;
    margin: 0 auto;
}
.writerInner ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 740px;
    padding: 70px 20px 30px;
    margin-left: auto;
    background: #fff;
    filter: drop-shadow(10px 10px 0px rgba(163,96,255,0.35));
}
.writerInner h2 {
    position: relative;
    bottom: -36px;
    z-index: 1;
}
.writerInner li {
    width: 50%;
    display: flex;
    justify-content: space-between;
    padding: 20px 25px;
    border-bottom: 1px solid;
    position: relative;
    align-items: center;
}
.writerInner li:nth-child(odd):after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 1px;
    height: 70%;
    background: #333;
}
.writerInner li:last-child {
    width: 100%;
    justify-content: center;
    text-align: center;
    border: none;
    font-size: 1.4rem;
}
.writerName {
    font-size: 1.7rem;
    width: 40%;
    text-align: left;
}
.writerLink {
    width: 58%;
    text-align: left;
}
.writerLink p {
    text-align: left;
    font-size: 1.6rem;
}
.writerTwitter {
    margin-bottom: 8px;
}
.writerLink a {
    font-size: 1.6rem;
    color: #333;
}
.writerTwitter a span {
    background: #7186FF;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 1.7;
    text-align: center;
    border-radius: 6px;
    margin-right: 12px;
}
.writerPixiv a  span {
    background: #4DEAFF;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 1.5;
    text-align: center;
    border-radius: 6px;
    margin-right: 12px;
}
.novelLink {
    padding: 150px 0;
}
.dayInner {
    margin-left: 20%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nightInner {
    margin-right: 20%;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
}
.novelLinkTtl {
    width: 200px;
}
.novelLinkTtl .novelTtl{
    width: 100%;
    font-size: 3.4rem;
    border: 1px solid;
    padding: 7px 0;
    display: block;
}
.readme {
    display: block;
    margin-top: 12px;
    font-size: 1.4rem;
}
.readme.spOnly {
    display: none;
}
.novelBorer {
    position: relative;
}
.novelBorer:before,
.novelBorer:after {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    background: #333;
    border-radius: 30px;
}
.novelBorer:before {
    top: -8px;
    left: -4px;
}
.novelBorer:after {
    bottom: -8px;
    left: -4px;
}
.night .novelBorer:before {
    top: -8px;
    left: inherit;
    right: -4px;
}
.night .novelBorer:after {
    bottom: -8px;
    left: inherit;
    right: -4px;
}
.novelBorderInner {
    display: flex;
    flex-direction: column;
    height: 648px;
    width: 152px;
    justify-content: space-around;
    position: relative;
}
.novelBorderInner:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: #333;
}
.night .novelBorderInner:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: inherit;
    width: 4px;
    height: 100%;
    background: #333;
}
.novelSelected {
    width: 640px;
    position: relative;
    height: 648px;
}
.novelBox {
    position: absolute;
    top: -45px;
    left: 0;
    transition: .3s ease;
    opacity: 0;
    height: 600px;
    width: 100%;
}
.novelBox.show {
    opacity: 1;
    z-index: 10;
}
.novelBorderInner a {
    font-size: 1.8rem;
    color: #333;
    padding-left: 30px;
    transition: .3s ease;
    display: inline-block;
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
}
.night .novelBorderInner a {
    padding-left: 0;
    padding-right: 30px;
    text-align: right;
}
.novelBorderInner a:hover {
    padding-left: 110px;
}
.night .novelBorderInner a:hover {
    padding-left: 0;
    padding-right: 110px;
}
.novelBorderInner a:before {
    transition: .3s ease;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 20px;
    height: 2px;
    background: #333;
}
.night .novelBorderInner a:before {
    transition: .3s ease;
    content: "";
    position: absolute;
    left: inherit;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 20px;
    height: 2px;
    background: #333;
}
.novelBorderInner a:hover:before {
    width: 100px;
} 
.novelBoxInner {
    width: 578px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: auto;
    padding: 0 10em;
    text-align: right;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#c9f9ff+0,fffcaa+100 */
    background: #c9f9ff; /* Old browsers */
    background: -moz-linear-gradient(45deg, #c9f9ff 0%, #fffcaa 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg, #c9f9ff 0%,#fffcaa 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg, #c9f9ff 0%,#fffcaa 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c9f9ff', endColorstr='#fffcaa',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.nightInner .novelBoxInner {
    margin-right: auto;
    margin-left: inherit;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#c9a2ff+0,ffd6de+100 */
    background: #c9a2ff; /* Old browsers */
    background: -moz-linear-gradient(45deg,  #c9a2ff 0%, #ffd6de 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg,  #c9a2ff 0%,#ffd6de 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg,  #c9a2ff 0%,#ffd6de 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c9a2ff', endColorstr='#ffd6de',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
    text-align: left;
}
.novelBoxInner p {
    text-align: right;
}
.night .novelBoxInner p {
    text-align: left;
}
.night .novelBoxInner h4:after {
    right: inherit;
    left: 0;
    bottom: 0;
}
.novelBox h3 {
    font-size: 7rem;
    font-weight: bold;
    position: relative;
    bottom: -36px;
}
.night .novelBox h3 {
    text-align: right;
}
.novelBoxInner h4 {
    font-size: 2.6rem;
    position: relative;
    font-weight: normal;
    padding-bottom: 20px;
    margin-bottom: 15px;
}
.novelBoxInner h4:after {
    content: "";
    position: absolute;
    width: 20%;
    height: 1px;
    background: #333;
    right: 0;
    bottom: 0;
}
.novelWiterLink {
    margin-top: 20px;
}
.novelWiterLink a {
    font-size: 3.4rem;
    width: 110px;
    display: block;
    text-align: center;
    margin-left: auto;
    border: 1px solid;
    line-height: 1;
    padding: 1px 0 10px;
    color: #333;
}
.night .novelWiterLink {
    margin-right: auto;
    margin-left: inherit;
}
.novelBoxInner .coming {
    text-align: center;
    font-size: 3.4rem;
}
.answer {
    background: #FF748F;
    padding: 150px 0;
}
.answerInner {
    width: 860px;
    margin: 0 auto;
}
.answerText {
    width: 60%;
    margin-left: auto;
    margin-bottom: 40px;
}
.answerText h2 {
    margin-bottom: 30px;
}
.answerText p {
    text-align: left;
    font-size: 1.6rem;
    line-height: 1.8;
}
.answerSelect {
    width: 80%;
    margin-left: auto;
    background: #fff;
    padding: 30px 15px;
}
.answerSelect ul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.answerSelect li {
    width: 50%;
    display: flex;
    align-items: center;
    padding: 30px 10px;
    border-bottom: 1px solid;
    position: relative;
}
.answerSelect li:nth-child(odd):after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 1px;
    height: 70%;
    background: #333;
}
.answerSelect li:last-child,
.answerSelect li:nth-child(11) {
    border-bottom: none;
}
.answerTime {
    width: 20%;
    text-align: left;
}
.answerSelect select {
    font-size: 1.8rem;
    width: 80%;
}
.formsubmit button {
    font-size: 2rem;
    background: none;
    border: 1px solid;
    padding: 15px 50px;
}
.contact {
    padding: 150px 0;
}
.contactInner {
    width: 860px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.contactLeft {
    width: 56%;
}
.contactLeft p {
    font-size: 1.6rem;
    text-align: left;
}
.contactRight {
    width: 40%;
    padding-top: 110px;
}
.contactLeft h2 {
    margin-bottom: 30px;
}
.contactRight table {
    width: 100%;
}
.contactRight th {
    font-size: 2rem;
    font-weight: normal;
    width: 5em;
    text-align: left;
    padding: 10px;
    border-bottom: 1px solid #333;
    border-right: 1px solid #333;
    vertical-align: middle;
}
.contactRight td {
    padding: 10px;
    border-bottom: 1px solid #333;
}
.contactRight input,
.contactRight textarea {
    font-size: 2rem;
    border: none;
    width: 100%;
}
.submitBtn {
    margin-top: 20px;
    text-align: right;
}
.contactRight input[type=submit] {
    font-size: 1.6rem;
    background: none;
    border: 1px solid;
    width: inherit;
    padding: 5px 20px 3px;
}
footer {
    background: #FF748F;
    padding: 150px 0 30px;
}
.footerInner {
    width: 860px;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
}
.footerBox {
    width: 50%;
    text-align: left;
}
.footerName {
    text-align: left;
    font-size: 1.6rem;
    margin-bottom: 8px;
}
.footerName span {
    width: 7em;
    display: inline-block;
    margin-right: 15px;
}
.copy {
    font-size: 1.6rem;
    text-align: left;
    margin-top: 30px;
}
.thanksInner {
    height: calc(100vh - 300px);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.topReturn {
    margin-top: 30px;
}
.topReturn a {
    color: #333;
    display: inline-block;
    border: 1px solid;
    padding: 10px 3em;
}
.novelDetailInner {
    width: 860px;
    margin: 0 auto;
}
.novelDetailInner h2 {
    font-size: 1.6rem;
    border: 1px solid;
    display: inline-block;
    margin-bottom: 20px;
    padding: 20px 60px;
}
.novelDetail {
    padding: 150px 0;
}
.novelContet {
    max-width: 620px;
    margin: 0 auto;
}
.novelContet > p {
    transform: translateY(1px);
    margin: calc(2em - 1px) 0px 2em;
    font-size: 1.6rem;
    line-height: 2;
    text-align: left;
}
.pager {
    margin-top: 80px;
    display: flex;
    justify-content: space-between;
    position: relative;
    padding-bottom: 20px;
}
.pager:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 10px;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#c9f9ff+0,fffcaa+100 */
    background: #c9f9ff; /* Old browsers */
    background: -moz-linear-gradient(left, #c9f9ff 0%, #fffcaa 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #c9f9ff 0%,#fffcaa 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #c9f9ff 0%,#fffcaa 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c9f9ff', endColorstr='#fffcaa',GradientType=1 ); /* IE6-9 */
}
.pager a {
    color: #333;
    display: flex;
    align-items: center;
    position: relative;
}
.pager i {
    font-size: 1rem;
    line-height: 2;
    display: inline-block;
    margin-left: 10px;
    font-style: normal;
}
.pager .next i {
    margin-left: 0;
    margin-right: 10px;
    transform: rotate(180deg);
}
#overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(255,255,255,0.6);
    opacity: 0;
    transition: ease 0.3s;
    z-index: -10;
}
#overlay.show {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    z-index: 10000;
    width: 100%;
    height: 100vh;
}
.answerImage {
    width: 500px;
}
.answerImage img {
    opacity: 0;
}
.show .answerImage img {
    opacity: 1;
}
@media screen and (max-width: 835px) {
    h2 {
        font-size: 4rem;
    }
    header {
        position: absolute;
        top: calc(100vh - 260px);
    }
    header svg {
        width: 90%;
    }
    header.scroll {
        padding: 10px 1em;
    }
    .firstView {
        position: relative;
        height: calc(100vh - 200px);
    }
    .menuTtl {
        font-size: 1.5rem;
        width: 6em;
    }
    .scroll .menu {
        display: block;
        margin-left: 30px;
    }
    .menuBtn a {
        color: #333;
        font-size: 1.2rem;
    }
    .about {
        display: block;
        padding: 80px 0;
    }
    .aboutInner {
        width: auto;
        padding: 30px 2em;
    }
    .aboutInner .aboutText {
        padding-right: 0;
        font-size: 1.4rem;
    }
    .aboutInner h2 {
        margin-bottom: 20px;
    }
    .aboutInner h3 {
        font-size: 3rem;
    }
    .aboutScheTtl {
        width: 45%;
        font-size: 1.2rem;
        padding: 10px 0;
        margin-bottom: 15px;
    }
    .aboutSche li {
        display: flex;
        justify-content: space-between;
    }
    .aboutScheDay {
        width: 52%;
        font-size: 1.5rem;
        margin-bottom: 15px;
    }
    .aboutScheDay span {
        display: block;
        font-size: 1.1rem;
    }
    .writer {
        padding: 80px 2em;
    }
    .writerInner {
        width: 100%;
    }
    .writerInner ul {
        width: 100%;
        padding: 50px 15px 20px;
    }
    .writerInner li {
        width: 100%;
        padding: 10px 0;
    }
    .writerInner li:nth-child(odd):after {
        display: none;
    }
    .novelLink {
        padding: 80px 0;
    }
    .novelLinkTtl {
        width: 100%;
        margin: 0 2em 10px;
        font-size: 3rem;
    }
    .nightInner {
        margin-right: 0;
        flex-wrap: wrap;
    }
    .night .novelLinkTtl {
        order: 1;
    }
    .night .readme {
        order: 1;
    }
    .night .novelSelected {
        order: 4;
    }
    .night .novelBorer {
        order: 3;
        margin-left: 0;
        margin-right: 2em;
    }
    .novelSelected {
        width: 70%;
    }
    .novelBorderInner a {
        font-size: 1.3rem;
    }
    .dayInner {
        margin-left: 0;
        flex-wrap: wrap;
    }
    .novelBox h3 {
        font-size: 5rem;
        bottom: -25px;
        left: -15px;
    }
    .night .novelBox h3 {
        left: inherit;
        right: -15px;
    }
    .novelBoxInner {
        width: 100%;
        height: 100%;
        padding: 40px 20px;
        text-align: left;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .novelBoxInner p {
        text-align: left;
    }
    .novelBorer {
        position: relative;
        margin-left: 2em;
    }
    .novelBorderInner {
        width: 100%;
    }
    .novelWiterLink a {
        font-size: 2rem;
        width: auto;
        display: inline-block;
        text-align: center;
        margin-left: auto;
        border: 1px solid;
        line-height: 1;
        padding: 1px 30px 6px;
    }
    .novelBorderInner a:hover {
        padding-left: 30px;
    }
    .novelBorderInner a:hover:before {
        width: 20px;
    }
    .night .novelBorderInner a:hover {
        padding-left: 0;
        padding-right: 30px;
    }
    .night .novelBorderInner a:hover:before {
        width: 20px;
    }
    .novelBox {
        position: absolute;
        top: -26px;
        left: 0;
        transition: .3s ease;
        opacity: 0;
        height: 600px;
        width: 100%;
    }
    .novelBoxInner h4 {
        font-size: 1.8rem;
        line-height: 1.4;
    }
    .novelBoxInner h4:after {
        right: inherit;
        left: 0;
        bottom: 0;
    }
    .readme {
        width: 100%;
        font-size: 1.4rem;
        margin-bottom: 30px;
    }
    .readme.pcOnly {
        display: none;
    }
    .readme.spOnly {
        display: block;
    }
    .contact {
        padding: 80px 2em;
    }
    .contactInner {
        width: 100%;
        flex-direction: column;
    }
    .contactLeft {
        width: auto;
    }
    .contactLeft h2 {
        margin-bottom: 20px;
    }
    .contactLeft p {
        font-size: 1.4rem;
    }
    .contactRight {
        width: auto;
        padding-top: 40px;
    }
    .contactRight th {
        font-size: 1.6rem;
    }
    .footerInner {
        width: auto;
    }
    .footerBox {
        width: 100%;
        padding: 0 2em;
    }
    .footerName {
        font-size: 1.4rem;
    }
    .copy {
        font-size: 1.2rem;
        text-align: left;
        margin-top: 20px;
    }
    .novelBoxInner .coming,
    .night .novelBoxInner .coming{
        text-align: center;
        font-size: 2rem;
    }
    .thanksText {
        font-size: 1.4rem;
        line-height: 1.7;
        margin: 0 2em;
    }
    .answer {
        padding: 60px 1.5rem;
    }
    .answerInner {
        width: auto;
    }
    .answerText {
        width: auto;
    }
    .answerText h2 {
        margin-bottom: 15px;
    }
    .novelDetail {
        padding: 100px 0;
    }
    .novelDetailInner {
        width: auto;
        margin: 0 1.5rem;
    }
    .novelDetailInner h2 {
        margin-bottom: 10px;
        padding: 20px;
        width: 90%;
    }
    .answerSelect {
        width: auto;
    }
    .answerSelect li {
        width: 100%;
    }
    .answerSelect li:nth-child(odd):after {
        display: none;
    }
    .answerSelect li:nth-child(11) {
        border-bottom: 1px solid;
    }
    .answerImage {
        width: 80%;
    }
}