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

section.p-sec {
	width: 100%;
	margin: 0 0 60px;
	padding: 0;
	position: relative;
	overflow: hidden;
}

section.p-sec:last-child {
	margin: 0;
}

h2 {
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	position: relative;
	overflow: hidden;
	border-bottom: solid 5px #1A2141;
	color: #1A2141;
	font-size: 180%;
	font-weight: bold;
	line-height: 160%;
}

h3 {
	width: 95%;
	margin: 0 auto 30px;
	padding: 15px 2.5%;
	position: relative;
	overflow: hidden;
	background-color: #F3F6FD;
	color: #1A2141;
	font-size: 140%;
	font-weight: bold;
	line-height: 160%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

h3:before {
	content: "";
	width: 8px;
	height: 25px;
	display: inline-block;
	margin: 0 10px 0 0;
	background-color: #1A2141;
}

h4 {
	width: 95%;
	margin: 0 auto 10px;
	padding: 0;
	position: relative;
	overflow: hidden;
	color: #1A2141;
	font-size: 120%;
	font-weight: bold;
	line-height: 160%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

h4:before {
	content: "";
	width: 10px;
	height: 20px;
	display: inline-block;
	margin: 0 10px 0 0;
	background-color: #1A2141;
}

section.p-sec .wrap {
	width: 95%;
	margin: 0 auto;
}

section.p-sec .txt {
	font-size: 100%;
	line-height: 210%;
}

.intro-txt {
	 width: 100%;
	 margin: 0 0 60px;
}

section.sub-sec {
	width: 100%;
	margin: 0 0 60px;
}

ul.research-list img.respdf{
	width: 20px;
	height: 26px;
}

section.sub-sec:last-child {
	margin: 0;
}

.sub-txt {
	width: 96%;
	margin: 0 0 30px 4%;
	position: relative;
	overflow: hidden;
}

section.sub-sec:last-child .sub-txt:last-child {
	margin: 0 0 0 4%;
}

section.sub-sec section {
	margin: 0 0 60px;
}

section.sub-sec section:last-child {
	margin: 0;
}

ul {
	width: 95%;
	margin: 0 auto;
	list-style: disc;
	overflow: visible;
}

ul > li {
	margin: 0 0 10px;
}

ol {
	width: 95%;
	margin: 0 0 0 5%;
	overflow: visible;
	list-style: none;
	counter-reset: colorme;
}

ol > li {
	width: 92%;
	margin: 0 0 10px;
	overflow: visible;
	counter-increment: colorme;
}

ol > li:before {
	content: counter(colorme)".";
	color: #1A2141;
	display: inline-block;
	width: 1.5em;
	margin: 0 0.3em 0 -2em;
	text-align: right;	
	font-size: 110%;
	font-weight: bold;
}

.red {
	color: #FF3838;
	font-weight: bold;
}

/***GREETINGS***/

.greetings-wrap {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: hidden;
}

.greetings-sec {
	width: 100%;
	margin: 0 0 100px;
	padding: 0;
	position: relative;
	overflow: hidden;
}

.gs-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.greetings-wrap .gw-img {
	 width: 28%;
}

.greetings-wrap .gw-r {
	width: 68%;
}

.greetings-wrap .gw-r .catch {
	width: 100%;
	margin: 0 0 20px;
	position: relative;
	overflow: hidden;
	font-size: 200%;
	line-height: 180%;
	font-weight: bold;
	color: #3C3C3C;
}

.greetings-wrap .gw-r .gw-prof {
	width: 40%;
	margin: 0;
	padding: 30px 5%;
	background-color: #1A2141;
	color: #FFF;
	font-weight: bold;
}

.greetings-wrap .gw-r .gw-prof .title {
	font-size: 100%;
}

.greetings-wrap .gw-r .gw-prof .name-ja {
	font-size: 180%;
}

.greetings-wrap .gw-r .gw-prof .name-en {
	font-size: 80%;
	font-weight: 400;
	font-family: 'Roboto Condensed', sans-serif;
}

.history {
	width: 90%;
	margin: 0 auto;
	padding: 60px 5%;
	position: relative;
	overflow: hidden;
	background-color: #F3F6FD;
}

.history h3.history-mds {
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	position: relative;
	overflow: hidden;
	text-align: center;
	font-size: 180%;
	color: #3C3C3C;
	display: block;
}

.history h3.history-mds:before {
	display: none;
}

.history h3.history-mds:after {
	content: "";
	display: block;
	width: 100px;
	height: 1px;
	margin: 10px auto 0;
	background-color: #A8A7C1;
}

.history .txt {
	font-size: 100%;
	line-height: 240%;
}

/***ABOUT***/

ul.staff-list {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	list-style: none;
}

ul.staff-list li {
	width: 100%;
	margin: 0 0 100px;
	padding: 0;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

ul.staff-list li:last-child {
	margin: 0;
}

ul.staff-list li .staff-l {
	width: 25%;
}

ul.staff-list li .staff-r {
	width: 70%;
}

.staff-r .staff-name {
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	position: relative;
	overflow: hidden;
	border-bottom: solid 1px #707070;
	color: #1A2141;
	font-size: 100%;
	font-weight: bold;
}

.staff-r .staff-name:before {
	display: none;
}

.staff-r .staff-name .sn-title {
	font-size: 100%;
	margin: 0;
}

.staff-r .staff-name .sn-ja {
	font-size: 160%;
}

.staff-r .staff-name .sn-en {
	font-size: 80%;
	font-weight: 400;
	font-family: 'Roboto Condensed', sans-serif;
}

.staff-r dl.profile-list {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
}

.staff-r dl.profile-list dt {
	width: 15%;
	margin: 0;
	padding: 0;
	font-weight: bold;
	color: #1A2141;
}

.staff-r dl.profile-list dd {
	width: 82%;
	margin: 0;
	padding: 0;
}

/***TREATMENT***/

.img-title {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	display: block;
	text-align: center;
	font-weight: bold;
	font-size: 100%;
	color: #1A2141;
}

.img-full {
	width: 100%;
	margin: 30px auto 60px;
}

.img-full:last-child {
	margin: 30px auto;
}

.img-wide {
	width: 70%;
	margin: 30px auto 60px;
}

.img-wide:last-child {
	margin: 30px auto;
}

.img-half {
	width: 50%;
	margin: 30px auto 60px;
}

.img-half:last-child {
	margin: 30px auto;
}

.img-flex {
	width: 80%;
	margin: 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.img-flex .if {
	width: 45%;
}

/***RESEARCH***/

.h3-memo{
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	font-size: 110%;
	font-weight: bold;
	color: #FF3838;
	text-align: right;
}

ul.research-list {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: visible;
	list-style: none;
}

ul.research-list li {
	width: 98%;
	margin: 0 0 30px 2%;
	overflow: visible;
}

ul.research-list li:last-child {
	margin: 0 0 0 2%;
}

ul.research-list li:before {
	content: "●";
	color: #1A2141;
	font-size: 100%;
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
	width: 1.2em;
	margin: 0 0.2em 0 -1.6em;
}

ul.research-list li ul li {
	margin-bottom: 10px;
}

ul.research-list li ul li:before {
	display: none !important;
}

ol.optout-list {
	width: 95%;
	margin: 0 0 0 5%;
	overflow: visible;
	list-style: none;
	counter-reset: colorme;
}

ol.optout-list > li {
	width: 92%;
	margin: 0 0 10px;
	overflow: visible;
	counter-increment: colorme;
}

ol.optout-list > li:before {
	content: counter(colorme)".";
	color: #1A2141;
	display: inline-block;
	width: 1.5em;
	margin: 0 0.3em 0 -2em;
	text-align: right;	
	font-size: 110%;
	font-weight: bold;
}

ul.research-list li h4.res-title {
	display: inline;
	margin: 0 0 30%;
	color: #000;
	font-size: 100%;
	font-weight: bold;
}

ul.research-list li h4.res-title:before {
	display: none;
}

/***ACHIEVEMENTS-GYOSEKI***/

#gyoseki-area ol > li {
	margin: 0 0 30px;
}

#gyoseki-area ol > li:last-child {
	margin: 0;
}

.gyoseki-year-selector {
  width: 25%;
  max-width: 250px;
  margin: 0 0 10px;
  padding: 0;	
  float: right;
}

select.gyosekimenu-select {
  width: 95%;
  margin: 0 auto;
  padding: 10px 2.5%;
  position: relative;
  overflow: hidden;
  font-size: 100%;
  color: #1A2141;
  background-color: #FFF;
  border-color: #919191;
}

/***RECRUIT***/

.recruit-intro {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	display: inline;
	line-height: 240%;
}

.ri-img {
	width: 35%;
	float: left;
	margin: 0 30px 0 0;
}

.recruit-flow {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: hidden;
}

ul.shikaku-list {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: visible;
	list-style: disc;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	font-size: 90%;
}

ul.shikaku-list li {
	width: 45%;
	margin: 0 0 10px;
}

ul.subspecialty-list {
	width: 90%;
	margin: 0 auto 30px;
	padding: 0;
	position: relative;
	overflow: visible;
	list-style: none;
	font-size: 100%;
	line-height: 180%;
	font-weight: bold;
	color: #000;
}

ul.subspecialty-list li {
	width: 95%;
	margin: 0 0 30px 5%;
	overflow: visible;
}

ul.subspecialty-list li:last-child {
	margin: 0 0 0 5%;
}

ul.subspecialty-list li:before {
	content: "●";
	color: #1A2141;
	font-size: 100%;
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
	width: 1.2em;
	margin: 0 0.2em 0 -1.6em;
}

ul.conference-list {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: visible;
	list-style: disc;
	display: block;
	font-size: 90%;
}

ul.conference-list li {
	width: 100%;
	margin: 0 0 10px;
}

.contact-mds {
	width: 95%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: hidden;
	font-size: 120%;
	font-weight: bold;
	color: #1A2141;
}

.contact-info {
	width: 95%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: hidden;
	font-size: 110%;
	line-height: 210%;
}

/***VOICE***/

.voice-catch {
	width: 100%;
    margin: 0 0 30px;
    position: relative;
    overflow: hidden;
    font-size: 180%;
    line-height: 180%;
    font-weight: bold;
    color: #3C3C3C;
}

.voice-intro {
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.voice-intro .voice-img {
	 width: 55%;
}

.voice-intro .voice-info {
	width: 32%;
	margin: 0;
	padding: 30px 5%;
	background-color: #F3F6FD;
	color: #1A2141;
	font-weight: bold;
}

.voice-info .title {
	font-size: 100%;
}

.voice-info .name-ja {
	font-size: 180%;
}

.voice-info .name-en {
	margin: 0 0 10px;
	font-size: 80%;
	font-weight: 400;
	font-family: 'Roboto Condensed', sans-serif;
}

.voice-info .entry-date {
	width: 100%;
	font-size: 90%;
	text-align: right;
}

.voice-txt {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	overflow: hidden;
	line-height: 240%;
	display: inline;
}

.voice-txt .vt-img {
	width: 45%;
	float: right;
	margin: 10px 0 0 20px;
	display: inline;
}


@media (min-width: 641px) and (max-width: 1024px) {

h3 {
	font-size: 120%;
}

.voice-catch {
	font-size: 150%;
}

}