@charset "Shift_JIS";

@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}

.clearfix:after {
    clear: both; 
}

/* For IE 6/7 (trigger hasLayout) */
.clearfix {
  zoom: 1;
}

body,div,p,dd,dt{
    font-size:14px;
    line-height: 1.7em;
}
body{
  font-family: 'Noto Sans Japanese', serif;
}
#wrapper{
  display:block;
  margin:0 auto;
}
img{width:100%;}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.wrapper{
    width:1000px;
    margin: 0 auto;
}

.pageTop {
    display: none;
    position: fixed;
    bottom: 25px;
    margin: 0 !important;
    width: 50px;
    height: 50px;
    left: calc(((100% - 1000px) / 2) + 1020px);
}

.pageTop img{
	width: 100%;
    height: 100%;
}

b{
    white-space: normal;
    word-break: break-all;
}

/* ---------------------------------------------------- menu start ----------------------------------------------------  */
#click_menu{
    float: right;
    width: 30px;
    height: 30px;
    opacity: 1;
    margin-right: 10px;
}

#click_menu:after {
    content: "MENU";
    margin-top: 30px;
    display: block;
    font-size: 13px;
}

#click_menu.close:after {
    content: "CLOSE";
    margin-top: 37px;
    display: block;
    font-size: 13px;
    opacity: 1;
    font-weight: 300;
}

#menu.open{
    top: 0;
}

#menu	ul {
    margin: 30px 0;
    padding-left: 0;
    background-color: transparent;
}

#menu	li {
    list-style: none;
    padding: 25px 0;
    border-bottom: solid 1px #CACACA;
    float: none;
    width: 300px;
    margin: 0 auto;
    text-align: center;
}

#menu	li:last-child {
    border-bottom: none ;
}

#menu	a {
    text-decoration: none;
    color: #4D4D4D;
    background-color: transparent;
    text-align: center;
    font-size: 18px;
}

#menu {
    position: fixed;
    top: -110vh;
    right: 0;
    width: 100%;
    height: auto;
    padding: 80px 3vw 0;
    transition-property: all;
    -webkit-transition-property: all;
    transition: top 1s, bottom 1s;
    -webkit-transition: top 1s, bottom 1s;
    background-color: rgba(255, 255, 255, 1);
    z-index: 3;
}

#menu	.toggle {
    font-size: 50px;
    cursor: pointer;
}

#menu	.toggle:hover {
    text-decoration: underline;
}

#menu	#open {
    display: none;
}

nav {
    display: block;
}

.hamburger .bdr {
    position: absolute;
    left: 0;
    width: 40px;
    height: 2px;
    border-radius: 4px;
    background: #000;
    transition: all .5s;
}

.toggle.hamburger{
    width: 50px;
    height: 30px;
    display: block;
    position: fixed;
    top: 20px;
    z-index: 999;
    border-radius: 3px;
    background-color: rgba(255,255,255,.8);
}

.hamburger .bdr:nth-child(2) {
    top: 2px;
}

.hamburger .bdr:nth-child(3) {
    top: 14px;
}

.hamburger .bdr:nth-child(4) {
    bottom: 2px;
}

.hamburger.is-active .bdr:nth-child(2) {
    transform: translateX(-1px) translateY(13px) rotate(-45deg);
    width: 40px;
}

.hamburger.is-active .bdr:nth-child(3) {
    opacity: 0;
}

.hamburger.is-active .bdr:nth-child(4) {
    transform: translateX(-1px) translateY(-11px) rotate(45deg);
    width: 40px;
}

input#open{
    vertical-align: middle;
    opacity: 0;
}

.open{
    width: 360px;
    display: block;
    float: left;
    background-color: #2C4086;
}
.pc{
    display: block;
}
.sp{
    display: none;
}

section {

}
.section{
    padding-top:80px;
    padding-bottom: 80px;
}
/* ---------------------------------------------------- menu end ----------------------------------------------------  */

.head{
    height: 80px;
}
h1{
    display: block;
    width: 66%;
    float: left;
    text-align: center;
    font-size: 30px;
    line-height: 1.3em;
}

h1 span{
    font-size:12px;
    display:block;
}

h1 img{
    max-width: 450px;
}

h2{
    display:block;
    text-align: center;
    font-size: 32px;
    padding-bottom:70px;
    font-weight: 600 !important;
    letter-spacing: 0.08em;
}

