@charset "Shift_JIS";

html {
  font-size: 16px;
  color: #333; }

a {
  color: #666; }
  a[href^="tel:"] {
    pointer-events: none; }

p {
  text-align: justify;
  text-justify: inter-ideograph;
  -ms-text-justify: inter-ideograph;
/*  margin-bottom: 1em; */}

img {
  max-width: 100%; }

.bg-beige {
  background: #f3f3f2; }

.mark{
    margin: 0 2px;
    background: #fff100;
}

.tal{ text-align: left !important;}
.tac{ text-align: center !important;}
.tar{ text-align: right !important;}

#page {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
  text-align: center;
  overflow: hidden; }

#header {
  height: 0px; }

#breadcrumbs {
    float: left;
    margin: 20px 0;
    font-size: 12px;
}
@media screen and (max-width: 599px) {
    #breadcrumbs{ display: none;}
}

section {
  position: relative;
  width: 100%;
  padding: 0;
  margin: 0; }
section article,
section .inner {
    width: 100%;
    max-width: 1000px;
    padding: 65px 20px;
    margin: 0 auto;
}

  section h2 {
    font-size: 35px;
    letter-spacing: .15em;
    line-height: 1.7;
    font-weight: normal;
  }
    section h2::after {
      content: "";
      display: block;
      border-bottom: 3px solid #ea5520;
      width: 100px;
      margin: 20px auto 30px; }
  section h3 {
    font-size: 27px;
    font-size: 2.7rem;
    letter-spacing: .15em;
    font-weight: normal;
    line-height: 1.7; }
  section h4 {
    font-size: 20px;
    font-size: 2.0rem;
    letter-spacing: .15em;
    font-weight: normal;
    line-height: 1.7; }
section p {
    font-size: 14px;
/*    font-size: 1.4rem;*/
    line-height: 1.7;
    letter-spacing: .05em;
}
p.lead {
    text-align: center;
    font-size: 18px;
    line-height: 1.8;}

.linkint{
    font-size: 16px;
    background:#fdede8;
    padding: 20px;
    text-align: center;
    margin: 30px auto;}

