@charset "utf-8";
/* CSS Document */

/* ヘッダー(header.tpl.php)
------------------------------------- */
#header {
  width: 100%;
  background-color: #FFFFFF; /* 本番環境 */ /*background-color: #a0cf48;  テスト環境 */
}
/* 総進ロゴ・問合せ電話番号・メール問合せ・ログインボタン
	------------------------------------- */
#header #headGuide {
  width: 950px;
  height: 80px;
  margin: 3px auto;
  overflow: hidden; /*floatの解除、ここがポイント(floatしている要素の親要素へ適用する)*/
  position: relative; /*DWで正常にプレビューできるようになる*/
  zoom: 1; /*IE6でレイアウト崩れを防ぐため*/
}
#header #headGuide #logo {
  width: 405px;
  float: left;
}
#header #headGuide #logo a {
  display: block;
  margin: 10px auto 7px auto;
}
#header #headGuide #logo h1 {
  font-size: 13px;
  line-height: 13px;
  font-weight: normal;
}
#header #headGuide #contactTel {
  width: 292px;
  float: left;
  margin-top: 25px;
  margin-left: 13px;
}
#header #headGuide #contactMail {
  width: 127px;
  float: left;
  margin-top: 42px;
  margin-left: 15px;
}
#header #headGuide #loginBlock { /* ログイン前のブロック */
  width: 49px;
  float: left;
  margin-left: 25px;
  margin-top: 26px;
}
#header #headGuide #logoutBlock {
  width: 61px;
  float: left;
  margin-left: 10px;
  margin-top: 26px
}
#header #headGuide #myPage {
  width: 49px;
  float: left;
  margin-left: 25px;
  margin-top: 26px
}
#header #headGuide #MemberName {
  width: 360px;
  font-size: 14px;
  float: left;
  margin-left: 25px;
  margin-top: 26px;
  white-space: nowrap;
}
#header #headGuide #NewMember { /* ログイン前のブロック */
  width: 78px;
  float: left;
  margin-left: 10px;
  margin-top: 26px;
}
#header #headGuide #ThankYou { /* ログイン前のブロック */
  width: 140px;
  font-size: 14px;
  float: left;
  margin-left: 25px;
  margin-top: 26px;
  padding-top: 6px;
}
#header #headGuide #memberBlock { /* ログイン後の会員名表示ブロック(大枠) */
  width: 168px;
  height: 87px;
  background-image: url(/images/common/headMemberBack.png);
  background-position: left top;
  background-repeat: no-repeat;
  float: right;
  margin-top: 3px;
  color: #FF7C5B;
  position: relative;
}
#header #headGuide #memberBlock #MemberName { /* ログイン後の会員名表示ブロック(白背景部分) */
  display: table-cell;
  vertical-align: middle;
  height: 53px;
  padding-top: 7px;
  padding-left: 15px;
  font-size: 14px;
  line-height: 17px;
}
* + html #header #headGuide #memberBlock #MemberName {
  padding-top: 9px;
}
#header #headGuide #memberBlock input#logoutButton { /* ログイン後のログアウトボタン */
  width: 73px;
  height: 18px;
  background-image: url(/images/common/headMemberLogout.png);
  background-position: left top;
  background-repeat: no-repeat;
  text-indent: -999em;
  border: none;
  background-color: transparent;
  display: block;
  position: absolute;
  bottom: 5px;
  left: 48px;
  cursor: pointer;
}
/* トップページなどで使用している、メインの写真画像が入るブロック
	------------------------------------- */
#header #headMain {
  width: 100%;
  height: 250px;
  background-color: #EBF0F0;
}
/*#header #headMain img {
		width: 950px;
		margin: auto;
		display: block;
	}*/