h2 span{
    display: block;
    padding: 10px 0 0;
    font-size: 15px;
    letter-spacing: 0.2em;
    line-height: 1em;
}

h1,h2,h3{
    line-height: 1.6em;
    font-weight: 300;
}

#main_visual {
    margin-top: 175px;
    padding-bottom: 90px;
}



.head{ 
    height: 100px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 4;
    background-color: #fff;
    width: 100%;
    padding-left: calc((100% - 1000px)/ 2);
    padding-right: calc((100% - 1000px)/ 2);
    border-bottom: 1px solid #CACACA;
}
  
header{
    display: block;
    width:100vw;
}



h1 {
  display: block;
  width: 50%;
  float: left;
  text-align: left;
  font-size: 30px;
  line-height: 1.3em;
  padding-top: 20px;
}



.contact_tel{
    display:block;
    width:40%!important;
    float:left !important;
}

.contact {
    color: #fff;
    text-align: center;
    padding-top: 20px;
    text-align: right;
}

.contact img {
    max-width: 275px;
}

.head div{
    width:33%;
    float: right;
}

.main_visual{
    text-align: center;
    margin-bottom: 30px;
}

.main_visual .col-sm-4{
    background-color: #2786ca;
    color:#FFF;
    height: calc(960px / 2.65 );
}

.main_visual .col-sm-4 p:nth-child(1){

}
.main_visual .col-sm-4 p:nth-child(2){

}
.main_visual .col-sm-4 p:nth-child(2) span{
    font-size: 24px;
    display: block;
}
.main_visual .col-sm-4 p:nth-child(2) strong{
    font-size: 60px;
    display: block;
    padding-top:10px;
}








.planning,
.schedule{
    width: 50%;
    float: left;
}


#point-3 article:nth-child(1),
#point-3 article:nth-child(3){

}
#point-3 article:nth-child(2){

}


#point-3 article:nth-child(3){

}



#imgtwo,
#imgthree{
 
}

.imgone,
.imgtwo,
.imgthree{
 
}

#enrollment .col-xs-2 h3{
    display: inline-block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #0070c0;
    display: table;
}

#enrollment .col-xs-2 h3 span{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color: #fff;
}


.gbtn{
    background-color: #30bf71;
    color: #fff;
    border-radius: 0;
    border: solid 1px #fff;
    width: 500px;
    height: 70px;
    position: relative;
    z-index: 3;
    text-align: center;
    padding-top: 20px;
}

.gbtn:after{
    content: "";
    display: block;
    background-color: transparent;
    width: 490px;
    height: 60px;
    position: absolute;
    z-index: 5;
    top: 5px;
    left: 5px;
    border: solid 1px #fff;
}

.asterisk{
    font-size:14px;
}

/* ---------------------------------------------------- section ----------------------------------------------------  */

#player{
    width: 640px;
    display: block;
    float: right;
}

#player iframe{
    width: 100%;
}


#about h2 span,
#training  h2 span,
#staff  h2 span,
#flow h2 span,
#procedure h2 span,
#price h2 span,
#trial h2 span{
    color: #2C4086;
}

.description p{
    font-size:16px;
}

.description p:first-child{
    margin-bottom:1em;
}

.description p:nth-child(2),
.description .one p:first-child{
    margin-bottom:1em;
}

/*  catch  */

#catch a:hover img{
    opacity: 0.8;
}

#catch #imgzero{
    width: 100%;
    float: none;
    padding:0;
}

#catch {
    /*padding: 10px;
    height: 170px;
    background-color: #f0f0f0;*/
}

#catch .wrapper{
    /*width:100%;
    height: auto;
    background-color:#FFF;
    padding: 20px;*/
}
#catch h2{
    /*display: block;
    width: 160px;
    float: left;
    padding-bottom: 0;
    border: solid 1px #2C4086;
    border-radius: 3px;
    font-size: 24px;
    font-weight: 600;
    color: #2C4086;
    background-color: #f0f0f0;*/
}

#catch h2 span {
    /*font-size: 14px;
    letter-spacing: 0;*/
}
#catch h3{
    /*color: #2C4086;
    font-size: 36px;
    font-weight: 600;
    line-height: 1em;*/
}
#catch h3 span{
    color: #cf000e;
}
#catch div:nth-child(2){
    float: left;
    margin-left: 20px;
}
#catch div:nth-child(2) p{
    font-size: 26px;
    font-weight: 600;
    color: #333;
}
#catch .wrapper div:last-child{
    float: left;
    border-top: solid 2px #f0f0f0;
    border-bottom: solid 1px #f0f0f0;
    color: #979797;
    padding: 15px 0;
}

