@import url(reset.min.css);.wf-mplus1p {
    font-family: "M PLUS 1p"
}

.thanks {
    color: #000;
    font-size: 150%;
    font-weight: 800
}

body{
    max-width: 1980px;
    min-width: 1280px;
    margin: 0 auto;
    font-size: 1.1rem;
}

h3 {
    color: #fed900;
    font-size: 150%;
    font-weight: 800
}

h4 {
    color: #30a4f2;
    font-size: 200%;
    font-weight: 800
}

h5 {
    color: #000;
    font-size: 20px;
}

@media only screen and (min-width: 769px) {
    h6 {
        color: #000;
        font-size: 26px;
    }
}
@media only screen and (max-width: 768px) {
    h6 {
        color: #000;
        font-size: 52px;
    }
}

.hidden{
  position: absolute;
  opacity:0;
}

.bluebutton {
    display: inline-block;
    margin-top: 20px;
    padding: 13px 30px;
    text-align: center;
    font-size: 110%;
    background-color: #30a4f2;
    border-radius: 3px;
    box-shadow: 1px 2px 3px 0 rgb(0 0 0 / 50%)
}

.bluebutton a {
    color: #fff
}

.bluebutton a:hover {
    color: #fcfcfc
}

.blackbutton {
    display: inline-block;
    margin-top: 20px;
    padding: 14px 80px;
    text-align: center;
    font-size: 136%;
    background-color: #333;
    border-radius: 3px
}

.blackbutton a {
    color: #fff
}

.blackbutton a:hover {
    color: #989898
}

.whitebutton {
    width: 100%;
    margin-top: 10px;
    padding: 5px 20px;
    font-size: 100%;
    cursor: pointer;
    border-radius: 3px;
    border: 1px solid #888;
    box-shadow: 0 3px 0 #888;
    margin-right: 20px
}

.whitebutton a {
    color: #000
}

.whitebutton a:hover {
    color: #555
}

.gameinfoth {
    background-color: #343634;
    padding: 17px;
    color: #fff
}

.gameinfotd {
    border: 1px solid #343634;
    border-bottom: 1px solid #343634;
    background-color: #f8f8f8;
    color: #343634;
    padding: 17px
}

.headmin {
    color: #000!important;
    font-weight: 800
}

.heading_base {
    background-color: #999;
    padding: 10px 20px;
    width: 100%;
    text-align: center;
    color: #fff
}

.hedding_after_line {
    border-bottom: 1px solid #999;
    width: 100%;
    margin-bottom: 30px
}

.nav li {
    padding: 20px;
    font-weight: 600
}

.nav li:last-child {
    padding: 20px;
    font-weight: 600
}

.nav_rec li {
    padding: 20px;
    border-top: 1px solid #555;
    width: 100%;
    font-weight: 600
}

.nav_rec li:last-child {
    padding: 20px;
    border-bottom: 1px solid #555;
    width: 100%;
    font-weight: 600
}

.nav_rec em {
    padding-left: 30px;
    font-weight: 600
}

.nav_rec em::before {
    content: "◆";
    color: #fed900;
    font-weight: 100
}

.nav_rec table {
    width: 100%
}

.nav_work li {
    text-indent: 1em
}

.nav_work li::before {
    content: "●";
    color: #30a4f2
}

.nav_esse li {
    text-indent: -1em
}

.nav_esse li::before {
    content: "・";
    color: #444
}

.nav_poli ol::before {
    text-indent: -1em
}

.nav_poli ol::before {
    content: "・";
    color: #000
}

.recruitinfoth {
    background-color: #f8f8f8;
    padding: 20px
}

.recruitinfotd {
    border-bottom: 1px solid #343634;
    border-top: 1px solid #343634;
    background-color: #f8f8f8;
    color: #343634;
    padding: 20px
}

@media only screen and (min-width: 769px) {
    .recruitbbw {
        border-top:1px solid #343634;
        border-bottom: 1px solid #343634
    }

    .recruitinfoth {
        width: 20%;
        font-size: 16px
    }
}

@media only screen and (max-width: 768px) {
    .recruitbbw {
        display:block
    }

    .recruitinfoth {
        background-color: #f8f8f8;
        padding: 13px;
        font-size: 20px
    }

    .recruitinfotd {
        border-bottom: 1px solid #343634;
        background-color: #f8f8f8;
        color: #343634;
        padding: 15px 20px 20px 20px;
        display: block
    }

    .linebreak {
        line-height: 2.5;
        width: 100%;
        border-bottom: 1px solid #8a8a8a;
        padding-bottom: 7px;
        margin-bottom: 15px;
        display: inline-block
    }

    .linebreak::after {
        content: "\A";
        white-space: pre
    }

    .magazine {
        line-height: 1.5
    }
}