.btn a,
.btn input{
    display: block;
    color: #fff;
    font-size: 22px;
    width: 100%;
    max-width: 400px;
    padding: 10px 0;
    margin: 0 auto;
    position: relative;
    border-radius: 2.8px;
    box-shadow: 0 1.5px 0 #88001c;
    letter-spacing: .175em;
}
.btn a.orange { background: #ea5520; }
.btn a.red { background: #e60012; }
.btn a.close {
    background: #e0e0e0;
    box-shadow: 0 1.5px 0 #b7b7b7;
    pointer-events: none;
}

.btn a.arrow01::after{
    content: '';
    padding: 12px;
    background: url(/images/common/arrow02.svg) left center/contain no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
}

.btn input{ border: none;}
.btn input:hover{
    opacity: 0.7;
    cursor: pointer;
}
.btn input.orange{ background: #eb7846 url(../images/common/btn_icon_arrow01.png) 95% center no-repeat;}
.btn input.l_orange{ background: #eba145 url(../images/common/btn_icon_arrow01.png) 95% center no-repeat;}
.btn input.red{ background: #e60012 url(/images/common/arrow02.svg) 95% center/25px no-repeat;}

.btn a.bd_orange {
    box-shadow: 0 0 0;
    color: #ea5520;
    font-size: 1.2rem;
    border: 1px solid #ea5520;
    height: auto;
    border-radius: 2em;
    padding: 0;
}


a.btn_link{
    display: inline-block;
    border: 1px solid #595757;
    border-radius: 4px;
    color: #595757;
    padding: 10px 25px;
    margin-top: 15px;
    margin-bottom: 30px;
    font-size: 27px;
    letter-spacing: .15em;
}
a.btn_link::after{
    content: "";
    padding: 12px;
    background: url(/images/common/arrow03.svg)left center/contain no-repeat;
    margin-left: 10px;
    display: inline-block;
    transform: rotate(-90deg);
}

.btn_closing{
    background: #e0e0e0;
    color: #fff;
    max-width: 540px;
    display: block;
    margin: 60px auto 0;
    font-weight: normal;
    border-radius: 2.8px;
    box-shadow: 0 1.5px 0 #b7b7b7;
    text-align: center;
    font-size: 1em;
    height: auto;
    padding: 5px;
    margin-top: 0;
    width: 100%;
    line-height: 2;
}

.box_border{
    background: #fff;
    border-right: 1.5px solid #ea5520;
    border-bottom: 1.5px solid #ea5520;
    padding: 25px 30px;
}

.table01{
    width: 100%;
    table-layout: fixed;
    border-top: 1.5px solid #ea5520;
    border-left: 1.5px solid #ea5520;
    margin-top: 50px;
    background-color: white;
}
.table01 th,
.table01 td{
    font-size: 18px;
    padding: 10px 15px;
    border-right: 1.5px solid #ea5520;
    border-bottom: 1.5px solid #ea5520;
    text-align: left;
}
.table01 th{
    width: 14.5%;
    vertical-align: top;
    font-weight: normal;
    color: #ea5520;
    background: #fdede8;
}

.closing{
    background: #fff;
    padding: 10px 20px;
    border: 2px solid #d7063a;
    border-radius: 5px;
    margin-bottom: 8em;
}
.closing h2 {
    color: #d7063a;
    text-align: left;
    font-size: 20px;
}
.closing h2::after{ content: none;}
.closing p {
    font-size: 18px;
    text-align: left;
    margin-bottom: 0;
    color: #000;
    letter-spacing: 0;
}


#bread {
  width: 100%;
  max-width: 1000px;
  padding: 10px 50px;
  margin: 0 auto;
  text-align: left;
  font-size: 11px;
}
  #bread a:after {
    content: "\f105";
    font-family: FontAwesome;
    margin: 0 .5em;
}


/* mv */
.mv{
    width: 100%;
    margin: 0;
    background: #eb501e;
    position: relative;
    padding: 30px 0;
}
.mv .inner{
    padding: 0;
    width: 95%;
    max-width: 1120px;
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mv .title{
    color: #fff;
    text-align: left;
    width: 50%;
}
.mv .title h1{
    font-size: 58px;
    line-height: 1.5;
    font-weight: normal;
}
.mv .title p{ font-size: 27px;}
.mv .photo {
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.mv .photo img {
    max-width: none;
    width: 100%;
    height: auto;
}

@media screen and (min-width: 1024px) {
    .mv {
        padding: 40px 0;
    }
}
@media screen and (max-width: 999px) {
    .mv .title h1 {
        font-size: 40px;
    }
    .mv .title p {
        font-size: 22px;
    }
}
@media screen and (max-width: 599px) {
    .mv {
        padding: 15px 0;
    }
    .mv .inner {
        flex-direction: column;
    }
    .mv .title{
        width: 100%;
    }
    .mv .title h1{
        font-size: 30px;
        line-height: 1.4;
    }
    .mv .title p{
        font-size: 14px;
        margin-top: 10px;
    }
    .mv .photo {
        width: 100%;
    }
    .mv .photo img {
        max-width: 460px;
    }
}
@media screen and (max-width: 320px) {

}

/* .catch */
.catch{ background: #fdede8;}
.catch .letter{
    margin-top: 70px;
    background: #fff;
    padding: 65px 80px;
}
.catch .letter p{
    font-size: 17px;
    line-height: 2.3;
}

/* .message */
.message h2 img{
    width: 90%;
    max-width:680px;
    margin-bottom: 75px;
}
.message h2::after{ content: none;}
.message .lead{
    font-size: 25px;
    color: #1c236d;
    margin-bottom: 85px;
}


/* #learning */
#learning ul.learn_list {
    margin-top: 30px;
}

#learning ul.learn_list li {
    float: left;
    width: 28%;
    margin-bottom: 50px;
    position: relative;
}

#learning ul.learn_list li:not(.break) {
    margin-right: 8%;
}

#learning ul.learn_list li h3 {
    position: absolute;
    top:120px;
    /* bottom: 80px; */
    width: 100%;
    /* font-size: 17px; */
    font-size: 1.4em;
    letter-spacing: .1em;
    line-height: 1.4;
    text-align: center;
    /*    font-weight: bold;*/
}

#learning ul.learn_list li p {
    position: absolute;
    bottom: 25px;
    width: 100%;
    /* font-size: 13px; */
    font-size: 1.2em;
    line-height: 1.5;
    padding: 0 10px;
    height: 3em;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

#learning ul.learn_list li img {
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}

.learn_list02{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 80px;
}
.learn_list02 > li{
    width: 28%;
    margin-bottom: 3em;
}
.learn_list02 h3{
    font-size: 1rem;
    color: #ea5520;
    margin-top: 1em;
}
.learn_list02 h3::after{
    content: "";
    display: block;
    width: 3em;
    height: 2px;
    background: #ea5520;
    margin: 1em auto 2em;
}


/* #osusume */
#osusume h3 {
    width: 508px;
    margin: 30px auto;
}
#osusume li {
    float: left;
    width: 145.6px;
    margin-bottom: 50px;
    position: relative;
}
#osusume li p {
    position: absolute;
    bottom: 0;
    width: 100%;
    line-height: 1.3;
    letter-spacing: 0.05em;
    color: #EA5520;
    text-align: center;
    margin-bottom: 5px;
}
#osusume li img {
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}
#osusume {
    margin-top: 80px;
}
#osusume ul {
    width: 700px;
    margin: auto;
}
#osusume li:not(:last-child) {
    margin-right: 39.2px;
}


/* #students */
#students article {
    padding-bottom: 0;
}
#students .video-message {
    margin-bottom: 70px;
}
#students .btn {
    padding: 50px;
}
#students .dashed-line {
    position: relative;
    padding-bottom: 30px;
}
#students .dashed-line::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 100%;
    border-bottom: 1px dashed #EA5520;
    z-index: 0;
}
#students .voice {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0;
}
#students .voice p {
    width: 49%;
    text-align: center;
    margin: 5px 0;
    background: #fff;
}
#students .message {
    border: 2px solid #ea5520;
    padding: 25px;
    font-size: 26px;
    color: #ea5520;
    line-height: 1.7;
    letter-spacing: .025em;
    width: 85%;
    margin: 0 auto;
    /*    font-weight: bold;*/
}
#students .stgtitle {
    font-size: 17px;
    text-align: left;
    line-height: 1.7;
    letter-spacing: .015em;
    margin-bottom: 20px;
    text-align: center;
}
#students .stgphoto {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
#students .stgphoto p{ max-width: 200px;}

.ambassador .box_profile{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5em;
}
.ambassador .box_profile .title{ width: 55%;}
.ambassador .box_profile h3{
    text-align: left;
    color: #ea5520;
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: .5em;
}
.ambassador .box_profile .photo{
    order: -1;
    width: 42%;
}
.ambassador .interview{
    text-align: left;
    font-size: .95rem;
}
.ambassador .interview dt{ font-weight: bold;}
.ambassador .interview dd{
    padding-left: 1em;
    padding-bottom: .8em;
}



/* #moshikomi */
#moshikomi .point{
    max-width: 530px;
    margin: 0 auto;
}
#moshikomi .point li{
    text-align: left;
    font-size: 22px;
}
#moshikomi .point li::before{
    content: "\025cf";
    margin-right: 10px;
}