#catch::after{
    /*content: "";
    display: block;
    position: relative;
    float: right;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 20px;
    height: 20px;
    right: 50%;
    transform: rotate(-225deg);*/
}

/*------------------------------ about ------------------------------*/

#about{
    background-color: #F0F5FA;
}

#about #imgone{
    width: 50%;
    float: left;
    padding-right: 20px;
}

#about .description{
    width: 50%;
    float: right;
    padding-left: 20px;
}

/*------------------------------ training ------------------------------*/

#training .description{
    margin-top:35px;
}

#training .one{
    width: 690px;
    float: left;
    padding-right: 40px;
}
#training .description .one p:nth-child(2){
    margin-bottom: 0;
}

#training .two{
    width:300px;
    float:left;
    padding:0 20px;
    background-color: #F0F0F0;
}

#training .two h3{
    font-size:20px;
    color: #2C4086;
    padding-top:20px;
}

#training .two ul{
    padding-top:20px;
}

#training .two ul li{
    font-size:18px;
    list-style: none;
    line-height: 2em;
}

#training .two ul li::before{
    content:"";
    display: inline-block;
    width: 14px;
	height: 14px;
    border-radius: 50%;
    background-color: #2C4086;
    margin-right: 2px;
}

/*------------------------------ machine ------------------------------*/

#machine{
    background-color: #2C4086;
    color:#fff;
}

#machine .description {
    width: 50%;
    float: right;
    padding-left: 20px;
}

#machine .description span{
    font-size:14px;
}

#machine #imgthree{
    width: 50%;
    float: left;
    padding-right: 20px;
}

#k-yasushi {
    background-color: #fff;
    margin-top: 40px;
    padding: 30px;
}

#k-yasushi h3{
    font-size:16px;
    color: #2C4086;
}

#k-yasushi p{
    padding: 0 0 10px;
    font-size:14px;
}

#machine .description span.company{
    font-size:16px;
}

#machine .description span.ceo{
    font-size:18px;
    line-height: 2em;
}

#k-yasushi .description{
    width: 545px;
    float: left;
    padding-right: 0;
    color: #000;
}

#k-yasushi .description p:nth-child(2){
    margin-bottom: 0;
}

#imgfore{
    width: 353px;
    float: left;
    margin-right: 40px;
}

#imgfive{
    width: 560px;
    float: left;
}

#staff .description{
    width: 400px;
    float: right;
}
.coach h3{
    font-size:16px;
}

.coach p{
    font-size:16px;
}

/*------------------------------ flow ------------------------------*/
#flow h3 span.sp{
    display: none;
}

#flow .circle{
    width:240px;
    float: left;
}

#flow .circle:nth-child(2),
#flow .circle:nth-child(3),
#flow .circle:nth-child(4){
    margin-left:20px;
}

#flow .circle:last-child{
    width:210px;
}

#flow h3 {
    background-color: #2C4086;
    border: solid 10px #96a0c3;
    color: #fff;
    width: 208px;
    height: 208px;
    border-radius: 50%;
    display: table;
    table-layout: fixed;
}

#flow h3 span {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 24px;
    line-height: 1.6em;
    width: 190px;
}

#flow h3 span.or {
    transform: scale3d(0.7 ,1.2 ,1);
    width: 220px;
    display: inline-block;
    margin-left: -15px;
}

#flow p {
    width: 208px;
    font-size: 16px;
    padding-top: 20px;
}

#flow .circle h3:after {
    content: "";
    display: block;
    position: relative;
    float: right;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    width: 20px;
    height: 20px;
    top: 90px;
    right: -40px;
    transform: rotate(-315deg);
}

#flow .circle:last-child h3:after {
    display: none;
}


#flow .circle:last-child p br {
    display: none;
}

/*------------------------------ procedure ------------------------------*/
#procedure dl{
    display: block;
    width: 100%;
    clear: both;
    border-bottom: solid 1px #CACACA;
    padding:20px 0;
}

#procedure div dl:first-child{
    padding:0 0 20px;
}

#procedure div dl:last-child{
    border-bottom: none;
}

#procedure dt{
    width:215px;
    display: block;
    float: left;
    font-size: 16px;
    color: #2C4086;
    font-weight: 300;
}