@media only screen and (max-width: 768px) {
    .nav li {
        padding:20px;
        font-weight: 600
    }

    .nav li:last-child {
        padding: 20px;
        font-weight: 600
    }

    .nav_rec li {
        padding: 20px;
        border-top: 1px solid #555;
        width: 100%;
        font-weight: 600
    }

    .nav_rec li:last-child {
        padding: 20px;
        border-bottom: 1px solid #555;
        width: 100%;
        font-weight: 600
    }

    .nav_rec em {
        padding-left: 15px;
        font-weight: 600
    }

    .nav_rec em::before {
        content: "◆";
        color: #fed900;
        font-weight: 100
    }

    .nav_rec table {
        width: 100%
    }

    .nav_work li {
        text-indent: 1em
    }

    .nav_work li::before {
        content: "●";
        color: #30a4f2
    }

    .nav_esse li {
        text-indent: -1em
    }

    .nav_esse li::before {
        content: "・";
        color: #444
    }

    .nav_poli ol::before {
        text-indent: -1em
    }

    .nav_poli ol::before {
        content: "・";
        color: #000
    }

    .sppb20 {
        padding-bottom: 20px
    }

    .sppb20 {
        padding-bottom: 20px
    }
}

.blue_color {
    color: #30a4f2
}

a {
    color: #30a4f2;
    text-decoration: none
}

a:hover {
    opacity: .8
}

.active,a:hover {
    text-decoration: underline
}

a:active,a:focus,input:active,input:focus {
    outline: 0
}

@media only screen and (min-width: 769px) {
    .sp {
        margin:0!important;
        padding: 0!important
    }

    .sp img {
        display: none
    }

    .sp div {
        display: none
    }

    section h2 {
        padding: 19px 10px 10px 10px;
        font-family: Pacifico,cursive;
        margin: 0 auto;
        font-size: 30px;
        font-weight: 800;
        text-align: center;
        background-color: #fff;
    }

    li.spdisp {
        display:none !important;
    }

    .widthbox {
        display: table;
        width: 100%;
        height: auto;
        margin-top: 85px
    }

    .box {
        display: table-cell;
        text-align: right
    }

    .boxin {
        vertical-align: middle
    }
}

@media only screen and (max-width: 768px) {
    .pc {
        margin:0!important;
        padding: 0!important
    }

    .pc img {
        display: none;
    }

    .pc div {
        display: none;
    }

    section h2{
        padding: 19px 10px 10px 10px;
        font-family: Pacifico, cursive;
        margin: 0 auto;
        font-size: 62px;
        font-weight: 800;
        text-align: center;
        background-color: #fff;
    }

    .widthbox {
        display: table;
        width: 100%;
        height: auto;
        margin-top: 20px
    }

    .box {
        display: table-cell;
        text-align: right
    }

    .box h4 {
        font-size: 1.2rem
    }

    .box .head {
        font-size: 100%!important;
        font-weight: 700!important
    }

    .boxin {
        vertical-align: middle
    }
}

@media only screen and (min-width: 1238px) {
    .marker {
        background:linear-gradient(transparent 60%,#fed900 0);
        width: 55%
    }
}

@media only screen and (min-width: 769px) and (max-width:1237px) {
    .marker {
        background:linear-gradient(transparent 50%,#fed900 0);
        width: 60%
    }
}

@media only screen and (max-width: 768px) {
    .marker {
        background:linear-gradient(transparent 60%,#fed900 0);
        width: 90%
    }
}

.col1 li {
    display: inline-block;
    width: 100%
}

.timeline {
    list-style: none
}

.timeline>li {
    margin-bottom: 60px
}

@media only screen and (max-width: 768px) {
    .timeline {
        margin-top:-50px
    }

    .timeline-date {
        width: 100%;
        float: left;
        margin-top: 20px;
        font-weight: 600;
        font-size: 18px
    }

    .timeline-month {
        padding-top: 40px;
        text-indent: .5em
    }

    .timeline-thing {
        padding: 0 10px
    }

    .timeline-content {
        margin: 0 20px;
        width: 100%;
        float: left;
        padding: 0 10px;
        margin-top: -20px!important
    }
}

@media (min-width : 769px) {
    .timeline>li {
        overflow:hidden;
        margin: 0;
        position: relative
    }

    .timeline-date {
        width: 110px;
        float: left;
        margin-top: 20px;
        font-weight: 600;
        font-size: 18px
    }

    .timeline_month {
        padding-top: 50px
    }

    .timeline-content {
        margin-left: 25px;
        width: 100%;
        float: left;
        border-left: 3px #e5e5d1 solid;
        padding-left: 25px
    }

    .timeline-content:before {
        content: '';
        width: 12px;
        height: 12px;
        background: #30a4f2;
        position: absolute;
        left: 20px;
        top: 24px;
        border-radius: 100%;
        z-index: 3
    }
}

#header {
    text-align: center;
    position: relative;
    z-index: 9999
}

#header h1 {
    padding-top: 60px
}

#mainnav a {
    color: #000
}

