@charset "utf-8";

/* common */
@import url(normalize.css);



/*
	HTML5 Reset :: style.css
-------------------------------------------------------------------------------*/

/* Let's default this puppy out
-------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

article, aside, figure, footer, header, hgroup, nav, section {display: block;}

/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
img,
object,
embed {max-width: 100%;}
img{ vertical-align : middle}

/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}

/* we use a lot of ULs that aren't bulleted.
	don't forget to restore the bullets within content. */
ul,ol {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before,
blockquote:after,
q:before,
q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}

/*input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline; vertical-align:0.5em;} */
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}

/* Accessible focus treatment
	people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {outline: none;}

small {font-size: 85%;}

strong, th {font-weight: bold;}

td, td img {vertical-align: top;}

/* Make sure sup and sub don't screw with your line-heights
	gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}

/* scale images in IE7 more attractively */
.ie7 img {-ms-interpolation-mode: bicubic;}

/* prevent BG image flicker upon hover */
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}

/* let's clear some floats */
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }



/* Ok, this is where the fun starts.
-------------------------------------------------------------------------------*/

/* new Linux- and Windows-friendly sans-serif font stack: http://mky.be/fontstack */

body {
	font: 90%/1.6 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	text-align: center; margin: 0 auto; }

/* we like off-black for text */
body, select, input, textarea {color: #333;}

a:link {
	color: #333;
	text-decoration: none;
}
a:visited {
	color: #6E6C64;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	text-decoration: underline;
}

/* Custom text-selection colors (remove any text shadows: twitter.com/miketaylr/status/12228805301)
::-moz-selection{background: #fcd700; color: #fff; text-shadow: none;}
::selection {background: #fcd700; color: #fff; text-shadow: none;}
*/
/*	j.mp/webkit-tap-highlight-color
a:link {-webkit-tap-highlight-color: #fcd700;}
*/
ins {background-color: #fcd700; color: #000; text-decoration: none;}
mark {background-color: #fcd700; color: #000; font-style: italic; font-weight: bold;}

#wrapper { margin: 0 auto; text-align: left; }
.inner { width: 960px; margin: 0 auto; position: relative; text-align: left; }

/*header { background: url(../img/header_bg.png) left top repeat-x; height: 120px; background-attachment: fixed; width: 100%; z-index: 2; }*/
header { height: 193px; background-attachment: fixed; width: 100%; z-index: 2; }

header p { font-size: 80%; text-align: right; line-height: 1.2; padding: 5px 0; }
header h1 { position: absolute; left: 0; top: 0; z-index: 10; width: 330px; height:120px; }



nav { position: absolute; left: 330px; top: 42px; width: 630px; z-index: 10; }
nav ul li { float: left; height: 78px; width: 210px; }


article { text-align: center; width: 100%;  }
section { margin: 0 auto; }
section img { max-width: 960px; }

/* key00 */
#key00 h1 { background: url(../img/main_bg.png) center top repeat-x; height: 409px; }
#key00 .block { width: 310px; float: left; padding-right: 15px; margin-bottom: 40px; }
#key00 .block.last { padding-right: 0; }
#key00 .block small { display: block; padding: 5px 0; }
#key00 .block .mov1 { background: #FAFAFA; border-left: 1px solid #367FD0; border-right: 1px solid #367FD0; padding: 0 10px; z-index: 1; }
#key00 .block .mov2 { background: #FAFAFA; border-left: 1px solid #F08A30; border-right: 1px solid #F08A30; padding: 0 10px;z-index: 1;  }
#key00 .block .mov3 { background: #FAFAFA; border-left: 1px solid #78BF4C; border-right: 1px solid #78BF4C; padding: 0 10px; z-index: 1; }
#key00 .block p { padding: 10px 20px; background: #ECF0F1; line-height: 1.4; min-height: 7.4em; }
#key00 .block a.youtube { display: block; width: 280px;height: 160px; }


/* key01 */
#key01 h1 { margin-bottom: 20px; }
#key01 h2 { margin-bottom: 10px; }
#key01 h3 { margin: 0 auto; }
#key01 .inner ul { margin: 10px 10px 40px 10px; }
#key01 .inner ul li { margin-bottom: 15px; }

#key01 #stone04 p { margin: 20px 10px 40px; }
#key01 h4 { margin: 0 20px 10px; font-size: 130%; font-weight: normal; }
#key01 .block dl { float: left; width: 300px; border: 1px solid #DDD; background: #fafafa; margin: 0 10px 40px 5px;
border-radius: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
}
#key01 .block dl dt { padding: 10px; }
#key01 .block dl dd { padding: 0 15px 15px; min-height: 21em; *height: 21em; *margin-bottom: 40px; }
#key01 ol { margin-bottom: -20px; }
#key01 ol li { margin-bottom: 20px; float: left; padding-left: 10px; }
#key01 .block { *padding-bottom: 40px; }


/* key02 */
#key02 h1 { margin-bottom: 20px; }
#key02 .company { border: 1px solid #aaa; background: #fafafa; padding: 10px 20px;
border-radius: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px; }
#key02 .company { margin-bottom: 40px; }
#key02 .company ul { margin-bottom: 4px; }
#key02 .company li { float: left; padding: 1px; }
#key02 .company p { margin-top: 10px; }
#key02 h3 { margin-bottom: 30px; }
#key02 .block { border: 1px solid #ddd; background: #fafafa; padding: 10px 20px; margin: 0 10px 20px; min-height: 470px; *height: 480px;
border-radius: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px; }
#key02 .block.sega { min-height: 380px; *height: 410px;}
#key02 #grad01 { background-color:#fff;  }
#key02 #grad02 {   }
#key02 .block h4 { text-align: center; margin: 0 auto 20px; }
#key02 .block dl { width: 520px; margin:0 auto; }
#key02 .block dl.box-center { width: 520px; margin: 0 auto 0; }
#key02 .block dl dt { width: 142px; float: left; }
#key02 .block dl dd { width: 360px; float: right; }
#key02 .block dl dd h5 { margin-bottom: 20px; }
#key02 .block dl dd p { margin-right: 20px; }

