@charset "utf-8";
/* CSS Document */
body { background: #f0f5f9 !important; color: #0055a7 !important; font-family: 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif" !important; font-size: 16px; }
p,h1,h2,h3,h4,li,a { font-family: 'Noto Sans JP', sans-serif !important; }
.container { background: #fff !important; background-image: none !important; max-width: 1200px; margin: 40px auto;
   width : 98% ; /* IE8以下とAndroid4.3以下用フォールバック */
   width : -webkit-calc(100% - 80px) ;
   width : calc(100% - 80px) ;
   box-sizing: border-box; }
header { background: #fff !important; }
header .header-logoarea__img {
    width: 420px !important;
}
header .header-naviarea {
    position: relative;
    background-color: #fff;
    box-shadow: none;
}
header .header-logoarea__menu__list li a {
    display: block;
    border: none;
    border-radius: 0;
    font: 700 0.9rem 'Noto Sans JP', sans-serif !important;
    color: #0055a7 !important;
    padding: 4px 10px 5px;
	background-color: #fff !important;
}
header .header-logoarea__menu__list li { margin-left: 8px; }
header .header-logoarea__menu__list li a { font-size: 12px !important; white-space: nowrap;}
header .header-logoarea__menu__list li a:hover { color: #fff !important; background-color: #0055a7 !important; }
header .header-logoarea__menu__list li a:before { font-family: 'Font Awesome 5 Free' !important; font-weight: 400; margin-right: 10px; font-size: 110% !important; }
header .header-logoarea__menu__list li:nth-child(1) a:before { content: "\f015";font-weight:600; }
header .header-logoarea__menu__list li:nth-child(2) a:before { content: "\f059";font-weight:600; }
header .header-logoarea__menu__list li:nth-child(3) a:before { content: "\f022"; }
header .header-logoarea__menu__list li:nth-child(4) a:before { content: "\f0e0"; }
header .header-logoarea__menu__list li:nth-child(5) a:before { content: "\f002"; font-weight:600; }
.up_date { font-size: 10px !important; }
main .kiji001 {
    margin-top: 0;
    display: flex;
    justify-content: center;
	padding: 60px;
	background-image: url("../img/common/ttl_bg.jpg");
	background-position: center center;
	background-size: cover;
}
main .kiji001-inner { padding: 0; background: none; }
main .kiji001-title1, main .kiji001-msg1 {
    color: #fff;
    font-family: 'Noto Sans JP', sans-serif !important;
	font-size: 24px !important;
	font-weight: 500 !important;
    margin-left: 0;
}
main .kiji001-msg1 { padding: 0 !important; background-color: rgba(255,255,255,0) !important; }
main .kiji004 { background-color: rgba(255,255,255,0) !important; }

footer .footer-middle-list li a { border: 1px solid #fff; padding: 3px 30px 4px; }
footer .footer-middle { background: #798b9e !important; padding: 25px; display: flex; justify-content: space-between; }
footer .footer-bottom { padding: 10px 25px 20px; background: #798b9e !important; }
footer .footer-bottom p { font-size: 10px !important; font-family: 'Noto Sans JP', sans-serif !important; }
footer .footer-middle__address span { font-family: 'Noto Sans JP', sans-serif !important; display: block; }
.new_name { font-weight: 500; font-size: 110%; margin-bottom: 5px; }

@media screen and (max-width: 1041px) and (min-width: 769px) {
body { min-width: 1024px; }
.container { margin: 30px auto; width: -webkit-calc(100% - 60px) ; width : calc(100% - 60px) ;}}

@media screen and (min-width: 769px){
header .header-naviarea .header-nav { width: 100% !important; }
header .header-logoarea {padding: 30px 0; width: calc(100% - 60px); }
.container {
box-shadow: 0 0 12px rgba(3, 29, 57, 0.1);
}

header .header-naviarea .header-nav-list__link:after { background: #0055a7; height: 50%; top: 25%; }
header .header-naviarea .header-nav-list__link:nth-child(8):after {display: none;}
header .header-naviarea .header-nav-list__link a {
    display: block;
    text-align: center;
    font: 700 14px 'Noto Sans JP', sans-serif;
    color: #0055a7;
    padding: 4px 4px 5px;
    border-radius: 0;
    position: relative;
}
header .header-naviarea .header-nav-list__link a:hover { background-color: #0055a7 !important; color: #fff !important; }

header .header-naviarea .header-nav-list__link { padding: 16px 10px !important; }

footer .footer-middle__address { font-size: 12px !important; }
footer .footer-middle-list li a { font-size: 14px !important; }

.purpose header .header-naviarea .header-nav-list__link:nth-child(3) a { background-color: #fbf67f; }
.outline header .header-naviarea .header-nav-list__link:nth-child(4) a { background-color: #fbf67f; }
.technology header .header-naviarea .header-nav-list__link:nth-child(5) a,
.theme header .header-naviarea .header-nav-list__link:nth-child(5) a { background-color: #fbf67f; }
.proof header .header-naviarea .header-nav-list__link:nth-child(6) a { background-color: #fbf67f; }
.kanto header .header-naviarea .header-nav-list__link:nth-child(7) a,
.kansai header .header-naviarea .header-nav-list__link:nth-child(7) a,
.foundry header .header-naviarea .header-nav-list__link:nth-child(7) a { background-color: #fbf67f; }
.human_resource header .header-naviarea .header-nav-list__link:nth-child(8) a,
.nedo_course header .header-naviarea .header-nav-list__link:nth-child(8) a { background-color: #fbf67f; }
}

.new_block01 { display: flex; justify-content: space-between; align-content: center; flex-wrap: wrap; }
.new_kiji_ttl, .new_kiji_prof { background-color: #e7f1fb; padding: 30px 35px; }
.new_kiji_ttl { width: 67%; }
.new_kiji_prof { width: 33%; display: flex; align-content: center; align-items: center; border-left: 2px solid #fff;  justify-content: center; }
.new_kiji_prof p { font-size: 100%; font-weight: 700;
font-family: 'Noto Sans JP', sans-serif !important; text-align: right; }
.new_kiji_ttl p.new_sub_ttl { font-size: 120%; font-weight: 500;
font-family: 'Noto Sans JP', sans-serif !important; }
.new_kiji_ttl h1 { font-weight: 700; font-size: 150%; margin-bottom: 8px;
font-family: 'Noto Sans JP', sans-serif !important; }


h1.h1_nrm01 { text-align: center; font-size: 140%; font-weight: 700; line-height: 1.5; padding: 0 30px; }

.new_block02 { padding: 50px 0 20px; }
.new_block02 strong, .new_block02 strong a { font-weight: 700 !important; }
.new_block02 h2, main .kiji004__title { font-weight: 700; font-size: 120%; letter-spacing: 2px; width: 192px; background: #0055a7; color: #fff; padding: 8px 38px 9px; }
main .kiji004__title { width: 84% !important; max-width: 300px !important; }
.new_block02 h2.h2_long { width: 270px; }
.new_block02 h2.h2_long2 { width: 230px; }
.new_block02 h2.h2_top { width: 180px; font-size: 170%; font-weight: 400 !important; text-align: center; }
.new_block02 h2.h2_top span { font-size: 12px !important; font-weight: 400; position: relative; top: -18px; }
.txt_lsm { letter-spacing: -0.5px !important; }
.new_block02 h3 { font-weight: 110%; font-weight: 700 !important; margin-bottom: 10px; }
.new_block02 p { line-height: 2.0; font-weight: 400 !important; margin-bottom: 20px; }
.new_block02 p.p_img { margin: 30px 0 32px !important; text-align: center; }
.new_block02 p.p_img img { width: 90%; margin: 0 auto; }
.new_block02 p.p_img img.t_pic { width: 60%; }
.new_block02 p.p_img img.t_pic2 { width: 77%; }
.new_block02 ul { margin-bottom: 30px; }
.new_block02 ul li { position: relative; margin-bottom: 10px; line-height: 1.5; text-indent: -1.2em; padding-left: 1.2em; }
.new_block02 ul li::before { content: "■"; margin-right: 8px; font-size: 50%; position: relative; top: -2px; }

.new_block02 ul.nrm_list { margin: 0 0 0 15px !important; padding: 0 0 15px; }
.new_block02 ul.nrm_list li { position: relative; margin-bottom: 5px; line-height: 1.4; text-indent: -1em; padding-left: 1em; font-size:95%; font-weight: 500 !important; font-family: 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif" !important; }
.new_block02 ul.nrm_list li::before { content: "・"; margin-right: 5px; font-size: 50%; position: relative; top: -2px; }

.new_block02 ol.nrm_list { margin: 0 0 0 15px !important; padding: 0 0 15px; }
.new_block02 ol.nrm_list li { position: relative; margin-bottom: 5px; line-height: 1.4; list-style-position: inside; list-style-type: decimal; font-size:95%; font-weight: 500 !important; font-family: 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif" !important; }

.new_block02 ul.top_news { margin-top: -68px; margin-left: 54px; }
.new_block02 ul.top_news li { text-indent: 0; padding-left: 94px; font-size: 14px; margin-bottom: 16px; position: relative; }
.new_block02 ul.top_news li span { position: absolute; top: 0; left: 0; }
.new_block02 ul.top_news li::before { content: none; }

.new_block02_in { padding: 40px 120px 0; }
.new_contact { background: #0055a7; color: #fff; padding-bottom: 15px; border-bottom: 2px solid #fff; }

.new_main a { color: #0055a7; border-bottom: 1px dotted #0055a7; }
.new_main a:hover { border-bottom: 1px solid #0055a7; }

.new_main a.link_y1 { color: #0055a7; border-bottom: 1px dotted #0055a7; background-color: #fbf67f; padding: 2px 4px 3px; }
.new_main a.link_y1:hover { color: #fff; border-bottom: 1px solid #0055a7;  background-color: #0055a7; }


.new_contact a { color: #fff; word-break: break-all; }
.new_contact a:hover { border-bottom: 1px dotted #fff; }
.new_contact .new_block02 { padding-top: 25px !important; }
.new_contact .new_block02 p { line-height: 1.5; margin-bottom: 10px; }
.new_contact .new_block02 h2 { margin-bottom: -20px !important; }

.more_btn { display: block !important; width: 200px; margin: 40px auto 15px !important; font-size: 16px; letter-spacing: 5px; text-align: center; border-radius: 40px; text-decoration: none !important; line-height: 1.0; padding: 12px 56px 16px; }
.m_btn01 { background-color: #0055a7; color: #fff; border: 1px solid #0055a7; }
.m_btn01:hover { background-color: #fff; color: #0055a7; }
.new_contact a.m_btn02 { background-color: #fff; color: #0055a7; border: 1px solid #fff !important; text-decoration: none !important; }
.new_contact a.m_btn02:hover { background-color: #0055a7; color: #fff; border: 1px solid #fff !important; text-decoration: none !important; }

@media all and (max-width: 1128px) {
.new_kiji_ttl { width: 65%; }
.new_kiji_prof { width: 35%; }
}

.flex_wrap01 { display: flex; justify-content: space-between; flex-wrap: wrap; }
.box_nH { width: 47.5%; }
.box_nR { width: 62%; }
.box_nL { width: 35%; }
.img_brd { border: 1px dashed #0055a7; border-radius: 8px; }


@media all and (max-width: 768px) {
.box_nH { width: 100%; }
.box_nR { width: 53%; }
.box_nL { width: 44%; }
.new_kiji_ttl, .new_kiji_prof { padding: 24px 30px; }
body { background: #fff !important; }
.container { width: 100% !important; margin: 0 !important; }
header { height: 80px; }
header .header-logoarea__img { width:70vw !important; max-width: 400px; }
header .header-naviarea .header-nav { width: 100% !important; }
header .header-logoarea { padding: 17px 0; }
header #nav__btn i, header #nav__btn::after, header #nav__btn::before {
height: 2px !important;
background-color: #fff;
border-radius: 2px;
width: 24px; }

header #nav__btn {
right: 20px;
background-color: #0055a7;
height: 38px;
width: 38px; }
header #nav__btn i { top: 18px;}
header #nav__btn::after { top: 26px;}
header #nav__btn::before { top: 10px;}
header .open#nav__btn::before { top: 18px; width: 24px; background-color: #fff;}
header .open#nav__btn::after { top: 18px; width: 24px; background-color: #fff;}
header .header-naviarea .header-nav-list { background-color: rgba(0,85,167,0.9); }
header .header-naviarea .header-nav-list__link a { padding: 13px 30px 14px; font-size: 1rem; font-weight: 500; }

h1.h1_nrm01 { font-size: 130%; padding: 0 40px; text-align: left; }

.new_block02 h2.h2_top { width: 140px; }
.new_block02 ul.top_news { margin-top: -10px; margin-left: 0; }

.new_kiji_ttl { width: 100%; }
.new_kiji_prof { width: 100%; border-left: none; border-top: 2px solid #fff; justify-content: flex-end; }
.new_block02 { padding: 40px 0 10px; }
.new_block02_in { padding: 30px 40px 0; }
.new_block02 p.p_img img { width: 100%; }
.new_block02 p.p_img img.t_pic { width: 74%; }
.new_block02 p.p_img img.t_pic2 { width: 100%; }

.footer-middle-list { display: none !important; }
}

@media all and (max-width: 560px){
.box_nR { width: 100%; }
.box_nL { width: 100%; }
body { font-size: 14px; }
header #nav__btn { right: 15px; }
header { height: 70px; }
main .kiji001-title1, main .kiji001-msg1 {font-size: 20px !important; }
main .kiji001 { padding: 30px 40px; }
.new_kiji_ttl, .new_kiji_prof { padding: 20px 25px; }
.new_kiji_prof p { font-size: 90%; }

h1.h1_nrm01 { font-size: 125%; padding: 0 25px; }
.new_block02 h2, main .kiji004__title { font-size: 110%; letter-spacing: 1px; width: 128px; padding: 6px 17px; }
.new_block02 h2.h2_long2 { width: 164px; }
main .kiji004__title { width: 84% !important; max-width: 300px !important; }
.new_block02 h2.h2_long { width: 200px; }
.new_block02 h3 { font-weight: 105%; }
.new_block02 { padding: 30px 0 10px; }
.new_block02_in { padding: 20px 25px 0; }
.new_block02 p.p_img { margin: 22px 0 25px !important; }
.new_block02 p.p_img img.t_pic { width: 100%; }

.new_block02 h2.h2_top { width: 100%; }
.new_block02 ul.top_news { margin-top: -20px; margin-left: 0; }
.new_block02 ul.top_news li { font-size: 12px; padding-left: 82px; }

.new_contact { padding-bottom: 12px; }
.new_contact .new_block02 h2 { margin-bottom: -6px !important; }

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


/* TOP */
.top_mv { 
width: 100%;
margin: 0;
padding: 90px 60px 40px;
background-image: url("../img/top.jpg");
background-position: center center;
background-size: cover;
text-align: center; }
.top_mv p { text-align: center; color: #0055a7; }
.top_mv p span{
	background:linear-gradient(transparent 60%, #fbf67f 60%);
	font-weight: 700; font-size: 17px; line-height: 2.8; font-family: 'Noto Sans JP', sans-serif !important;
}
.sp2 { display: none !important; }

@media all and (max-width: 768px){.top_mv { padding: 74px 40px 40px; }}

@media all and (max-width: 560px){
.top_mv { padding: 60px 18px 40px; }
.top_mv p span{ font-size: 14px; line-height: 2.4; }
.sp2 { display: inherit !important; }
.spnon.sp { display: none !important; }
}


.mgB5 { margin-bottom: 5px !important; }
.mgB10 { margin-bottom: 10px !important; }
.mgB30 { margin-bottom: 30px !important; }
.mgB45 { margin-bottom: 45px !important; }
.mgB60 { margin-bottom: 60px !important; }

/* Table */
table.table01 {
  border-collapse: collapse;
 border-spacing: 0;
}

table.table01 td,table.table01 th {
  border: 1px solid #0055a7;
  padding: 8px;
}
table.table01 th { background: #3476b5; color: #fff; font-weight: 500; }
table.table01 td { font-weight: 400; }
table.table01 td.tdbg { background: #ebf2f7; }


/* ページャー */
.pager .link_page {
    font-weight: bold;
    border: 1px solid #0055a7;
    color: #0055a7;
    padding: 1px 5px 3px;
}
.pager .current_page {
    font-weight: bold;
    border: 1px solid #0055a7;
    background-color: #0055a7;
    color: #fff;
    padding: 1px 5px 3px;
}


@media all and (min-width: 769px) {
.header-nav-list__link {
    position: relative;
    transition: all .3s;
}
.header-nav-list__link a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    transition: all .3s;
	}
.dropdown__lists {
    display: none;/*デフォルトでは非表示の状態にしておく*/
    width: 100%;
    position: absolute;
    top: 60px;
    left: 0;
}
.header-nav-list__link:hover .dropdown__lists {
    display: block;/*Gナビメニューにホバーしたら表示*/
}
.dropdown__list {
    background-color: rgba(0,85,167,0.85);
    height: 28px;
    transition: all .3s;
    position: relative;
	line-height: 1.8 !important;
}
.dropdown__list:not(:first-child)::before{
    content: "";
    width: 100%;
    height: 1px;
    background-color: #3492d1;
    position: absolute;
    top: 0;
    left: 0;
}

.dropdown__list a {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff !important;
    text-decoration: none;
    position: relative;
	font-size: 12px !important;
}
.purpose header .header-naviarea .header-nav-list__link:nth-child(3) .dropdown__list a,
.outline header .header-naviarea .header-nav-list__link:nth-child(4) .dropdown__list a,
.technology header .header-naviarea .header-nav-list__link:nth-child(5) .dropdown__list a,
.theme header .header-naviarea .header-nav-list__link:nth-child(5) .dropdown__list a,
.proof header .header-naviarea .header-nav-list__link:nth-child(6) .dropdown__list a,
.kanto header .header-naviarea .header-nav-list__link:nth-child(7) .dropdown__list a,
.kansai header .header-naviarea .header-nav-list__link:nth-child(7) .dropdown__list a,
.foundry header .header-naviarea .header-nav-list__link:nth-child(7) .dropdown__list a,
.human_resource header .header-naviarea .header-nav-list__link:nth-child(8) .dropdown__list a,
.nedo_course header .header-naviarea .header-nav-list__link:nth-child(8) .dropdown__list a { background-color: rgba(0,85,167,0.85) !important; }

.dropdown__lists {
    visibility: hidden;/*デフォルトでは非表示の状態にしておく*/
    opacity: 0;/*不透明度0*/
    transition: all .3s;/*表示の変化を0.3秒に指定*/
    width: 100%;
    position: absolute;
    top: 60px;
    left: 0;
}
.header-nav-list__link:hover .dropdown__lists {
    visibility: visible;/*Gナビメニューにホバーしたら表示*/
    opacity: 1;/*不透明度1*/
}
}


@media all and (max-width: 768px) {
header .header-naviarea .header-nav-list__link .dropdown__list a { padding: 10px 30px 0 45px; font-size: 0.95rem; font-weight: 500; }
ul.dropdown__lists { padding-bottom: 20px; margin-top: -10px; }
}


/* フォーム */
.kiji004-kiji { margin-top: 0 !important; padding-top: 0 !important; }
.aform-name-ul { display: flex; justify-content: space-between; margin-top: 10px; }
.aform-name-ul li { width: 48%; }
.aform-input-example { color: #5a6773 !important; }
.aform-input { margin: 10px 0 !important; }
.aform-twice-note { margin: 10px 0 !important; color: #5a6773 !important; }
label.aform-label { background: #7095b9; border-radius: 0 !important; padding: 5px 12px !important; color: #fff; font-size: 16px !important; position: relative; line-height: 1.1 !important; margin: 40px 0 16px !important; }
label.aform-label span { font-size: 12px !important; background: #fff !important; padding: 0px !important; font-weight:bold !important; color: #D92B00; line-height: 1.2 !important; position: absolute; top: 5px; right: -40px; }
.aform-name-ul label { color: #5a6773 !important; }
#aform_btn_confirm_379 { font-size: 18px; margin: 40px auto; display: block; }
.aform-content { color: #5a6773 !important; }
#aform_confirm_msg { margin: 30px 0 !important; }
main .kiji004__title:before { display: none; }
.contact main .kiji004 { width: 100% !important; padding: 60px 0 30px !important; }
.contact main .kiji004-kiji { max-width: 700px; margin: 0 auto; }
.aform-header { display: none; }