#procedure dd{
    display: block;
    float: left;
    width:785px;
    font-size: 16px;
}


#procedure dd span{
    font-size: 14px;
}

#procedure dd span a{
    color: #2C4086;
    text-decoration: underline;
}



/*------------------------------ price ------------------------------*/

#price p{
    font-size: 16px;
    text-align: center;
    padding-bottom:45px;
}

#price p span{
    font-size: 14px;
}

table{
    table-layout: fixed;
    width: 100%;
    text-align: center;
    margin-bottom:30px;
}

tr{
    border:solid 1px #999;
    height: 60px;
}
td{
    width:33%;
    vertical-align: middle;
    font-size: 16px;
}
td:first-child{
    border-right:solid 1px #999;
}

td:last-child{
    border-left:solid 1px #999;
}
th {
    background-color: #2C4086;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    font-weight: 300;
    font-size: 16px;
}

th:nth-child(2){
    border-right:solid 1px #999;
    border-left:solid 1px #999;
}

    #price td {
        background-color: #FFF;
    }

/*------------------------------ trial ------------------------------*/


#specialevent {
    /*padding: 10px;
    background-color: #f0f0f0;*/
}

#specialevent .wrapper{
    /*width:100%;
    height: auto;
    background-color:#FFF;
    padding: 20px;*/
}
#specialevent h2{
    display: block;
    width: 160px;
    float: left;
    padding-bottom: 0;
    border: solid 1px #2C4086;
    border-radius: 3px;
    font-size: 24px;
    font-weight: 600;
    color: #2C4086;
    background-color: #f0f0f0;
}

#specialevent h2 span {
    font-size: 14px;
    letter-spacing: 0;
}
#specialevent h3{
    color: #2C4086;
    font-size: 36px;
    font-weight: 600;
    line-height: 1em;
}
#specialevent h3 span{
    color: #cf000e;
}
#specialevent div:nth-child(2){
    float: left;
    margin-left: 20px;
}
#specialevent div:nth-child(2) p{
    font-size: 26px;
    font-weight: 600;
    color: #333;
}
#specialevent .wrapper div:last-child{
    float: left;
    border-top: solid 2px #f0f0f0;
    border-bottom: solid 1px #f0f0f0;
    color: #979797;
    padding: 15px 0;
}




.participation{
    padding:30px 0;
    font-size:16px;
}
.participation span{
    font-size:14px;
}

.necessary{
    width:100%;
    display:block;background-color: #F0F0F0;
    padding:18px 30px;
    font-size:16px;
}

.necessary.sp{
    display: none;
}

#trial .here {
    text-align: center;padding:20px 0;
    border:solid 2px #2C4086; 
    margin-top:40px;
}

#trial .here h3{
    color: #2C4086; 
    font-size: 16px;
}

.tel_icon{
    font-size: 34px;
    line-height: 34px;
    padding: 10px 0;
    display: inline-block;
    color: transparent;
    background-image: url(../images/trial_tel.jpg);
    background-position: 100% 50%;
    background-size: 85%;
    background-repeat: no-repeat;
}


.tel_icon:before{
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #2C4086 url(../images/tel_icon.png);
    margin-right: 0;
    line-height: 30px;
    background-size: 100%;
    background-position: 50%;
    position: relative;
    top: 2px;
}

.here.pc {
    display: block;
}

.here.sp{
    display: none;
}
.participation span.freetrial{
    font-size: 16px;
    font-weight: 600;
    color:#E5360E;
}

/*------------------------------ access ------------------------------*/
#access{
    background-color: #2C4086;
}
#access h2{
    color: #fff;
}

#access dl{
    border-bottom: solid 1px #fff;
    padding-bottom: 20px;
}

#access dl:nth-child(2){
    padding-top: 20px;
}

#access dl:nth-child(3){
    padding-top: 20px;
    border-bottom:none;
}


#access dt{
    width:40%;
    float: left;
    font-weight: 300;
    font-size: 16px;
}


#access dd{
    width:60%;
    float: right;
    line-height: 1.8em;
    font-size: 16px;
}

#access dd span{
    display: block;
}

#access dd span:first-child{
    padding-bottom: 20px;
}

.address{
    color: #fff;
    width: 50%;
    float: left;
    padding-right: 20px;  
}

.gmap{
    width: 50%;
    float: right;
    padding-left: 20px;
}

.gmap iframe{
    width: 480px;
    height:420px;
}

