/* header */
@media (max-width: 767px) {
    body {
        overflow-x: hidden;
    }

    .pc {
        display: none;
    }

    /* scroll時にヘッダーが重ならないように調整 */
    .top-banner,
    .top-content1,
    .top-character,
    .top-comic-movie,
    .top-staff,
    .top-public {
        scroll-margin-top: 15.6rem;
    }

    .site-header {
        background-color: #fff;
        height: 10.6rem;
        z-index: 10;
        position: relative;
        max-height: 70px;
        min-height: 40px;

    }

    .header-main #Main {
        display: flex;
        align-items: center;
        gap: 3.35rem;
    }

    .logo-area {
        margin-left: 3rem;
        line-height: 1rem;
        width: 70rem;
    }

    .logo-area span {
        /* font-size: 4rem;
        color: #fff; */
        text-indent: -9999px;
        display: block;
        position: absolute;
    }

    .header-main {
        z-index: 9999;
        background-color: #000;
        width: 100%;
        margin: auto;
        height: 10.6rem;
        max-height: 70px;
        min-height: 40px;
    }

    .header-main .header-icon {
        margin-right: 5%;
        width: 6rem;
        height: 6rem;
        font-size: 25.5px;
        max-width: 25.5px;
        max-height: 25.5px;
        color: #fff;
    }

    header .menu-col {
        position: fixed;
        transition: .5s;
        transform: translateX(1000px);
        height: 100vh;
        overflow: auto;
        top: 9.1rem;
        width: 100%;
        background-color: #000;
        z-index: 2000;
    }

    header .menu-col.active {
        transform: translateX(0);
    }

    .menu-mainmenu-container #Main {
        padding: 0;
    }

    .menu-mainmenu-container #Main li{
        padding: 6rem 0rem 6rem 3rem !important;
        text-align: center;
        font-weight: bold;
    }

    .menu-description {
        font-size: 3rem;
    }

    .menu-mainmenu-container #Main li a {
        font-size: 5rem;
        color: #fff!important;
        letter-spacing: 0.3rem;
    }

    .sp-menu-sns-list {
        margin-top: 10rem;
    }

    .sp-menu-sns-list ul {
        gap: 4rem;
    }

    .sp-menu-sns-list ul li {
        width: 8rem;
    }

    .sp-menu-sns-list ul li.mail {
        scale: 0.9;
        margin-right: 1rem;
    }

    .sp-menu-sns-list ul li.tiktok {
        scale: 1.2;
    }

    .sp-menu-sns-list ul li.x {
        width: 6rem;
    }


    /* header end */

    /* top mv */

    .top--mv {
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 167rem;
    }

    .swiper-op {
        position: absolute;
        bottom: 0%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 1;
    }

    .swiper-pagination-bullet {
        width: 10px!important;
        height: 10px!important;
    }

    .swiper-pagination-bullet.swiper-pagination-bullet-active{
        background-color: #231815;
    }

    /* top mv end */

    /* top banner */
    .swiper.banner {
        overflow: initial;
    }

    .top-banner-box {
        width: 95%;
        margin: 7rem auto;
    }

    .top-banner {
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 18rem;
    }

    .banner-swiper-button-prev::after {
        background-image: url(../img/slider-arrow.png);
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        height: 15px;
        margin: auto;
        width: 15px;
        display: block;
        top: 7rem;
        position: absolute;
        left: 1rem;
        z-index: 1;
        transform: rotate(180deg);

    }

    .banner-swiper-button-next::after {
        background-image: url(../img/slider-arrow.png);
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        height: 15px;
        margin: auto;
        width: 15px;
        display: block;
        top: 7rem;
        position: absolute;
        right: 1rem;
        z-index: 1;
    }
    /* top banner end */

    /* top news */
    .top--news-content {
        width: 95%;
        margin: 14rem auto 18.5rem;
    }

    .top--news-title h2 {
        font-size: 3.5rem;
    }

    .top--news-line {
        border-top: solid 1px #000;
        width: 6rem;
        margin-left: 1rem;
        margin-top: 0.5rem;
    }

    .top--news-subtitle {
        margin-left: 1.1rem;
        margin-top: 0.6rem;
    }

    .top--news-subtitle h3 {
        font-size: 2rem;
    }

    .news--list-main {
        margin-top: 1.1rem;
    }

    .news--list-main a {
        color: #000!important;
    }

    .news--list-main .news--col {
        padding: 6.8rem 0 4.8rem;
        border-bottom: solid 0.15rem #000;
    }
	
	.news--col-main {
        width: 100%;
    }

    .news--col-day {
        width: 30%;
        line-height: 3rem;
    }

    .news--col-day p {
        font-size: 1.7rem;
        letter-spacing: 0.025rem;
        margin-left: 4.6rem;
    }

    .news--col-title {
        width: 68%;
    }

    .news--col-title h3 {
        font-size: 1.6rem;
        letter-spacing: 0.16rem;
        line-height: 3rem;
    }

    .view-more-btn {
        margin-left: 75%;
        display: flex;
        width: 25%;
        margin-top: 10rem;
    }

    .view-more-btn a {
        width: 100%;
    }

    .view-more-btn-col.col1 {
        width: 55%;
        font-size: 2.5rem;
    }

    .view-more-btn-col.col2 {
        width: 40%;
        transition: .5s;
    }

    .view-more-btn:hover .view-more-btn-col.col2 {
        margin-left: 5%;
    }

    .view-more-btn .arrow:before {
        content: '';
        border-top: solid 1px #000;
        width: 4rem;
        height: 1.1rem;
        left: 0.5rem;
        display: block;
        position: absolute;
        top: 2.5rem;
    }

    .view-more-btn .arrow:after {
        content: '';
        border-top: solid 1px #000;
        transform: rotate(45deg);
        width: 1.6rem;
        height: 0.1rem;
        left: 3.1rem;
        display: block;
        position: absolute;
        top: 1.9rem;
    }
    /* top news end */

    /* top content1 */
    .swiper.content1 {
        z-index: 0;
    }

    .swiper.content1 .swiper-wrapper {
        transition-timing-function: linear !important;
    }

    .content1-bg {
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 160rem;
    }

    .content1-bg.bg1 {
        background-image: url(../img/slide1.jpg);
    }

    .content1-bg.bg2 {
        background-image: url(../img/slide2.jpg);
    }

    .content1-bg.bg3 {
        background-image: url(../img/slide3.jpg);
    }

    .filter--black {
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: #00000090;
        z-index: 1;
    }

    .on-text-bg {
        background-image: url(../img/common1-sp.png);
        background-size: cover;
        background-position: center;
        width: 96%;
        height: 86rem;
        z-index: 2;
        top: 24rem;
        left: 2%;
    }

    .on-text {
        color: #fff;
        width: 100%;
        /* height: 100%; */
        top: 0;
        left: 0;
        z-index: 3;
        margin-top: 22rem;
        text-shadow:
        1px 1px 3px #000,
        -1px 1px 3px #000,
        1px -1px 3px #000,
        -1px -1px 3px #000;
    }

    .on-text--title1 h2 {
        font-size: 5.5rem;
        letter-spacing: 0.5rem;
    }

    .on-text--title1 h6 {
        font-size: 3rem;
        letter-spacing: 0.9rem;
        margin-top: 1rem;
    }

    .on-text--title2 {
        margin-top: 10rem;
    }

    .on-text--title2 h3 {
        font-size: 3.1rem;
        letter-spacing: 0.1rem;
    }

    .on-text--main {
        margin-top: 5rem;
    }

    .on-text--main p {
        font-size: 2rem;
        letter-spacing: 0.1rem;
        line-height: 5.6rem;
    }

    .on-text--main .space {
        margin-top: 6rem;
    }
    /* top content1 end */

    /* top character */
    .top-character--content {
        width: 95%;
        margin: 18rem auto 8rem;
    }

    .top-character--title h2 {
        font-size: 4.5rem;
        letter-spacing: 0.1rem;
    }

    .top-character--subtitle h3 {
        font-size: 2rem;
        letter-spacing: 0.1rem;
    }

    .top-character--row {
        margin-top: 9rem;
        gap: 8rem 2%;
    }

    .top-character--col {
        width: 49%;
    }

    .top-character--img {
        background-size: cover;
        background-position: center;
        height: 24.4rem;
        cursor: pointer;
    }

    .top-character--name {
        margin-top: 3rem;
    }

    .top-character--name h4 {
        font-size: 2.5rem;
        letter-spacing: 0.25rem;
    }

    /* .top-character--scenario {
        margin-top: 1.5rem;
    } */

    .top-character--list {
        margin-top: 2rem;
    }

    .top-character--scenario p,
    .top-character--illust p,
    .top-character--story-board p,
    .top-character--title-logo p,
    .top-character--character-design p,
    .top-character--original p {
        font-size: 1.7rem;
        letter-spacing: 0.25rem;
    }

    /* .top-character--illust {
        margin-top: 0.5rem;
    } */

    /* top character end */

    /* top comic movie */
    .top-comic-movie--content {
        margin-top: 8.8rem;
    }

    .top-comic-movie--title h2 {
        font-size: 4.75rem;
        letter-spacing: 0.1rem;
    }

    .top-comic-movie--subtitle {
        margin-top: 0.2rem;
    }

    .top-comic-movie--subtitle h3 {
        font-size: 2.1rem;
        letter-spacing: 0.1rem;
    }

    .top-comic-movie--row {
        width: 95%;
        margin: 9rem auto 6rem;
    }

    .top-comic-movie--col.col1 {
        width: 43%;
    }

    .top-comic-movie--col.col2 {
        width: 54%;
        margin-left: 3%;
    }

    .top-comic-movie--name {
        margin-top: -0.4rem;
    }

    .top-comic-movie--name h3 {
        font-size: 3rem;
        letter-spacing: 0.24rem;
    }

    .top-comic-movie--text {
        margin-top: 1rem;
    }

    .top-comic-movie--text p {
        font-size: 1.75rem;
        line-height: 2.63rem;
        font-weight: bold;
        letter-spacing: 0.23rem;
    }

    .top-comic-movie--movie-box-main {
        height: 30rem;
    }

    .top-comic-movie--movie-box-sp {
        width: 56%;
        margin: 0 auto 8rem;
    }

    .top-comic-movie--movie-box-sp .movie-play i {
        font-size: 7rem;
        color: #fff;
    }

    .movie-thumbnail {
        background-size: cover;
        background-position: center;
        width: 100%;
        height: 30rem;
        cursor: pointer;
    }

    .top-comic-movie--movie-view {
        width: 100%;
        margin-top: 1.5rem;
    }

    .top-comic-movie--movie-view p {
        font-size: 1.8rem;
        letter-spacing: 0.1rem;
    }

    .movie-link-list {
        gap: 1.8rem;
    }

    .movie-link {
        font-size: 1.8rem;
        cursor: pointer;
    }

    .top-comic-movie--banner-list{
        width: 83%;
        margin: 8rem auto 0;
    }

    .top-comic-movie--banner-list .banner--btn {
        background-size: cover;
        background-position: center;
        height: 11.7rem;
        cursor: pointer;
    }

    .banner-list-swiper-button-next::after {
        background-image: url(../img/next.png);
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        height: 15px;
        margin: auto;
        width: 15px;
        display: block;
        top: 3.75rem;
        position: absolute;
        right: -5.75rem;
        z-index: 1;
    }

    .banner-list-swiper-button-prev::after {
        background-image: url(../img/previous.png);
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        height: 15px;
        margin: auto;
        width: 15px;
        display: block;
        top: 3.75rem;
        position: absolute;
        left: -5.75rem;
        z-index: 1;
    }

    /* top comic movie end */

    /* staff */
    .top-staff--content {
        margin-top: 16.5rem;
        padding: 21.3rem 0;
        background-color: #000;
        overflow: hidden;
    }

    .top-staff--row {
        width: 95%;
        margin: auto;
    }

    .top-staff--col.col1 {
        width: 8%;
    }

    .top-staff--col-title {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-orientation: upright;
    }

    .top-staff--col-title h2 {
        margin: 0;
        font-size: 4.4rem;
        line-height: 5.5rem;
        color: #fff;
        letter-spacing: 0.2rem;
    }

    .top-staff--col-title h2 span {
        margin: 2rem 0;
    }

    .top-staff--col-title h3 {
        font-size: 2rem;
        margin: 0.6rem 0 0;
        letter-spacing: 1rem;
        color: #fff;
    }

    .top-staff--col-title h3 span {
        margin: 1rem 0;
    }

    .top-staff--col.col2 {
        margin-top: 1rem;
        margin-left: 8rem;
        width: 67%;
    }

    .top-staff--col2-title {
        margin-top: -0.5rem;
    }

    .top-staff--col2-title h3 {
        color: #fff;
        font-size: 3.5rem;
        line-height: 6.5rem;
        letter-spacing: 0.3rem;
    }

    .top-staff--col2-text {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        margin-top: 10rem;
        width: 100%;
    }

    .top-staff--col2-text p {
        color: #fff;
        margin: 0;
        font-size: 2rem;
        line-height: 3.5rem;
        letter-spacing: 0.14rem;
        font-weight: bold;
    }

    .top-staff--list {
        margin: 10.5rem auto 3rem;
        line-height: 6.5rem;
        width: 100%;
        overflow: hidden;

    }
    
    .top-staff--list p {
        animation: animetxt 100s linear infinite;
        transform: translateX(100%);
        white-space: nowrap;
        letter-spacing: 0.3rem;
        font-size: 2.1rem;
        color: #fff;
        font-weight: bold;
    }
    
    @keyframes animetxt {
        100% {
            transform: translateX(-925%);
        }
    }

    /* staff end */

    /* top public */
    .top-public--content {
        margin-top: 4.8rem;
    }

    .top-public--title h2 {
        font-size: 4.5rem;
        letter-spacing: 0.1rem;
    }

    .top-public--subtitle {
        margin-top: 0.5rem;
    }

    .top-public--subtitle h3 {
        font-size: 2rem;
        letter-spacing: 0.1rem;
    }

    .top-public--content {
        width: 95%;
        margin: 15.3rem auto;
    }

    .top-public--table {
        margin-top: 2.75rem;
    }

    .top-public--table td {
        width: 25%;
        border: solid 1px #000;
    }

    .top-public--col .public-logo-area {
        padding: 1.5rem;
        height: 12.5rem;
    }

    .top-public--col .icon {
        margin-top: 0.25rem;
        margin-bottom: 0.25rem;
    }

    .top-public--col .icon i {
        margin-right: 0.75rem;
        font-size: 1.5rem;
        color: #000;
    }
    /* top public end */

    /* footer */
    .site-footer {
        background-color: #000;
        padding: 10rem 0;
    }

    .footer--logo {
        color: #fff;
        width: 50%;
        margin: auto;
    }

    .footer--logo h2 {
        font-size: 6rem;
        letter-spacing: 0.1rem;
    }

    .footer--sns-list {
        margin-top: 5rem;
    }

    .footer--sns-list ul {
        gap: 2rem;
    }

    .footer--sns-list li {
        width: 4.1rem;
    }

    .footer--sns-list li.tiktok {
        scale: 1.6;
    }

    .footer--sns-list li.youtube {
        width: 5.5rem;
    }

    .footer--main {
        color: #fff;
        width: 95%;
        margin: 5rem auto 0;
    }

    .footer--main h2{
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .footer--main h3{
        margin-top: 3rem;
        font-size: 2.5rem;
        letter-spacing: 0.1rem;
    }

    .footer--main p {
        font-size: 2rem;
        letter-spacing: 0.1rem;
        line-height: 3.5rem;
    }

    .footer--box {
        margin-top: 3rem;
    }

    .footer--main-list {
        width: 60%;
        margin: 3rem auto;
    }

    .footer-menu {
        margin-top: 6.5rem;
    }

    .footer-menu #Main {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 3.3rem;
    }

    .footer-menu #Main li {
        padding: 1.5rem 1rem !important;
        border: none;
    }

    .footer-menu #Main a {
        color: #fff;
        font-size: 2.45rem !important;
    }

    .footer-menu #Main a p {
        font-size: 1.8rem;
        letter-spacing: 0.1rem;
        text-align: center!important;
    }

    .footer-menu2 {
        margin-top: 4rem;
    }

    .footer-menu2 #Footer1 {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 5.3rem;
    }

    .footer-menu2 #Footer1 a {
        color: #fff;
        font-size: 2.2rem;
    }

    .footer--copyright {
        color: #fff;
        margin-top: 7.5rem;
        font-size: 2rem;
    }

    /* footer end */

    /* page-news */
    .page--news-content {
        width: 95%;
        margin: 14rem auto 18.5rem;
        min-height: 100rem;
    }

    .page--news-title-box {
        margin-bottom: 4rem;
    }

    .page--news-title h2 {
        font-size: 3.5rem;
    }

    .page--news-line {
        border-top: solid 1px #000;
        width: 6rem;
        margin-left: 1rem;
        margin-top: 0.5rem;
    }

    .page--news-subtitle {
        margin-left: 1.1rem;
        margin-top: 0.6rem;
    }

    .page--news-subtitle h3 {
        font-size: 2rem;
    }

    .page--news-content .news--list-main .news--col {
        padding: 4.5rem 0 1.5rem;
    }

    .pagenavi {
        margin-top: 4rem;
        font-size: 2rem;
    }

    .pagenavi a {
        color: #00000069;
        transition: .5s;
    }

    .pagenavi a:hover {
        color: #000;
    }
    /* page-news end */

    /* single-news */
     .single-news--title {
        margin-bottom: 7rem;
    }

    .single-news--title h2 {
        font-size: 2.5rem;
        letter-spacing: 0.1rem;
        line-height: 4.5rem;
    }

    .single-news--text p {
        font-size: 2rem;
        line-height: 3.5rem;
    }

    .single-news--text {
        margin-bottom: 4rem;
    }

    .back-btn {
        margin-bottom: 1rem;
    }

    .back-btn a,
    .back-btn a:hover,
    .single-news--link-prev a,
    .single-news--link-prev a:hover,
    .single-news--link-next a,
    .single-news--link-next a:hover {
        color: #000;
        font-size: 2rem;
    }

    .back-btn-col.col1 i {
        font-size: 2rem;
    }

    .back-btn-col.col2 {
        margin-left: 1rem;
    }

    .back-btn-col.col2 p {
        font-size: 2rem;
    }

    .single-news--img {
        width: 70%;
        margin: auto;
    }

    .single-news--link {
        margin-top: 5rem;
    }

    .single-news--link-prev i {
        margin-right: 1rem;
    }

    .single-news--link-next i {
        margin-left: 1rem;
    }
    /* single-news end */

    /* page privacypolicy */
    .page--privacy-policy-content {
        width: 95%;
        margin: 15rem auto;
    }

    .page--privacy-policy-title-box {
        margin-bottom: 6rem;
    }

    .page--privacy-policy-title h2 {
        font-size: 4.75rem;
        letter-spacing: 0.1rem;
    }

    .page--privacy-policy-subtitle {
        margin-top: 1rem;
    }

    .page--privacy-policy-subtitle h3 {
        font-size: 2.1rem;
        letter-spacing: 0.1rem;
    }

    .page--privacy-policy-main .text p {
        font-size: 2rem;
        letter-spacing: 0.1rem;
        line-height: 4rem;
    }

    .page--privacy-policy-main .text p.indent {
        text-indent: -6rem;
        padding-left: 6rem;
    }

    .page--privacy-policy-main .text {
        margin-bottom: 5rem;
        margin-top: 2.5rem;
    }

    .page--privacy-policy-main h3 {
        font-size: 2.5rem;
        letter-spacing: 0.1rem;
    }
    /* page privacypolicy end */

    /* page contact */
    .page--contact-content {
        width: 95%;
        margin: 15rem auto;
    }

    .page--contact-title h2 {
        font-size: 3.5rem;
    }

    .page--contact-top {
        margin-top: 3rem;
    }

    .page--contact-text p {
        font-size: 2rem;
        letter-spacing: 0.16rem;
        line-height: 3.5rem;
    }

    .page--contact-tab-box {
        width: 75%;
        margin: 5rem auto;
        border: solid 1px #000;
        border-radius: 6rem;
        padding: 2rem 5rem;
    }

    .page--contact-tab-col {
        border: solid 1px #b4b4b5;
        border-radius: 3rem;
        padding: 1rem 7.5rem;
        background-color: #b4b4b5;
        color: #fff;
        cursor: pointer;
    }

    .page--contact-tab-col.active {
        background-color: #000;
        border: solid 1px #000;
    }

    .page--contact-tab-col p {
        font-size: 2.25rem;
        letter-spacing: 0.3rem;
    }

    .contact-company-from,
    .contact-normal-from {
        margin-top: 4rem;
    }

    .contact-col.col1 {
        width: 100%;
        margin-bottom: 1rem;
    }

    .contact-col.col1 p {
        font-size: 2.5rem;
        letter-spacing: 0.05rem;
    }

    .contact-col.col1 p span.req {
        font-size: 2rem;
        color: #ff0000;
        margin-left: 1.5rem;
    }

    .contact-col.col2 {
        width: 100%;
    }

    .contact-row {
        margin-top: 4.5rem;
    }

    .contact-col.col2 select,
    .contact-col.col2 input,
    .contact-col.col2 textarea {
        border-radius: 3rem;
        font-size: 2.25rem;
        padding: 0.75rem 2rem;
    }

    .submit-btn {
        width: 100%;
        margin: 5rem auto;
    }

    .submit-btn input {
        border-radius: 4.5rem;
        background-color: #000;
        color: #fff;
        padding: 2.5rem 5rem;
        font-size: 3.5rem;
        letter-spacing: 0.3rem;
        width: 100%;
    }

    .wpcf7-not-valid-tip,
    .wpcf7 form .wpcf7-response-output {
        font-size: 2rem;
    }

    
    
    /* page contact end */
}