#mainImg {
    overflow: hidden;
    width: 100%
}

#global-nav {
    background: #fff;
    width: 100%;
    position: static;
    top: -30px;
    transition: all .3s ease 0s
}

#global-nav.m_fixed {
    left: 0;
    position: fixed;
    top: 0;
    z-index: 9999
}

#global-nav .inner {
    padding-bottom: 0;
    margin-bottom: 60px;
    padding-top: 0;
    margin: 0 auto;
    max-width: 100%
}

.global-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0
}

.global-list li {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 1%
}

.global-item {
    border-left: 1px solid #fff;
    width: 20%
}

.global-item:last-child {
    border-right: 1px solid #fff;
    margin-right: 0
}

.global-item a {
    background: #16244e;
    color: #fff;
    display: block;
    line-height: 50px;
    text-align: center;
    text-decoration: none
}

#footer {
    background-color: #f0f0f0;;
    clear: both;
    color: #000;
    padding: 20px 10px 50px 0;
    text-align: center;
    font-size: 12px
}

#footer .logo {
    text-align: center;
    padding: 10px 0px 30px 0;
}

#footer .nav li {
    border-right: 1px solid #555
}

#footer .nav li:first-child {
    border-top: none
}

#footer .nav li:last-child {
    border: none
}

#footer .logo a {
    display: inline-block
}

#footer .logo img {
    width: 160px
}

#footer .nav a {
    display: block;
    padding: 0 10px;
    color: #666
}

@media only screen and (min-width: 769px) {
    #footer .nav {
        display:-webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 4px 0
    }

    #footer .nav a:hover {
        color: #30a4f2
    }
}

@media only screen and (max-width: 768px) {
    #footer {
        text-align:center;
        zoom: 300%;
    }

    #footer .nav {
        text-align: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }

    #footer .nav li {
    }

    #footer .nav li:last-child {
    }

    #footer .nav li a {
        padding: 12px 20px;
        font-size: 30px;
    }
}

img {
    max-width: 100%;
    height: auto;
}

section {
    clear: both
}

section h2 span {
    background: #fff;
    padding: 0 5px;
    color: #000;
}

.yellow{color:#fde395;}
.orange{color:#fdccb2;}
.red{color:red;}
.green{color:#b8edb8;}
.blue{color:#7ad6f6;}
.purple{color:#c986cc;}
.pink{color:#ffa9b8;}


.talent::before {
    content: "●";
    color: #ffa9b8;
}

.talent_flex_base{
    position: relative;
    text-align: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.talent_flex{
    line-height: 3;
    width: 160px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: flex-start;
}

.talent_flex_end{
    line-height:3;
    width: 268px;
    display: flex;
    justify-content: flex-start;
}

.main_button{
    color: white;
    background-color: #90bef2;
    width: 300px;
    text-align: center;
    padding: 12px 4px 12px 2px;
    border-radius: 26px;
    box-shadow: 0 2px 6px 1px rgba(0,0,200,0.5);
}

.inner {
    width: 94%;
    margin: 0 auto;
    padding-bottom: 50px
}

.innerS {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 50px;
    word-wrap: break-word;
}

.innerMin {
    padding: 0 25px
}

#sec02 {
    padding: 0!important
}

#sec02 header {
    display: none
}

#gallery li {
    float: left;
    width: calc(100%/3);
    line-height: 0
}

#gallery img {
    width: 100%;
    height: auto
}

#sec03 img {
    width: 100%;
    margin-bottom: 10px
}

.col3_recruit img {
    display: block;
    margin: 13px 16px 5px 0;
    float: left
}

.col3_recruit li {
    line-height: 1.3
}

.col3_recruit .img {
    padding: 25px 0;
    line-height: 0!important
}

.col3 img {
    display: block;
    margin: 13px 16px 5px 0;
    float: left
}

.col3 li {
    line-height: 1.5
}

.col3 .img {
    padding: 25px 0;
    line-height: 0!important
}

.col3 .release {
    background-image: url(../img/tag/tag_release.png);
    z-index: 100;
    background-repeat: no-repeat;
    position: relative;
    top: 63px
}

.col3 .campaign {
    background-image: url(../img/tag/tag_campaign.png);
    z-index: 100;
    background-repeat: no-repeat;
    position: relative;
    top: 63px
}

#sec04_02 {
    background-size: cover;
    -webkit-background-size: cover;
    text-align: center;
    padding: 220px 20px
}

#sec04_02 img {
    width: auto
}