table.form{
    width: 95%;
/*    table-layout: fixed;*/
    font-size: 15px;
    margin: 20px auto 0;
    background-color: white;
}
table.form th,
table.form td{ padding: 10px;}
table.form th{
    text-align: center;
    background: #eee;
    border-left: 2px solid #fff;
    white-space: nowrap;
}
table.form .checkbox{ width: 3em;}
table.form .place{
    width: 50%;
    text-align: left;
}
table.form td{
    border-bottom: 1px dashed #ccc;
    padding: 15px 20px;
}
table.form td.nvt{
    width: 70px;
    color: #eb7846;
    font-weight: bold;
}

table.form .btn a{
    font-size: 1em;
    height: auto;
    padding: 5px;
}

table.form .month{
    width: 5em;
    vertical-align: top;
}
table.form td .map{
    background: #ef805b;
    padding: 5px;
    color: #fff;
    border-radius: 3px;
}
table.form td .map::after{
    content: '';
    padding: 5px;
    background: url(/images/common/arrow02.svg) left center/contain no-repeat;
    margin-left: 5px;
}
/*table.form tr:nth-child(odd) td{background: #eee;}
table.form tr:nth-child(even) td{background: #fdede8;}*/
table.form input[type="radio"]{ position: relative;}
table.form input[type="radio"]::before{
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    border: 1px solid #aaa;
    background: #fff;
    margin-left: -2px;
    margin-top: -2px;
}
table.form input[type="radio"]:checked::before{
    border: 1px solid #f39d80;
    background: #fbf3f0;
}
table.form input[type="radio"]:checked::after{
    content: "";
    display: block;
    position: absolute;
    top: -6px;
    left: 1px;
    width: 8px;
    height: 16px;
    transform: rotate(40deg);
    border-bottom: 3px solid #ea551f;
    border-right: 3px solid #ea551f;
}


#teacher .lead{
    text-align: center;
    font-size: 20px;
    margin-bottom: 30px;
    letter-spacing: .15em;
}
#teacher ul{ margin-bottom: 60px;}
#teacher ul li {
  float: left;
  width: 152.5px; }
  #teacher ul li:not(:last-child) {
    margin-right: 30px; }
  #teacher ul li p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.7; }
    #teacher ul li p.name {
      font-size: 17px;
      font-size: 1.7rem;
      letter-spacing: .15em;
        margin-top: 10px;
}

.graphs {
    position: relative;
    margin-bottom: 50px;
}
.graphs li {
    float: left;
    width: 50%;
    text-align: left;
}
.graphs li .pie_wrap {
/*    width: 185px;
    height: 185px;
    margin: 0 auto;*/
    position: relative;
}
.graphs li .pie_wrap figure > img{
    display: block;
    width: 185px;
    height: 185px;
    margin: 0 auto;
}
.graphs li .pie_wrap figure figcaption{
    margin-top: -75px;
    font-size: 22px;
    text-align: center;
    vertical-align: middle;
    line-height: 1.4;
    font-weight: bold;
}
.graphs li .pie_wrap figure figcaption .num{
    margin-right: 3px;
    line-height: 2.5;
}
.graphs li .pie_wrap #chart-area1 figcaption .num img{ width: 108px; vertical-align: text-bottom;}
.graphs li .pie_wrap #chart-area2 figcaption .num img{ width: 73px; vertical-align: text-bottom;}
.graphs li .pie_wrap figure figcaption .mark{ color: #ea5520;}
/*      .graphs li .pie_wrap::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 150px;
        height: 150px;
        background: url(../images/kyouyousemi/graphs_mask.png);
        z-index: 10; }*/
.graphs li .pie_wrap canvas {
    position: absolute;
    z-index: 1;
}
.graphs li .pie_wrap .pers {
    position: absolute;
    top: 110px;
    left: 56px;
    z-index: 100;
}
.graphs li#graphs1 .pers { width: 269px; }
.graphs li#graphs2 .pers { width: 229px; }

#policy ul {
  margin-bottom: 20px; }
  #policy ul li {
    float: left;
    width: 320px;
    text-align: left; }
    #policy ul li:last-child {
      width: 380px;
      padding-top: 2em; }
      #policy ul li:last-child p {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.9; }
    #policy ul li img {
      max-width: 272px; }

.caravan .photo{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-top: 70px;
    margin-bottom: 65px;
}
.caravan .photo img{
    width: calc(100% / 3);
}

.web_course article {
  padding-bottom: 30px; }
.web_course h3 {
    font-size: 20px;
    font-size: 2.0rem;
/*    text-align: left;*/
    border: 1px solid #000;
    padding-bottom: 0;
    margin-bottom: 15px;
    line-height: 2.3;
}
.web_course dl {
    border-top: 1px solid #000;
    margin-bottom: 35px;
    margin-top: 20px;
}
.web_course dl dt {
    float: left;
    width: 150px;
    height: 50px;
    font-size: 15px;
    font-size: 1.5rem;
    background: #efefef;
    border-left: 1px solid #000;
    border-right: 1px dashed #000;
    border-bottom: 1px solid #000;
    padding: 14px 25px;
    text-align: left;
    font-weight: bold;
    letter-spacing: .1em;
}
  .web_course dl dd {
    float: left;
    width: 550px;
    height: 50px;
    font-size: 15px;
    font-size: 1.5rem;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 14px 25px;
    text-align: left;
}
.web_course dl dd.dd_heigt {
	height:190px;
}
.web_course dl dt.dt_heigt {
	height:190px;
}
.web_course dl dd.dd_heigt2 {
	height:80px;
	line-height: 1.8;
}
.web_course dl dt.dt_heigt2 {
	height:80px;
}

#k1808 .web_course dl dt.first,
#k1808 .web_course dl dd.first,
#n1808 .web_course dl dt.first,
#n1808 .web_course dl dd.first{ height: 190px;}

