@charset "utf-8";
/* CSS Document */


.page_content .sp_message {
	display: none;
}
h2 {
	border-top: 3px solid #22b274;
}
h3:before {
  content: "";
  display: block;
  width: 41px;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: -2px;
  background: #22b274;
}

.utility_nav {
  margin-right: -452px;
}
.utility_sub,
.utility_bnr {
  width: 225px;
  float: right;
  font-size: 109%;
  margin-right: 1px;
  position: relative;
  z-index: 1;
}
.utility_bnr a {
  display: block;
  line-height: 50px;
  background: #b1a2e7;
  width: 100%;
  text-align: center;
  color: #ffffff;
  font-size: 105%;
}


.utility {
	padding-right: 0;
}
#content {
    padding-top: 50px;
  }
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .mm-page #content {
    padding-top: 101px;
  }
}
.gh_badge {
  display: block;
  height: 163px;
  padding-top: 24px;
  background: #FFFFFF;
  box-sizing: border-box;
  overflow: hidden;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_badge {
    width: 150px;
    height: 100px;
    float: left;
    padding-top: 13px;
  }
}
.gh_badge > .logo {
  display: block;
  width: 166px;
  height: 0;
  margin: 0 auto;
  padding-top: 106px;
  background: url(/extension/img/header/logo-badge.png) no-repeat;
  background-size: 100% auto;
  overflow: hidden;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_badge > .logo {
    width: 110px;
  }
}

.gh_menu {
  border-bottom: 1px solid #d6d6d6;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_menu {
    width: 100%;
    float: left;
    margin-right: -208px;
    padding-right: 208px;
    border: none;
    box-sizing: border-box;
  }
  .gh_menu:before, .gh_menu:after {
    content: " ";
    display: table;
  }
  .gh_menu:after {
    clear: both;
  }
  .gh_menu {
    *zoom: 1;
  }
}
.gh_menu > li {
  border-top: 1px solid #d6d6d6;
  background: url(/common/img/header/bg-globalheader.png) 50% top;
  transition: background-color 0.3s ease-in-out -0.1s;
}
.gh_menu > li:first-child {
  border-top: none;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_menu > li {
    width: 16.66667%;
    height: 100px;
    float: left;
    border: none;
    border-right: 1px solid #d6d6d6;
    font-size: 109%;
    box-sizing: border-box;
  }
}
.gh_menu > li > a {
  display: block;
  padding-top: 14px;
  padding-bottom: 11px;
  padding-left: 12px;
  background-image: url(/common/img/ico-arrow_white.png);
  background-repeat: no-repeat;
  background-position: 187px 50%;
	background-color: #90c31f;
	color: #FFFFFF;
  font-size: 134%;
  line-height: 1.3;
  transition: color 0.2s ease-in-out -0.1s;
}
.gh_menu > li > a.summary {
  padding-top: 12px;
  padding-bottom: 8px;
}
.gh_menu > li:hover > a {
  background-color: #76ab00;
}
.gh_menu > li > a > span .sub{
  font-size: 80%;
}
/*.gh_menu > li > a.health {*/
  /*line-height: 1.35;*/
  /*padding-top: 4px;*/
  /*padding-bottom: 4px;*/