#header #headMain #examinationData {
  background-image: url(/images/common/headMain.png);
  background-position: left top;
  background-repeat: no-repeat;
  display: block;
  width: 950px;
  height: 250px;
  margin: auto;
  overflow: hidden; /*floatの解除、ここがポイント(floatしている要素の親要素へ適用する)*/
  position: relative; /*DWで正常にプレビューできるようになる*/
  zoom: 1; /*IE6でレイアウト崩れを防ぐため*/
}
#header #headMain a#lnkFair {
  width: 361px;
  height: 62px;
  display: block;
  position: absolute;
  left: 15px;
  bottom: 7px;
}
#header #mainImage {
  position: relative;
}
#header .flexslider #messageBorad {
  background-image: url(/images/common/headMessageBoard.png);
  background-position: left top;
  background-repeat: no-repeat;
  display: block;
  width: 301px;
  height: 157px;
  position: absolute;
  bottom: 13px;
  right: 18px;
  font-size: 24px;
  z-index: 99;
}
#header .flexslider #messageBorad p {
  position: relative;
  top: 33px;
  left: 99px;
  font-size: 18px;
  line-height: 1.1em;
  font-weight: bold;
  display: inline-block;
  vertical-align: bottom;
}
#header .flexslider #messageBorad #examinationYears {
  display: inline-block;
  margin-right: 5px;
  font-size: 24px; /*font-weight: bold;
		position: absolute;
		top: 50px;
		right: 260px;*/
}
#header .flexslider #messageBorad #examinationDays {
  display: block;
  line-height: 34px;
  margin-left: 0px;
  margin-top: 12px;
  margin-right: 0px;
  font-weight: bold;
  font-size: 24px;
  text-align: left;
}
#header .flexslider #messageBorad #examinationDay {
  font-weight: bold;
  font-size: 53px;
  color: #FB2600;
  display: inline-block;
  margin-right: 8px;
  font-family: "Arial Black", Gadget, "sans-serif";
}
#header .flexslider #messageBorad.cram {
  background-image: none;
  width: 122px;
  height: 122px;
  top: 13px;
}
.flexslider {
  border: none !important;
}
body#personal #header #headMain, body#cramSchool #header #headMain, body#myPage #header #headMain { /* 各種フォームがあるページやログイン後の各画面では、メイン画像を表示しない。 */
  display: none;
}
/* 紺色グラデーションが背景のナビゲーションバー
	------------------------------------- */
#header #headNavi {
  width: 100%;
  margin: 0;
  background: #3A7EC5;
}
#header #headNavi ul.MeunNavi {
  width: 951px;
  height: 60px;
  margin: 0 auto;
  /*floatの解除、ここがポイント(floatしている要素の親要素へ適用する)*/
  position: relative; /*DWで正常にプレビューできるようになる*/
  zoom: 1; /*IE6でレイアウト崩れを防ぐため*/
  line-height: 1.1;
  font-size: 15px;
}
#header #headNavi ul.MeunNavi li.MeunNavi01 {
  border-right: solid 1px #fff;
  height: 60px;
}
#header #headNavi > ul > li {
  display: block;
  float: left;
}
#header #headNavi ul.MeunNavi li#naviSmogi {
  border-left: solid 1px #fff;
}
#header #headNavi ul li#naviPamf, #header #headNavi ul li#naviReserve { /*メニューナビ幅950pxの中に収めるため、両端のメニューは118pxに調整*/
  width: 118px;
}
#header #headNavi ul li a {
  display: block;
  background-position: left top;
  background-repeat: no-repeat;
  color: #fff;
}
#header #headNavi > ul > li > a:hover {
  text-decoration: none;
}
#header #headNavi > ul > li > a > span {
  display: table-cell;
  vertical-align: middle;
  height: 60px;
}
#header #headNavi ul li#naviSmogi {
  width: 137px;
}
#header #headNavi > ul > li#naviSmogi > a {
  width: 119px;
  padding-left: 20px
}
#header #headNavi ul li#naviSMogiPrsn {
  width: 195px;
  display: block;
}
#header #headNavi ul li#naviSMogiPrsn a#free {
  background-image: url("/images/top/header01.png");
  background-repeat: no-repeat;
  background-position: top 10px left 16px;
  width: 130px;
  padding-left: 65px;
}
#header #headNavi > ul > li#naviPlans {
  width: 139px;
}
#header #headNavi > ul > li#naviPlans > a {
  padding-left: 23px;
  width: 116px;
}
#header #headNavi > ul > li#naviReport {
  width: 140px;
}
#header #headNavi > ul > li#naviReport > a {
  padding-left: 19px;
  width: 120px;
}
#header #headNavi > ul > li#naviSmogiTest01 {
  width: 159px;
}
#header #headNavi ul.MeunNavi li#naviSmogiTest01 > a {
  padding-left: 25px;
  width: 135px;
}
#header #headNavi > ul > li#naviSmogiTest02 {
  width: 174px;
}
#header #headNavi > ul > li#naviSmogiTest02 > a {
  padding-left: 23px;
  width: 151px;
}
ul.sub-menu {
  overflow: visible !important;
  background: #F2F2F2;
  border-right: none;
  display: none;
  position: absolute;
  z-index: 10;
}
ul.sub-menu li.MenuItem a {
  height: 40px;
  color: #000 !important;
}
div#headNavi > ul > li:hover ul.sub-menu {
  display: block;
}
#naviSmogi #SubMenu1 li.MenuItem a {
  color: #000;
}
#naviSmogi ul#SubMenu1 li.MenuItem {
  width: 200px;
  height: 40px;
}
#naviSmogi ul#SubMenu1 {
  width: 200px;
}
#naviSMogiPrsn #SubMenu2 {
  width: 330px;
}
#SubMenu3 {
  width: 177px
}
#SubMenu5 {
  width: 282px;
}
#SubMenu6 {
  width: 300px;
}
.MenuItem {
  border-bottom: solid #B3B3B3 1px
}
ul li ul.sub-menu li.MenuItem a {
  padding-left: 17px !important;
}
ul > li > ul.sub-menu > li.MenuItem > a > span {
  display: table-cell;
  vertical-align: middle;
  height: 40px;
}
ul > li > ul.sub-menu > li.MenuItem > a:hover {
  background: #9BDCFF;
}
#headNavi ul.CramMeun > li#FreeMaterials {
  border-left: solid 1px #fff;
}
#headNavi ul.CramMeun > li#FreeMaterials a span {
  background-image: url("/images/top/header08.png");
  background-repeat: no-repeat;
  background-position: bottom 10px left 35px;
}
#headNavi ul.CramMeun > li#HowToUse > a > span {
  background-image: url("/images/top/header09.png");
  background-repeat: no-repeat;
  background-position: bottom 16px left 20px;
}
#headNavi ul.CramMeun > li > a {
  width: 189px;
}
#headNavi ul.CramMeun > li > a > span {
  text-align: center;
  width: 189px;
}
.color_Cram {
  background: #3BA2A4 !important;
}
.color_Cram02 {
  background: #aadcd2 !important;
}

