@charset "UTF-8";
/*------------------------------
  汎用クラス
------------------------------*/
.mt00 { margin-top: 0 !important; }

.mt05 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mt45 { margin-top: 45px !important; }

.mt50 { margin-top: 50px !important; }

.mt55 { margin-top: 55px !important; }

.mt60 { margin-top: 60px !important; }

.mt65 { margin-top: 65px !important; }

.mt70 { margin-top: 60px !important; }

.mt75 { margin-top: 75px !important; }

.mt80 { margin-top: 80px !important; }

.mt85 { margin-top: 85px !important; }

.mt90 { margin-top: 90px !important; }

.mt95 { margin-top: 95px !important; }

.mt100 { margin-top: 100px !important; }

.mr00 { margin-right: 0 !important; }

.mr05 { margin-right: 5px !important; }

.mr10 { margin-right: 10px !important; }

.mr15 { margin-right: 15px !important; }

.mr20 { margin-right: 20px !important; }

.mr25 { margin-right: 25px !important; }

.mr30 { margin-right: 30px !important; }

.mr35 { margin-right: 35px !important; }

.mr40 { margin-right: 40px !important; }

.mr45 { margin-right: 45px !important; }

.mr50 { margin-right: 50px !important; }

.mr55 { margin-right: 55px !important; }

.mr60 { margin-right: 60px !important; }

.mr65 { margin-right: 65px !important; }

.mr70 { margin-right: 70px !important; }

.mr75 { margin-right: 75px !important; }

.mr80 { margin-right: 80px !important; }

.mr85 { margin-right: 85px !important; }

.mr90 { margin-right: 90px !important; }

.mr95 { margin-right: 95px !important; }

.mr100 { margin-right: 100px !important; }

.mb00 { margin-bottom: 0 !important; }