/*}*/
/* .gh_menu > li > a.translation {
  font-size: 128%;
  letter-spacing: -1.5px;
} */
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_menu > li > a {
    height: 100%;
    padding: 0;
    padding-top: 8px !important;
    background-image: url(/common/img/header/tb/ico-arrow_white.png);
    background-position: 50% 88px;
    text-align: center;
    box-sizing: border-box;
    line-height: initial;
    font-size: 85%;
  }
	/* .gh_menu > li > a.translation {
  font-size: 100%;
  letter-spacing: 0;
} */
  .gh_menu > li > a:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 30px;
  }
	.gh_menu > li > a:before {
    margin: 0 auto !important;
	}
	.gh_menu > li > a .word_wrap:first-child,
	.gh_menu > li > a .word_wrap:nth-child(2) {
		display: block;
  }
	.gh_menu > li > a > span {
		width: 100% !important;
    margin-top: 20px;
    margin-top: 8px;
	}
	.gh_menu > li > a.lecture_list > span {
		margin-top: 17px;
	}
	.gh_menu > li > a.summary > span {
		/* margin-top: 14px; */
  }
  .gh_menu > li:nth-child(4) > a  > span {
    /* margin-top: 13px; */
  }
  .gh_menu > li:nth-child(5) > a  > span {
    /* margin-top: 11px; */
  }
  .gh_menu > li:nth-child(6) > a {
    /* line-height: 3.7
    ; */
  }
}
.gh_menu > li > a:before {
  content: "";
  background: url(/extension/img/header/gn_sprite.png) no-repeat;
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
  font-size: 0;
}
.gh_menu > li > a.greeting:before {
  width: 26px;
  height: 27px;
  background-position: -5px 0px;
	margin-right: 14px;
}
.gh_menu > li > a.lecture_list:before {
  width: 24px;
  height: 24px;
  background-position: -5px -33px;
	margin-right: 16px;
}
.gh_menu > li > a.summary:before {
  width: 29px;
  height: 21px;
  background-position: -5px -64px;
	position: relative;
	left: -2px;
	margin-right: 11px;
}
.gh_menu > li > a.health:before {
  width: 23px;
  height: 27px;
  background-position: -38px 0;
	/* margin-right: 17px; */
}
.gh_menu > li > a.homemedical:before {
  width: 28px;
  height: 28px;
  background-position: -38px -33px;
	position: relative;
	left: -2px;
	margin-right: 12px;
}
.gh_menu > li > a.translation:before {
  width: 21px;
  height: 28px;
  background-position: -38px -64px;
	margin-right: 19px;
}
.gh_menu > li:nth-child(3) > a:before {
  width: 26px;
  height: 26px;
  background: url(/extension/img/header/header_bg_01_pc.png) center center no-repeat;
  background-size: contain;
}
.gh_menu > li:nth-child(4) > a:before {
  width: 26px;
  height: 26px;
  background: url(/extension/img/header/header_bg_02_pc.png) center center no-repeat;
  background-size: contain;
}
.gh_menu > li:nth-child(5) > a:before {
  width: 28px;
  height: 28px;
  background: url(/extension/img/header/header_bg_03_pc.png) center center no-repeat;
  background-size: contain;
  margin-left: -3px;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_menu > li > a:before {
    display: block;
    margin: 0 auto;
  }
  .gh_menu > li > a.greeting:before {
    margin-bottom: 8px;
  }
  .gh_menu > li > a.lecture_list:before {
    margin-bottom: 10px;
  }
  .gh_menu > li > a.summary:before {
    margin-bottom: 7px;
  }
  .gh_menu > li > a.health:before {
    margin-bottom: 6px;
  }
  .gh_menu > li > a.homemedical:before {
    margin-bottom: 7px;
  }
  .gh_menu > li > a.translation:before {
    margin-bottom: 6px;
  }
}

.gh_menu > li > a > span {
  display: inline-block;
  width: 135px;
  vertical-align: middle;
}
.gh_menu > li > a > span .word_wrap {
  display: inline-block;
}
.gh_menu > li > a > span .small_label {
  font-size: 12px;
}

/* :hover css version */
.gh_menu > li:hover,
.gh_menu > li.is_active {
  background: #00a7d7;
}
.gh_menu > li:hover > a {
  background-image: url(/common/img/ico-arrow_white.png);
  color: #ffffff;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_menu > li:hover > a,
  .gh_menu > li.is_active > a {
    background-image: url(/common/img/header/tb/ico-arrow_white.png);
  }
}
/*.gh_menu > li:hover> .greeting:before,
.gh_menu > li.is_active > .greeting:before {
  background-position: -38px -26px;
}
.gh_menu > li:hover> .lecture_list:before,
.gh_menu > li.is_active > .lecture_list:before {
  background-position: -76px -50px;
}
.gh_menu > li:hover> .summary:before,
.gh_menu > li.is_active > .summary:before {
  background-position: 0px 0px;
}
.gh_menu > li:hover> .health:before,
.gh_menu > li.is_active > .health:before {
  background-position: -38px -77px;
}
.gh_menu > li:hover> .homemedical:before,
.gh_menu > li.is_active > .homemedical:before {
  background-position: -38px -52px;
}
.gh_menu > li:hover> .translation:before,
.gh_menu > li.is_active > .translation:before {
  background-position: -76px 0px;
}*/

