#page-top{
    position:fixed;
    right:30px;
    bottom:30px;
    font-size: 18px;
}

#page-top a{
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: rgb(253, 201, 133);
    color: #fff;
}
#page-top i{
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translateY(-40%) translateX(-50%);
}

#page-top a:hover{
    background-color: rgb(255, 226, 189);
}


/*************************/
/******    common    *****/
/*************************/

.c-pink{ color: #ff7086; }
.c-navy{ color: #00508f; }
.c-red{ color: #e7194d; }
.c-green{ color: #00a192; }
.b-blue{ background-color: #00508f; }

.bg-green{background: url(../img/bk-green.png) top left repeat; }
.bg-blue{background: url(../img/bk-blue.png) top left repeat; }
.bg-white{background: url(../img/bk-white.png) top left repeat; }
.bg-dot{background: url(../img/bk-dot.png) top left repeat; }
.bg-skyblue{background-color: #e5f6fd;}
.bg-subblue{background-color: #eefaff;}
.bg-subred{background-color: #fff0f3;}
.bg-cream{background-color: #fff8ef;}
.bg-gray{background-color: #999999!important;}

a{cursor: pointer;}
sup{font-size: 6px!important;}

.no-gutters{
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
}

.imgover {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.imgover:hover {
    opacity: 0.6;
    filter: alpha(opacity=60);
}


.link-arrow-icon{
    position: relative;
}

.link-arrow-icon i{
  font-family: "Font Awesome 5 Free";
  content: '\f105';
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}

.btn-small{
    display: block;
    background-color: #ff7086;
    width: 100%;
    height: 30px;
    color: #fff!important;
    line-height: 30px;
    text-align: center;
    border-radius: 15px;        /* CSS3草案 */
    -webkit-border-radius: 15px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 15px;   /* Firefox用 */
}


.btn-big{
    display: block;
    font-size: 28px;
    height: 80px;
    line-height: 80px;
    background-color: #ff7086;
    width: 100%;
    color: #fff!important;
    text-align: center;
    border-radius: 40px;        /* CSS3草案 */
    -webkit-border-radius: 40px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 40px;   /* Firefox用 */
}

.btn-small:hover, .btn-big:hover{
    text-decoration: none;
}

.ol-list-pl{
    padding-left: 1rem!important;
    line-height: 1.6;
}

.sec-line{
    margin: 2.5rem 0 3.5rem 0;
}

/* 768px以下 */
@media screen and (max-width: 992px){

    .sec-line{
        margin: 1rem 0 1.5rem 0;
    }

    .btn-big{
        font-size: 14px;
        height: 40px;
        line-height: 40px;
        border-radius: 20px;        /* CSS3草案 */
        -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
        -moz-border-radius: 20px;   /* Firefox用 */
    }

}

/*************************/
/******    layout    *****/
/*************************/

body{
    background-color: #ffefbd;
    font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO"
}

main{
    margin:95px 0 3rem 0;
}

@media screen and (max-width: 992px){
    main{
        margin:65px 0 3rem 0;
    }
}

/*************************/
/******     nav      *****/
/*************************/

.navbar{
    /*height: 80px;*/
    font-size: 14px;
    padding: 5px 20px;
}


.navbar .nav-item{
    line-height: 1.2;
    text-align: center;
    margin:0 25px 0 0;
    padding: 0 25px 0 0;
    border-right: 1px solid #fff;
    position: relative;
}

.navbar-nav .nav-link{
    color: #fff!important;
}

.navbar-nav .active .nav-link{
    color: yellow!important;
}

.navbar .l1{
    padding: 18px;
}

.navbar .nav-icon{
    margin-right: 5px;
    padding-right: 5px;
}

.navbar .icon-new{
    background-color: #ef194d;
    /*display: block;*/
    color: #fff;
    font-size: 12px;
    padding: 3px;
    position: absolute;
    top: -10px;
    left: -20px;
}


/* 992px以上 */
@media screen and (min-width: 992px) {
    .navbar{
        font-size: 16px;
    }
}

/* 768px以下 */
@media screen and (max-width: 992px){
    .navbar .navbar-brand img{
        width: 80%;
    }

    .navbar .nav-item{
        line-height: 1.4;
        text-align: center;
        margin:0 0px 0 0;
        padding: 10px 0px;
        border-right: none;
    }

    .navbar .nav-item{
        /*position: relative;*/
    }
    .navbar .icon-new{
        position: relative;
        top: 0px;
        left: 0px;
        margin-right: 10px;
    }

    .nav-icon{
        /*width: 40%;*/
        /*float: left;*/
        display: inline-block;
        text-align: center;
    }

    .nav-icon .nav-link{
        /*width: 40%;*/
        display: inline-block;
    }

    .navbar-toggler{
        /*background-color: #fff!important;*/
        border: 1px solid #e5f7ff!important;
    }

    .navbar-toggler-icon{
        color:#00a2ea!important;
    }
}



/*************************/
/******     top      *****/
/*************************/
.top-mv{
    height: 840px;
}

.top-mv ul{position: relative;}
.top-mv ul li{position: absolute; display: inline;}

.top-mv .illust01{top: 36px; left: 186px;}
.top-mv .illust02{top: 27px; left: 0;}
.top-mv .illust03{top: 640px; right: 0px;}
.top-mv .illust04{top: 240px; left: 10px;}
.top-mv .illust05{top: 0px; right: 0;}
.top-mv .illust06{top: 403px; left: 35px;}
.top-mv .illust07{top: 360px; right: 0px;}
.top-mv .illust08{top: 620px; left: 15px;}
.top-mv .illust09{top: 470px; right: 0px;}

/* for sp */
.top-mv .sp-illust01{top: 100px; left: 30px; width: 85%;}
.top-mv .sp-illust02{top: 30px; left: 0px; width: 48%;}
.top-mv .sp-illust03{top: 375px; right: 0px; width: 35%;}
.top-mv .sp-illust04{top: 250px; left: 0px; width: 26%;}
.top-mv .sp-illust05{top: 370px; left: 0px; width: 47%;}
.top-mv .sp-illust06{top: 411px; left: 0px; width: 30%;}
.top-mv .sp-illust07{top: 30px; right: -10px; width: 30%;}
.top-mv .sp-illust08{top: 500px; left: 20px; width: 90%;}



.illust-fade li{
    opacity: 0;
}

.illust-fade li:nth-child(1) {
  -webkit-animation: illust-fedein-anime 1s ease 0.6s 1 forwards;
  animation: illust-fedein-anime 1s ease 0.6s 1 forwards;
}

.illust-fade li:nth-child(2) {
  -webkit-animation: illust-fedein-anime 1s ease 1.2s 1 forwards;
  animation: illust-fedein-anime 1s ease 1.2s 1 forwards;
}

.illust-fade li:nth-child(3) {
  -webkit-animation: illust-fedein-anime 1s ease 1.8s 1 forwards;
  animation: illust-fedein-anime 1s ease 1.8s 1 forwards;
}

.illust-fade li:nth-child(4) {
  -webkit-animation: illust-fedein-anime 1s ease 2.4s 1 forwards;
  animation: illust-fedein-anime 1s ease 2.4s 1 forwards;
}

.illust-fade li:nth-child(5) {
  -webkit-animation: illust-fedein-anime 1s ease 3s 1 forwards;
  animation: illust-fedein-anime 1s ease 3s 1 forwards;
}

.illust-fade li:nth-child(6) {
  -webkit-animation: illust-fedein-anime 1s ease 3.6s 1 forwards;
  animation: illust-fedein-anime 1s ease 3.6s 1 forwards;
}

.illust-fade li:nth-child(7) {
  -webkit-animation: illust-fedein-anime 1s ease 4.2s 1 forwards;
  animation: illust-fedein-anime 1s ease 4.2s 1 forwards;
}

.illust-fade li:nth-child(8) {
  -webkit-animation: illust-fedein-anime 1s ease 4.2s 1 forwards;
  animation: illust-fedein-anime 1s ease 4.2s 1 forwards;
}

.illust-fade li:nth-child(9) {
  -webkit-animation: illust-fedein-anime 1s ease 4.2s 1 forwards;
  animation: illust-fedein-anime 1s ease 4.2s 1 forwards;
}


@-webkit-keyframes illust-fedein-anime {
  100% {
    opacity: 1;
  }
}
@keyframes illust-fedein-anime {
  100% {
    opacity: 1;
  }
}


/* modal youtube */
.modal-dialog {
      max-width: 800px;
      margin: 30px auto;
  }

.modal-body {
  position:relative;
  padding:0px;
}
.close {
  position:absolute;
  right:-30px;
  top:0;
  z-index:999;
  font-size:2rem;
  font-weight: normal;
  color:#fff;
  opacity:1;
}


/* modal board */
.tb-board{
    padding: 20px;
    font-size: 12px;
}

.tb-board th{
    width: 50%;
}



.top-links{
    padding: 2rem 0;
    text-align: center;
}

.top-about{
    padding: 10rem 0 2.5rem 0;
    line-height: 1.8;
}

.top-about .top-about-exp{
    padding: 2rem;
    font-size: 14px;
    border-radius: 10px;        /* CSS3草案 */
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 10px;   /* Firefox用 */
}

.top-about-title{
    background: url(../img/top-about-title.png) top center no-repeat;
}

.top-news{
    background-color: #fff;
}
.top-news li{
    display: inline-table;
    padding: 10px;
}
.top-news li.title{
    background-color: #00508f;
    color: #fff;
    width: 14%;
    text-align: center;
}
.top-news li.info{
    width: 69%;
}
.top-news li.all{
    text-align: right;
    width: 14%;
}


/* 1199px以下で適用 */
@media screen and (max-width: 1199px) {
    .top-mv{
    /*height: 520px;*/
    }

    .top-mv .illust01{top: 36px; left: 170px; width: 65%;}
    .top-mv .illust02{top: 27px; left: 17px;}
    .top-mv .illust03{top: 580px; right: 0px;}
    .top-mv .illust04{top: 195px; left: 10px;}
    .top-mv .illust05{top: 0px; left: 675px;}
    .top-mv .illust06{top: 350px; left: 0px;}
    .top-mv .illust07{top: 320px; right: 0px;}
    .top-mv .illust08{top: 560px; left: 15px;}
    .top-mv .illust09{top: 410px; right: 10px;}

}


/* 992px以下で適用 */
@media screen and (max-width: 992px){

    .top-mv .illust01{top: 65px; left: 125px; width: 65%;}
    .top-mv .illust02{top: 27px; left: 0px; width: 37%;}
    .top-mv .illust03{top: 580px; right: 0px; width: 28%;}
    .top-mv .illust04{top: 200px; left: 0px; width: 24%;}
    .top-mv .illust05{top: 0px; left: 500px; width: 25%;}
    .top-mv .illust06{top: 390px; left: 0px; width: 30%;}
    .top-mv .illust07{top: 240px; right: 0px; width: 22%}
    .top-mv .illust08{top: 560px; left: 0px;}
    .top-mv .illust09{top: 410px; right: 10px; width: 20%;}

    /* top */
    .top-news li.title{
        height: 70px;
    }

    .top-links{
    padding: 2rem 0;
    }

    .top-links div{
        margin-bottom: 1rem;
    }

    .top-about{
        /*padding: 6rem 0 2.5rem 0;*/
    }

    .top-about-title{
        background: url(../img/top-about-title.png) top center no-repeat;
        background-size:200% auto;
    }
}


/* 769px以下で適用 */
@media screen and (max-width: 769px){
    .top-news li{
        display: block;
        padding: 10px;
        font-size: 14px;
    }
    .top-news li.title{
        width: 100%;
        height: auto;
    }
    .top-news li.info{
        width: 100%;
    }
    .top-news li.all{
        width: 100%;
    }

}


/* 576px以下で適用 */
@media screen and (max-width: 576px){
    .top-mv{
        height: 520px;
    }

    .top-about{
        padding: 6rem 0 2.5rem 0;
    }
}


/*************************/
/******     next     *****/
/*************************/
.next-title{
    height: 200px;
    margin-bottom: 2.5rem;
}

.next-anchor{
    margin-bottom: 2.5rem;
}

.next-anchor a{
    display: block;
    width: 100%;
    font-size: 1.4rem;
    background-color: #fff;
    border: 3px solid #00508f;
    color: #00508f;
    border-radius: 10px;        /* CSS3草案 */
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 10px;   /* Firefox用 */
    padding: 1.6rem 0;
    text-align: center;
    text-decoration: none;
}

.next-anchor .active a{
    background-color: #00508f;
    color: #fff;
}

.next-anchor a:hover{
    background-color: #00508f;
    color: #fff;
}

.next-cont{
    border: 6px solid #ffe774;
    background-color: #fff;
    padding: 3.5rem 0 6rem 0;
    margin-bottom: 3.5rem;
}

/* 992px以下 */
@media screen and (max-width: 992px){

    .next-anchor a{
        padding: 1rem 0;
        margin: 0 0 1rem 0;
    }

    .next-title{
        height: 150px;
    }

    .next-title .title{
        width: 75%;
    }

    .next-cont{
        padding: 1.5rem 1rem;
    }

}


/*************************/
/******   application   *****/
/*************************/
.app-sec{
    margin-bottom: 3em;
}

.app-subtitle{
    font-size: 1.1rem;
    text-align: center;
    vertical-align: middle!important;
}

.app-sec01{height:120px; padding-top: 45px;}
.app-sec02{height:200px; padding-top: 65px;}
.app-sec03{height:280px; padding-top: 125px;}
.app-sec04{height:80px; padding-top: 30px;}
.app-sec05{height:100px; padding-top: 35px;}
.app-sec06{height:200px; padding-top: 85px;}


.app-step4-list{
    font-size: 24px;
    padding: 20px 40px;
}

.app-step4-list li{
    margin-bottom: 20px;
    background: url(../img/icon-check.png) top left no-repeat;
    padding-left: 55px;
}

.app-step4-list li span{
    display: block;
    font-size: 14px;
}

.app-step5-illst{
    position: absolute;
    top: -20px;
    right: -30px;
}

.app-step5-list{
    padding: 40px 0 40px 40px;
}

.app-step5-list .title{
    color: #fff;
    background-color: #00508f;
    font-size: 20px;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */
    padding: 5px 20px;
}

.app-step6-illst{
    position: absolute;
    top: 340px;
    right: 100px;
    z-index: 100;
}

/* 769px以下で適用 */
@media screen and (max-width: 769px){
    .app-step5-illst{
        position: relative;
        top: 0;
        right: 0;
    }

.app-sec01{height:120px; padding-top: 30px;}
.app-sec02{height:200px; padding-top: 55px;}
.app-sec03{height:280px; padding-top: 125px;}
.app-sec04{height:80px; padding-top: 15px;}
.app-sec05{height:100px; padding-top: 35px;}
.app-sec06{height:280px; padding-top: 100px;}

}

/* 720px以下で適用 */
@media screen and (max-width: 720px){
    .app-sec01{height:auto;}
    .app-sec02{height:auto;}
    .app-sec03{height:auto;}
    .app-sec04{height:auto;}
    .app-sec05{height:auto;}
    .app-sec06{height:auto;}

    .app-subtitle{
        padding: 1rem 0;
    }

    .app-step4-list{
        padding:5px;
    }

    .app-step5-list{
        padding: 20px 10px;
    }
}



/*************************/
/******   about   *****/
/*************************/
.about-block .day{
    background-color: #f2ea27;
    color: #e83839;
    font-size: 24px;
    font-weight: bold;
    display: inline-block;
    padding: 3px 20px;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */

}

.about-block .day span{
    font-size: 16px;
}

.about-block h3{
    font-size: 22px;
    line-height: 1.8;
}

.carousel-indicators{
    bottom: -35px!important;
}

.carousel-indicators li{
    background-color: gray;
    height:5px;
}

.carousel-indicators .active{
    background-color:#ff7086!important;
}


.about-special-list{
width: 100%;
}


.about-special-list dt{
display: block;
width: 60%;
clear: left;
float: left;
border-bottom: 1px dotted #5ed4b7;
padding: 0 0 5px 0;
font-weight: normal;
}

.about-special-list dd{
display: block;
width: 40%;
float: left;
border-bottom: 1px dotted #5ed4b7;
padding: 0 0 5px 0;
}

.about-special-jk span{
    padding-top: 10px;
}

.about-special-txt{
    font-size: 24px;
    font-weight: bold;
}

.marker{
  background: linear-gradient(transparent 80%, #fdd000 0%);
  display: inline;
  /*横に余白をつけたり、下にずらしたりするときは以下のpaddingを調整してください*/
  padding: 0 2px 2px;
}

/* 768px以下 */
@media screen and (max-width: 992px){

    .about-special-list dt{
    display: block;
    width: 100%;
    clear: left;
    float: none;
    border-bottom: none;
    padding-left: 0.5rem;
    }

    .about-special-list dd{
    display: block;
    width: 100%;
    float: none;
    border-bottom: 1px dotted #5ed4b7;
    padding: 0 0 5px 0;
    padding-left: 0.5rem;
    }

}



/*************************/
/******     movie    *****/
/*************************/
.movie-read{
    margin: 1rem 0 2.5rem 0;
    position: relative;
}

.movie-read .movie-list-dl{
    position: absolute;
    right: -20px;
    top: -30px;
}

.movie-award{
    background-color: #fff0f3;
    border-radius: 15px;        /* CSS3草案 */
    -webkit-border-radius: 15px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 15px;   /* Firefox用 */
    padding: 30px 30px 0 30px ;
}




.movie-read h2{
    font-size: 22px!important;
    text-align: center;
    line-height: 1.8;
}

.movie-read .movie-badge{position: absolute;left: -20px;}
.movie-read .movie-badge img{ width: 90%; }

.movie-list{
    margin: 0 0 3.5rem 0;
}

.movie-list .title{
    font-size: 18px;
    text-align: center;
}

.movie-dot{
    text-align: center;
    margin-bottom: 1rem;
}


.movie-list .date{
    font-size: 13px;
    padding: 3px 0;
    text-align: center;
    border:1px solid #ff7086;
    background-color: #fff;
    color: #ff7086;
    border-radius: 15px;        /* CSS3草案 */
    -webkit-border-radius: 15px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 15px;   /* Firefox用 */
}

.movie-list .company{
    font-size: 13px;
}

.movie-list .info{
    font-size: 13px;
    line-height: 1.8;
}

.movie-copy{
    font-size: 9px;
}

/* 1140px以下 */
@media screen and (max-width: 1140px){

    .movie-read h2{
        font-size: 20px!important;
    }

    .movie-read .movie-list-dl{
        right: -40px;
    }
    .movie-list-dl img{
        width: 90%;
    }

    .movie-read .movie-badge{left: -40px;}
    .movie-read .movie-badge img{ width: 80%; }


}

/* 992px以下 */
@media screen and (max-width: 992px){
    .movie-award{
        padding-bottom: 20px;
    }

    .movie-read h2{
        font-size: 20px!important;
    }

    .movie-list-dl{
        display: none;
    }

    .movie-read .movie-badge{position: static; text-align: center; margin-bottom: 1rem;}
    .movie-read .movie-badge img{ width: 80%; }
}


/*************************/
/******     screen    *****/
/*************************/
.screen-read{
    margin: 1rem 0 2rem 0;
    position: relative;
}

.screen-read h2{
    font-size: 22px!important;
    text-align: center;
    line-height: 1.8;
}

.screen-list{
    margin-bottom: 0rem;
}

.screen-list h3{
    font-size: 30px;
    font-weight: bold!important;
    padding: 0.5rem 0;
    margin: 0 0 1.5rem 0;
    text-align: center;
    width: 100%;
    color: #fff;
    background-color: #00a192;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;

}


.screen-list .screen{
    margin: 0 0 1.5rem 0;
}

.screen-list .release{
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.2;
}
.screen-list .release span{
    font-size: 10px;
    margin-top: 10px;
    display: block;
}

.screen-list h4{
    font-size: 21px;
    margin-bottom: 1rem;
}

.screen-list .exp{
    font-size: 15px;
    line-height: 1.6;
}

.screen-list .access{
    padding: 4px 10px;
    font-size: 12px;
    background-color: #00508f;
    color: #f2ea27;
    text-decoration: none;
    margin-left: 5px;
}

.screen-list .access:hover{
    background-color: #00a2ea;
    color: #f2ea27;
}

/* 1140px以下 */
@media screen and (max-width: 1140px){

    .screen-read h2{
        font-size: 20px!important;
    }


}

/* 992px以下 */
@media screen and (max-width: 992px){

    .screen-read h2{
        font-size: 20px!important;
    }

    .screen-list h3{
        font-size: 22px;
    }

    .screen-list h3 span{
        top: -15px;
    }

    .screen-list h3 span img{
        width: 80%;
    }

}



/*************************/
/******    award    *****/
/*************************/
.award-list div{
    margin: 0 0 2rem 0;
}

.btn-award{
    display: block;
    font-size: 24px;
    height: 80px;
    line-height: 80px;
    background-color: #fff;
    border: 3px solid #00508f;
    width: 100%;
    color: #00508f!important;
    text-align: center;
    border-radius: 40px;        /* CSS3草案 */
    -webkit-border-radius: 40px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 40px;   /* Firefox用 */
}

.btn-award:hover{
    color: #fff!important;
    background-color: #00508f;
    text-decoration: none;
}

.award-aboutinfo{
    background-color: #feead8;
    padding: 20px 40px 10px 40px;
    font-size: 14px;
    margin: 0 20px;
}

/* 992px以下 */
@media screen and (max-width: 992px){

    .award-list div{
        margin: 0 0 1rem 0;
    }

    .btn-award{
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */
    }

}


/*************************/
/******     area    *****/
/*************************/
.award-area{
    margin: 1rem 0 2.5rem 0;
    position: relative;
}

.award-area .area-list-dl{
    position: absolute;
    right: -20px;
    top: -5px;
}

.award-area h2{
    font-size: 22px!important;
    text-align: center;
    line-height: 1.8;
}

.award-area .area-badge{position: absolute;left: 0px;}
.award-area .area-badge img{ width: 100%; }

#sec01,#sec02,#sec03,#sec04,#sec05,#sec06{
margin-top:-120px;
padding-top:120px;
}

.area-anchor{
    text-align: center;
    background-color: #e5f6fd;
    padding: 10px 0;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    }
.area-anchor li{
    display: inline;
}
.area-anchor li::after {
  content: "／";
  padding: 0 10px;
}
.area-anchor li.end::after {
  content: "";
}

.area-anchor .sp-anchor{
    display: none;
}

.area-row, .area-row2{
    padding: 10px 0 0px 0;
}

.area-badge li{
    display: inline;
    margin: 0 5px;
}

.area-info{
    padding: 12px 0 0 0;
}

.n-row{
    padding: 3px 0 0 0;
}

.area-info li{
    float: left;
}
.area-info .title{
    font-size: 20px;
    padding: 6px 0 0 0;
    color: #00508f;
}

.area-info .shool{
    margin-right: 30px;
    clear: both;
}
.area-info .mita{
}

.area-info-btn{
    display: block;
    background-color: #ff7086;
    width: 200px;
    height: 30px;
    font-size: 14px;
    color: #fff!important;
    line-height: 30px;
    text-align: center;
    border-radius: 15px;        /* CSS3草案 */
    -webkit-border-radius: 15px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 15px;   /* Firefox用 */
}

.area-info-btn-bg-green{
background-color: #829c00;
}

.area-info-btn i{
    margin-right: 10px;
    font-size: 14px;
}

/*modal*/
.remodal h2{
    font-size: 22px;
    margin-bottom: 20px;
}
.remodal h3{
    font-size: 14px;
    margin-bottom: 20px;
    line-height: 1.4;
}
.remodal .writing-cont p{
    font-size: 14px;
    text-align: left;
}

.remodal .ribbon1 {
    display: inline-block;
    position: relative;
    height: 50px;/*リボンの高さ*/
    /*line-height: 50px;*//*リボンの高さ*/
    vertical-align: middle;
    text-align: center;
    padding: 0 80px;/*横の大きさ*/
    /*font-size: 18px;*//*文字の大きさ*/
    background: #f45f53;/*塗りつぶし色*/
    color: #FFF;/*文字色*/
    box-sizing: border-box;
}

.remodal .ribbon1 span{
    font-size: 14px;
}

.remodal .ribbon1:before, .remodal .ribbon1:after{
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}

.remodal .ribbon1:before{
    top: 0;
    left: 0;
    border-width: 25px 0px 25px 15px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}

.remodal .ribbon1:after{
    top: 0;
    right: 0;
    border-width: 25px 15px 25px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}


/* 1140px以下 */
@media screen and (max-width: 1140px){

    .award-area h2{
        font-size: 20px!important;
    }

    .award-area .area-list-dl{
        right: -40px;
    }
    .area-list-dl img{
        width: 90%;
    }

    .award-area .area-badge{left: -40px;}
    .award-area .area-badge img{ width: 80%; }

}

/* 992px以下 */
@media screen and (max-width: 992px){

    .award-area h2{
        font-size: 20px!important;
    }

    .award-area .area-badge{
        position: static;
        text-align: center;
        margin-bottom: 1rem;
    }

    .area-row2{
        padding-top: 0px;
    }
    .area-badge{
        margin-bottom: 0px!important;
        margin-top: 10px;
    }

    .area-info li{
        float: none;
        text-align: center;
    }
    .area-info .title{
    }

    .area-info .shool{
        margin-right: 0px;
    }
    .area-info .mita{
    }

    .area-info .btn{
        display: block;
    }

    .area-info-btn{
        margin: 0 auto;
    }

}



/*************************/
/******     all       *****/
/*************************/
.all-ribbon{
    background: url(../img/all-block-riboon.png) top center no-repeat #fff;
    background-size: 100% auto;
}

.award-area .all-badge{position: absolute;left: 0px;}
.award-area .all-badge img{ width: 100%; }

.award-area .all-btn{
    position: absolute;
    right: 0px;
    top: 20px;
}

.all-dantai{
    color: #00508f;
}

.all-cat03-gp{
    font-size: 24px;
}

.all-cat03-fp{
    font-size: 16px;
    margin-bottom: 40px;
}

.all-cat03-fp li{
    margin-bottom: 10px;
}

.all-gp-info .cat{
    margin-bottom: 5px;
}

.all-gp-info .title{
    color: #00508f;
    font-size: 20px;
    margin-bottom: 10px;
}

.all-gp-info .read{
    margin-bottom: 10px;
}

.all-gp-info .report{
    margin-bottom: 15px;
    margin-left: 30px;
    width: 365px;
    position: relative;
}

.all-gp-info .report a .f_active{
    position: absolute;
    left: 0;
    top: 0;
    display: none;
}

.all-gp-info .report a:hover .f_active{
    display: block;
}

.all-gp-info .school{
    margin-bottom: 15px;
}


/* 1140px以下 */
/*@media screen and (max-width: 1140px){

    .all-gp-info .report{
        margin-left: 0px;
    }

}*/


/* 992px以下 */
@media screen and (max-width: 992px){

    .all-gp-info .report{
        margin-left: -10px;
        width: 100%;
    }

}





/*************************/
/******    school    *****/
/*************************/
.school-list{
    margin-bottom: 3rem;
}

.school-list h3{
    font-size: 20px;
    font-weight: normal!important;
    padding: 0.6rem 0;
    margin: 0 0 1.5rem 0;
    text-align: center;
    width: 100%;
    color: #fff;
    background-color: #00a192;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */
}

.school-list .illust{
    margin: 0 0 1.5rem 0;
}

/* 768px以下 */
@media screen and (max-width: 992px){

    .school-list h3{
        font-size: 16px;
    }
}


/*************************/
/******   interview  *****/
/*************************/
.interview-block{
    margin: 0 0 2.5rem 0;
}

.interview-block h3{
    margin: 0 0 1.5rem 0;
}

.interview-block p{
    font-size: 14px;
    line-height: 1.8;
}


/*************************/
/******     howto    *****/
/*************************/
.howto-read h3{
    text-align: center;
    font-size: 18px;
    line-height: 1.8;
}

.howto-point{
    color: #333333;
    font-size: 18px;
    padding: 2rem 2rem 1rem 6rem;
    background-color: #e5f5f4;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */
    position: relative;
}

.howto-point li{
    margin: 0 0 0.8rem 0;
}

.howto-point i{padding-right: 10px;}

.howto-write{
    font-size: 14px;
    padding: 2rem 2rem 1rem 6rem;
    background-color: #e5f5f4;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */
}

.howto-write ol li{
    margin: 0 0 0.5rem 0;
}

.howto-write ol ul{
    margin: 0.5rem 0 1rem 0;
}
.howto-write ol li span{
    display: block;
    margin: 1rem 0 0 0;
}

.howto-point .illust01{
    position: absolute;
    top:-30px;
    right: 20px;
    width: 200px;
}

.howto-point .illust01 img{ width: 100%; }

.howto-write .illust02{
    position: absolute;
    top:125px;
    right: 40px;
    width: 255px;
}

.howto-write .illust02 img{ width: 100%; }

.howto-point .illust03{
    position: absolute;
    top:-10px;
    right: 0px;
    z-index: 100;
    width: 275px;
}

.howto-point .illust03 img{ width: 100%; }

.howto-block{
    margin-bottom: 3rem;
}


/* 768px以下 */
@media screen and (max-width: 992px){

    .howto-write, .howto-point{
        font-size: 14px;
        padding: 1rem 0.8rem 0.5rem 0.8rem;
        margin: 0rem 1rem 2rem 1rem;
    }

    .howto-write ol{
        padding-left: 1.5rem;
    }

    .howto-point .illust01, .howto-write .illust02, .howto-point .illust03{
        display: none;
    }

    .howto-block{
        margin-bottom: 1rem;
    }

}


/*************************/
/******     books    *****/
/*************************/
.book-exp{
    font-size: 14px;
    line-height: 1.8;
}

.book-exp .cat{
    background-color: #00508f;
    color: #fff;
    padding: 3px 5px;
    margin: 0 0 0.5rem 0;
    display: block;
    width: 80px;
    text-align: center;
    font-size: 14px;
}



.books-comment{
    position: relative;
}

.books-comment .balloon {
    top: -20px;
    left: 140px;
    position: absolute;
    z-index: 100;
    display: inline-block;
   /* margin: 1.5em 0;*/
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    color: #fff;
    background: #00a192;
}

.books-comment .balloon:before{
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #00a192;
}

.books-comment .balloon p {
    margin: 0;
    padding: 0;
}

.books-comment .books-point{
    background-color: #e5f5f4;
    position: relative;
    padding: 3rem 0 1.5rem 3rem;
    line-height: 1.8;
}

.books-comment .illust{
    position: absolute;
    top: -30px;
    right: 130px;
    z-index: 100;
    width: 180px;
}

.books-comment .illust img{
    width: 100%;
}


/* 1200px以下 */
@media screen and (max-width: 1200px){

    .books-comment .illust{
        display: none;
    }

}


@media screen and (max-width: 992px){

    .books-comment .balloon {
        left: 80px;
    }

    .books-comment .books-point{
        background-color: #fff8f9;
        position: relative;
        padding: 3rem 1rem 1.5rem 1rem;
        line-height: 1.8;
    }

}

@media screen and (max-width: 992px){

    .books-comment .balloon {
        left: 20px;
    }
}



/*************************/
/******     download    *****/
/*************************/
.download-text{
    height: 60px;
}
.download-list{
    font-size: 14px;
}

.download-list h3{
    font-size: 20px;
    font-weight: normal!important;
    padding: 0.5rem 0;
    margin: 0 0 1.5rem 0;
    text-align: center;
    width: 100%;
    color: #fff;
    background-color: #00a192;
    border-radius: 20px;        /* CSS3草案 */
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 20px;   /* Firefox用 */
}

.download-list .download-thumb{
    position: relative;
}

.download-genkou{
    margin-bottom: 2rem;
}

.download-genkou li{
    margin-bottom: 0.5rem;
}

/*.download-list .download-thumb a i{
    display: none;
    position: absolute;
    font-size: 60px;
}


.download-list .download-thumb a:hover i{
    display: block;
}
*/

/*************************/
/******    foofer    *****/
/*************************/
footer{
    font-size: 14px;
}

footer .foot-copy{
    padding: 40px 0;
    font-size: 12px;
}

footer .foot-link li{
    margin-bottom: 0.3rem;
}

footer .foot-link a{
    color: #fff;
}

footer .foot-cont{
    color: #fff;
}

footer .title{
    font-size:20px;
    float: left;
    border-right: 1px solid #fff;
    padding: 8px 8px 8px 0;
    margin-right: 8px;
}


/* 768px以下 */
@media screen and (max-width: 992px){
    footer .title{
        font-size:20px;
        float: none;
        border-right: none;
        border-bottom: 1px solid #fff;
        padding: 0px 0px 8px 0;
        margin-bottom: 8px;
    }

    footer .banner div{
        text-align: center;
        margin-bottom: 1rem;
    }

}