@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&subset=japanese');

/*----------------------------------------
 import
----------------------------------------*/
@import url(./reset.css);
@import url(./config.css);
@import url(./responsive.css);


/*----------------------------------------
 全体
----------------------------------------*/

html,body{
height: 100%;

}

body{
font-size: 1.5em;
line-height: 1.8;
font-family:"Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ ",Meiryo,"MS ゴシック",sans-serif;
color: #333;
-webkit-text-size-adjust: 100%;
word-wrap: break-word;
}

*,
*:before,
*:after{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

a,
a:link{
color: #194980;
text-decoration: none;
}

a:hover{
color: #9f1718;
}

.h2a:hover {
    opacity: 0.5 ;
}

a:visited{
color: #194980;
}


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

.sp-br br{
display: block;
}

.pc-br br{
display: none;
}


/*----------------------------------------
 header
----------------------------------------*/

nav{
height: 75px;
display: flex;
align-items: center;
}


header{
display: flex;
justify-content: space-between;
background-color: #fff;
border-bottom: solid 1px #804937;
}

.logo{
width: 55%;
display: flex;
align-items: center;
}

.logo img{
width: 100%;
height: auto;
}

.tel{
display: none;
}

.header_content{
display: flex;
justify-content: center;
background-color: #fffbf5;
align-items: center;
}

.gnav ul {
flex-direction: column;
justify-content: center;
background-color: #e3f3f5;
position: absolute;
top: 7.5rem;
left: 0px;
width: 100%;
z-index: 980;
display: none;
border-bottom: solid 1px #804937;
}

.gnav ul li {
padding: 5px;
text-align: center;
}

.gnav ul li a {
display: block;
background: transparent;
margin: 0px;
padding: 20px;
color: #00ada9;
font-weight: bold;
}

.gnav ul li a:hover {
color: #00ada9;
background-color: #fff;
border-radius: 10px;
}

.nav_icon-sp {
width: 36px;
height: 28px;
margin-right: 10px;
margin-top: 20px;
position: relative;
cursor: pointer;
}

.nav_icon-sp span {
background-color: #333;
position: absolute;
left: 0;
width: 100%;
height: 4px;
border-radius: 5px;
}

.nav_icon-sp span:nth-of-type(1) {
top: 0;
}

.nav_icon-sp span:nth-of-type(2) {
top: 12px;
}

.nav_icon-sp span:nth-of-type(3) {
bottom: 0;
}

.nav_icon-sp.active span:nth-of-type(1) {
transform: translateY(12px) rotate(-45deg);
}

.nav_icon-sp.active span:nth-of-type(2) {
display: none;
}

.nav_icon-sp.active span:nth-of-type(3) {
transform: translateY(-12px) rotate(45deg);
}

.nav_icon-sp,
.nav_icon-sp span {
display: inline-block;
transition: all .4s;
box-sizing: border-box;
z-index: 999;
}


/*----------------------------------------
 contents
----------------------------------------*/

.grid{
margin: 2rem;
}



.grid_int{
margin-left: 0 !important;
margin-right: 0 !important;
}


.inner{
padding: 2rem 2%;
}

.inner2{
margin: 5rem 0;
}



/*----------------------------------------
 top
----------------------------------------*/

.main_img{
display: flex;
justify-content: center;
width: 100%;
background-color: #e3f3f5;
}

.main_img-pc img{
display: none;
}

.main_img-sp img{
height: auto;
width: 100%;
display: block;
}

h2.top_title{
display: flex;
justify-content: center;
padding: 2rem 0;
width: 100%;
color: #804937;
font-size: 2.2rem;
text-align: center;
}

.top_box{
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
margin: 2rem 0;
}

.top_box_about{
background: url(/img/top_bg_01.png);
background-repeat: repeat;
}

.top_box_about_left img{
display: none;
}

.top_box_about_right{
margin: 1rem 2rem;
}

.top_box_about_right h4{
margin: 4rem 0 2rem 0 !important;
}


.top_box_event{
display: flex;
flex-direction: row;
justify-content: space-between;
margin: 2rem 1%;
width: 98%;
flex-wrap: wrap;
}

.top_box_event ul.item {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
flex-direction: row;
flex-wrap: wrap;
}

.top_box_event ul.item li {
display:inline-block;
width: 48%;
margin: 1rem 1%;
}

.top_box_event ul.item li a {
display: block;
width: 100%;
padding: 2rem;
background-color: #33bdba;
display: flex;
align-items: center;
justify-content: center;
}

.top_box_event ul.item li a:hover {
background-color: #007683;
}




.top_support_bg{
background: url(/img/top_bg_02.png), url(/img/top_bg_01.png);
background-repeat: repeat;
background-size: cover;
}


.top_box_support{
display: flex;
flex-direction: row;
justify-content: space-between;
margin: 2rem 1%;
width: 98%;
flex-wrap: wrap;
}


.top_box_mes{
position: relative;
width: 100%;
/*height: 1100px;*/
height: 800px;
background: url(/img/top_bg_03.png);
background-repeat: repeat;
}

.top_box_mes2{
position: relative;
width: 100%;
/*height: 1100px;*/
height: 800px;
background: url(/img/top_bg_02.png);
background-repeat: repeat;
}

.top_box_mes_01{
position: absolute;
width: 90%;
height: 300px;
top: 5rem;
left: 5%;
background: url(/img/top_bg_01.png) left center;
background-repeat: no-repeat;
background-size: 80% 80%;
}

.top_box_mes_01_img{
position: absolute;
width: 50%;
top:0;
left: 0;
}

.top_box_mes_01_text{
position: absolute;
width: 60%;
top: 5rem;
right: 0;
}

.top_box_mes_01_btn{
position: absolute;
width: 90%;
bottom:0;
left: 5%;
display: inline-block;
text-align: center;
}

.top_box_mes_01_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

.top_box_mes_01_btn a:hover,
.top_box_mes_02_btn a:hover,
.top_box_mes_03_btn a:hover{
background-color: #007683;
}

.top_box_mes_02{
position: absolute;
width: 90%;
height: 300px;
top: 40rem;
right: 5%;
background: url(/img/top_bg_01.png) right center;
background-repeat: no-repeat;
background-size: 80% 80%;

}


.top_box_mes_02_img{
position: absolute;
width: 40%;
bottom:10%;
right: 0;
}

.top_box_mes_02_text{
position: absolute;
width: 60%;
top: 5rem;
left: 0;
}

.top_box_mes_02_btn{
position: absolute;
width: 90%;
bottom:0;
right: 5%;
display: inline-block;
text-align: center;
}

.top_box_mes_02_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}