.gh_aside {
  display: none;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_aside {
    width: 208px;
    height: 90px;
    float: left;
    padding: 0;
    padding-top: 10px;
  }
}
.gh_aside .gh_bnr {
  margin-bottom: 5px;
  font-size: 125%;
  background: url(/extension02/img/header/ico-homecoming.jpg) no-repeat;
  text-align: center;
  transition: opacity 0.1s;
}
.gh_aside .extension_bnr02 {
  width: 165px;
  margin: 0 auto 10px auto;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_aside .gh_bnr {
    width: 165px;
    margin: 0 auto;
    margin-bottom: 10px;
    font-size: 125%;
  }
}
.gh_aside .gh_bnr:hover {
  opacity: 0.6;
}
.gh_aside .gh_bnr > a {
  display: block;
  padding: 14px 0 14px 10px;
  background: url(/common/img/header/ico-arrow_white.png) 8px 50% no-repeat;
  color: #ffffff;
  letter-spacing: 0;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_aside .gh_bnr > a {
    padding: 0;
    line-height: 35px;
  }
}
.gh_aside .gh_lang {
  text-align: center;
  font-size: 109%;
}
.gh_aside .gh_lang > span {
  color: #00a7d7;
  text-decoration: underline;
}
.gh_aside .gh_lang > a {
  text-decoration: underline;
}

.utility_nav {
  padding: 10px 0 9px;
}
.utility {
	background: #fff!important;
	border-bottom: none;
	height: 50px;
	padding-bottom: 0;
	padding-top: 0;
}
.utility_sub > .link_official {
  display: block;
  height: 100%;
  padding-left: 58px;
  line-height: 50px;
  background: url(/exam/img/header/logo-badge.png) no-repeat 13px 7px;
  background-color: #00a7d7;
  color: #fff;
  font-size: 105%;
  transition: opacity 0.15s;
}
.utility_sub > .link_official:hover {
  opacity: 0.7;
}
.utility_nav > ul:first-child {
  width: auto;
  float: right;
  margin-right: 480px;
}
.mm-page .pl_special {
	padding-left: 28px;
}
.mm-page .pl_special02 {
	padding-left: 28px;
}
.mm-page .pl_special03 {
	padding-left: 36px;
}
.mm-page .pl_special04 {
	padding-left: 25px;
}

.gh_aside .extension_txt {
  margin-bottom: 20px;
  font-size: 100%;
	text-align: center;
}
.globalheader .gh_aside .extension_txt a {
  color: #00a7d7;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {

.page_content a, .page_content .no_link {
  font-size: 100%;
}  
  
.gh_aside .extension_txt {
	display: none;
}
.gh_menu {
  margin-right: -330px;
  padding-right: 330px;
}
.gh_menu > li {
  width: 16.6%;
}
.gh_aside {
  display: block;
  padding: 10px 5px;
  height: 80px;
  width: 320px;
}
.gh_aside .utility_nav_tablet ul {
  width: 100%;
  overflow: hidden;
}

.gh_aside .utility_nav_tablet .top {
  margin-bottom: 5px;
}
.gh_aside .utility_nav_tablet .top li {
  width: 158px;
  height: 35px;
  float: left;
}
.gh_aside .utility_nav_tablet .top li a {
  display: block;
  line-height: 35px;
  background: #b1a2e7;
  width: 100%;
  text-align: center;
  color: #ffffff;
  font-size: 92%;  
}
.gh_aside .utility_nav_tablet .top li.link_official {
  float: right;
}
.gh_aside .utility_nav_tablet .top li.link_official a {
  position: relative;
  background: #00a7d7;
  text-indent: 24px;
}
.gh_aside .utility_nav_tablet .top li.link_official a:before {
  display: block;
  content: "";
  width: 22px;
  height: 22px;
  position: absolute;
  top: 50%;
  left: 3px;
  margin-top: -11px;
  background: url(/exam/img/header/logo-badge.png) no-repeat 0 0;
  background-size: 22px auto;
}

.gh_aside .utility_nav_tablet .bottom li {
  width: 158px;
  height: 35px;
}
.gh_aside .utility_nav_tablet .bottom li a {
  display: block;
  line-height: 35px;
  width: 100%;
  text-align: center;
  font-size: 114%;
}
.gh_aside .utility_nav_tablet .bottom .link_access {
  float: left;
}
.gh_aside .utility_nav_tablet .bottom .link_access a:before {
  display: inline-block;
  position: relative;
  content: "";
  width: 18px;
  height: 23px;
  background: url(/common/img/header/ico-access.png) no-repeat 0 0;
  background-size: 18px auto;
  vertical-align: middle;
  left: -5px;
}
.gh_aside .utility_nav_tablet .bottom .link_contact {
  float: right;
}
.gh_aside .utility_nav_tablet .bottom .link_contact a:before {
  display: inline-block;
  position: relative;
  content: "";
  width: 20px;
  height: 17px;
  background: url(/common/img/header/ico-contact.png) no-repeat 0 0;
  background-size: 20px auto;
  vertical-align: middle;
  left: -5px;
}


.utility.clearfix {
  display: none;
}



}