.web_course .title{
    text-align: center;
    font-size: 22px;
    margin-bottom: 2em;
}

.video {
  height: 350px;
  overflow: hidden; }
  .video video {
    width: 100%;
    height: 350px;
    object-fit: cover;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;'; }

.kyPlus{
    font-size: 1.3rem;
    text-align:left;
}
.kyPlus ul li{
    line-height: 150%;
    letter-spacing: 1px;
}
ol.kyPlus li{
    padding: 1px 0px 1px 0px;
    line-height: 130%;
    letter-spacing: 1px;
}
ol.kyPlus span{ font-weight: bold;}

#plus .kyPlus span,
#plus2 .kyPlus span{ color: #ED8469;}
#plus ol.kyPlus,
#plus2 ol.kyPlus{ color: #D15032;}
#kabu ul.kyPlus span,
#kabu2 ul.kyPlus span,
#kabu ol.kyPlus,
#kabu2 ol.kyPlus{ color: #2c4198;}
#fudo ul.kyPlus span,
#fudo2 ul.kyPlus span,
#fudo ol.kyPlus,
#fudo2 ol.kyPlus{ color: #0091d7;}


/* c-flex
--------------------------------------------------------- */

[class*="c-flex"] {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
}

.c-flex--nowrap {
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    -o-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.c-flex--col {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
}

.c-flex--reverse {
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    -o-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.c-flex--between {
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
}

.c-flex--around {
    -webkit-justify-content: space-around;
    -moz-justify-content: space-around;
    -ms-justify-content: space-around;
    -o-justify-content: space-around;
    justify-content: space-around;
}

.c-flex--alignCenter {
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
}

.c-flex--alignEnd {
    -webkit-align-items: flex-end;
    -moz-align-items: flex-end;
    -ms-align-items: flex-end;
    -o-align-items: flex-end;
    align-items: flex-end;
}

.c-flex--stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    -o-align-items: stretch;
    align-items: stretch;
}

.c-jus-center {
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
}

.c-jus-end {
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
    -o-justify-content: flex-end;
    justify-content: flex-end;
}

/*追加*/

h3.h3og {
    color:#ED6B3D  !important;
    width: 100% !important;
    position: relative;
}

h3.h3og.tin {
    width:calc( 10em + 100px ) !important;
    margin: auto;
}

h3.h3og::before,
h3.h3og::after {
    content: "";
    display: block;
    border-bottom: 3px solid #ea5520;
    width: 60px;
    position: absolute;
}

h3.h3og::before {
    position: absolute;
    top: 50%;
    left: 0;
}

h3.h3og::after {
    position: absolute;
    top: 50%;
    right: 0;
}

h3.h3og.line2::before,
h3.h3og.line2::after{
    top: 40%;
    width: 50px;
}

.lss {letter-spacing: -10px;}

.murinaku{
    align-items: flex-end;
    width: 85%;
    margin: 0 auto;
}
.murinaku p {
    font-size: 23px;
    font-weight: bold;
    line-height: 1.8;
}
.murinaku p .num{
    vertical-align: bottom;/*1em;*/
    padding-right: 5px;
}
.murinaku p .num img {
    width: 118px;
}
.murinaku > figure{ width: 45%;}

.minitsuku ul li {
    float: none !important;
    list-style: disc !important;
    font-size: 2.5rem;
    text-align: left;
    width: 12em !important;
    margin: auto !important;
    list-style-position: outside !important;
}

.pc_inline { display: inline-block; }
.sp_inline { display: none; }

/*　フォント指定　*/

.font_josefin { font-family: 'Josefin Slab', serif; }

.choutai { transform: scaleX(0.9);
}



/* エントリーボタン*/

.entryInner1808 .btn_web {
    display: flex;
    justify-content: space-between;
}
/*.entryInner1808 .btn_web .plus {
margin: 2% 2% 0% 2%;
}*/
.entryInner1808 .btn_web > div {
    width: 48%;
    text-align: center;
    font-size: 18px;
    line-height: 1.3;
    position: relative;
}
.entryInner1808 .btn_web .plus,
.entryInner1808 .btn_web .basic{ border: none;}
/*.entryInner1808 .btn_web > div a:before {
font-family: FontAwesome;
content: '\f138';
color: #fff;
display: block;
font-size: 22px;
position: absolute;
top: 30%;
left: 15px;
}*/
.entryInner1808 .btn_web > div a {
    color: #fff;
    display: block;
    padding: 20px;
    box-sizing: border-box;
    text-align: left;
    border-radius: 2.8px;
    font-size: 20px;
}
.entryInner1808 .btn_web .plus a {
    background: #ea5520 url(/images/common/arrow02.svg) 95% center/18px no-repeat;
    box-shadow: 0 1.5px 0 #88001c;
}
/*.entryInner1808 .btn_web .basic {
margin: 2% 2% 0% 2%;
}*/
.entryInner1808 .btn_web .basic a {
    background: #2c4198 url(/images/common/arrow02.svg) 95% center/18px no-repeat;
    box-shadow: 0 1.5px 0 #080059;
}

/* FV下ボタン*/

#k1808 .btn_fvtop {
    display: flex;
    width:700px;
    margin:20px auto 0;
}

#k1808 .btn_fvtop .plus {
    border:#f07e67 1px solid;
}

#k1808 .btn_fvtop .plus,
#k1808 .btn_fvtop .basic {
    margin: 2% 2% 0% 2%;
}

#k1808 .btn_fvtop > div {
    width: 50%;
    text-align: center;
    font-size: 18px;
    line-height: 1.3;
    position: relative;
}

#k1808 .btn_fvtop .plus, #k1808 .btn_fvtop .basic {
    border: none;
}