#flow{
    background-color: #F0F5FA;
}

#price{
    background-color: #F0F5FA;
}

/*------------------------------ footer ------------------------------*/

footer .logo {
    text-align: center;
    padding:65px 0;
}

footer .logo img{
    max-width:390px;
}

footer #copy {
    text-align: center;
    height:80px;
    line-height: 80px;
    background-color: #F0F0F0;
}

/*------------------------------ boxer ------------------------------*/

.boxer-open #boxer {

}
#boxer .boxer-iframe {
    height: 90vh;
}

#boxer .boxer-close {
    top: 7.5px !important;
    right: 7.5px !important;
    background-color: transparent !important;
    height: 100px !important;
    width: 50px !important;
    text-align: center !important;
    border-radius: 0 !important;
    background: transparent !important;
}

#boxer .boxer-close:before {
    content: "CLOSE";
    color: #000;
    font-size: 12px;
    top: 20px;
}

#boxer .boxer-close:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    color: #333;
    content: "\00d7";
    display: block;
    font-size: 22px;
    font-weight: 700;
    line-height: 30px;
    margin: auto;
    text-align: center;
    text-indent: 0;
    -webkit-transition: color .15s linear;
    transition: color .15s linear;
}

#boxer .boxer-content {
    width: 80% !important;
    margin: 0 auto;
}

#boxer .boxer-iframe {
    height: 700px;
}
body ,
.head {
    min-width:1024px;
}