.grid.pc_message.ex_pc_message .row:first-child .col.md2_4.sm1_2:first-child span {
  padding: 85px 0;
}
.col.md2_4.sm1_2.fl_r {
  float: right;
}
.page_content.demand > ol > li {
  padding-left: 0;
}
.demand .demand-list {
  padding-left: 10px;
  margin-bottom: 50px;
}
.demand .demand-list li {
  padding-left: 3em;
  text-indent: -3em;
}
.translation .grid.pc_message:nth-child(2) {
  margin-top: 100px;
}
/*----------------------------------------
    Sidebar
----------------------------------------*/
.page_sidebar > a,
.page_sidebar > span {
  background-color: #90c31f;
}
.page_sidebar li {
	background-color: #effcd2;
}
.page_sidebar li:hover {
	background-color: #a7d542;
}
.page_sidebar li > a:before, 
.page_sidebar li > span:before {
   border-left: 5px solid #90c31f;
}
.page_sidebar li.is_active {
	background-color: #a7d542;
}
.page_sidebar > a:before {
  content: url(/common/img/ico-circle_arrow_light03.png);
}
.gh_aside .extension_sp {
  display: none!important;
}
/*----------------------------------------
    Sidebarにサテライトセンター追加　20191129
----------------------------------------*/

.gh_aside_pc .gh_satellite {
  margin: 16px 5px;
  text-align: center;
}
.gh_aside_pc .gh_satellite li{
  margin-bottom: 10px;
}
.gh_aside_pc .gh_satellite a {
  color: #00a7d7;
  font-size: 12px;
  text-align: center;
  text-decoration-line: underline;
}
@media only all and (min-width: 768px) and (max-width: 1249px) {
  .gh_aside_pc .gh_satellite {
    display: none;
  }
  .gh_aside .gh_satellite {
    text-align: center;
    float: left;
    font-size: 11px;
    width: 50% !important;
    margin: 0 auto;
  }
  .gh_aside .gh_satellite li:first-child {
    margin-bottom: 3px;
  }
  .gh_aside .gh_satellite a {
    color: #00a7d7;
    font-size: 11px;
    text-align: center;
    text-decoration-line: underline;
  }
  .gh_aside .utility_nav_tablet .bottom {
    float: right;
    width: 50%;
    font-size: 11px;
  }
  .gh_aside .utility_nav_tablet .bottom li {
    width: 158px;
    height: 25px;
}
  .gh_aside .utility_nav_tablet .bottom li a {
    display: block;
    line-height: 20px;
    width: 100%;
    text-align: center;
    font-size: 11px;
  }
  .gh_aside .utility_nav_tablet .bottom .link_access {
    float: none;
    width: 158px;
    height: 20px;
  }
  .gh_aside .utility_nav_tablet .bottom .link_access a {
    display: block;
    line-height: 20px;
    width: 100%;
    text-align: center;
    font-size: 11px;
  }
  .gh_aside .utility_nav_tablet .bottom .link_access a:before {
    display: inline-block;
    position: relative;
    content: "";
    width: 14px;
    height: 19px;
    background: url(/common/img/header/ico-access.png) no-repeat 0 0;
    background-size: 14px auto;
    vertical-align: middle;
    left: -5px;
  }
  .gh_aside .utility_nav_tablet .bottom .link_contact {
    float: none;
  }
  .gh_aside .utility_nav_tablet .bottom .link_contact a {
    float: none;
  }
  .gh_aside .utility_nav_tablet .bottom .link_contact a:before {
    display: inline-block;
    position: relative;
    content: "";
    width: 16px;
    height: 15px;
    background: url(/common/img/header/ico-contact.png) no-repeat 0 0;
    background-size: 16px auto;
    vertical-align: middle;
    left: -5px;
  }
}
/*----------------------------------------
    Footer
----------------------------------------*/
.grid .col.md6_1 {
  width: 16.2%;
}
.globalfooter .gf_inner {
  background: #00a7d7;
}