/* flipchannel
-------------------------------------------------------------------------------*/
.flipchannel {
	position: relative;
	padding: 20px 0 0;
	width: 950px;
	margin: 0 auto 40px;
}

.flipchannel_movie{
	position: absolute;
	left: 25px;
	bottom: 25px;
}


/* -- */
.actionBtn { width: 1038px;  margin: 50px auto;position: relative;}
.actionBtn_search p:first-child{width: 659px;}
.actionBtn_search p:first-child + p{position: absolute;top:28px;left:684px;}

#stone01 { background: url(../img/stone01.png) center top no-repeat; padding: 20px 0; }
#stone02 { background: url(../img/stone02.png) center top no-repeat; padding: 30px 0; margin-top: 20px }
#stone03 { background: url(../img/stone03.png) center top no-repeat; padding: 0 0 10px 0; }
#stone04 { background: url(../img/stone04.png) center top no-repeat; }
#stone05 { background: url(../img/stone05.png) center top no-repeat; padding: 20px 0 40px; }
#stone06 { background: url(../img/stone06.png) center top no-repeat; padding: 0 0 20px 0; }



/* footer */
footer { padding: 16px 0 4px; font-size: 80%; }
footer .inner { margin: 0 auto; }
footer p { text-align: center; }
footer address { text-align: center; font-size: 0.9em; color: #999; font-style: normal; }

footer h1 { width: 300px; text-align: left; position: absolute; left: 30px; top: 0; }
footer ul { text-align: right; padding: 8px 0 0; margin-bottom: 16px; }
footer li { display: inline; padding-left: 50px; }


/* Media queries!
-------------------------------------------------------------------------------*/
@media only screen
and (min-width : 480px) {
}

@media only screen
and (min-width : 768px) {

}


/* Media queries!
-------------------------------------------------------------------------------*/

@media only screen
and (min-width : 1024px) {

}



/* Consider this: www.cloudfour.com/css-media-query-for-mobile-is-fools-gold/ */
@media screen and (max-device-width: 480px) {

}

@media all and (orientation: portrait) {

}

@media all and (orientation: landscape) {

}


/* Print styles!
-------------------------------------------------------------------------------*/
@media print {



}

/*LINE banner*/
.bnr_line{
    text-align: center;
    padding: 60px 0 60px;
  }

  .bnr_line a:hover{
    opacity: 0.7;
  }
.bnr_line2{
    text-align: center;
    padding: 60px 0 0;
  }

  .bnr_line2 a:hover{
    opacity: 0.7;
  }
/*LINE banner*/
/**共通フッタ用**/
.bnr_line2 {
    text-align: center;
    padding: 60px 0 60px;
}
img[src^="http://f.msgs.jp/t/dummy.gif"] {
    display: none;
}
.include-footer-area-list__item{
    padding-left: 0;　
}
/**共通ヘッダ用**/
.header-vantan-logo{
    padding-left: 12px;
    padding-top: 12px;
}

/*--------------------------------------------------------------
# our-vision
--------------------------------------------------------------*/
.our-vision-wrap{
	background-color: #fff;
	width: 100%;
	padding: 80px 0;
	display: flex;
	justify-content: center;
}
.our-vision-wrap.is-add-border{
	padding-top: 0;
	margin-top: 80px;
}

.our-vision-head{
	width: 140px;
	height: 40px;
}

.our-vision-wrap.is-add-border .our-vision{
border-top: 1px solid #e5e5e5;
	padding-top: 80px;
}

.our-vision-body{
	display: flex;
	margin-top: 20px;
}

.our-vision-thum{
	margin-right: 60px;
}

.our-vision-text-area-heading{
	font-size: 25px;
	line-height: 1.4;
	text-align: left;
}

.our-vision-text-wrap{
	margin-top: 20px;
}

.our-vision-text-wrap > * + * {
	margin-top: 8px;
}

.our-vision-text{
	font-size: 14px;
	line-height: 2;
	text-align: left;
}

/*--------------------------------------------------------------
# badge fukuoka
--------------------------------------------------------------*/
.badge_fukuoka {
    position: absolute;
    top:341px;
    left:calc(50% + 250px);
}
.badge_fukuoka img {
    max-width: 75%;
}
.holdings-logo {
    padding-top: 0 !important;
}

/*--------------------------------------------------------------
# 就職率部分変更。2022.10
--------------------------------------------------------------*/
#stone06{background:none;}
.add-rate-reason{
	width:100%;
	padding:0 0 20px;
	position:relative;
	text-align:right;
}
.rate-reason-switch{
	display:inline-block;
	margin:0 0 0 auto;
	cursor:pointer;
	position:relative;
}
.rate-reason-switch:before{
	content:"";
	display:block;
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:0;
	border-top:1px solid #000;
	transition:opacity ease .4s;
}
.rate-reason-switch:hover:before{
	opacity:0;
}
.rate-reason-switch:hover + .rate-reason-box{
	opacity:1;
}
.rate-reason-box{
	opacity:0;
	transition:opacity ease .4s;
	position:absolute;
	z-index:999;
	right:20px;
	bottom:110%;
	width:62%;
	background:#fff;
	padding:15px;
	border:1px solid #959595;
	border-radius:5px;
}
.rate-reason-box:after{
	content:"";
	display:block;
	position:absolute;
	z-index:999;
	right:5px;
	top:100%;
	margin-left:-10px;
	border:10px solid transparent;
	border-top:8px solid #959595;
	width:0;
	height:0;
}
.rate-reason-box p{
	font-size:13px;
	text-align:left;
}
.rate-reason-box p.annotation{
	margin-top:.5em;
	font-size:11px;
}