#sec05 p {
    margin-bottom: 5px
}

.col2 li {
    display: inline-block;
    width: 100%;
    margin: 20px 0
}

#sns img {
    padding: 35px 10px 5px 0
}

#sns a:hover img {
    opacity: .8
}

#map {
    position: relative;
    padding-bottom: 75%;
    height: 0;
    overflow: hidden;
    z-index: 0
}

#map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%!important;
    height: 100%!important;
    border: 0
}

@media only screen and (min-width: 1200px) {
    .inner {
        width:1024px
    }
}

@media only screen and (min-width: 800px) {
    body {
        font-size:15px;
        line-height: 1.5
    }

    #global-nav {
        background: #fff;
        border-bottom: 1px solid #16244e;
        width: 100%;
        position: static;
        top: -30px;
        transition: all .3s ease 0s
    }

    #global-nav.m_fixed {
        left: 0;
        position: fixed;
        top: 0;
        z-index: 9999
    }

    #global-nav .inner {
        padding-bottom: 0;
        margin-bottom: 60px;
        padding-top: 0;
        margin: 0 auto;
        max-width: 100%;
        width: 1280px
    }

    .global-list {
        display: flex;
        list-style: none;
        margin: 0;
        padding: 0
    }

    .global-list li {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0 1%
    }

    .global-item {
        border-left: 1px solid #fff;
        width: 20%
    }

    .global-item:last-child {
        border-right: 1px solid #fff;
        margin-right: 0
    }

    .global-item a {
        background: #16244e;
        color: #fff;
        display: block;
        line-height: 50px;
        text-align: center;
        text-decoration: none
    }

    .col3 {
        text-align: center
    }

    .col3 li {
        display: inline-block;
        width: 47%;
        padding: 0 2.5% 50px;
        margin-bottom: 0;
        vertical-align: top;
        text-align: left
    }

    .col3_recruit {
        text-align: center
    }

    .col3_recruit li {
        display: inline-block;
        width: 47%;
        padding: 0 2.5% 50px;
        margin-bottom: 0;
        vertical-align: top;
        text-align: left
    }

    #footer {
        padding: 0px 10px 30px 0
    }
}

@media only screen and (min-width: 641px) {
    .col2 li {
        width:60%;
        vertical-align: top
    }

    .col2 li:first-child {
        width: 35%;
        padding-right: 4%
    }
}

@media only screen and (max-width: 640px) {
    .innerS {
        zoom:240%;
        padding-bottom: 70px;
        word-wrap: break-word
    }

    .col3 li {
        line-height: 1.5
    }

    .col3 img {
        float: left;
        width: 20%
    }

    .col3 .img {
        margin-bottom: 10px
    }

    .col3_recruit li {
        line-height: 1.4
    }

    .col3_recruit img {
        float: left;
        margin: 0 15px 0 10px;
        width: 20%
    }

    .col3_recruit .img {
        padding: 0;
        margin-bottom: 10px
    }

    #gallery li {
        float: none;
        width: 100%
    }

    #map iframe {
        width: 96%!important;
        left: 2%
    }

    #sec04_02 {
        padding: 50px 20px
    }
}

@media only screen and (max-width: 799px) {
    #header {
        position:relative;
        width: 100%;
        z-index: 9999
    }

    #headerWrap {
        position: relative;
        width: 100%;
        height: 70px;
        background: #fff;
        border-bottom: 1px solid #ccc
    }

    #header h1 {
        padding-top: 10px
    }

    #header h1 img {
        margin-top: 3px;
        max-height: 45px;
        width: auto!important
    }

    a#menu {
        display: inline-block;
        position: relative;
        width: 40px;
        height: 40px;
        margin: 10px
    }

    #menuBtn {
        display: block;
        position: absolute;
        top: 60%;
        left: 50%;
        width: 18px;
        height: 2px;
        margin: -1px 0 0 -7px;
        background: #000;
        transition: .2s
    }

    #menuBtn:after,#menuBtn:before {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 18px;
        height: 2px;
        background: #000;
        transition: .3s
    }

    #menuBtn:before {
        margin-top: -7px
    }

    #menuBtn:after {
        margin-top: 5px
    }

    a#menu .close {
        background: 0 0
    }

    a#menu .close:after,a#menu .close:before {
        margin-top: 0
    }

    a#menu .close:before {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg)
    }

    a#menu .close:after {
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg)
    }

    #mainImg {
        padding-top: 42px;
        z-index: -100
    }

    .col3 li {
        margin: 50px auto 0 auto;
        display: block
    }

    .col3_recruit li {
        margin: 50px auto 0 auto;
        display: block
    }

    section {
        padding-top: 20px;
    }

    section h2 {
        margin: 0 auto 20px;
    }

    section h2 span {
        padding: 0 10px;
    }
}
