@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Josefin+Sans|Open+Sans&display=swap');


/*  Layout
-----------------------------------------------------------------------------*/
/* Body */
html{font-size:62.5%;}
body.customize-support{margin-top:-32px !important;}
body {
background:#FFF;
color:#333; /*コンテンツの主となる文字色*/
font-size: 1.4rem; /*コンテンツの主となる文字サイズ*/
line-height: 2.0; /*コンテンツの主となる文字高さ*/
letter-spacing: 1px;
margin: 0;
font-family:'Open Sans',"游ゴシック Medium", "Yu Gothic Medium","メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
 /*コンテンツの主となるフォント 前の方が優先して使用されるため、必要に応じて前後を入れ替える*/
width:100%; height:100%;
word-break:break-all;
}

/*  link*/
a {color:#333; text-decoration: none;  }
a:visited { color:#333; text-decoration: none;  }
a:hover { color: #333; text-decoration:underline; }
a img { border: 0; }
a.link,
a.link:visited,
a.link:hover { color: #2F5883; text-decoration:underline; }

/* header_image
-----------------------------------------------*/
.header_image {height: 250px; position: relative; background: #fff url("../images/common/inpage_bg.jpg") top center no-repeat; background-size: cover;text-align: center;display: flex; justify-content: center; align-items: center;}
.header_image .main-tit{background:#FF8000; color: #fff; display: inline-block; min-width:430px; padding: 10px 15px; margin: 60px 15px 10px 15px; box-sizing: border-box;}
@media only screen and (max-width :768px) {
  .header_image {height: 200px;  margin: 40px 15px 10px 15px; }
}

/* wrapper
-----------------------------------------------*/
#wrapper{min-width:1100px;}
#main{padding: 50px 0 0 0;}
@media only screen and (max-width :943px) {
	#wrapper{min-width:0;overflow-x:hidden;}
	#main{padding: 15px 0 0 0;}
}

/* header
-----------------------------------------------*/
#header{position:fixed; top:0px; left:0px; z-index: 1000; width:100%; min-width: 1210px; display: flex; background-color: #fff; justify-content: space-between; align-items: center; height: 76px; padding-left: 20px; padding-right: 20px; transition: .2s; box-sizing: border-box; }
.header_after_bg{height: 100vh; width: 100%; display: block; position: fixed; top: 0; left: 0; z-index: 11; background: rgba(0,0,0,0.15); animation-name: head_active_bg; animation-timing-function: ease-in-out; animation-duration: .3s; }
@keyframes head_active_bg {
	  0% {opacity: 0; display: none;}
	  100% {opacity: 1; display: block;}
}

#header .header-logo a{ display: block; width: 307px; height: 27px; background: url("../../images/common/in_logo.svg") no-repeat; background-size: contain;}
#header .sp_navi-btn{display: none;}

#header a,
#header a:visited{transition: .5s; color: #333; }
/*#header.upper a,
#header.upper a:visited{color:#ccc; }*/
#header .navi > ul{text-align: right;padding:0px 20px;}
#header .navi > ul > li{display:inline-block;}
#header .navi > ul > li > p.navi_top > a{line-height: 1.2;font-size: 1.5rem; font-weight: bold; letter-spacing: 2px; padding:29px 30px; position: relative; color: #fff; text-decoration: none;}
#header .navi > ul > li > p.navi_top > a::before{content: ""; display: block; width: 100%; height: 0px; background-color: #00AAD4; position: absolute; bottom: 0; left: 0; transition: 0.5s;}
#header .navi > ul > li#header_entry > p.navi_top > a::before{display: none !important;}
#header .navi > ul > li:hover > p.navi_top a::before{height: 3px;}
#header .navi > ul > li > p.navi_top::after,
#header .navi > ul > li.navi_menu > p.navi_top > a::after{ position: absolute; right: 10px; top:45%; content: ""; display: block; width: 7px; height: 7px; border: 2px solid #00AAD4; border-top: none; border-left: none;transform: rotate(45deg);}
#header .navi > ul > li > p.navi_top::after{display: none;}
#header .navi > ul > li#header_entry a{color: #fff !important; background-color: #00AAD4; padding:15px 50px; border-radius: 35px; margin-left: 20px;}
#header .navi > ul > li#header_entry a:hover{text-decoration: none; opacity: 0.7; background-color: #0f95ff;}

/* top */
.top #header .header-logo a{background-image: url("../../images/common/top_logo.svg");}
.top #header{background-color:transparent;}
.top .navi li a{ color: #fff;}
.top #box6{background-color: #fff !important;}

/* header_active */
#header.upper .header-logo a,
#header.header_active .header-logo a{background-image: url("../../images/common/in_logo.svg");}
#header.header_active{background-color: #fff !important;}
#header.upper{background-color: rgba(255,255,255,0.9);}
#header.upper .navi li a,
#header.header_active .navi li a{ color: #333 !important;}

/* menu */
.menu-container{width:80%;margin:0 auto;background:#e9e9e9;}
.menu-mobile{}
.menu-mobile:after{}
.menu > ul{margin:0 auto;width:100%;list-style:none;padding:0;box-sizing:border-box;}
.menu > ul::before,.menu > ul::after{content:"";display:table;}
.menu > ul::after{clear:both;}
.menu > ul > li{float:left;}
.menu > ul > li:hover{}
.menu > ul > li > ul:before,
.menu > ul > li > ul:after{content:"";display:table;}
.menu > ul > li > ul:after{clear:both;}

/* header_in */
.menu > ul > li > .header_in  {position:absolute;z-index:1;left:0; top: 76px; width: 100%; opacity:0; transition: opacity .6s ease, height .2s ease; height: 0px; overflow: hidden;}
.menu > ul > li .header_in .header_in_box{padding:35px 0 35px 0; }

.navi_active .menu > ul > li .header_in{opacity: 1;transition-delay: .3s; display: block;} 
.navi_active .menu > ul > li .header_in .header_in_box{opacity: 1;transition-delay: .3s;}
.menu > ul::before{content: ""; display: block; position:absolute;z-index:0;left:0; top: 76px; width: 100%; height: 0px; overflow: hidden; opacity:0; transition: height .3s ease, opacity .2s ease; background-color: #F7F7F7;box-shadow: rgb(0 0 0 / 5%) 0px 5px 10px;}
.menu > ul:hover::before{opacity: 1; /*transition-delay: .3s;*/}

@media only screen and (min-width :943px) {
.header_active .menu > ul#navi_graduates_box #navi_graduates .header_in,
.header_active .menu > ul#navi_graduates_box::before{height: 482px; z-index: 2; opacity: 1;}
.header_active .menu > ul#navi_career_box #navi_career .header_in,
.header_active .menu > ul#navi_career_box::before{height: 594px; z-index: 2; opacity: 1;}
.header_active .menu > ul#navi_about_box #navi_about .header_in,
.header_active .menu > ul#navi_about_box::before{height: 210px; z-index: 2; opacity: 1;}
.header_active .menu > ul#navi_work_box #navi_work .header_in,
.header_active .menu > ul#navi_work_box::before{height: 210px; z-index: 2; opacity: 1;}
}
.menu > ul > li > .header_in .cont{max-width: 1400px; min-width: 1150px; width: 1150px;}
.menu > ul > li > .header_in li{background: #fff; display: flex; justify-content: flex-start; align-items: center; position: relative; flex-wrap: wrap;}
.menu > ul > li > .header_in li::after{ position: absolute; right: 15px; top:45%; content: ""; display: block; width: 7px; height: 7px; border: 2px solid #00AAD4; border-top: none; border-left: none;transform: rotate(-45deg); transition: 0.5s;}
.menu > ul > li > .header_in li:hover::after{ right: 10px;}
.menu > ul > li > .header_in li .navi_sum{ width: 92px; min-height: 92px; text-align: center;}
.menu > ul > li > .header_in li dl{margin-left: 15px; text-align: left; padding: 15px 0;}
.menu > ul > li > .header_in .layout_box4 li dl{width: 150px;}
.menu > ul > li > .header_in li dt{color: #00AAD3; font-size: 1.4rem; margin: 0 0 0px 0; line-height: 1.2; letter-spacing: 0;}
.menu > ul > li > .header_in li dd{font-size: 1.6rem; margin: 0;}

@media only screen and (max-width :943px) {
#header{ height: 60px; padding-left: 10px; padding-right:10px; min-width: inherit;}
#header .header-logo a{ width: 270px; height: 35px; background-position: left center;}
#header .sp_navi-btn{display: block;cursor: pointer; float:right; margin:11px 2vw; width:34px; height: 26px;position: relative;}
#header .sp_navi-btn span{position: absolute;background:rgba(0,0,0,0.6); width:100%; height:1px; display: block;}
#header .sp_navi-btn span:nth-child(1){top:0px; left:0px; }
#header .sp_navi-btn span:nth-child(2){top:50%; margin-top:-2px; left:0px; }
#header .sp_navi-btn span:nth-child(3){bottom:0px; left:0px; }
	
#header .navi.menu{display:none; position: fixed; top: 60px; left: 0; width: 100%; height:calc(100vh - 60px) ; overflow: scroll !important; background:rgba(0,0,0,0.6);}
#header .navi.menu ul{background-color: #F7F7F7;}
.top #header .sp_navi-btn span{background: #fff !important;}
#header.upper .sp_navi-btn span{background:rgba(0,0,0,0.6) !important; }

/* menu */
.menu > ul > li > .header_in li::after{right: 7px;}
.menu > ul::before{display: none !important;}
#header .navi > ul{padding:0px 0px; text-align: left; color: #333;box-shadow: rgb(0 0 0 / 5%) 0px 5px 10px;}
#header .navi > ul > li{display:block !important; float: none;}
#header .navi > ul > li > p.navi_top{padding: 15px 0; position: relative; background-color: #fff; border-bottom: 1px solid #ddd;}
#header .navi > ul > li > p.navi_top > a{font-size: 1.5rem;  padding:10px 15px; color: #333;}
#header .navi > ul > li > p.navi_top > a::before{ display: none;}
#header .navi > ul > li#header_entry  > a::before{display: none !important;}
#header .navi > ul > li:hover > p.navi_top a::before{height: 3px;}
#header .navi > ul > li.navi_menu > p.navi_top::after{display:block; transform: rotate(-45deg); transition: 0.5s;}
#header .navi > ul > li.navi_menu.active > p.navi_top::after{transform: rotate(45deg);}
#header .navi > ul > li.navi_menu > p.navi_top > a::after{ display: none;}
#header .navi > ul > li#header_entry a{ display: block; text-align: center; margin-right: 20px;}
#header .navi > ul > li#header_entry a:hover{text-decoration: none; opacity: 0.7; background-color: #0f95ff;}

.navi_active #header .header-logo a{background-image: url("../../images/common/in_logo.svg");}
.navi_active #header {background-color: rgba(255,255,255,1);}
.navi_active #header .navi li a{ color: #333 !important;}
.navi_active #header .sp_navi-btn span{background:rgba(0,0,0,0.6) !important;}
.navi_active #header .navi > ul > li > p.navi_top{background:rgba(255,255,255,1); border-bottom-color: #ddd;}
.navi_active #header .navi > ul > li > p.navi_top > a{color: #333;}
  
 

/* header_in */
.menu > ul > li > .header_in .cont{ width: auto; max-width: inherit; min-width: inherit;}
.menu > ul > li.navi_menu > .header_in{width:100%;padding:10px 5px;position:static; height: auto; overflow: auto;display:none; opacity: 1;}
.menu > ul > li > .header_in .header_in_box{padding:0; opacity: 1;}
.menu > ul > li.navi_menu.active > .header_in{height: auto; opacity: 1!important;}
.menu > ul > li > .header_in li{width: 49% !important; margin-right: 2% !important; margin-left: initial !important;}
.menu > ul > li > .header_in li:nth-child(2n){margin-right: 0 !important;}
.menu > ul > li > .header_in li .navi_sum{ display: none;}
.menu > ul > li > .header_in li dl{margin-left: 7px; margin-right: 15px; padding: 10px 0;}
.menu > ul > li > .header_in .layout_box4 li dl{width:auto;}
.menu > ul > li > .header_in li dt{}
.menu > ul > li > .header_in li dd{}

/* top */
.top #header .sp_navi-btn span{background:rgba(255,255,255,0.9);}
/*.top #header .navi > ul > li > p.navi_top{ background-color: transparent; color: #fff; border-bottom: #4e4e4e 1px solid;}
.top #header .navi > ul > li > p.navi_top:last-child{border-bottom: none;}
.top #header .navi > ul > li > p.navi_top > a{color: #fff;}*/

}


/* main-vis
-----------------------------------------------*/
.top #main-vis{background: #000;}
/* main-images_box */
#main-images_box{overflow: hidden; height: 408px; position: relative; margin-top: 83px; min-width: 1400px; position: relative; z-index: 0;}
#main-images_box #main-images{background: no-repeat center left; background-size: cover; height: 358px; width: 77%; position: absolute; top: 0; right: 0; z-index: 1;}
#main-images_box::after{content: ""; display: block; width: 55%; height: 290px; background-color: #F7F7F7; position: absolute; bottom: 0; left: 0; z-index: -1;}
#main-images_box #main-images_title{position: absolute; top: 43%; left: 11%; z-index: 2; font-size: 3.0rem; font-weight: bold; letter-spacing: 5px; line-height: 1.4; background-color: #fff; width: 340px; padding:30px 45px; box-sizing: border-box;}
#main-images_box #main-images_title span{font-size: 1.5rem; color: #00AAD2; display: block; letter-spacing: 1px; margin-top: 10px;}

@media only screen and (max-width :768px) {
/* main-images_box */
#main-images_box{height: 160px; position: relative; margin-top: 60px; min-width:inherit;}
#main-images_box #main-images{background: no-repeat center left; background-size: cover; height: 144px; width: 77%; position: absolute; top: 0; right: 0; z-index: 1;}
#main-images_box::after{content: ""; display: block; width: 45%; height: 115px; background-color: #F7F7F7; position: absolute; bottom: 0; left: 0; z-index: -1;}
#main-images_box #main-images_title{ top: 36%; left: 3%; font-size: 2.3rem;letter-spacing: 2px; min-width: 180px; width: auto; padding:15px 20px;  }
#main-images_box #main-images_title span{font-size: 1.3rem;}
}

/* パンくず
-----------------------------------------------*/
#breadcrumb {padding:10px 10px 10px 0 ; margin-top: -35px; text-align: right; z-index: 1; position: relative;}
#breadcrumb ul li{display:inline-block;font-size:1.4rem; letter-spacing: 2px;}
#breadcrumb ul li::after{content: "≫"; display: inline-block; margin: 0 5px;}
#breadcrumb ul li:last-child::after{display: none;}
@media only screen and (max-width :768px) {
	#breadcrumb{margin-top: -25px;}
	#breadcrumb ul{padding:5px 0 5px;}
	#breadcrumb ul li{font-size:1.0rem;}
}

/* side
-----------------------------------------------*/
#side .side-box > *{margin-bottom: 20px;}

/* footer
-----------------------------------------------*/
#footer {background-color: #fff;}
#footer #footer_messege{text-align: center; padding: 30px 0; border-top: 1px solid #eee; }
#footer #footer_navi{border-bottom: 1px solid #eee; border-top: 1px solid #eee; padding: 40px 0; }
#footer .footer_sns{padding: 40px 0;}
#footer .footer_sns li{margin: 0 10px 5px 10px;}
#footer #footer_bottom{padding: 30px 30px 30px 30px; align-items: flex-end;}
#footer #footer_b_link ul{ display: flex; justify-content: flex-end;}
#footer #footer_b_link li{border-left: 1px solid #eee; padding: 0 10px;font-size:85%;}
#footer #footer_b_link li:first-child{border-left: none;}
#footer .footer_copyright {line-height: 40px; text-align: center; }
#footer_pagetop { position: fixed; bottom: 25px; right: 25px; z-index: 10;}
@media only screen and (max-width :768px) {
#footer_pagetop { bottom:5px; right: 5px; width: 35px; height: 35px;} 
#footer #footer_messege{padding: 15px 0;}
#footer #footer_navi{padding: 0px 0; width: 100%; box-sizing: border-box;}
#footer #footer_navi ul > li{width: 50% !important; margin-bottom: 0 !important; margin-right: 0!important; position: relative;}
#footer #footer_navi ul > li::after{content:"";position:absolute;top:50%;margin-top:-2px;right:8px;width:6px;height:6px; border-top:2px solid #ddd;border-right:2px solid #ddd;transform:rotate(45deg); z-index:999; transition: 0.5s;}
#footer #footer_navi ul {padding: 0;}
#footer #footer_navi ul > li a{display: block; padding: 10px 15px; text-align: left; border: #eee 1px solid; border-bottom: none; border-left: none; margin-bottom: 0;}
#footer #footer_navi ul > li:nth-child(2n) a{border-right: none;}
#footer #footer_navi ul > li:nth-child(1) a,
#footer #footer_navi ul > li:nth-child(2) a{border-top: none;}
#footer .footer_sns{padding: 20px 0; display: flex; justify-content: center;}
#footer #footer_bottom{padding: 0 20px 30px 20px; display: flex; flex-wrap: wrap;}
#footer #footer_b_link{order: 1; width: 100%; margin-bottom: 10px;}
#footer .footer_b_pa{text-align: center; width: 100%; order: 2;}
#footer #footer_b_link ul{ display:block;}
#footer #footer_b_link li{border-bottom: 1px solid #eee; border-left: none; padding: 10px 0;}
#footer #footer_b_link li:last-child{border-bottom: none;}
#footer .footer_copyright {line-height: 40px; text-align: center; }
}


/* pagenation*/
.pagination{text-align:center;line-height:32px;margin:60px 0 90px;position: relative;}

.archives_pagination .prev{position:absolute;top:0;left:0px;}
.archives_pagination .next{position:absolute;top:0;right:0px;}
.archives_pagination a:not(.next):not(.prev),
.archives_pagination span.page-numbers{background:#ddd;color:#fff;display:inline-block;margin:0 8px;width:32px;}
.archives_pagination span.current{background:#333;}

.single_pagination{display: flex; justify-content: space-between;}
.single_pagination a{color: #999;background:#fff; text-decoration: underline;}
@media only screen and (max-width :768px) {
	.pagination{line-height:25px;margin:35px 0 45px;}
	.archives_pagination .prev,
	.archives_pagination .next{font-size:1.1rem;}
	.archives_pagination a:not(.next):not(.prev),
	.archives_pagination span.page-numbers{margin:0 2px;width:25px;}
}

/* widget周辺*/
.widget-title{ /*widgetのタイトル*/
border-bottom: 3px solid #ddd; font-size:1.6rem; line-height:1.5; margin-bottom:20px; padding-left:10px; text-align: center;}
#wp-calendar{width: 200px; max-width: 100%; margin: 0 auto; }
#wp-calendar tbody{color:#ccc;}
#wp-calendar tbody a{font-weight: bold; color:#333;}
#wp-calendar tbody #today a{color: red;}

.wistia_responsive_padding{
max-width:85%;
margin:0 auto;
box-shadow:1px 10px 50px #cccccc;
}