.top_box_mes_03{
position: absolute;
width: 90%;
height: 300px;
top: 75rem;
left: 5%;
background: url(/img/top_bg_01.png) left center;
background-repeat: no-repeat;
background-size: 80% 80%;
}

.top_box_mes_03_img{
position: absolute;
width: 50%;
top:0;
left: 0;
}

.top_box_mes_03_text{
position: absolute;
width: 60%;
top: 7rem;
right: 0;
}


.top_box_mes_03_btn{
position: absolute;
width: 90%;
bottom:0;
left: 5%;
display: inline-block;
text-align: center;
}

.top_box_mes_03_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

.top_box_mes_01_text p,
.top_box_mes_02_text p,
.top_box_mes_03_text p{
background-color: #fff;
padding: 0.5rem 1rem;
margin: 1rem 0;
font-size: 1.2rem;
}



.topBox_item{
padding: 1rem 0;
}

.topBox_item h2.title{
padding: 1rem 2rem;
margin: 2rem 0 0 0;
}

h2.title span{
font-size: 1.5rem;
margin-right: 0.5rem;
}

/*----------------------------------------
SNS
----------------------------------------*/
.insta:before {
  position:relative;
  top:3px;
  content: "";
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 1.6rem;
  background-image: url(../home-img/ico_instagram.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.youtube:before {
  position:relative;
  top:6px;
  content: "";
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 1.6rem;
  background-image: url(../home-img/ico_youtube.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/*----------------------------------------
 news
----------------------------------------*/

.news_item{
height: auto;
display: flex;
justify-content: center;
align-items: center;
background-color: #f4f2ee;
}

.news_item li{
margin: 1rem;
list-style: none;
}

.news_item li:first-child{
margin-top: 3rem;
}

.news_item li:last-child{
margin-bottom: 3rem;
}

.news_item li span{
display: block;
}

.news_item li a{
color: #333;
text-decoration: underline;
}

.news_item li a:visited{
color: #333;
}

.news_box{
background-color: #f4f2ee;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
margin: 2rem 0;
}

h2.news_title{
margin: 0 2rem;
padding: 0 0;
display: block;
}


h2.news_title img{
width: 70%;
height: auto;
margin-left: 15%;
}


/*----------------------------------------
 page
----------------------------------------*/

h1.title{
padding: 0 2rem 3rem 2rem;
background-image: url(../img/top_bg_03.png);
background-repeat: repeat;
text-align: center;
}

h1.title:before {
content: url(../img/title_h1.png);
display: block;
position: relative;
top: 30px;
margin: 0;
}

h1.title span{
display: inline-block;
font-size: 2rem;
color: #674435;
border: 1px solid #674435;
padding: 1rem 3rem;
}

h1.title span .sub{
display: block;
font-size: 1.6rem;
font-weight: normal;
border: none;
padding: 0;
}


h2.title{
padding: 1rem 3rem;
margin: 4rem 0 0 0;
color: #fff;
font-size: 2rem;
font-weight: bold;
background-image: url(../img/title_h2.png);
background-repeat: repeat;
background-position: center center;
display: inline-block;
}

h2.title span{
font-size: 1.5rem;
}

h3.title{
width: 90%;
padding: 2rem;
margin: 2rem 5% 2rem 5%;
color: #804937;
font-size: 2rem;
text-align: center;
border-bottom: solid 1px #804937;
font-weight: normal;
text-align: center;
}


h4.title{
padding: 0 0 2rem 0;
margin: 4rem 0 0 0;
color: #000;
font-size: 1.8rem;
line-height: 1em;
font-weight: normal;
background-image: url(../img/title_h4.png);
background-repeat: repeat-x;
background-position: left bottom;
display: inline-block;
}


p.title{
padding: 2rem;
margin: 2rem 0 !important;
color: #000;
background-color: #e3f3f5;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}

p.title2{
background: linear-gradient(transparent 0%, #e3f3f5 0%);
display: inline;
color: #000;
font-size: 1.7rem;
line-height:2.5;
font-weight: 600;
padding: 0;
margin: 2rem 0 !important;
}

.inner p{
margin: 3rem;
}

.inner p.faq{
margin: 2rem !important;
}

.inner p.faq2{
margin: 0 2rem !important;
}

.inner p.profile{
margin: 1.5rem 2rem !important;
}

.inner p.note{
padding: 0 0 !important;
margin: 0 !important;
font-size: 1.2rem;
text-align: center;
}

.tel_icon img {
  display: inline;
  position: relative;
  top: 5px;
  margin: 0 0.7rem 0 0;
}


.tel_link a{
	text-decoration: underline;
}

.page_list{
background-color: #fff;
border: solid 1px #666;
padding: 0.5rem;
}

.page_list ul{
background-color: #e3f3f5;
margin: 0 0;
padding: 1rem;
list-style: none;
}

.page_list ul li{
margin: 0 0;
padding: 0 4rem;
text-indent: -1em;
}

.page_list ul li:before {
    content: "● ";
    color: #00ada9;
}



.profile_list{
padding: 0.5rem;
display: flex;
justify-content: center;
}

.profile_list ul{
margin: 0 0;
padding: 1rem;
list-style: none;
}

.profile_list ul li{
margin: 0 0;
padding: 0 4rem;
text-indent: -1em;
}

.profile_list ul li:before {
    content: "● ";
    color: #00ada9;
}


.profile_list2{
padding: 0.5rem;
display: flex;
justify-content: center;
}

.profile_list2 ul{
margin: 0 0;
padding: 1rem;
list-style: none;
width: 100%;
}

.profile_list2 ul li{
margin: 0 0;
padding: 0 4rem;
text-indent: -1em;
}

.profile_list2.block ul li{
padding: 0;
}

.profile_list2 ul li:before {
    content: "● ";
    color: #00ada9;
}


.program_list{
padding: 0.5rem;
display: flex;
justify-content: center;
}

.program_list ul{
margin: 0 0;
padding: 1rem;
list-style: none;
}

.program_list ul li{
margin: 0 0;
padding: 0 4rem;
text-indent: -1em;
}

.program_list ul li:before {
    content: "● ";
    color: #00ada9;
}





/*----------------------------------------
 local_nav
----------------------------------------*/

.local_nav,
.local_nav2{
background: url(../img/top_bg_01.png) repeat center center;
}

.local_nav,
.local_nav2 {
width: 100%;
margin: 2rem 0;
}

.local_nav h2,
.local_nav2 h2{
color: #00ada9;
font-size: 2rem;
padding: 2rem;
}

/*----------------------------------------
 local_nav_img
----------------------------------------*/

.local_nav_img{
width: 90%;
height: 100%;
margin: 2rem 5%;
}

.local_nav_img h2{
color: #804937;
font-size: 2rem;
padding: 2rem;
}

.local_nav_img ul {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
list-style: none;
}

.local_nav_img ul li {
text-align: center;
color: #804937 !important;
font-weight: bold;
display: block;
width: 46%;
margin: 2rem 2%;
}


.local_nav_img ul li a {
color: #804937 !important;
}


.local_nav_img ul li img {
width: 90%;
height: auto;
margin: 0.5rem 5%;
}

.local_nav_img ul li h3 {
min-height: 100px;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
margin: 0 0;
}

.local_nav_img ul li h3.nav_voice {
	height: auto !important;
}

.local_nav_img ul li h3.nav_voice span {
display: block;
}



.local_nav_img ul li h3 a, .guideBox .guideBox_inner a {
display: inline-block;
margin: 0 0;
padding: 1rem 1.5rem;
font-size: 1.5rem;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

.local_nav_img ul li a img:hover {
opacity: 0.7;
}


.local_nav_img ul li h3 a:hover, .guideBox .guideBox_inner a:hover {
background-color: #007683;
}

a.active2 {
background-color: #ea606f !important;
}

a.active3 {
background-color: #ea606f !important;
}


.local_nav_bg{
background: url(/img/top_bg_03.png), url(/img/top_bg_01.png);
background-repeat: repeat;
background-size: cover;
}

.local_nav_img p {
color: #333 !important;
font-size: 1.2rem;
text-align: left;
display: block;
width: 90%;
margin: 0.5rem 5%;
font-weight: normal;
}

/*----------------------------------------
 button
----------------------------------------*/

.button ul {
display: flex;
flex-flow: row;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}

.button li {
display: block;
width: 46%;
margin: 1rem 2%;
}

.button li.w_auto {
width: auto;
}


.button li a {
 display: inline-block;
 text-decoration: none;
border-radius: 30px;
padding: 1.5rem 2rem;
font-weight: bold;
font-size: 1.3rem;
width: 100%;
text-align: center;
}

.button li a.button_01 {
 background-color: #00ada9;
 color: #fff !important;
}

.button li a.button_01:hover {
background-color: #007683;
color: #fff !important;
}


.button li a.button_02 {
 background-color: #fff;
 border: 1px solid #00ada9;
 color: #00ada9;
}

.button li a.button_02:hover {
background-color: #007683;
color: #fff !important;
}



.button_box{
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}


.button_box .button_01{
 display: inline-block;
 text-decoration: none;
border-radius: 30px;
padding: 1.5rem 4rem;
margin: 1rem;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
 background-color: #00ada9;
 color: #fff !important;
}

.button_box .button_01:hover{
background-color: #007683;
 color: #fff !important;
}

.button_box .button_02{
 display: inline-block;
 text-decoration: none;
border-radius: 30px;
padding: 1.5rem 4rem;
font-size: 1.5rem;
margin: 1rem;
font-weight: bold;
text-align: center;
 background-color: #fff;
 border: 1px solid #00ada9;
 color: #00ada9;
}
.button_box .button_02:hover{
background-color: #007683;
color: #fff !important;
 border: 1px solid #007683;
}

.button_box button {
display: inline-block;
border: none;
cursor: pointer;
text-align: center;
}






.outlink:before {
content: url(../img/outlink.png);
margin-right: 0.5rem;
}

.inlink:before {
content: url(../img/inlink.png);
margin-right: 0.5rem;
}

.outlink2:before {
content: url(../img/outlink2.png);
margin-right: 0.5rem;
}

.inlink2:before {
content: url(../img/inlink2.png);
margin-right: 0.5rem;
}

.outlink2 a,
.inlink2 a {
font-weight: bold;
color: #00ada9;
}

.outlink2,
.inlink2 {
background: linear-gradient(transparent 60%, #e3f3f5 0%);
display: inline-block;
margin: 1rem !important;
padding: 3px 8px;
}



.boder_box{
background-image: url(../img/top_bg_03.png);
background-repeat: repeat;
margin: 2rem 0;
}

.boder_box h2{
margin-bottom: 0 !important;
}

.boder_box p{
padding: 2rem 0;
}

.boder_box2{
background-image: url(../img/top_bg_03.png);
background-repeat: repeat;
margin: 2rem 0;
padding: 2rem;
}

.boder_box2 h2{
margin-bottom: 0 !important;
}

.boder_box2 p{
padding: 0 0;
}



/*----------------------------------------
 interview
----------------------------------------*/

.interview_item{
background: url(../img/top_bg_01.png) repeat center center;
}

.topBox_item h3,
.interview_item h3{
background: linear-gradient(transparent 0%, #fff 0%);
display: inline;
color: #000;
font-size: 1.8rem;
padding: 0.5rem 1rem;
line-height:2.5;
font-weight: 600;
}



.topBox_item h2:before {
content: url(../img/title_h2_2.png);
position: relative;
  top: 5px;
  right: 5px;
}

.topBox_item h4,
.interview_item h4{
color: #804937;
font-size: 2rem;
font-weight: 500;
margin: 1rem 0;
}


.interview_post span{
border: solid 1px #804937;
color: #804937;
padding: 0.3rem 1rem;
font-size: 1.8rem;
text-align: center;
}


.interview_text img{
width: 100%;
height: auto;
display: block;
margin: 1rem 0;
}

.intervieBox p{
	margin: 0 2rem !important;
}


.intervieBox{
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-direction: column;
}



/*----------------------------------------
 chat
----------------------------------------*/

  .chat {
    width: 100%;
    display: flex;
    margin: 1.5em 0;
  }

  .chat.chat-right{
    flex-direction: row-reverse;
  }

  .chat .faceicon {
    text-align: center;
    width: 20%;
  }

  .chat .faceicon img{
    width: 100%;
    height: auto;
    border: solid 5px #00aca8;
    border-radius: 50%;
  }

  .faceicon p {
	  font-size: 70%;
	  line-height: 1.3;
	  margin: 0.5rem 0 0 0 !important;
	  padding: 0 0 !important;
	  width: 100%;
	  }
	  
	    .faceicon p span {
	  font-size: 130% !important;
	  }

  .chat.chat-right .faceicon img{
    border-color:#bca56f;
  }

  .chat .baloon {
    width: 100%;
  }

  .says {
    /*display: inline-block;*/
    display: block;
    position: relative;
    margin: 5px 0 0 15px;
    padding: 17px 13px;
    border-radius: 12px;
    background: #e3f3f5;
  }

  .says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px;
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #e3f3f5;
  }

  .chat.chat-right .says{
    margin: 5px 15px 0 0;
    background-color: #f2ede3;
  }
  .chat.chat-right .says:after {
    left: auto;
    right: -24px;
    transform: rotate(180deg);
    border-right: 12px solid #f2ede3;
  }
  .says p {
    margin: 0;
    padding: 0;
  }


.schoolBox {
display: flex;
justify-content: flex-start;
align-items: flex-start;
flex-wrap: wrap;
}

.school_list {
width: 100%;
margin: 1% 0;
}

.school_list ul{
margin: 0 0;
padding: 1rem;
list-style: none;
}

.school_list ul li{
margin: 0 0;
padding: 0 2rem;
text-indent: -1em;
}

.school_list ul li:before {
    content: "● ";
    color: #00ada9;
}

.profileBox {
display: flex;
justify-content: flex-start;
align-items: flex-start;
flex-direction: column;
}

.guideBox {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}


.voice_box{
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
margin: 2rem 2rem 3rem 2rem;
}

.voice_box_inner{
width: 100%;
height: 220px;
margin: 3rem; 
background: url(/img/top_bg_01.png) right center;
background-repeat: no-repeat;
background-size: 80% 90%;
display: flex;
justify-content: center;
align-items: center;
position: relative;
}


.voice_box_mes_02_img{
position: absolute;
width: 60%;
top:-10%;
right: -3%;
}

.voice_box_mes_02_text{
position: absolute;
width: 45%;
top: 1rem;
left: 0;
}

.voice_box_mes_02_text p{
background-color: #fff;
padding: 0.5rem 1rem;
margin: 1rem 0;
font-size: 1.2rem;
}

.voice_box_mes_02_btn{
position: absolute;
width: 90%;
bottom:0;
right: 5%;
display: inline-block;
text-align: center;
}

.voice_box_mes_02_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}


.voice_box_mes_02_btn a:hover{
background-color: #007683;
}


.voice_box_mes_01_img{
position: absolute;
width: 60%;
top:-10%;
left: -3%;
}

.voice_box_mes_01_text{
position: absolute;
width: 45%;
top: 1rem;
right: 0;
}

.voice_box_mes_01_text p{
background-color: #fff;
padding: 0.5rem 1rem;
margin: 1rem 0;
font-size: 1.2rem;
}


/*----------------------------------------
 table
----------------------------------------*/

.tableBox table {
width: 96%;
margin: 2rem 2%;
border: none;
border-collapse: collapse;
border-spacing: 0;
table-layout: fixed;
}

.tableBox table th {
padding: 2rem;
border: #fff solid;
border-width: 2px 2px;
font-weight: 500;
color: #000;
background-color: #e3f3f5;
}

.tableBox table th.headline {
background-color: #00ada9;
color: #fff;
}


.tableBox table td {
padding: 2rem;
border:2px #fff solid;
border-bottom: 3px #ccc solid !important;
background-color: #f0f0f0;
}




.tabBox table {
width: 96%;
margin: 2rem 2% 0 2%;
border: none;
border-collapse: collapse;
border-spacing: 0;
table-layout: fixed;
}

.tabBox table th {
padding: 2rem;
border: #fff solid;
border-width: 2px 2px;
font-weight: 500;
color: #000;
background-color: #e3f3f5;
}

.tabBox table th.headline {
background-color: #00ada9;
color: #fff;
}


.tabBox table td {
padding: 2rem;
border:2px #fff solid;
background-color: #f0f0f0;
}

.tabBox table.wd60 {
width: 60% !important;
margin: 2rem 20% 0 20%;
border: none;
border-collapse: collapse;
border-spacing: 0;
table-layout: fixed;
}

.tabBox table.wd60 td {
text-align: center;
}





.recBox table {
width: 96%;
margin: 2rem 2%;
border: none;
border-collapse: collapse;
border-spacing: 0;
table-layout: fixed;
}

.recBox table th {
padding: 2rem;
border: #fff solid;
border-width: 2px 2px;
font-weight: 500;
color: #000;
background-color: #e3f3f5;
width: 30%;
}

.recBox table th.headline {
background-color: #00ada9;
color: #fff;
}


.recBox table td {
padding: 2rem;
border:2px #fff solid;
background-color: #f9f9f9;
}

.timeBox table {
width: 96%;
margin: 2rem 2%;
border: none;
border-collapse: collapse;
border-spacing: 0;
table-layout: fixed;
}

.timeBox table th {
padding: 2rem;
border: #fff solid;
border-width: 2px 2px;
font-weight: 500;
color: #000;
background-color: #e3f3f5;
width: 30%;
}

.timeBox table th.headline {
background-color: #00ada9;
color: #fff;
}


.timeBox table td {
padding: 2rem;
border:2px #fff solid;
background-color: #f9f9f9;
}





.contactBox table {
width: 96%;
margin: 2rem 2%;
border: none;
border-collapse: collapse;
border-spacing: 0;
table-layout: fixed;
}

.contactBox table th {
padding: 2rem;
border: #fff solid;
border-width: 2px 2px;
font-weight: 500;
color: #000;
background-color: #e3f3f5;
width: 30%;
vertical-align: top;
}

.contactBox table th.headline {
background-color: #00ada9;
color: #fff;
}


.contactBox table td {
padding: 2rem;
border:2px #fff solid;
background-color: #f9f9f9;
}

.contactBox .require{
background-color: #00aca8;
font-size: 80%;
padding: 0 1rem;
color: #fff;
}

.contactBox em {
font-style: normal;
}


.contactBox label {
padding: 2rem 0;
font-weight: 500;
}

.contactBox input,
.contactBox textarea{
  border-radius:5px;
  padding: 1rem;
  margin: 1rem 1rem;
  border: 1px solid #666;
}

.contactBox textarea{
width: 90%;
}

.contactBox input.large{
width: 90%;
}

.contactBox label.check {
margin: 0 0;
padding: 0;
text-align: left;
border-right: none;
display: inline-block;
}

p.hint {
background: linear-gradient(transparent 0%, #fae6e9 0%);
display: table;
color: #804937;
padding: 0.5rem 0;
line-height: 2.5;
font-weight: 600;
text-align: left !important;
text-indent: 0;
padding: 0 0;
margin: 0 1rem;
}


.contactBox ul{
list-style: none;
}

.contactBox em{
display: block;
font-size: 90%;
}

/*----------------------------------------
 footer
----------------------------------------*/

footer{
padding: 1rem 0 7rem 0;
background-color: #e3f3f5;
}

footer .logo{
display: flex;
justify-content: center;
align-items: center;
width: 50%;
margin: 0 25%;
}

footer .info{
display: none;
}

footer .copy{
display: flex;
justify-content: center;
align-items: flex-start;
padding: 1rem;
font-size: 1.2rem;
}

.footer_sp_nav{
position: fixed;
bottom: 0;
left: 0;
width: 100%;
height: 6rem;
background-color: #e3f3f5;
border-top: 1px solid #00ada9;
}


.footer_sp_nav ul{
display: flex;
justify-content: center;
align-items: center;
}

.footer_sp_nav ul li {
display:inline-block;
width: 33.333%;
height: 6rem;
border-right: 1px solid #00ada9;
display: flex;
justify-content: center;
align-items: center;
}

.footer_sp_nav ul li a {
display: block;
width: 100%;
padding: 2rem;
display: flex;
align-items: center;
justify-content: center;
}

.footer_sp_nav ul li a img {
width: 80% !important;
}

footer .social{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  margin: 0 25%;
  }

  footer .social a {
    display: block;
    width: 3rem;
    height: 3rem;
    margin-left: 5px;
    padding: 7px;
    border-radius: 50%;
    background: #00ada9;
  }  
  footer .social a img {
    width: 1.6rem;
    height: 1.6rem;
  }  

/*----------------------------------------
 img
----------------------------------------*/

.img_box2{
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}

.img_box3{
display: flex;
justify-content: center;
align-items: center;
padding: 2rem;
}

.img_box4{
display: flex;
justify-content: space-between;
align-items: center;
flex-direction: column;
}


.orientation_box,
.tokuteikenshu_box{
display: flex;
justify-content: center;
align-items: center;
flex-direction: column-reverse;
padding: 2rem 0;
}

.recruit_box{
display: flex;
justify-content: center;
align-items: flex-start;
flex-direction: row;
padding: 2rem 0;
}


@media print, screen and (min-width : 768px) { 

/*----------------------------------------
 header
----------------------------------------*/

header{
display: flex;
flex-direction: row;
justify-content: space-between;
border-bottom: none;
align-items: center;
background-color: #fff;
}

.logo{
width: 20%;
}

.logo img{
width: 100%;
height: auto;
}

.tel img{
display: inline;
}

.tel{
width: 20%;
display: block;
}


nav{
	width: 60%;
height: 100px;
display: flex;
flex-direction: column;
align-items: center;
}

.gnav ul {
display: flex;
flex-direction: row;
justify-content: space-between !important;
background-color: transparent;
position: static;
top: 0;
left: 0px;
width: auto;
z-index: 980;
text-indent: -9999px;
list-style: none;
border: none;
}


.gnav ul li {
padding: 0;
text-align: left;
}

.gnav ul li a {
display: block;
height: 100px;
background: url(../img/nav.png);
background-repeat: no-repeat;
margin: 0px 10px;
padding: 0px;
}


.gnav ul li a:hover {
background-image: url(../img/nav_r.png);
background-repeat: no-repeat;
transition-property: all;
transition: 0.3s linear;
border-radius: 0;
background-color: transparent;
}

.navi1 a{width:108px; background-position: 0 0 !important;}
.navi2 a{width:108px; background-position: -118px 0 !important;}
.navi3 a{width:149px; background-position: -232px 0 !important;}
.navi4 a{width: 108px; background-position: -387px 0 !important;}
.navi5 a{width: 108px; background-position: -502px 0 !important;}

.navi1 a:hover{background-position: 0 0 !important;}
.navi2 a:hover{background-position: -118px 0 !important;}
.navi3 a:hover{background-position: -232px 0 !important;}
.navi4 a:hover{background-position: -387px 0 !important;}
.navi5 a:hover{background-position: -502px 0 !important;}


.active{background-image: url(../img/nav_r.png) !important;}

.nav_icon-sp{
display: none;
}

/*----------------------------------------
 contents
----------------------------------------*/

.grid{
display: flex;
justify-content: center;
align-items: center;
margin: 2rem 5%;
}

.grid.around{
justify-content: space-around !important;
}

.grid.between{
justify-content: space-between !important;
}

.grid.start{
justify-content: start;
}

.grid.reverse{
flex-direction: row-reverse !important;
}

.grid.align_start{
align-items: flex-start !important;
}


.inner{
padding: 2rem 10%;
}

.inner2{
margin: 10rem 0;
}

.inner p.profile{
margin: 1.5rem 0 !important;
}

/*----------------------------------------
 top
----------------------------------------*/
.main_img-pc{
width: 100%;
margin: 0 0;
background-color: #e3f3f5;
}

.main_img-pc img{
height: auto;
width: 100%;
display: block;
}

.main_img-sp img{
display: none;
}

.top_box_about{
position: relative;
width: 100%;
height: 348px;
background: url(/img/top_bg_01.png);
background-repeat: repeat;
}

.top_box_about_left{
position: absolute;
width: 25%;
height: 420px;
bottom:0;
left: 10%;
}

.top_box_about_left img{
position:absolute;
left:0;
right:0;
bottom:0;
margin:auto;
display: block;
}

.top_box_about_right{
position: absolute;
width: 60%;
height: 280px;
top: 20px;
left: 35%;
margin: 0 0;
}


.top_box_event ul.item li{
width: 23%;
}


.top_support_bg{
background-size: auto;
}

.voice_box_mes{
position: relative;
width: 100%;
height: 500px;
}

.top_box_mes{
position: relative;
width: 100%;
/*height: 800px;*/
height: 600px;
background: url(/img/top_bg_03.png);
background-repeat: repeat;
}

.top_box_mes2{
position: relative;
width: 100%;
height: 600px;
background: url(/img/top_bg_02.png);
background-repeat: repeat;
}

.top_box_mes_01{
position: absolute;
width: 43%;
height: 300px;
top: 5rem;
left: 5%;
background: url(/img/top_bg_01.png) left center;
background-repeat: no-repeat;
background-size: 80% 80%;
}

.top_box_mes_01_img{
position: absolute;
width: 40%;
top:0;
left: 0;
}

.top_box_mes_01_text{
position: absolute;
width: 55%;
top: 5rem;
right: 0;
}

.top_box_mes_01_btn{
position: absolute;
width: 70%;
bottom:0;
left: 5%;
display: inline-block;
text-align: center;
}


.top_box_mes_01_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}


.top_box_mes_02{
position: absolute;
width: 43%;
height: 300px;
top: 25rem;
right: 5%;
background: url(/img/top_bg_01.png) right center;
background-repeat: no-repeat;
background-size: 80% 80%;

}


.top_box_mes_02_img{
position: absolute;
width: 40%;
bottom:15%;
right: 0;
}

.top_box_mes_02_text{
position: absolute;
width: 55%;
top: 5rem;
left: 0;
}

.top_box_mes_02_btn{
position: absolute;
width: 70%;
bottom:0;
right: 5%;
display: inline-block;
text-align: center;
}

.top_box_mes_02_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}



.top_box_mes_03{
position: absolute;
width: 43%;
height: 300px;
top: 40rem;
left: 5%;
background: url(/img/top_bg_01.png) left center;
background-repeat: no-repeat;
background-size: 80% 80%;
}

.top_box_mes_03_img{
position: absolute;
width: 40%;
top:0;
left: 0;
}

.top_box_mes_03_text{
position: absolute;
width: 55%;
top: 5rem;
right: 0;
}


.top_box_mes_03_btn{
position: absolute;
width: 70%;
bottom:0;
left: 5%;
display: inline-block;
text-align: center;
}

.top_box_mes_03_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}


.top_box_mes_01_text p,
.top_box_mes_02_text p,
.top_box_mes_03_text p{
background-color: #fff;
padding: 0.5rem 1rem;
margin: 1rem 0;
font-size: 1.5rem;
}

/*----------------------------------------
 news
----------------------------------------*/

.news_box{
flex-direction: row;
}

.news_item li span{
display: inline-block;
margin-right: 1rem;
}

h2.news_title{
margin: 0 2rem;
}

h2.news_title img{
width: 80%;
height: auto;
margin-left: 0;
}


/*----------------------------------------
 local_nav_img
----------------------------------------*/

.local_nav_img ul {
justify-content: center;
}

.local_nav_img ul li {
width: 21%;
margin: 2rem 2%;
}

.local_nav_img {
width: 100%;
margin: 2rem 0;
}

.local_nav,
.local_nav2 {
width: 100%;
margin: 2rem 0;
}


.local_nav_img ul li h3 a, .guideBox .guideBox_inner a {
font-size: 1.5rem;
}


/*----------------------------------------
 button
----------------------------------------*/

.button li {
 display: block;
width: 21%;
margin: 1rem 2%;
}


/*----------------------------------------
 footer
----------------------------------------*/


footer{
background-color: #e3f3f5;
padding: 2rem;
}


footer .logo{
display: flex;
justify-content: center;
align-items: center;
width: 30%;
margin: 0 35%;
}

footer .logo img{
width: 100%;
height: auto;
}

footer .info{
display: flex;
justify-content: center;
align-items: center;
}

footer .info div{
margin: 1rem;
}

footer .info div p {
display: inline-block;
padding: 1rem 5rem;
}

footer .info div p a {
display: block;
padding: 1rem 5rem;
background-color: #fff;
color: #333;
font-weight: bold;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

footer .info div p a:hover {
background-color: #00aca8;
color: #fff !important;
}



footer .copy{
display: flex;
justify-content: center;
align-items: center;
padding: 3rem;
font-size: 1.2rem;
}


.footer_sp_nav{
display: none;
}



/*----------------------------------------
 img
----------------------------------------*/

.img_box{
display: flex;
justify-content: center;
align-items: center;
width: 100%;
}

.img_box5{
display: flex;
justify-content: center;
align-items: center;
width: 50%;
}


.orientation_box{
display: flex;
justify-content: space-between;
align-items: center;
flex-direction:row;
width: 80%;
margin: 0 10%;
padding: 2rem;
}


.recruit_box{
display: flex;
justify-content: space-between;
align-items: center;
flex-direction:row;
width: 80%;
margin: 0 10%;
padding: 2rem;
}



.tokuteikenshu_box{
display: flex;
justify-content: space-between;
align-items: center;
flex-direction:row;
width: 90%;
margin: 0 5%;
padding: 2rem;
}


.orientation_box img,
.recruit_box img,
.tokuteikenshu_box img{
width: 100% !important;
height: auto !important;
}

/*----------------------------------------
 page
----------------------------------------*/

h1.title span{
font-size: 2.8rem;
}

.voice_box{
display: flex;
justify-content: center;
align-items: center;
flex-direction: row;
margin: 3rem;
}

.voice_box_inner{
width: 35%;
margin: 0 3rem;
height: 300px;
background: url(/img/top_bg_01.png) right center;
background-repeat: no-repeat;
background-size: 80% 80%;
display: flex;
justify-content: center;
align-items: center;
position: relative;
}


.voice_box_mes_02_img{
position: absolute;
width: 70%;
top:-10%;
right: -10%;
}

.voice_box_mes_02_text{
position: absolute;
width: 40%;
top: 5rem;
left: 0;
}

.voice_box_mes_02_text p{
background-color: #fff;
padding: 0.5rem 1rem;
margin: 1rem 0;
font-size: 1.4rem;
}

.voice_box_mes_02_btn{
position: absolute;
width: 90%;
bottom:0;
right: 5%;
display: inline-block;
text-align: center;
}

.voice_box_mes_02_btn a{
color: #fff !important;
width: 100%;
padding: 1rem 2rem;
display: block;
background-color: #00ada9;
color: #fff !important;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}


.voice_box_mes_02_btn a:hover{
background-color: #007683;
}




.voice_box_mes_01_img{
position: absolute;
width: 70%;
top:-10%;
left: -10%;
}

.voice_box_mes_01_text{
position: absolute;
width: 40%;
top: 5rem;
right: 0;
}

.voice_box_mes_01_text p{
background-color: #fff;
padding: 0.5rem 1rem;
margin: 1rem 0;
font-size: 1.4rem;
}







.profile_list2 ul{
width: 60%;
}

.profile_list ul.linkUl{
	height: 100px;
}

.program_list ul li{
float: left;
width: 33.33%;
}


.interview_text img{
width: 30%;
height: auto;
display: inline;
margin: 1rem 2rem;
}

.school_list {
width: 48%;
margin: 1% 1%;
}

.profileBox,
.guideBox {
flex-direction: row;
}

.profileBox .profileBox_inner{
width: 48%;
margin: 1% 1%;
}

.guideBox .guideBox_inner{
width: 40%;
}



.intervieBox{
flex-direction: row;
flex-wrap: wrap;
}

.intervieBox img{
margin: 3rem 1rem;
}

.contactBox label.check {
display: inline;
}

.contactBox input.large{
width: 85%;
}

/*----------------------------------------
 pc
----------------------------------------*/

.pc-none{
display: none;
}

.sp-none{
display: block;
}



.sp-br br{
display: none;
}

.pc-br br{
display: block;
}


.pc-center{
text-align: center !important;
}


}



@media screen and (max-width: 767px){
	
/*----------------------------------------
 sp
----------------------------------------*/

.pc-none{
display: block;
}

.sp-none{
display: none;
}

.tabBox table th,
.tabBox table td {
display: block !important;
width: 100%;
text-align: left !important;
}

.recBox table th,
.recBox table td {
display: block !important;
width: 100%;
text-align: left !important;
}

.contactBox table th,
.contactBox table td {
display: block !important;
width: 100%;
text-align: left !important;
}

.contactBox table td span {
display: block !important;
}

.contactBox table th br{
display: none;
}

.contactBox table th .require{
margin: 0 0 0 0.5rem;
}


.sp-left{
text-align: left !important;
}

.sp-center{
text-align: center !important;
}


.FD_rr{
flex-direction: row-reverse;
}

}



.block {
    display: block !important;
}
.w100p{
    width: 100% !important;
}
/*----------------------------------------
Video
----------------------------------------*/
.video {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}