/* フッター直前の会社情報など (foot_navi.tpl.php)
	------------------------------------- */
#footNavi {
  width: 950px;
  margin: 15px auto 0 auto;
  font-size: 0.8em;
  position: relative;
}
#footNavi a:hover {
  text-decoration: none;
  color: #3A7EC5;
}
#footNavi .detail {
  padding: 6px 0;
}
#footNavi .detailS {
  margin-bottom: 30px;
}
#footNavi .detailUnderNone {
  padding: 6px 0;
  border-bottom: none;
}
#footNavi h4 {
  font-weight: bold;
}
#footNavi h5 {
  font-weight: bold;
}
#footNavi p {}
#footNavi ul {
  overflow: hidden; /*floatの解除、ここがポイント(floatしている要素の親要素へ適用する)*/
  position: relative; /*DWで正常にプレビューできるようになる*/
  zoom: 1; /*IE6でレイアウト崩れを防ぐため*/
  margin-bottom: 4px;
  display: inline;
  list-style: square;
  list-style-position: inside;
}
#footNavi div.navi {
  display: inline-block;
  vertical-align: top;
}
#footNavi div.navi01 {
  display: block;
}
#footNavi ul li {
  width: 290px;
}
#footNavi .detailS ul li.wide {
  width: 420px;
}
#footNavi a {
  color: #333;
}
/* フッター(footer.tpl.php)
------------------------------------- */
fixed-footer-overlay-dsds01 {
  height: 70px;
  float: left;
}
#fixed-footer-overlay-dsds .tel {
  font-size: 25px;
  color: #fff;
  font-weight: bold;
  display: inline-block;
}
#fixed-footer-overlay-dsds .attention {
  display: inline-block;
  font-size: 13px;
  line-height: 1.1;
}
#fixed-footer-overlay-dsds00 {
  background-color: #3A7EC5;
}
#fixed-footer-overlay-dsds {
  margin: 0 auto;
  width: 950px;
  bottom: 0;
  left: 0;
  height: 70px;
  z-index: 99;
  background-color: #3A7EC5;
  color: #fff; /*! background-color: #5096DC; */
}
#fixed-footer-overlay-dsds div {
  display: inline-block;
}
#fixed-footer-overlay-dsds ul li {
  display: inline-block;
  vertical-align: top;
  height: 70px;
  font-size: 16px;
  font-weight: bolder;
}
#fixed-footer-overlay-dsds ul li#MenuItem02 {
  background-image: url("/images/top/footer02.png");
  background-repeat: no-repeat;
  background-position: top 17px left 1px;
  padding-left: 58px;
  padding-top: 26px;
  margin-right: 28px;
}
#fixed-footer-overlay-dsds ul li#MenuItem03 {
  background-image: url("/images/top/footer01.png");
  background-repeat: no-repeat;
  background-position: top 9px left 1px;
  padding-left: 58px;
  padding-top: 26px;
}
#fixed-footer-overlay-dsds #footer-tel {
  padding-left: 60px;
  background-image: url("/images/top/footer03.png");
  background-repeat: no-repeat;
  background-position: top 20px left 10px;
  height: 70px;
  height: 60px;
  width: 400px;
  float: left;
  padding-top: 10px;
  margin-right: 35px;
}
#fixed-footer-overlay-dsds #footer-attention {
  line-height: 1.1;
  font-size: 13px;
}
#fixed-footer-overlay-dsds li a {
  color: #fff;
}
#fixed-footer-overlay-dsds div.widget_text {
  display: inline-block;
  width: 267px;
  height: 70px;
}
#fixed-footer-overlay-dsds div.widget_text span.tel {
  font-size: 20px;
}
#fixed-footer-overlay-dsds div.widget_text p {
  color: #fff !important;
  text-align: left;
  padding: 0.8em 0 0 1.4em;
}
#fixed-footer-overlay-dsds div.widget_text p span {
  color: #fff !important;
}
#fixed-footer-overlay-dsds div.nav_menu-6 {
  display: inline-block;
  width: auto;
  vertical-align: top;
  border-right: solid 1px #fff;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li {
  display: inline-block; /*! border-left: solid 1px #fff; */ margin: 0;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li a {
  display: block;
  width: 145px;
  height: 90px;
  color: #fff !important;
  padding-top: 58px;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li.menu-item-1162 {
  background: url('/media/2019/09/footer_icon_01.png') no-repeat;
  background-position: center 10px;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li.menu-item-1163 {
  background: url('/media/2019/09/footer_icon_02.png') no-repeat;
  background-position: center 10px;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li.menu-item-1164 {
  background: url('/media/2019/09/footer_icon_03.png') no-repeat;
  background-position: center 10px;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li.menu-item-738 {
  background: url('/media/2019/09/footer_icon_05.png') no-repeat;
  background-position: center 10px;
}
#fixed-footer-overlay-dsds div.nav_menu-6 li.menu-item-1165 {
  background: url('/media/2019/09/footer_icon_06.png') no-repeat;
  background-position: center 10px;
}
#fixed-footer-overlay-dsds .fixed-footer-top-button { /*! top: 14px; */ border: 0;
}
#menu-item-1165 a {
  padding-top: 45px !important;
  line-height: 17px !important;
}
/* フッターナビ */
#footer-widget-container {
  margin: 0;
  height: 590px;
}
#footer-widget-container ul.menu {
  display: block;
  width: 100%;
  height: 32em;
}
#footer-widget-container ul.menu > li {
  font-weight: bold;
  margin-bottom: 1em;
}
#footer-widget-container ul li {
  list-style: none;
}
#footer-widget-container ul li:before {
  content: '■ ';
}
#footer-widget-container ul.sub-menu li {
  display: block;
  flex-basis: 30%;
  list-style: none;
  font-weight: normal;
  margin: 0.1em 0;
}
#footer-widget-container ul.sub-menu li:before {
  content: '';
  font-weight: bold;
  color: #004B99;
  font-size: 0.8em;
}
#footer-widget-container .nav_menu-8 {
  flex: 0 1 auto !important;
  margin-right: 2em;
}
#footer {
  width: 100%;
  padding: 10px 0;
  position: relative;
  overflow: hidden; /*floatの解除、ここがポイント(floatしている要素の親要素へ適用する)*/
  position: relative; /*DWで正常にプレビューできるようになる*/
  zoom: 1; /*IE6でレイアウト崩れを防ぐため*/
}
#footerLink {
  font-size: 14px;
  background: #9BDCFF;
  text-align: center;
}
#footerLink a {
  color: #000;
  font-weight: bold;
  font-size: 14px;
}
#footer #copyright {
  font-size: 0.8em;
  line-height: 1.2em;
}
#footer #footerNotice {
  font-size: 0.8em;
}
#footer #copyright00 {
  text-align: center;
  background: #3A7EC5;
  color: #fff;
  padding: 20px 0 15px 0;
}
.color_Cram {
  background: #3BA2A4 !important;
}
.color_Cram02 {
  background: #aadcd2 !important;
}
.NewsGreen {
  background: #aadcd2;
  background-image: url("/images/top/HotNews_03.png");
  background-repeat: no-repeat;
  background-position: left top;
}