#k1808 .btn_fvtop > .plus a:after {
    font-family: FontAwesome;
    content: '\f138';
    color: #f07e67;
    display: block;
    font-size: 22px;
    position: absolute;
    top: 22%;
    left: 15px;
}
#k1808 .btn_fvtop > .basic a:after {
    font-family: FontAwesome;
    content: '\f138';
    color: #001859;
    display: block;
    font-size: 22px;
    position: absolute;
    top: 22%;
    left: 15px;
}

#k1808 .btn_fvtop > .plus a {
    display: block;
    padding: 10px 0 10px 30px;
    box-sizing: border-box;
    border-radius: 10px;
    border:#f07e67 1px solid;
}
#k1808 .btn_fvtop > .basic a {
    display: block;
    padding: 10px 0 10px 30px;
    box-sizing: border-box;
    border-radius: 10px;
    border:#02205f 1px solid;
}

#k1808 .btn_fvtop .plus a {
    background: #fef3ef;
    color: #f07e67;
}


#k1808 .btn_fvtop .basic, {
    margin: 2% 2% 0% 2%;
}

#k1808 .btn_fvtop .basic a {
    background: #ddeaf6;
    color: #02205f;
}

div.baloon{ z-index: 101 !important;}

.mapicon {
  line-height: 1;
  font-size: .7em;
  display: inline-block;
  padding: 3px 5px;
  background: #eee;
  color: #000 !important;
  border-radius: 3px;
  margin-left: 4px; }

.mapicon:before {
  font-family: FontAwesome;
  content: "\f041";
  margin-right: 2px;
  font-size: 1.3em !important;
  color: #c00 !important; }

.mapicon:hover {
  text-decoration: none;
  background: #dee; }



.logo_kyouyousemi img {
    max-width: 400px;
/*    width: 100%;
    height: auto;
    margin-left: 110px;*/
}




/* 1025px以上のディスプレイ */
@media screen and (min-width: 1025px) {
  .pc {
    display: block !important; }

  .tab {
    display: none; }

  .sp {
    display: none; }
}

/* タブレット */
@media screen and (min-width: 600px) and (max-width: 1024px) {
  .pc {
    display: none; }

  .tab {
    display: block !important; }

  .sp {
    display: none; }

    .course .couese_list li .more{ letter-spacing: 0;}
}


/* 1024px以下のモニター */
@media screen and (max-width: 1024px) {
    #head2{ z-index: 500 !important;height: auto !important;}

    main { margin-top: 90px; }

    #osusume h3 {
        width: 100%;
    }

    #osusume li {
        float: left;
        width: 22%;
    }

    #osusume li:not(:last-child) {
        margin-right: 4%;
    }

    #osusume ul {
        width: 100%;
        margin: auto;
    }

    #learning li {
        width: 26.8%;
    }

    #learning li:not(.break){
        margin-right: 9.8%;
    }

    #learning .learn_list02 > li{
        margin-right: 0;
    }

    #students .btn {
        padding: 50px 0;
    }

  #teacher ul li {
    width: 21.7%; }
    #teacher ul li:not(:last-child) {
      margin-right: 4.4%; }

  #policy ul li {
    width: 45%; }
    #policy ul li:last-child {
      width: 55%;
      padding-left: 2em; }

  #media ul li {
    width: 13%;
    max-height: 124px; }
    #media ul li:not(:nth-child(6n+6)) {
      margin-right: 4.4%; }
  #media .btn a {
    max-width: 100%; }

  .web_course dl {
    border-top: 1px solid #000;
    margin-bottom: 35px; }
    .web_course dl dt {
      width: 25%;
      padding: 14px 5px; }
    .web_course dl dd {
      width: 75%;
      padding: 14px 0; }
}

/* タブレット */
@media screen and (max-width: 799px) {
    #topbutton{ display: none;}

    .fancybox-content{ height: 35% !important;}
}

/* sp以外 */
@media screen and (min-width: 600px) {
    .illust{
        display: flex;
        align-items: flex-start;
    }
    .illust > img{ width: 45%;}

    #students .stgphoto{ justify-content: center;}
    #students .stgphoto p{ margin: 0 1em;}
}

/* スマホ */
@media screen and (max-width: 599px) {
  .pc {
    display: none; }

  .tab {
    display: none; }

  .sp {
    display: block !important; }

  html {
    font-size: 13px; }

  a[href^="tel:"] {
    pointer-events: visible; }

  section article {
    padding: 50px 5%; }
  section h2 {
    font-size: 21px;
    font-size: 2.1rem; }


	section h2{ font-size: 19px; }
    section h2::after {
      width: 50px;
      margin: 10px auto 15px;
    }
    section h3 {
        font-size: 21px;
        font-size: 2.1rem; }
    section h4 {
        font-size: 15px;
        font-size: 1.5rem; }
    section p.lead{
        font-size: 14px;
        line-height: 2;
    }

	.btn a,
    .btn input,
	.btn1ck p input{
        width: 100%;
        padding: 10px 0;
        height: 45px;
        font-size: 15px;
    }
    .btn input.red{ background: #e60012 url(/images/common/arrow02.svg) 95% center/12px no-repeat;}

    .btn a.arrow01::after{ padding: 6px;}
    .box_border{ padding: 20px 15px;}

    a.btn_link{ font-size: 18px;}
    a.btn_link::after{ padding: 8px;}

    .table01 th{ width: 25%;}
    .table01 th,
    .table01 td {
        font-size: 12px;
        padding: 10px;
    }

    #bread {
/*        display: none;*/
        padding-left: 10px;
    }

    #osusume li {
        width: 44%;
        margin-bottom: 30px;
    }

    #osusume li:nth-child(2n+1) {
        margin-right: 8%;
    }

    #learning ul.learn_list {
        margin-top: 30px;
    }

    #learning ul.learn_list li {
        width: 45%;
        height: 190px;
        margin-bottom: 30px;
        background: #fff;
        position: relative;
        padding-top: 80px;
        padding-bottom: 10px;
    }

    #learning ul.learn_list li:not(.break) {
        margin-right: inherit;
    }

    #learning ul.learn_list li:nth-child(2n+1) {
        margin-right: 10%;
    }

    #learning ul.learn_list li h3 {
        position: static;
        font-size: 14px;
        padding-bottom: 1.5em;
    }

    #learning ul.learn_list li p {
        position:absolute;
        bottom: 20px;
        font-size: 11px;
        padding: 0;
    }

    #learning ul.learn_list li img {
        object-fit: inherit;
        position: absolute;
        top: 15px;
        left: 0;
        right: 0;
        margin: auto;
        height: 55px;
    }

    .learn_list02{ margin-top: 30px;}
    #learning .learn_list02 > li{
        width: 45%;
        margin-bottom: 5em;
        font-size: 10px;
    }
    .learn_list02 h3 { font-size: 1.5em;}
    .learn_list02 h3::after{ margin-bottom: 1em;}


    .catch .letter{
        margin-top: 40px;
        padding: 25px;
    }
    .catch .letter p{ font-size: 14px;}

    .message h2 img{ margin-bottom: 40px;}
    .message .lead {
        font-size: 17px;
        margin-bottom: 40px;
    }

    .murinaku{
        width: 75%;
        margin: 0 auto;
    }
    .murinaku p{
        font-size: 14px;
        margin-top: 20px;
    }
    .murinaku p .num img{ width: 75px;}
    .murinaku > figure { width: 100%;}