/*------------------ 1024px ------------------*/
@media screen and (max-width: 1024px) { 

    body ,
    .head {
        min-width:100%;
    }

    .newline:before {
        content: "\A" ;
        white-space: pre ;
    }

    p{
        font-size:14px;
    }

    section {

    }
    .section{
        padding-top: 60px;
        padding-bottom: 60px;
    }

    #menu	ul {
        height: 100vh;
    }

    .wrapper {
        width: calc(100% - 60px);
        margin: 0 auto;
    }

    .description p {
        font-size: 16px;
    }

    .main_visual {
        height: auto;
    }
    #main_visual {
        padding-bottom: 75px;
    }
    .main_visual .open {
        display: none;
    }
    #player {
        width: 100%;
        display: block;
        float: none;
        height: auto !important;
    }

    #player:after {
        display: block;
        content: "";
        width: 100%;
        height: 28vw;
        background-image: url(../images/open_tab.jpg);
        background-size: 100%;
        margin-left: 0;
        margin-top: -7px;
    }

    #player:after {
        height: 27.7vw;
        min-height: 220px;
    }

    #player iframe {
        height: calc(90vh / 2.25);
    }

    #catch #imgzero img{
        display: none;
    }
    #catch #imgzero:after {
        display: block;
        content: "";
        width: 100%;
        height: calc(100vw * 0.26);
        background-image: url(../images/campaign_tab.jpg);
        background-size: 100%;
        background-repeat: no-repeat;
        min-height: 210px;
    }

    #catch .wrapper {
        width: 100%;
    }

    #training .one {
        width: 65%;
    }
    #training .two {
        width: 35%;
    }

    #training .two h3 {
        font-size: 18px;
    }

    #training .two h3 span{
        display: block
    }

    #training .two ul li {
        font-size: 16px;
    } 

    /*----------- machine -----------*/
    #k-yasushi #imgfore {
        width: 33%;
        margin-right: 2%;
    }

    #k-yasushi .description {
        width: 63%;
        padding-left: 2%;
    }

    #machine .description span.asterisk{
        font-size: 12px;
        margin-top: 10px;
        display: inline-block;
    }

    #machine .description span.ceo {
        font-size: 16px;
    }

    /*----------- price -----------*/

    /*  specialevent  */
    #specialevent {
        height: 18vw;
    }

    #specialevent .wrapper{
        width:100%;
        height: auto;
        background-color:#FFF;
        padding: 20px;
    }
    #specialevent h2 {
        width: 100%;
        float: none;
    }
    #specialevent h2 span {
        display: inline;
    }
    #specialevent h3{
        color: #2C4086;
        font-size: 36px;
        font-weight: 600;
        line-height: 1em;
    }
    #specialevent h3 span{
        color: #cf000e;
    }
    #specialevent div:nth-child(2){
        float: left;
        margin-left: 20px;
    }
    #specialevent div:nth-child(2) p{
        font-size: 26px;
        font-weight: 600;
        color: #333;
    }
    #specialevent .wrapper div:last-child{
        float: left;
        border-top: solid 2px #f0f0f0;
        border-bottom: solid 1px #f0f0f0;
        color: #979797;
        padding: 15px 0;
    }

    .necessary.sp{
        display: none;
    }

    /*----------- flow -----------*/
    #flow .circle:nth-child(2), #flow .circle:nth-child(3), #flow .circle:nth-child(4) {
        margin-left: 0;
    }
    #flow .circle {
        width: 26%;
    }
    #flow .circle:last-child {
        width: 21%;
    }
    
    #flow h3 {
        width: 18vw;
        height: 18vw;
        border: solid 1vw #96a0c3;
        min-width: 125px;
        min-height: 125px;
    }

    #flow h3 span {
        width: 16.5vw;
        font-size: 1.8vw;
    }
    #flow h3 span.or {
        transform: scale3d(0.8 ,1.2 ,1);
        width: 20vw;
        display: inline-block;
        margin-left: -1.5vw;
    }

    #flow .circle h3:after {
        top: 7vw;
        right: -4.5vw;
    }

    #flow .circle h3:after {
        top: 6vw;
        right: -4vw;
    }

    #flow p {
        width: 20vw;
        font-size: 14px;
    }

    /*----------- access -----------*/
    #access dt, #access dd {
        width: 100%;
        float: none;
        text-align: left;
    }

    .address {
        width: 40%;
    }
    .gmap {
        width: 60%;
    }

    .gmap iframe {
        width: 100%;
        height: 420px;
    }

    .necessary.sp{
        display:none;
    }

    .necessary.pc span{
        display:block;
    }

    /*----------- staff -----------*/

    #staff .description {
        width: 32vw;
        float: right;
    }


    #staff #imgfive {
        width: 58vw;
        float: left;
    }


    .pageTop {
        right: 10px;
    }

    #boxer.mobile {
        background: rgba(0,0,0,.7);
    }

    #boxer .boxer-container {
        background: transparent;
    }

    #boxer.mobile .boxer-container {
        background: transparent;
    }

    #boxer .boxer-close {
        margin: 3% 11% !important;
        height: 120px !important;
        color: transparent;
    }

    #boxer .boxer-close:after {
        top: 12%;
        right: -25%;
    }
    #boxer .boxer-close:before {
        content: "CLOSE";
        color: #000;
        font-size: 12px;
        display: block;
        position: static;
    }
    #boxer.mobile .boxer-close:before, #boxer.mobile .boxer-close:hover:before {
        color: transparent;
    }

    #boxer.mobile .boxer-close:before{
        content: "CLOSE";
        color: #000;
        font-size: 12px;
        display: block;
        position: static;
        margin-top: 30px;
        margin-left: 8px;
    }

    /*------------------ 896px ------------------*/
    @media screen and (max-width: 896px) {
        #wrapper.pc{
            display: none;
        }
        .head,
        .wrapper {
            width: 95%;
        }

        .contact {
            padding-top: 15px;
        }

        #menu {
            width: 100%;
            max-width: 100vw;
            left:0
        }


        .toggle.hamburger {
            width: 40px;
            right: 20px;
            top: 10px;
        }

        #click_menu:after {
            margin-left: -20px;
            margin-top: 20px;
        }


        #procedure dd {
            width: 100%;
        }


        .head {
            height: 70px;
            width: 100%;
            padding-left: 0;
            padding-right: 0;
        }
        h1{
            display: inline-block;
            width:375px;
            height: 45px;
            background-image: url(../images/logo_tab.jpg);
            background-size: 100%;
            margin-left: 20px;
            margin-top: 10px;
        }

        h1 img {
            display:none;
        }

        h2 {
            font-size: 28px;
            padding-bottom: 60px;
        }
        h2 span {
            font-size: 13px;
        }
        #menu	ul {
            height: 100vh;
            width: 42%;
            margin: 100px auto;
        }

        #menu {
            top: -130vh;
        }


        #menu	li {
            height: 65px;
        }
        #menu	li:last-child {
            display: none;
        }
        #menu	a {
            line-height: 0;
        }
        #menu	li:last-child a{
            color: #2C4086;
        }
        #click_menu.close:after {
            margin-top: 26px;
        }


        .description p {
            font-size: 14px;
        }

        .col-xs-12 {
            width: 100%;
            padding-right: 0;
            padding-left: 0;
        }
        .contact_tel {
            display: block;
            width: 25%!important;
            margin-left: 10%;
            margin-top: -5px;
        }
        .main_visual .open {
            display: none;
        }


        #main_visual {
            margin-top: 120px;
        }


        #player {
            width: 100%;
            display: block;
            float: none;
        }
        .planning, .schedule{
            display: none;
        }

        #flow h3 span {
            font-size: 16px;
            width: 100%;
        }
        #flow .circle h3:after {
            top: 50px;
            left: 40px;
        }
        #catch #imgzero:before {
            content:"";
            display: block;
            width:100%;
            height: 10px;
        }

        #machine #imgthree {
            padding-right: 10px;
        }

        #k-yasushi #imgfore {
            width: 48%;
            margin-right: 0;
            padding: 2.5vw;
        }


        #k-yasushi .description {
            width: 52%;
            padding-left: 0;
            padding: 2.5vw;
        }
        #k-yasushi h3 {
            font-size: 14px;
            color: #2C4086;
            padding-bottom: 10px;
        }

        #k-yasushi .company{
            font-size: 14px;
        }
        #k-yasushi .ceo{
            font-size: 16px;
        }

        #k-yasushi p {
            font-size: 12px;
            padding: 0;
        }

        #k-yasushi p:last-child {
            padding-top: 10px;
        }


        #staff #imgfive {
            width: 55%;
        }

        #staff .description {
            width: 40%;
        }

        .coach h3 {
            font-size: 14px;
        }



        #procedure dt ,
        #procedure dd {
            font-size: 14px;
        }

        #procedure dt{
            width: 23%;
        }


        #procedure dd {
            width: 77%;
        }

        #procedure dd .pc {
            display: none;
        }
        #procedure dd .sp{
            display: block;
        }

        #price p {
            font-size: 14px;
        }

        #price p span {
            font-size: 12px;
        }

        #price p {
            padding-bottom: 40px;
        }

        #specialevent {
            height: 22.5vw;
        }

        #specialevent .wrapper img{
            opacity: 0;
        }

        #specialevent .wrapper {
            padding: 0;
        }

        #specialevent .wrapper p::before{
            content:"";
            width:100%;
            height: 30vw;
            background-image:url(../images/bottom_campaign_tab.jpg);
            background-size: 100%;
            background-repeat: no-repeat;
            display: block;
        }

        .participation {
            font-size: 14px;
            letter-spacing: -0.03em;
        }
        .participation span.freetrial {
            font-size: 14px;
        }

        .participation span {
            font-size: 12px;
        }

        .necessary {
            font-size: 14px;
        }

        #price th,
        #price td {
            font-size: 14px;
        }
        #access dt,
        #access dd {
            font-size: 14px;
        }

        .gmap iframe {
            width: 90%;
            height: auto;
        }
        #k-yasushi {
            padding: 0;
        }




            


        .gmap iframe {
            width: 100%;
            height: 50vw;
        }

        #flow p span:last-child{
            font-size: 12px;
        }

        #flow p span:last-child br {
            display: none;
        }


        #boxer .boxer-content {
            width: 80% !important;
            margin: 0 auto;
        }

        #procedure dd span {
            font-size: 12px;
        }

        footer .logo img {
            max-width: 300px;
        }
        
        footer .logo {
            text-align: center;
            padding: 55px 0;
        }

        footer #copy {
            text-align: center;
            height: auto;
            line-height: 1em;
            background-color: #F0F0F0;
            padding:22px 0;
        }

        #boxer .boxer-close {
            right: 10px !important;
          }
          #boxer.mobile .boxer-close:before {
            content: "CLOSE";
            color: #000;
            font-size: 12px;
            display: block;
            position: static;
            margin-top: 30px;
            margin-left: 8px;
        }
            

        section {

        }
        .section {
            padding-top: 70px;
            padding-bottom: 70px;
        }
        body ,
        .head {
            min-width:768px;
        } 
        #boxer .boxer-content {
            width: 80% !important;
            margin: 0 auto;
        }
        /*---------------------------------- 480px ----------------------------------*/ 
        @media screen and (max-width: 480px) {
         
        /*------------------ 480px End------------------*/    
        }
    /*------------------ 896px End------------------*/
    }
    
/*------------------ 1024px End------------------*/
}
/*------------------ 1080px ------------------*/
@media screen and (max-width: 1080px) { 
    .pageTop {
        right: 10px;
        left: auto;
    }
}