.mb05 { margin-bottom: 5px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb15 { margin-bottom: 15px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb25 { margin-bottom: 25px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb35 { margin-bottom: 35px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb45 { margin-bottom: 45px !important; }

.mb50 { margin-bottom: 50px !important; }

.mb55 { margin-bottom: 55px !important; }

.mb60 { margin-bottom: 60px !important; }

.mb65 { margin-bottom: 65px !important; }

.mb70 { margin-bottom: 60px !important; }

.mb75 { margin-bottom: 75px !important; }

.mb80 { margin-bottom: 80px !important; }

.mb85 { margin-bottom: 85px !important; }

.mb90 { margin-bottom: 90px !important; }

.mb95 { margin-bottom: 95px !important; }

.mb100 { margin-bottom: 100px !important; }

.ml00 { margin-left: 0 !important; }

.ml05 { margin-left: 5px !important; }

.ml10 { margin-left: 10px !important; }

.ml15 { margin-left: 15px !important; }

.ml20 { margin-left: 20px !important; }

.ml25 { margin-left: 25px !important; }

.ml30 { margin-left: 30px !important; }

.ml35 { margin-left: 35px !important; }

.ml40 { margin-left: 40px !important; }

.ml45 { margin-left: 45px !important; }

.ml50 { margin-left: 50px !important; }

.ml55 { margin-left: 55px !important; }

.ml60 { margin-left: 60px !important; }

.ml65 { margin-left: 65px !important; }

.ml70 { margin-left: 60px !important; }

.ml75 { margin-left: 75px !important; }

.ml80 { margin-left: 80px !important; }

.ml85 { margin-left: 85px !important; }

.ml90 { margin-left: 90px !important; }

.ml95 { margin-left: 95px !important; }

.ml100 { margin-left: 100px !important; }

.pt00 { padding-top: 0 !important; }

.pt05 { padding-top: 5px !important; }

.pt10 { padding-top: 10px !important; }

.pt15 { padding-top: 15px !important; }

.pt20 { padding-top: 20px !important; }

.pt25 { padding-top: 25px !important; }

.pt30 { padding-top: 30px !important; }

.pt35 { padding-top: 35px !important; }

.pt40 { padding-top: 40px !important; }

.pt45 { padding-top: 45px !important; }

.pt50 { padding-top: 50px !important; }

.pt55 { padding-top: 55px !important; }

.pt60 { padding-top: 60px !important; }

.pt65 { padding-top: 65px !important; }

.pt70 { padding-top: 70px !important; }

.pt75 { padding-top: 75px !important; }

.pt80 { padding-top: 80px !important; }

.pt85 { padding-top: 85px !important; }

.pt90 { padding-top: 90px !important; }

.pt95 { padding-top: 95px !important; }

.pt100 { padding-top: 100px !important; }

.pr00 { padding-right: 0 !important; }

.pr05 { padding-right: 5px !important; }

.pr10 { padding-right: 10px !important; }

.pr15 { padding-right: 15px !important; }

.pr20 { padding-right: 20px !important; }

.pr25 { padding-right: 25px !important; }

.pr30 { padding-right: 30px !important; }

.pr35 { padding-right: 35px !important; }

.pr40 { padding-right: 40px !important; }

.pr45 { padding-right: 45px !important; }

.pr50 { padding-right: 50px !important; }

.pr55 { padding-right: 55px !important; }

.pr60 { padding-right: 60px !important; }

.pr65 { padding-right: 65px !important; }

.pr70 { padding-right: 70px !important; }

.pr75 { padding-right: 75px !important; }

.pr80 { padding-right: 80px !important; }

.pr85 { padding-right: 85px !important; }

.pr90 { padding-right: 90px !important; }

.pr95 { padding-right: 95px !important; }

.pr100 { padding-right: 100px !important; }

.pb00 { padding-bottom: 0 !important; }

.pb05 { padding-bottom: 5px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb15 { padding-bottom: 15px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb25 { padding-bottom: 25px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb35 { padding-bottom: 35px !important; }

.pb40 { padding-bottom: 40px !important; }

.pb45 { padding-bottom: 45px !important; }

.pb50 { padding-bottom: 50px !important; }

.pb55 { padding-bottom: 55px !important; }

.pb60 { padding-bottom: 60px !important; }

.pb65 { padding-bottom: 65px !important; }

.pb70 { padding-bottom: 70px !important; }

.pb75 { padding-bottom: 75px !important; }

.pb80 { padding-bottom: 80px !important; }

.pb85 { padding-bottom: 85px !important; }

.pb90 { padding-bottom: 90px !important; }

.pb95 { padding-bottom: 95px !important; }

.pb100 { padding-bottom: 100px !important; }

.pl00 { padding-left: 0 !important; }

.pl05 { padding-left: 5px !important; }

.pl10 { padding-left: 10px !important; }

.pl15 { padding-left: 15px !important; }

.pl20 { padding-left: 20px !important; }

.pl25 { padding-left: 25px !important; }

.pl30 { padding-left: 30px !important; }

.pl35 { padding-left: 35px !important; }

.pl40 { padding-left: 40px !important; }

.pl45 { padding-left: 45px !important; }

.pl50 { padding-left: 50px !important; }

.pl55 { padding-left: 55px !important; }

.pl60 { padding-left: 60px !important; }

.pl65 { padding-left: 65px !important; }

.pl70 { padding-left: 70px !important; }

.pl75 { padding-left: 75px !important; }

.pl80 { padding-left: 80px !important; }

.pl85 { padding-left: 85px !important; }

.pl90 { padding-left: 90px !important; }

.pl95 { padding-left: 95px !important; }

.pl100 { padding-left: 100px !important; }

/*------------------------------
  表示非表示
------------------------------*/
/* モバイル・タブレット */
@media screen and (max-width: 767px) { .show-for-small, .sp { display: block !important; }
  .hide-for-small, .pc, .pc-inline { display: none !important; } }

/* デスクトップサイズ 768px以上 */
@media (min-width: 768px) { .show-for-small, .sp { display: none !important; }
  .hide-for-small, .pc { display: block !important; }
  .pc-inline { display: inline-grid !important; }
  .pull-right-pc { float: right; }
  .pull-left-pc { float: left; } }

.shadow { display: table; top: 0; left: 0; width: 100%; height: 100%; /*background-image: url(../img/dotted.png);*/ background-color: rgba(44, 62, 80, 0.2); top: 0; left: 0; width: 100%; height: 100%; background-repeat: repeat; background-repeat-x: repeat; background-repeat-y: repeat; z-index: 1; }

.clip-img { overflow: hidden; }

.txt-blue { color: #00a0e9; }

.txt-bold { font-weight: bold; }

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

.pic { background-color: #fff; border: 1px solid #ddd; padding: 5px; box-shadow: 3px 3px 3px #ddd; box-sizing: border-box; }

figcaption { display: none; }

#searchform label { display: none; }

#searchform input[type=text] { line-height: 18px; padding: 8px 13px; font-size: 14px; width: 100%; box-sizing: border-box; border: 1px solid #e5e5e5; float: left; }

#searchform input[type=submit] { height: 36px; box-sizing: border-box; padding: 0 17px; border: 1px solid #ccc; font-weight: bold; }

#searchform input#s { width: 70%; }

/*------------------------------
  基本スタイル
------------------------------*/
/*body {
    font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Helvetica Neue","Helvetica","Arial",sans-serif;
    line-height: 170%;
    font-size: 1.6rem;
    color: #333;
}*/
body { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important; color: #333; }

p { font-size: 1em; line-height: 1.8em; margin-bottom: 20px; }

ul { list-style-type: none; padding: 0; margin: 0; }

ul.disc { list-style-type: disc; padding-left: 40px; }

hr.dotted { margin: 32px 0; border-right: 0; border-top: 0; border-bottom: 1px dashed #BFBFBF; border-left: 0; height: 0; }

#mainContents { padding-bottom: 40px; }

.container { width: 950px; }

.breadcrumb-box { background-color: #f5f5f5; }

.container.container-expand { width: 1200px; }

.container.container-expand .row { margin: 0; }

/*
#searchform label {
    display: none;
}
#searchform input[type=text] {
    line-height: 18px;
    padding: 8px 13px;
    font-size: 14px;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #e5e5e5;
    float: left;
}
#searchform input[type=submit] {
    height: 36px;
    box-sizing: border-box;
    padding: 0 17px;
    border: 1px solid #ccc;
    font-weight: bold;
}
#searchform input#s {
    width: 70%;
}*/
/*------------------------------
    タイポグラフィー
------------------------------*/
.page-header { font-size: 35px; }

.typo-h2 { color: #0099dd; font-weight: normal; font-size: 33px; padding: 60px 0 20px 0; margin: 0; }

.typo3 { font-size: 24px; border-bottom: 2px solid #0099dd; /*border-color: rgba(34, 185, 242, 0.8);*/ /*border-radius: 5px;*/ padding: 11px 10px 5px; margin-top: 0; margin-bottom: 26px; font-weight: bold; line-height: 1.6; color: #0099dd; }

.typo5 { color: #0099dd; font-weight: bold; }

.typo5:before { content: "\f046"; display: inline-block; font: normal normal normal 14px/1 FontAwesome; font-size: inherit; text-rendering: auto; -webkit-font-smoothing: antialiased; margin-right: 5px; }

.typo6 { color: #333; font-weight: 200; font-size: 36px; line-height: 52px; text-align: center; margin: 0 0 8px 0; }

.typo7 { color: #333; font-size: 24px; margin-bottom: 8px; }

.typo8 { margin: 0; font-size: 20px; line-height: 36px; }

.typo9 { font-size: 24px; font-weight: bold; background: #f6f6f6; padding: 20px; margin-top: 40px; margin-bottom: 30px; }

.typo10 { font-size: 24px; font-weight: bold; padding: 20px; margin-top: 30px; margin-bottom: 30px; text-align: center; }

.typo11 { color: #09d; font-weight: bold; }

/*------------------------------
    ボタン
------------------------------*/
.kits-btn { display: inline-block; background-color: #ccc; color: #fff; text-align: center; font-weight: bold; line-height: 100%; padding: 27px 30px; font-size: 22px; border-radius: 5px; transition: all 0.3s ease; box-sizing: border-box; width: 100%; }

.kits-btn:hover, .kits-btn:focus { text-decoration: none; color: #fff; }

.warning.kits-btn { background-color: #ff9800; }

.warning.kits-btn:hover, .warning.kits-btn:focus { background-color: #ffb500; }

/*------------------------------
    ヘッダー
------------------------------*/
#header { position: fixed; background: #ffffff url(../img/navibg.gif) repeat-x bottom left; height: 90px; margin: 0px; padding: 0px; }

.header-container { width: 940px; position: relative; margin: 0 auto; text-align: left; }

.header-container h1 { margin: 0; position: absolute; top: 20px; }

.header-container h2 { font-size: 11px; font-weight: normal; color: #999; padding-right: 7px; position: absolute; top: 13px; right: 280px; margin: 0px; white-space: nowrap; }

.header-container #umenu { height: 35px; }

.header-container #umenu_list { position: absolute; top: 11px; right: 0px; color: #999999; font-size: 11px; }

.header-container #gmenu { margin-right: 130px; }

.header-container #gmenu li { float: left; }

.header-container .nav > li { border-left: 1px solid #ccc; height: 40px; }

.header-container .nav > li:first-child { border: none; }

.header-container .nav > li > a { background-position: 0px 0px; color: #333; font-size: 19px; font-weight: bold; padding: 0; padding-left: 10px; padding-right: 20px; -webkit-transition: all 0.3s ease 0s; -moz-transition: all 0.3s ease 0s; -o-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }

.header-container .nav > li > a:hover { background-color: transparent; color: #00a0e9; }

.header-container .nav > li.active a { color: #00a0e9; }

.header-container .nav > li:hover .sub-menu { display: block; position: absolute; z-index: 1000; border-top: 1px solid #ccc; width: 210px; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2); opacity: 0.97; }

.header-container .nav > li:hover .sub-menu li { background: #fff; border-bottom: 1px solid #e5e5e5; width: 210px; position: relative; }

.header-container .nav > li:hover .sub-menu li a { display: block; padding: 15px; color: #4d4d4d; }

.header-container .nav > li:hover .sub-menu li a .menu-sub { font-size: 13px; }

.header-container .inquiry-btn { padding: 8px 17px; font-size: 14px; margin-bottom: 5px; width: 128px; display: block; }

.menu-sub { display: block; font-size: 11px; }

.sub-menu { display: none; }

#header #headerImg { position: absolute; top: 30px; }

#header #headerImg img { width: 170px; }

/*------------------------------
    フッター
------------------------------*/
footer { margin-top: 50px; background-color: #4a636d; }

footer a { color: #fff; text-decoration: none; }

footer a:hover { background-color: transparent !important; color: #fff; text-decoration: underline !important; }

footer .footer-top li a { padding-top: 10px; padding-left: 0; font-size: 13px; }

footer .footer-top li a:focus { background-color: transparent; color: #fff; }

footer .footer-contents { width: 100%; background: #435964; padding: 25px; }

footer .footer-contents h4 { color: #fff; font-size: 18px; font-weight: bold; margin-top: 0; margin-bottom: 15px; }

footer .footer-contents ul { list-style-type: none; padding-left: 5px; }

footer .footer-contents li { font-size: 14px; }

footer .footer-bottom { padding: 20px 0 10px; }

footer .footer-bottom li a { padding-top: 0; padding-bottom: 0; font-size: 13px; padding: 0 10px; }

footer .footer-bottom .copyright { width: auto; margin: 0; padding: 0; color: #A5B1B7; bottom: 15px; margin: 0; margin-top: 5px;}

.sidemenu ul { border-bottom: 1px solid #e3e3e3; }

.sidemenu li { border-top: 1px solid #e3e3e3; }

.sidemenu li a { display: block; line-height: 100%; padding: 22px 20px 22px 10px; background-repeat: no-repeat; background-position: right 50%; font-size: 16px; text-decoration: none; transition: all 0.2s ease 0s; color: #09d; }

.sidemenu li.active { text-decoration: none; background-color: #eee; }

.sidemenu li.active a { color: #666; }

/*-------------------------------------
    トップページ
-------------------------------------*/
#main { position: relative; top: 90px; padding-bottom: 90px; }

#main .main-copy { border-bottom: 1px dotted #bbb; padding: 35px 0; position: relative; margin-bottom: 30px; }

#main .main-copy p { font-size: 1em; line-height: 1.8em; margin: 0; }

.performance { margin-bottom: 40px !important; }

.performance .performance-box { border: 2px solid #ccc; border-radius: 50%; width: 150px; height: 150px; margin: 0 auto; padding: 15px; text-align: center; }

.performance .performance-box .fa { font-size: 44px; color: #09d; }

.performance .performance-box .performance-text { color: #333; font-size: 20px; font-weight: bold; margin-top: 8px; line-height: 1; }

.performance .performance-box .performance-num { font-size: 29px; color: #09d; }

.reason { text-align: center; padding: 0 0 60px; }

.reason a, .reason a:hover { color: inherit; text-decoration: none; }

.reason .reason-box { margin-top: 16px; }

.reason h3 { height: 52px; }

.reason p { font-size: 14px; }

.reason .fa { color: #0099dd; }

.reason .reason-box { padding: 15px; }

.reason .reason-box:hover { cursor: pointer; background: #eee; transition: all 0.25s ease-in-out; }

#interview { padding: 50px 0; background: #eee; margin-top: 70px; }

#interview h2 { font-size: 24px; font-weight: bold; text-align: center; margin-bottom: 30px; }

#interview .interview-box { background-color: #fff; box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1); }

#interview .interview-box p { padding: 10px 16px; margin: 0; }

#interview .interview-box.corporate-ribon { position: relative; }

#interview .interview-box.corporate-ribon:before { content: "ご担当者様インタビュー"; color: #fff; position: absolute; background: #ee4637; top: -10px; left: -10px; padding: 8px 10px 5px; }

#interview .interview-box.corporate-ribon:after { content: " "; position: absolute; top: 23px; left: -10px; width: 0; height: 0; border-width: 0 10px 10px 0; border-style: solid; border-color: transparent; border-right-color: #c82011; }

#interview .interview-box.student-ribon { position: relative; }

#interview .interview-box.student-ribon:before { content: "受講生インタビュー"; color: #fff; position: absolute; background: #5cb85c; top: -10px; left: -10px; padding: 8px 10px 5px; }

#interview .interview-box.student-ribon:after { content: " "; position: absolute; top: 23px; left: -10px; width: 0; height: 0; border-width: 0 10px 10px 0; border-style: solid; border-color: transparent; border-right-color: #3d8b3d; }

#news { border-top: 1px solid #c9c9c9; border-bottom: 1px solid #c9c9c9; padding: 50px 0; background: #eee; font-size: 14px; line-height: 22px; }

#news dl { border-bottom: 1px dashed #c9c9c9; }

#news dt { width: 110px; float: left; color: #0897d8; }

#news dd { width: 810px; float: left; }

#news dt, #news dd { padding: 9px 0; font-size: 15px; }

#news a { color: #333; }

#focused_course { margin-top: 70px; }

#recommend { margin-top: 30px; margin-bottom: 40px; }

#recommend h2, #recommend p { margin: 0; }

#recommend h2 { font-size: 22px; color: #333; line-height: 1; font-weight: bold; margin-bottom: 1px; padding: 12px 10px 10px 15px; border-top: 3px solid #09d; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3); }

#recommend h2 small { font-size: 16px; line-height: 16px; }

#recommend .recommend-box { position: relative; display: block; text-decoration: none; color: #fff; margin-bottom: 1.5em; }

#recommend .recommend-box img { width: 100%; }

#recommend .recommend-box .recommend-box-inner { background-color: #0099dd; padding: 5px; }

#recommend .recommend-box a { color: #fff; text-decoration: none; }

#recommend_contents { margin-top: 70px; padding: 50px 0; background: #fbfbfb; }

#recommend_contents h2 { font-size: 24px; font-weight: bold; text-align: center; margin-bottom: 30px; }

#recommend_contents .column-box { background-color: #fff; box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1); }

#recommend_contents .column-box h3 { color: #09d; font-size: 16px; line-height: 1.6; text-align: left; padding: 30px 16px; margin: 0; height: 95px; }

#recommend_contents .column-box p { margin: 0; padding: 10px 16px; height: 160px; }

#feature h2 { margin-bottom: 24px; }

#feature .feature-box img { border-radius: 5px; width: 100%; }

#feature .feature-box p { font-size: 14px; }

#feature .feature-box h3:first-child { margin-top: 8px; }

/*-------------------------------------
    お客様の声
-------------------------------------*/
.voice-container .card { min-height: 335px; }

.voice-container .card h4 { color: #333; font-size: 20px; font-weight: normal; margin-top: 10px; line-height: 1.4; }

.voice-container .card a { display: inline-block; margin-bottom: 10px; }

.voice-container .card p { color: #333; font-size: 15px; font-weight: bold; margin: 0; }

.voice-container .card .voice-image { overflow: hidden; width: 180px; height: 160px; transition: all 0.3s ease; }

.voice-container .card .voice-image:hover { filter: alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; }

.voice-container .card .card-text { color: #dc666c; font-size: 15px; font-weight: bold; line-height: 150%; }

.voice-interview h3 { font-weight: normal; font-size: 2.0em; text-align: center; line-height: 150%; padding-top: 50px; padding-bottom: 30px; }

.voice-interview p { font-size: 15px; line-height: 2em; }

.voice-interview p.voice-name { color: #333; font-size: 1.3em; line-height: 1.6em; margin: 0; margin-bottom: 8px; }

.voice-interview p.voice-name span { display: block; font-weight: bold; margin-bottom: 8px; }

.voice-interview p.voice-comment { color: #dc666c; font-size: 1.6em; font-weight: bold; line-height: 1.6em; margin-bottom: 30px; }

/*-------------------------------------
    よくある質問
-------------------------------------*/
.faq-list h5 { font-size: 16px !important; color: #09d !important; line-height: 2 !important; font-weight: normal !important; margin: 0; }

.faq-list h5:before { content: "\f0da"; font-size: 16px; color: #22b9f2; padding-right: 10px; display: inline-block; font: normal normal normal 14px/1 FontAwesome; text-rendering: auto; -webkit-font-smoothing: antialiased; margin-left: -1px; }

.faq-answer { margin-bottom: 30px; }

.faq-answer p { line-height: 2; margin-left: 5px; }

/*-------------------------------------
    会社情報
-------------------------------------*/
.table-company { font-size: 16px; }

.table-company > tbody > tr > th, .table-company > tbody > tr > td { padding: 20px 15px; border: solid 1px #b9d6df; }

.table-company > tbody > tr > th { background-color: #f3f9fb; color: #32baeb; text-align: left; }

.table-company li { line-height: 1.8; }

/*-------------------------------------
    コース・料金
-------------------------------------*/
.plan-block-wrapper { margin-top: 10px; margin-bottom: 5px; }

.plan-block-inline { font-size: 0; }

.plan-block-inline li { vertical-align: bottom; }

.plan-block-default { font-size: 16px; display: inline-block; box-sizing: border-box; }

.plan-block-border-top { border-top: 1px solid #ccc; }

.plan-block-border-right { border-right: 1px solid #ccc; }

.plan-block-border-left { border-left: 1px solid #ccc; }

.plan-block-border-bottom { border-bottom: 1px solid #ccc; }

.plan-block-border-radius-top-left { border-top-left-radius: 6px; }

.plan-block-border-radius-top-right { border-top-right-radius: 6px; }

.plan-block-border-radius-bottom-left { border-bottom-left-radius: 6px; }

.plan-block-border-radius-bottom-right { border-bottom-right-radius: 6px; }

.plan-block-title-low, .plan-block-title-middle, .plan-block-title-high { box-sizing: border-box; position: relative; }

.plan-block-title-low { padding-top: 16px; height: 75px; }

.plan-block-title-middle { padding-top: 22px; background: #f6fafd; height: 95px; }

.plan-block-title-high { padding-top: 30px; background: #256bcb; height: 115px; color: #fff; }

.pickup-ribon { position: absolute; z-index: 10; top: 0; right: 0; width: 65px; height: 65px; }

.plan-block-title-name-low { font-size: 16px; color: #21373e; }

.plan-block-title-name-middle { font-size: 20px; color: #21373e; }

.plan-block-title-name-high { font-size: 24px; color: #fff; }

.plan-block-description { font-size: 13px; border-bottom: 1px solid #ebebeb; padding: 10px; }

.plan-block-description p { margin: 0; }

.plan-block-middle-description-bg { background-color: #eef8ff; }

.plan-block-high-description-bg { background-color: #cce2ff; }

.plan-block { width: 260px; }

.plan-block dl { margin: 0; }

.plan-block dt { font-size: 12px; padding-top: 13px; }

.plan-block dd { font-size: 16px; padding-bottom: 13px; color: #4b4b4b; border-bottom: 1px solid #ebebeb; }

.plan-block dd:last-child { border-bottom: none; }

.plan-block-narrow { width: 220px; }

.plan-block-wide { width: 300px; border: 2px solid #256bcb; border-radius: 6px 6px 0 0; box-shadow: rgba(0, 0, 0, 0.2) 0 1px 9px 1px; box-sizing: border-box; }

.plan-block-title-price, .plan-block-dt { font-size: 12px; }

.plan-block-dt { padding-top: 13px; }

.plan-block-dd { font-size: 16px; padding-bottom: 13px; color: #4b4b4b; border-bottom: 1px solid #ebebeb; }

.plan-pickup { z-index: 5; position: relative; }

.spec-pickup { color: #256bcb; }

/*------------------------------
    サイトマップ
------------------------------*/
#sitemap_list > li { margin-top: 8px; }

#sitemap_list > li:before { color: #337ab7; content: "\f138"; display: inline-block; font: normal normal normal 14px/1 FontAwesome; font-size: 13px; text-rendering: auto; -webkit-font-smoothing: antialiased; padding: 0 6px 0 0; }

#sitemap_list li li { margin-left: 5px; margin-top: 5px; }

#sitemap_list li li:before { color: #337ab7; content: "\f105"; display: inline-block; font: normal normal normal 14px/1 FontAwesome; font-size: 11px; text-rendering: auto; -webkit-font-smoothing: antialiased; padding: 0 6px 0 18px; }

#sitemap_list li .cat-item a { background-color: #eee; text-indent: 0; display: block; padding: 3px 5px 2px; border: solid 1px #cacaca; }

#sitemap_list li li .post-item a { background-color: #fff; border: none; }

/*------------------------------
    選ばれ続ける理由
------------------------------*/
.representative { margin-right: 35px; margin-bottom: 10px; }

/*-------------------------------------
    Splash
-------------------------------------*/
.splash-container { /*background-image: url(../img/bg.jpg); background-repeat: no-repeat; background-size: 100% auto; background-position: top center; z-index: 1; overflow: hidden; width: 100%; height: 500px; position: relative !important;*/ background-image: url(../../../../uploads/header.jpg); background-repeat: no-repeat; background-size: 100% auto; background-position-y: 0px; background-position-x: 0px; /* background-position: top center; */ background-size: 100%; z-index: 1; overflow: hidden; width: 100%; height: 510px; /* position: relative !important; */ }

.splash { /* absolute center .splash within .splash-container */ width: 940px; height: 100%; margin: auto; position: absolute; top: 0; left: 0; bottom: 0; right: 0; text-align: center; text-transform: uppercase; pointer-events: none; }

/* This is the main heading that appears on the blue section */
.splash-head { font-size: 44px; font-weight: bold; color: white; border: 0px solid white; padding: 1.4em 0; text-align: center; font-weight: 100; border-radius: 5px; line-height: 1em; margin-top: 120px; margin-bottom: 0; }

/* This is the subheading that appears on the blue section */
.splash-subhead { color: white; letter-spacing: 0.05em; }

/*------------------------------
    バナー
------------------------------*/
.banner-container { position: relative; padding: 0px 15px; }

.banner-container h2 { margin-top: 0; margin-bottom: 50px; }

.banner-content { width: 1200px; margin: 0 auto; }

.banner-background { background-size: cover; background-position: center right; background-repeat: no-repeat; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: -1; -webkit-transition: all 0.3s ease 0s; -moz-transition: all 0.3s ease 0s; -o-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }

.banner-text { padding: 1em; border: 1px solid #d7d7d7; min-height: 103px; background-color: #fff; }

.banner-content a { display: block; min-height: 180px; overflow: hidden; position: relative; text-decoration: none; }

.banner-content a h3 { font-size: 15px; font-weight: 800; color: #333; margin: 0 0 3px; }

.banner-content a p { font-weight: 500; color: #525252; font-size: 13px; margin: 0; line-height: 1.4; padding: 0; letter-spacing: -0.02rem; }

.banner-content .banner { padding: 0 5px; }

.banner-content a img { -webkit-transition: all 0.3s ease 0s; -moz-transition: all 0.3s ease 0s; -o-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }

.banner-content a:hover img { -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2); }

/*------------------------------
    お問い合わせバナー
------------------------------*/
#inquiry_banner { background-image: url(https://kanda-it-school-kensyu.com/wp-content/uploads/footer_bg.png); background-repeat: no-repeat; background-position: right 50%; background-color: rgba(255, 255, 255, 0.03); border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }

#inquiry_banner h2 { font-size: 33px; line-height: 140%; text-align: center; padding: 40px 0; font-weight: normal; }

.inquiry-tel { background-color: #ffffff;  margin: 0; padding-top: 13px; font-size: 12px; text-align: center; font-weight: bold; line-height: 100%; border: 1px solid #ccc; border-radius: 5px; padding: 12px 0; }

.top-tel { display: block; color: #0099dd; font-size: 23px; padding: 7px 0; }

.top-hour { font-weight: normal; }

#inquiry_banner .btn { height: 76px; }

.inquiry-btn { display: inline-block; background-color: #ff9800; color: #fff; text-align: center; font-weight: bold; line-height: 100%; padding: 27px 30px; font-size: 22px; border-radius: 5px; transition: all 0.3s ease; box-sizing: border-box; width: 100%; }

.inquiry-btn:hover, .inquiry-btn:focus { background-color: #ffb500; text-decoration: none; color: #fff; }

#inquiry_banner .button-box { padding-bottom: 35px; }

#news + #inquiry_banner { margin-top: 0 !important; margin-bottom: -50px; border: none; }

/*------------------------------
    タイトルヘッダー
------------------------------*/
/* ビジュアルタイトル */
#main_visual { background-repeat: no-repeat; background-size: 100% auto; background-position: top center; z-index: 1; overflow: hidden; width: 100%; height: 150px; position: relative !important; }

.main-visual-box { width: 940px; margin: 15px auto 0; }

.main-visual-box h2 { color: #fff; background-color: #22b9f2; width: 370px; height: 110px; box-sizing: border-box; padding: 32px 30px 0; font-size: 28px; }

.main-visual-box h2 span { font-size: 14px; display: block; margin-bottom: 5px; }

/*  社員研修のために神田ITスクールだからできること メインビジュアル */
.feature-bg { background-image: url(../../../../uploads/09h02_14.png); }

/*  コンテンツタイトル */
#content_title { padding: 60px 0 40px 0; background-color: #22b9f2; }

#content_title p { width: 1000px; margin: auto; color: #fff; font-weight: bold; font-size: 20px; line-height: 100%; padding: 0; }

#content_title span { display: block; font-weight: normal; color: #bef1ff; font-size: 12px; }

/* トップタイトルヘッダー */
.title-heading { background-color: #57c3ea; padding: 50px 0; color: #fff; text-align: center; }

.title-heading h2 { border: 4px solid #fff; color: #fff; display: inline-block; font-size: 34px; font-weight: 500; text-align: center; margin: 0 auto; padding: 20px 50px; }

/*------------------------------
    カード
------------------------------*/
.card { border: 1px solid #d8d0b9; margin: 0 0 10px; padding: 10px; }

.card-text { color: #dc666c; font-size: 15px; font-weight: bold; line-height: 150%; }

.card-shadow { background: white; border: 1px solid rgba(0, 0, 0, 0.05); box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.12), 0px 2px 2px 0px rgba(0, 0, 0, 0.24); margin-bottom: 20px; padding: 15px 20px 10px; }

.card-shadow h4 { margin-top: 0; font-weight: bold; }

.card-shadow p { margin: 0; }

.step-bar { position: relative; list-style: none; margin: 0 0 1em; padding: 0; text-align: center; width: 100%; overflow: hidden; *zoom: 1; }

.step-bar .step { position: relative; float: left; display: inline-block; line-height: 40px; padding: 0 40px 0 20px; background-color: #eee; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: bold; }

.step-bar .step:before, .step-bar .step:after { position: absolute; left: -14px; display: block; content: ''; background-color: #eee; border-left: 4px solid #FFF; width: 20px; height: 20px; }

.step-bar .step:after { top: 0; -moz-transform: skew(30deg); -ms-transform: skew(30deg); -webkit-transform: skew(30deg); transform: skew(30deg); }

.step-bar .step:before { bottom: 0; -moz-transform: skew(-30deg); -ms-transform: skew(-30deg); -webkit-transform: skew(-30deg); transform: skew(-30deg); }

.step-bar .step:first-child { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }

.step-bar .step:first-child:before, .step-bar .step:first-child:after { content: none; }

.step-bar .step:last-child { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }

.step-bar .step.current { color: #FFF; background-color: #22b9f2; }

.step-bar .step.current:before, .step-bar .step.current:after { background-color: #22b9f2; }

.step-bar.step2 .step { width: 50%; }

.step-bar.step3 .step { width: 33.333%; }

.step-bar.step4 .step { width: 25%; }

.step-bar.step5 .step { width: 20%; }

/*------------------------------
    TrustForm
------------------------------*/
#trust-form table { width: 100%; max-width: 100%; margin-bottom: 20px; }

#trust-form table ul { list-style-type: none; padding: 0; }

#trust-form tbody tr th, #trust-form tbody tr td { padding: 20px 15px; border: solid 1px #b9d6df; font-size: 16px; font-weight: normal; }

#trust-form tbody tr th { width: 223px; }

#trust-form ul { list-style-type: disc; padding: 0; margin: 0; padding-left: 30px; }

#trust-form label { font-weight: normal; }

#trust-form .require { display: block; color: red; margin-top: 5px; font-size: 14px; }

#trust-form .error { color: red; }

#trust-form #confirm-button { text-align: center; }

#trust-form #confirm-button input { background-color: #ff9800; color: #fff; text-align: center; font-weight: bold; line-height: 100%; padding: 12px 30px; font-size: 17px; border-radius: 5px; border: none; transition: all 0.3s ease; box-sizing: border-box; }

#trust-form #confirm-button input:hover { background-color: #ffb500; text-decoration: none; color: #fff; }

#trust-form .apply-flow li { display: inline-block; width: 33.33333%; }

#trust-form .input-bottom-text { margin-top: 5px; font-size: 12px; }

#trust-form .input-bottom-text ul { list-style-type: disc; padding-left: 20px; }

#trust-form .input-bottom-text p { margin-top: 8px; }

#trust-form input[type=text], #trust-form textarea { width: 100%; }

#trust-form input[type=checkbox], #trust-form input[type=radio] { margin-right: 8px; }

/*#trust-form tbody > tr > th,
#trust-form tbody > tr > td {
    padding: 20px 15px;
    border: solid 1px #b9d6df;
    font-size: 16px;
    font-weight: normal;
}
#trust-form tbody > tr > th {
    width: 200px;
}*/
/*#trust-form #confirm-button {
    text-align: center;
}
#trust-form input[type=text], #trust-form textarea {
    width: 100%;
}*/
/*#trust-form ul {
    list-style-type: disc;
    padding: 0;
    margin: 0;
    padding-left: 30px;
}*/
/*#trust-form table ul {
    list-style-type: none;
    padding: 0;
}*/
/*#trust-form .error {
    color: red;
}
#trust-form label {
    font-weight: normal;
}*/
/*#trust-form .require {
    display: block;
    color: red;
    margin-top: 5px;
    font-size: 14px;
}*/
/*#trust-form .apply-flow li {
    display: inline-block;
    width: 33.33333%;
}*/
/*#trust-form #confirm-button input {
    background-color: #ff9800;
    color: #fff;
    text-align: center;
    font-weight: bold;
    line-height: 100%;
    padding: 12px 30px;
    font-size: 17px;
    border-radius: 5px;
    border: none;
    transition: all 0.3s ease;
    box-sizing: border-box;
}
#trust-form #confirm-button input:hover {
    background-color: #ffb500;
    text-decoration: none;
    color: #fff;
}
*/
/*------------------------------
    テーブル
------------------------------*/
table { width: 100%; max-width: 100%; margin-bottom: 20px; border: 1px solid #b9d6df; }

table tbody tr th, table tbody tr td { border-collapse: collapse; vertical-align: middle !important; padding: 20px 15px; border-top: 1px solid #b9d6df; border-left: 1px solid #b9d6df; font-size: 16px; font-weight: normal; }

table tbody tr td.arrow-base { padding: 0 8px; }

table tbody tr td.arrow-base:after { content: " "; background-color: red; border: none; border-left: 1px solid #ddd; border-right: 1px solid #ddd; display: block; margin: 0 20px; height: 100%; width: 100%; box-sizing: border-box; }

table tbody tr td.highlight { position: relative; }

table tbody tr td.highlight:after { content: ""; display: block; border: 2px solid red; width: 101%; height: 101%; position: absolute; top: -0.5%; left: -0.5%; }

/*tbody > tr > th {
    width: 200px;
}*/
#confirm-button { text-align: center; }

input[type=text], textarea { width: 100%; }

input[type=checkbox] { margin-right: 8px; }

.error { color: red; }

label { font-weight: normal; }

.require { display: block; color: red; margin-top: 5px; font-size: 14px; }

.apply-flow li { display: inline-block; width: 33.33333%; }

#confirm-button input { background-color: #ff9800; color: #fff; text-align: center; font-weight: bold; line-height: 100%; padding: 12px 30px; font-size: 17px; border-radius: 5px; border: none; transition: all 0.3s ease; box-sizing: border-box; }

#confirm-button input:hover { background-color: #ffb500; text-decoration: none; color: #fff; }

.table-green tbody tr th, .table-green tbody tr td { font-size: 14px; text-align: center; }

.table-green tbody tr th { background-color: #66bb6a; /*border-right: 1px solid #c8e6c9;*/ color: #fff; font-weight: bold; }

.table-green tbody tr th.table-of-contents { width: 250px; }

.table-green tbody tr th.estimated-time { width: 90px; min-width: 90px; }

.table-green tbody tr td:first-child { background-color: #e8f5e9; border-right: 1px solid #fff; padding: 10px; text-align: left; }

.table-green tbody tr td.no-green { background-color: #fff; border-right: 1px solid #ddd; text-align: center; }

.table-green tbody tr a { color: inherit; text-decoration: underline; }

.table-green tbody tr ul { text-align: left; white-space: nowrap; }

.table-green tbody tr p { text-align: left; margin-bottom: 0; padding: 10px; }

.table-purple tbody tr th, .table-purple tbody tr td { font-size: 14px; text-align: center; }

.table-purple tbody tr th { background-color: #ccccff; color: #333; font-weight: bold; }

.table-purple tbody tr th.table-of-contents { width: 250px; }

.table-purple tbody tr th.estimated-time { width: 90px; min-width: 90px; }

.table-purple tbody tr td.background { background-color: #ffc; }

.table-purple tbody tr a { color: inherit; text-decoration: underline; }

.table-purple tbody tr ul { text-align: left; white-space: nowrap; }

.table-purple tbody tr p { text-align: left; margin-bottom: 0; padding: 10px; }

.table-info tbody tr th, .table-info tbody tr td { font-size: 14px; }

.table-info tbody tr th { background-color: #00bcd4; /*border-right: 1px solid #c8e6c9;*/ color: #fff; font-weight: bold; }

.table-info tbody tr th.negative { background-color: #E9E8E8; color: #7E7E7E;}

.table-info tbody tr th.table-of-contents { width: 250px; }

.table-info tbody tr th.estimated-time { width: 90px; min-width: 90px; }

.table-info tbody tr td.active { background-color: #e0f7fa; border-right: 1px solid #fff; padding: 10px; text-align: left; white-space: nowrap; }

.table-info tbody tr a { color: inherit; text-decoration: underline; }

.table-info tbody tr ul { text-align: left; white-space: nowrap; }

.table-info tbody tr p { text-align: left; margin-bottom: 0; padding: 10px; }

.course-title { color: #333; font-size: 16px; font-weight: bold; display: block; }

.course-copy { margin-top: 10px; font-size: 0.9em; line-height: 150%; display: inline-block; }

.arrow-start { position: relative; }

.arrow { position: absolute; top: 10px; left: 25px; }

.arrow:before { content: attr(data-day); display: block; margin: 0; width: 40px; height: 50px; background: #ccc; line-height: 70px; font-size: 13px; font-weight: bold; text-align: center; position: relative; z-index: 1; }

.arrow:after { content: ""; display: block; margin-left: -15px; border-top: 70px solid #ccc; border-left: 35px solid transparent; border-right: 35px solid transparent; transform-origin: left top; transform: scaleY(0.5); }

.info.arrow:before, .success.arrow:before, .primary.arrow:before, .warning.arrow:before { color: #fff; }

.info.arrow:before { background-color: #5bc0de; }

.info.arrow:after { border-top: 70px solid #5bc0de; }

.success.arrow:before { background-color: #5cb85c; }

.success.arrow:after { border-top: 70px solid #5cb85c; }

.primary.arrow:before { background-color: #286090; }

.primary.arrow:after { border-top: 70px solid #286090; }

.warning.arrow:before { background-color: #ec971f; }

.warning.arrow:after { border-top: 70px solid #ec971f; }

.curriculum-day { width: 60px; }

.curriculum-course { width: 90px; }

/*------------------------------
    1日の流れ
------------------------------*/
.flow { border-collapse: collapse; border-spacing: 0; display: table; position: relative; table-layout: fixed; width: 100%; }

.flow:before { background-color: #5bc0de; bottom: 0px; content: ""; left: 29px; position: absolute; top: 0; width: 3px; z-index: 0; }

.flow .flow-box { display: block; margin-left: 65px; margin-bottom: 50px; position: relative; text-align: left; }

.flow .flow-box:last-child { margin-bottom: 0; }

.flow .flow-box .flow-icon { position: absolute; left: -58px; top: 0px; height: 47px; width: 47px; line-height: 44px; border: 2px solid #ccc; background-color: #fff; color: #666; font-size: 10px; font-weight: bold; text-align: center; border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; -o-border-radius: 50%; }

.flow h5 { margin-top: 0; margin-bottom: 16px; padding-top: 6px; padding-bottom: 5px; font-size: 16px; font-weight: bold; border-bottom: 1px solid #ccc; }

.flow h6 { margin-top: 0; font-size: 14px; font-weight: bold; }

/*------------------------------
    無料説明会の申し込みボタン
------------------------------*/
.free-presentation-btn { display: inline-block; background-color: #ff9800; color: #fff; text-align: center; font-weight: bold; line-height: 100%; padding: 27px 30px; font-size: 20px; border-radius: 5px; transition: all 0.3s ease; box-sizing: border-box; width: 40%; }

.free-presentation-btn:hover, .inquiry-btn:focus { background-color: #ffb500; text-decoration: none; color: #fff; }

/* 補足説明 */
.supplement {
	font-size: 12px;
    color: red;
    margin-left: 5px;
}

/* カリキュラム区分線 */
.curriculum_divider {
	font-size: 21px;
    color: #333;
    line-height: 1;
    font-weight: bold;
    margin-bottom: 1px;
    padding: 12px 10px 10px 15px;
    border-top: 3px solid #66bb6a;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
    margin-bottom: 15px;
}

/* 文字強調（赤） */
.emphasis {
    color: red;
}

/* イベントカレンダー */
#calendar {
    width: 100%;   
	text-align: left;
}

#calendar a {
    color: #8e352e;
    text-decoration: none;
}

#calendar ul {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
}

#calendar li {
    display: block;
    float: left;
    width:14.342%;
    padding: 5px;
    box-sizing:border-box;
    border: 1px solid #ccc;
    margin-right: -1px;
    margin-bottom: -1px;
}

#calendar ul.weekdays {
    height: 40px;
    background: #66bb6a;
}

#calendar ul.weekdays li {
    text-align: center;
    text-transform: uppercase;
    line-height: 20px;
    border: none !important;
    padding: 10px 6px;
    color: #fff;
    font-size: 15px;
}

#calendar .days li {
    height: 135px;
}

#calendar .days li:hover {
    background: #d3d3d3;
}

#calendar .date {
    text-align: center;
    margin-bottom: 5px;
    padding: 0px;
    background: #333;
    color: #fff;
    width: 20px;
    border-radius: 50%;
    float: right;
}

#calendar .event {
    clear: both;
    display: block;
    font-size: 13px;
    border-radius: 4px;
    padding: 5px;
    margin-top: 0px;
    margin-bottom: 5px;
    line-height: 14px;
    background: #e4f2f2;
    border: 1px solid #b5dbdc;
    color: #009aaf;
    text-decoration: none;
}

#calendar .event-desc {
    color: #666;
    margin: 3px 0 7px 0;
    text-decoration: none;  
}

#calendar .other-month {
    background: #f5f5f5;
    color: #666;
}

/* 価格の強調 */
.price-box {
	font-size: 20px;
	font-weight: bold;
	margin: 30px;
	border: 1px solid #ff9800;
	padding: 30px;
	background-color: #fff9f1;
}

.price-emphasis-red {
	font-size: 40px;
	color: red;
}

.price-emphasis-blue {
	font-size: 20px;
	color: blue;
}

/* 四角ボックス */
.square-box {
	font-size: 16px;
	font-weight: bold;
	margin: 30px;
	border: 1px solid #ff9800;
	padding: 30px;
	background-color: #fff9f1;
}

/*------------------------------
    コンタクトボタン
------------------------------*/
.contact-btn { display: inline-block; background-color: #ff9800; color: #fff; text-align: center; font-weight: bold; line-height: 100%; padding: 27px 30px; font-size: 20px; border-radius: 5px; transition: all 0.3s ease; box-sizing: border-box; width: 60%; }

.contact-btn:hover, .inquiry-btn:focus { background-color: #ffb500; text-decoration: none; color: #fff; }

/* GRAY　COMMENT */
.gray-comment {
	font-size: 12px;
	color: #808080db;
}

/* トップページ　オンライン研修バナー */
#top_online_banner {
	position: relative;
	display: block;
	text-decoration: none;
	color: #fff; margin-bottom: 1.5em;
	text-align: center;
}