/*    .caravan .photo img{ width: 100%;}
    .caravan .photo img + img{ margin-top: 1.5em;}*/
    .caravan .photo {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    #students .stgtitle{
        font-size: 1.2em;
        text-align: left;
    }
    #students .btn {
        padding: 25px 0;
    }
    #students .voice{ margin-bottom: 0;}
    #students .voice p {
        float: none;
        width: 100%;
    }
    #students .message {
        padding: 15px;
        font-size: 15px;
        width: 100%;
    }
    #students .video-message {
        margin-bottom: 30px;
    }
    #students .box_border {
        padding: 25px;
    }
    #students .box_border h3 {
        font-size: 15px;
        margin-bottom: 25px;
    }

    .ambassador .box_profile{ justify-content: center;}
    .ambassador .box_profile .title{
        width: 100%;
        padding-bottom: 1em;
        font-size: 11px;
    }
    .ambassador .box_profile .photo{
        order: 0;
        width: 85%;
    }


    #teacher .lead {
        text-align: left;
        font-size: 13px;
        margin-bottom: 25px;
        letter-spacing: 0;
    }
    #teacher ul{ margin-bottom: 0;}
    #teacher ul li{
        position: relative;
        width: 46%;
        margin-bottom: 20px;
    }
    #teacher ul li:not(:last-child) {
      margin-right: inherit; }
    #teacher ul li:nth-child(2n+1) {
      margin-right: 8%; }
    #teacher ul li figure {
      width: 50%; }
    #teacher ul li p {
        font-size: 10px;
        margin-top: 1em;
        line-height: 1.3;
    }
      #teacher ul li p.name {
        position: absolute;
        top: 20px;
        left: 55%;
        font-size: 12px;
        font-size: 1.2rem;
        width: 50%; }

  .graphs {
    position: relative;
    margin-bottom: 20px;
/*	z-index: 999;*/}
    .graphs li{
        text-align: center;
        float: none;
        width: 100%;
    }
    .graphs li:first-child{ margin-bottom: 30px;}
      .graphs li .pie_wrap {
        zoom: 70%;
        margin: 0 auto; }
        .graphs li .pie_wrap .pers {
          top: 155px;
          left: 10px; }
      .graphs li#graphs1 .pers {
        width: 100%;
        zoom: 70%; }
      .graphs li#graphs2 .pers {
        width: 80%;
        zoom: 70%; }
    .graphs li .pie_wrap figure figcaption {
        margin-top: -60px;
        font-size: 15px;
    }

  #policy ul li {
    width: 100%;
    text-align: center; }
    #policy ul li img {
      width: 65%; }
    #policy ul li:last-child {
        width: 100%;
        padding-left: 0;
    }
    #policy ul li:last-child p{ font-size: 13px;}

  #media ul li {
    width: 15.6%;
    max-height: 68px; }
    #media ul li:not(:nth-child(6n+6)) {
      margin-right: inherit; }
    #media ul li:not(:nth-child(5n+5)) {
      margin-right: 5.5%; }

    #moshikomi h2 .free{
        font-size: 20px;
        border: 2px solid #ea5520;
        width: 68px;
        height: 68px;
    }

  .web_course dl {
    margin-bottom: 20px; }
    .web_course dl dt {
      font-size: 13px;
/*      font-size: 1.3rem;*/
    }
    .web_course dl dd {
        font-size: 13px;
/*      font-size: 1.3rem;*/
        padding: 14px 10px;
        text-align: left;
    }
    .web_course .notes{
        margin-top: 20px;
        font-size: 13px;
        line-height: 1.7;
    }


    #k1808 .web_course dl dt.first,
    #k1808 .web_course dl dd.first,
    #n1808 .web_course dl dt.first,
    #n1808 .web_course dl dd.first{ height: 225px;}

    .logo_kyouyousemi img {
        width: 54%;
        margin-right: 1.5em;
    }

    #moshikomi .point li{ font-size: 12px;}
    table.form{
        width: 100%;
        font-size: 1em;
    }
    table.form td{ padding: 15px 5px;}

    .web_course .title {
        font-size: 17px;
        margin-bottom: 1em;
    }

    .linkint{
    font-size: 12px;
    background:#fdede8;
    padding: 10px;
    text-align: center;
    margin: 30px auto 0px auto;}
}



@media screen and (max-width: 320px) {
    #learning ul.learn_list li h3 {
        font-size: 13px;
    }
    #learning ul.learn_list li p {
        font-size: 10px;
    }


    #moshikomi h2 .free{
        font-size: 15px;
        width: 48px;
        height: 48px;
    }

    .course .couese_list li.kabu .tab_inner h3 .ttl,
    .course .couese_list li.fudo .tab_inner h3 .ttl{ font-size: 16px;}
    .course .couese_list li.kabu .tab_inner h3 .ttl .bold,
    .course .couese_list li.fudo .tab_inner h3 .ttl .bold{ font-size: 23px;}
    .course .couese_list li.kabu .tab_inner h3 .time,
    .course .couese_list li.fudo .tab_inner h3 .time { top: 15px;}
}


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


.pc_inline { display: none; }
.sp_inline { display: inline-block; }


#gn-menu > nav > div > ul.gn-menu > li > a {
font-size: 12.24px
}

.entryInner1808 .btn_web {
    display: block;
}

.entryInner1808 .btn_web > div {
    width: 100%;
    text-align: center;
    font-size: 18px;
    line-height: 1.3;
    position: relative;
}

.entryInner1808 .btn_web > div a {
    color: #fff;
    display: block;
    padding: 10px 0 10px 30px;
    box-sizing: border-box;
/*    border-radius: 10px;*/
}
    .entryInner1808 .btn_web > div a {
        padding: 10px 0 10px 15px;
        font-size: 15px;
    }
    .entryInner1808 .btn_web .plus a{ background: #ea5520 url(/images/common/arrow02.svg) 95% center/13px no-repeat;}
    .entryInner1808 .btn_web .basic a{ background: #2c4198 url(/images/common/arrow02.svg) 95% center/13px no-repeat;}

.entryInner1808 .btn_web .plus {
    margin: 2% 0% 2%;
}

.entryInner1808 .btn_web .basic {
    margin: 5% 0 2%;
}

/* FV下ボタン*/

#k1808 .btn_fvtop {
    display: block;
		width:90%;
		margin:20px auto 0;
}

#k1808 .btn_fvtop > div {
    width: 100%;
    text-align: center;
    font-size: 18px;
    line-height: 1.3;
    position: relative;
}

#k1808 .btn_fvtop > div a {
    color: #fff;
    display: block;
    padding: 10px 0 10px 30px;
    box-sizing: border-box;
    border-radius: 10px;
}

#k1808 .btn_fvtop .plus {
    margin: 2% 0% 2%;
}

#k1808 .btn_fvtop .basic {
    margin: 5% 0 2%;
}

}

.apply-box-wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}
.apply-box {
    border: 1px solid #ea5520;
    background-color: #fff;
    padding: 20px 5%;
    font-size: 16px;
    width: 46%;
    margin-top: 50px;
}
.apply-box table {
    width: 100%;
}
.apply-box th,
.apply-box td {
    padding: 10px;
}
.apply-box thead th {
    text-align: center;
}
.apply-box tbody th {
    color: #ea5520;
    white-space: nowrap;
    vertical-align: top;
}
.apply-box tbody th,
.apply-box tbody td {
    border-top: 1px solid #ea5520;
}
.apply-box tbody td {
    text-align: left;
}
.apply-box .btn {
    display: inline-block;
    color: #ffffff;
    background-color: #e60012;
    border-radius: 5px;
    padding: 15px 30px;
    margin: 10px 0;
    line-height: 1.4;
}
.past-info {
    background-color: #fff;
    text-align: center;
    font-size: 18px;
    padding: 20px 10px;
    margin-top: 50px;
}
.apply-box .map {
    background: #ef805b;
    padding: 5px;
    color: #fff;
    border-radius: 3px;
    display: inline-block;
    font-size: 15px;
    line-height: 1;
}
.apply-box .map::after {
    content: '';
    padding: 5px;
    background: url(/images/common/arrow02.svg) left center/contain no-repeat;
    margin-left: 5px;
}
@media screen and (max-width: 599px) {
    .apply-box-wrap {
        flex-direction: column;
        margin-bottom: 20px;
    }
    .apply-box {
        width: 100%;
        font-size: 14px;
        margin-top: 20px;
        padding-top: 15px;
        padding-bottom: 15px;
    }
    .apply-box .map {
        font-size: 14px;
    }
    .past-info {
        font-size: 16px;
        padding: 10px;
        margin-top: 20px;
    }
}

.semiweb {
    width:100%;
    margin:35px 0;
    border-collapse: separate;
    border-spacing: 10px 0;
}
.semiweb th,
.semiweb td {
    border-top: 1px solid #E6E6E6;
}
.uline {
    border-bottom:1px solid #E6E6E6;
}
.semiweb th {
    width: 80px;
    height: 50px;
    padding: 10px 0px;
    font-weight: normal;
    text-align: center;
    line-height: 1.4;
}
.semiweb td {
    height: 50px;
    padding: 14px;
    text-align: left;
}
.wrp {
    width:700px;
    margin:0 auto 35px;
    padding:5%;
    border:1px solid #ea5520;
}
.spbr {
    display:none;
}
/*.wrp .btn a{
border-radius:10px;
}*/
.wrp .btn a.arrow01{ background: #e60012 url(/school/assets/images/common/btn_icon_arrow01.png) 95% center no-repeat;}
.wrp .btn a.arrow01::after{ content: none;}
div.btn_free > a {
    padding: 10px 0;
    font-size: 16px;
    color: #18B4D4;
    display: block;
}
.apply-box .btn.closing{
    background: #e0e0e0;
    border: 2px solid #e0e0e0;
}

@media screen and (max-width: 1024px) {
    .wrp {
        width:100%;
        margin:0 auto 35px;
        padding:5%;
        border:1px solid #ea5520;
    }
    .spbr {
        display:block;
    }
}
@media screen and (max-width: 999px) {

    #head2 .sp_menu_btn_threeline {
        top: 40px;
    }

    #logo > ul {
        width: 100%;
        height: 58px;
        display: flex;
        -webkit-align-items: flex-end; /* Safari */
        align-items:flex-end;
    }
    #logo > ul > li {
        /*display: inline-block;*/
    }
    #logo > ul > li:nth-child(1) {
        width: 122px;
        margin-right: 3vw;
        padding-bottom: 5px;
    }
    #logo > ul > li:nth-child(2) {
        width: 178px;
    }
    #logo > ul > li a.btn_orange {
        background: #ea5520;
        border-radius: 2.8px;
        width: 100%;
        height: 58px;
        display: block;
        color: #ffffff;
        text-decoration: none;
        font-size: 14px;
        line-height: 38px;
        padding: 10px;
        box-shadow: 0 1.5px 0 #88001c;
    }
    #logo > ul > li a.btn_orange span { letter-spacing: -0.5em;}
}


/* ----------------------
タイトル画像
---------------------- */
.ttl02 .heading {
    position: relative;
    max-height: 350px;
    overflow: hidden;
}
.ttl02 .heading .bg {
    width: 100%;
    height: 0;
    padding-top: 23.3076923%; /* 606/2600 */
    background: url(/school/image/kyouyousemi/bg_ttl02.jpg) 0 0 no-repeat;
    background-size: cover;
}
.ttl02 .heading .bg-w {
    position: absolute;
    width: 40%;
    min-width: 350px;
    height: 100%;
    background-color: rgba(255,255,255,0.7);
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.ttl02 .heading h2 {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 1;
}
.ttl02 .heading h2::after {
    margin-bottom: 0;
}

@media screen and (max-width: 599px) {
    .ttl02 .heading + .inner {
        padding-top: 10px;
    }
    .ttl02 .heading h2 {
        position: static;
        transform: translateY(0);
        padding: 40px 10px 20px;
    }
    .ttl02 .heading .bg-w {
        display: none;
    }
}


/* ====================================
#moshikomi タブ切り替え
==================================== */
.course .tabs{
    display: flex;
    justify-content: space-between;
}
.course .tabs.top {
    margin-top: 80px;
    align-items: flex-end;
}
.course .tabs.bottom {
    margin-bottom: 80px;
    align-items: flex-start;
    margin-top: -1px;
}
/* ----------------------
タブ
---------------------- */
.course .tabs li{
    cursor: pointer;
    position: relative;
    font-size: 18px;
    line-height: 1.3;
    padding: 1em .3em;
    width: 48.5%; /*32.5%;*/
    box-sizing: border-box;
    background: #EA5520;
    border: 1px solid #EA5520;
    color: #fff;
}
.course .tabs li.active{
    position: relative;
    font-weight: bold;
    padding: 1.3em .3em;
}

.course .tabs li > .baloon{
    position: absolute;
    top: -2em;
    left: -1em;
    color: #EA5520;
    font-weight: bold;
    background: #fff;
    border: 1px solid #EA5520;
    text-align: center;
    border-radius: 100%;
    width: 100px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.course .tabs li.active{
    background: #fff;
    color: #EA5520;
}
.course .tabs li.active > .baloon{
    color: #fff;
    background: #EA5520;
}
.course .tabs.top li{
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}
.course .tabs.top li.active{
    border-bottom: 0;
}
.course .tabs.bottom li{
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}
.course .tabs.bottom li.active{
    border-top: 0;
}
/* ====================================
#moshikomi .tab_content
==================================== */
.course .tab_content{
    display: none;
    padding: 30px 50px;
    margin-top: -1px;
    background: #fff;
    border: 1px solid #ea5521;
}

.course .tab_content.active{ display: block;}

.course .tab_content h3{
    font-size: 20px;
    font-size: 2.0em;
    line-height: 1.5;
    letter-spacing: .15em;
    text-align: left;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.course .tab_content h3 .time{
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
    border: 2px solid;
    border-radius: 100%;
    width: 70px;
    height: 70px;
    line-height: 1.2;
    font-size: .8em;
    letter-spacing: 0;
    margin-right: 1em;
}
.course .tab_content h3 .time .bold{
    display: block;
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-size: 1.8em;
    letter-spacing: -.05em;
}

.course .tab_content h3 .txt{
    font-weight: bold;
    width: calc(100% - 70px - 1em);
}

.course .tab_content p{
    font-size: 1.2em;
}

.course .tab_content .lead{
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: .15em;
    text-align: left;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.link *,
.link02 *{ text-align: center;}

.course .tab_content .link a,{
    display: block;
    /*    font-size: 13px;
    font-size: 1.3em;*/
    color: #00a0e9;
    line-height: 1.7;
    letter-spacing: .05em;
    margin: .5em auto 0;
}

.course .tab_content .link02 p{ margin-bottom: 0;}
.link02 a{
    display: block;
    font-size: 13px;
    font-size: 1.3em;
    color: #EA5520;
    line-height: 1.7;
    letter-spacing: .05em;
    margin: .5em auto 0;
}
.link02 a.btn{
    max-width: 380px;
    border: 1px solid;
    border-radius: 3px;
    padding: .6em;
}

@media screen and (max-width: 599px) {
    .course .tabs {
        margin-top: 60px;
    }
    .course .tabs li{
        font-size: 13px;
    }
    .course .tabs li > .baloon{
        top: -60px;
        width: 80px;
        height: 80px;
    }

    .course .tab_content{ padding: 2em;}
}
