@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Lato);
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@500;700&display=swap');
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
.material-icons {
		font-family: 'Material Icons';
		font-weight: normal;
		font-style: normal;
		/*display: inline-block;*/
		line-height: 1;
		text-transform: none;
		letter-spacing: normal;
		word-wrap: normal;
		white-space: nowrap;
		direction: ltr;
		-webkit-font-smoothing: antialiased;
		text-rendering: optimizeLegibility;
		-moz-osx-font-smoothing: grayscale;
		font-feature-settings: 'liga';
    vertical-align: -3px;
}
/* Googleアイコン */
.material-icons.md-18 { font-size: 18px; }
.material-icons.md-24 { font-size: 24px; }
.material-icons.md-36 { font-size: 36px; }
.material-icons.md-48 { font-size: 48px; }

html {
	display: flex;
	flex-direction: column;
	scroll-behavior: smooth;
}

body {
	font-size: 14px;
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  color: #333;
  line-height: 1.6;
  margin: 0px;
  padding: 0px;
}

.site {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
.site-content {
	flex: 1 1 auto;
	padding-bottom: 50px;
}
.site-content + .container {
	max-width: 1080px;
}
.hero {
	height: 300px;
	background: url(../img/background.jpg) center center;
	background-size: cover;
	margin-bottom: 40px;
	padding-top: 140px;
}

@media screen and (max-width: 768px) {
.hero {
  height: 260px;
}
}

.hero.home {
	height: 700px;
}
.hero.home .hero-body {
	color: #eee;
	font-weight: 700;
  text-shadow: 0 1px 1px #333;
}
.hero.home .hero-body p.date {
	font-family: 'Didact Gothic', sans-serif;
	font-size: 44px;
}
.hero.home .hero-body p.date span {
	font-size: 50%;
	font-weight: normal;
	font-style: normal;
}
.hero.home .hero-body div.theme {
	font-size: 30px;
	font-feature-settings: "palt";
}
.hero-body {
	display: flex;
}
.hero-body .container {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
}
.hero-body h1.title {
	color: #fff;
	text-align: center;
	font-weight: bold;
	text-shadow: 0 1px 1px #333;
}

.hero-body_txt {
  text-align: center;
  margin-top: 20px;
}

.hero-body_bg {
  background: rgba(0,0,0,0.3);
  padding: 0　1rem 0 1rem;
}
.hero-body_bg2 {
  background: rgba(0,0,0,0.3);
  padding: 1rem; 
}

nav.breadcrumb {
	font-weight: bold;
	font-size: 12px;
	text-shadow: 0 1px 1px #1b1b1b;
}

nav.breadcrumb li:last-child a {
	padding-right: 0;
}

nav.breadcrumb li a, nav.breadcrumb li.is-active {
	color: white!important;
}

nav.breadcrumb li a:hover {
	text-decoration: underline;
}

.information {
	font-size: 14px;
	background-color: white;
	margin-bottom: 20px;
	padding: 1em;
	border: 1px dashed #c6c6c6;
	border-radius: 6px;
}

p {
	font-size: 14px;
	margin-bottom: 0.5em;
}

/* @end */

/* @group Common */

.site-content h3 {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
	padding: 0;
	position: relative;
}

.site-content h3:before {
	content: '';
	background: #bcbcbc;
	width: 100%;
	height: 1px;
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
}

.site-content h3 span {
	background: #fff;
	padding: 0 1em;
	position: relative;
}

.site-content h3 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}

a, .is-active i {
	color: #7d0000;
}

.is-10pct {
	width: 10%;
}

.is-20pct {
	width: 20%;
}

.is-30pct {
	width: 30%;
}

.is-40pct {
	width: 40%;
}

.is-50pct {
	width: 50%;
}

.is-60pct {
	width: 60%;
}

.is-70pct {
	width: 70%;
}

.is-80pct {
	width: 80%;
}

.is-90pct {
	width: 90%;
}

.is-100pct {
	width: 100%;
}

small {
	font-weight: normal;
	font-style: normal;
}

hr {
	height: 7px;
	background: url(../img/hr.svg) center center repeat-x;
	margin-top: 30px;
	margin-bottom: 30px;
}

.table {
	font-size: 14px;
}

.table caption {
	font-size: 16px;
	font-weight: bold;
	text-align: left;
	margin-bottom: 5px;
}

.table, .table th, .table thead th {
	color: #6f6f6f;
}

.table.is-fullwidth thead th {
	text-align: center;
}

th {
	background: #f7f7f7;
}

.table th {
	white-space: nowrap;
}

.table th, .table td {
	vertical-align: middle;
  line-height: 1.8;
  padding: 1rem;
}

.table.organization th, .table.Tokyo_Physiology th {
	vertical-align: top;
	width: 10em;
}

.table.Tokyo_Physiology td dl dt {
	float: left;
}

.table.Tokyo_Physiology td dl dd {
	margin-left: 8em;
}


p.help {
	font-size: 13px;
	margin-top: 8px;
	text-indent: -20px;
	margin-left: 20px;
}

p.help:before, dd.help:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f071";
	margin-right: 5px;
	color: #ffaa3d;
}

figure.under_construction {
	text-align: center;
}

figure.under_construction figcaption {
	text-align: center;
	font-weight: bold;
}

.information p:last-child {
	/*margin-bottom: 1rem;*/
}

.information ul li {
	text-indent: -20px;
	margin-left: 22px;
  margin-bottom: 1rem;
}

.information ul li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f058";
	margin-right: 5px;
	color: #bcbcbc;
}

p.whats_title {
	margin-bottom: 1em;
	padding-bottom: 0.25em;
	border-bottom: 1px solid #c6c6c6;
}

ul.whats_new {
	font-size: 12px;
	line-height: 1.5em;
	overflow: auto;
	height: 120px;
}

ul.whats_new dt {
	float: left;
	font-weight: bold;
}

ul.whats_new dd {
	margin-left: 9em;
}

div.link {
	color: #fff;
	background-color: #7d0000;
	margin-bottom: 20px;
	padding: 2em;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

div.link p strong {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
}

div.link a {
	color: white;
	font-size: 16px;
	font-weight: bold;
	white-space: nowrap;
	margin-left: 3em;
	padding: 0.5em 1.5em;
	border: 2px solid white;
	border-radius: 6px;
	transition: 0.3s;
}

div.link a:before {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 0.5em;
}

div.link a:hover {
	background-color: rgba(255, 255, 255, 0.6);
}

ul.top-link {
	display: flex;
	margin-bottom: 20px;
	flex-wrap: wrap;
}

ul.top-link li {
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	background-color: #F2F4F5;
	width: calc(100%/5);
	padding: 10px 10px 20px;
  vertical-align: middle;
}

ul.top-link li:nth-child(even) {
	background-color: #EBEBEB;
}

ul.top-link li a {
	font-size: 60px;
	/*display: block;*/
}

ul.top-link li span {
	font-size: .8rem;
	font-weight: normal;
	font-style: normal;
}

#back-to-top {
	position: fixed;
	right: 15px;
	bottom: 15px;
}

#back-to-top a {
	color: white;
	background-color: rgba(42, 43, 54, 0.4);
	width: 50px;
	height: 50px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.3s;
}

#back-to-top a:hover {
	background-color: rgba(42, 43, 54);
}

.indet {
  padding-left: 2rem;
}

/* @end */

/* @group Form */

.message {
	margin-bottom: 20px;
}

.message-body {
	background-color: #fee0e0;
	background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0.25, #FFEFEF), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, #FFEFEF), color-stop(0.75, #FFEFEF), color-stop(0.75, transparent), to(transparent));
	background-image: linear-gradient(to bottom right, #FFEFEF 25%, transparent 25%, transparent 50%, #FFEFEF 50%, #FFEFEF 75%, transparent 75%, transparent 100%);
	background-size: 20px 20px;
}

.form-sec {
	background-color: #fffffe;
	padding: 15px;
	border: 1px solid #e4e5e4;
	margin-bottom: 20px;
	box-shadow: 0 2px 10px rgba(190, 190, 190, 0.3);
	border-radius: 6px;
}

.table, .table th, .table thead th {
	color: #6f6f6f;
}

.table.is-fullwidth thead th {
	text-align: center;
}

.table.is-fullwidth tbody th {
	text-align: left;
}

th {
	background: #f7f7f7;
}

th.required:after {
	content: "*";
	margin-left: 3px;
}

td:empty {
	background: url(img/na.png);
}

.table tbody th {
	width: 25%;
}

.table th, .table td {
	vertical-align: middle;
}

.table.result tbody td:nth-child(2) {
	white-space: nowrap;
}

.td-flex {
	display: flex;
	align-items: center;
}

.form-sec .table.is-narrow:nth-child(even) td {
	background-color: #f2fdff;
}

.select:not(:last-child) {
	padding-right: 5px;
}

p.help {
	font-size: 13px;
	margin-top: 8px;
	text-indent: -20px;
	margin-left: 20px;
}

p.help:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f071";
	margin-right: 5px;
	color: #ffaa3d;
}

.radio {
	margin-right: 5px;
}

.radio+label:not(:last-child), .select+label:not(:last-child) {
	margin-right: 15px;
}

.help.is-top:first-child {
	margin-top: 0;
}

:placeholder-shown {
	color: #d3d3d3;
}

::-webkit-input-placeholder {
	color: #d3d3d3;
}

:-moz-placeholder {
	color: #d3d3d3;
	opacity: 1;
}

::-moz-placeholder {
	color: #d3d3d3;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #d3d3d3;
}

.field {
	padding-top: 20px;
}

.button {
	color: white;
	border-style: none;
	transition: 0.5s;
	width: 220px;
	border-radius: 20px;
}

.button.is-small {
	font-size: 11px;
	color: #0d3645;
	background-color: white!important;
	width: 110px;
	border-radius: 20px;
	box-shadow: none!important;
	border: 1px solid #c6c6c6;
}

.button.is-small:hover {
	color: #0d3645;
	background-color: #7d0000;
	opacity: 0.5;
}

.button[name=back] {
	background-color: #c5c5c5;
	box-shadow: 0 3px 15px rgba(175, 176, 175, 0.6);
}

.button[name=back] i {
	margin-right: 10px;
}

.button[name=next] {
	background-color: #7d0000;
	box-shadow: 0 3px 15px rgba(175, 176, 175, 0.6);
}

.button[name=next] i {
	margin-left: 10px;
}

.button:hover {
	color: #fff;
	transform: translateY(2px);
}

.input:focus {
	background-color: #e6fefa;
}

.btns {
	border: 1px dashed silver;
	padding: 15px;
	display: flex;
	justify-content: center;
}

.button:hover {
	opacity: 0.5;
}

/* @end */

/* @group Footer */

footer {
	background-color: #2B2C36;
	height: 80px;
	padding-top: 10px;
	border-top: 1px solid #4E5663;
}

footer p {
	font-size: .9rem;
	text-align: center;
	color: #ccc;
}

/* @end */

/* @group Media Queries */

@media screen and (max-width: 1080px) {
	.header>.container, .site-content>.container {
		padding-right: 10px;
		padding-left: 10px;
	}
}

@media screen and (max-width: 640px) {
	.navbar-brand .navbar-item img {
		width: 200px;
	}
	
	ul.top-link {
    margin-top: 2rem;
		justify-content: center;
	}
	
	ul.top-link li {
		width: calc(640px/2);
	}
	
	div.link {
		display: block;
	}
	
	div.link a {
		text-align: center;
		white-space: normal;
		display: block;
		margin-top: 20px;
		margin-right: auto;
		margin-left: auto;
	}
}

@media screen and (max-width: 768px) {
	.table.faculty {
		min-width: 100%;
	}
}

/* @end */

/* 20221014追加 テキスト調整 */
.greeting_txt {
  line-height: 1.8;
  letter-spacing: 1px;
  padding: .5rem 4rem 0 6rem;
}
.greeting_txt_in {
  line-height: 1.8;
  letter-spacing: 1px;
  padding: .5rem 0 0 0;
}
.indent {
  text-indent: 1em;
}
.greeting_name {
  text-align: right;
  margin-top: 1rem;
  margin-right: 3.4rem;
}
.greeting_name span {
  font-weight: 600;
  font-size: 1rem;
}

@media screen and (max-width: 768px) {
	.greeting_txt {
		padding: .5rem 1rem 0 1rem;
	}
  .greeting_name {
    margin: 0 auto;
}
}

/* 20221014追加 演題応募テーブル レスポンシブ対応 */
@media screen and (max-width: 768px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .ab_tbl {
    width: 80%;
  }
  .ab_tbl th,
  .ab_tbl td {
　　border-bottom: none;
    display: block;
    width: 100% !important;
  }
}

/* 20221014追加 演題応募 ボックス */
.ab_box {
  margin: 2rem 0;
  font-size: .9rem;
}
.ab_box ul, ol {
  background: #f7f7f7;
  padding: 1rem 2.5rem ;
}
.ab_box ul li, ol li {
  line-height: 1.5;
  padding: 0.5em 0;
}
.red {
  color:#BD0609;
}
.ab_box_c {
  text-align: center;
  font-weight: 700;
  font-size: 1.0rem;
  margin-top: 1rem;
}
.btn_box_c {
  margin: 1rem;
  text-align: center;
}
.btn_box {
  margin: 0 1rem;
  text-align: center;
}

/* ボタン 調整 */
.btn_wrapper {
  display: flex;
  justify-content: center;
  margin: 0 .5rem;
}


@media screen and (max-width: 768px) {
  .btn_wrapper {
    flex-direction: column;
    align-items: center;
    display: block;
    width: 100%;
  }
  .btn_box {
    margin-bottom: 1rem;    
  }
  .btn {
  width: 100%;
} 
}

/* ボタン */
.btn,
a.btn,
button.btn {
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-radius-solid {
  border: 1px solid #ccc;
  background: #f1e767;
  background: -webkit-gradient(linear, left top, left bottom, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(top, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
  -webkit-box-shadow: inset 1px 1px 1px #fff;
  box-shadow: inset 1px 1px 1px #fff;
}

a.btn-radius-end {
  background-color: #ddd;
}
a.btn-radius-end:hover {
  cursor: not-allowed !important;
}

.btn-radius-end {
  background-color: #ddd;
}
.btn-radius-end:hover {
  cursor: not-allowed !important;
}

a.btn-radius-solid:hover {
  background: -webkit-gradient(linear, left bottom, left top, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(bottom, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to top, #fdfbfb 0%, #ebedee 100%);
}

a.btn-radius-solid_2 {
  border: 1px solid #ccc;
  background: #7d0000;
  -webkit-box-shadow: inset 1px 1px 1px #000;
  box-shadow: inset 1px 1px 1px #000;
  color: #fff;
}

a.btn-radius-end_2 {
  background-color: #7d0000;
}

a.btn-radius-solid_2:hover {
   background: #1b1b1b;
}

/* 20221116&20230116追加 参加登録・単位申請&座長・演者へのご案内 */
.regsection, .notice {
  margin-bottom: 2rem;
}

/* 20221116追加 参加登録・単位申請 見出し */
.h3_style {
	position: relative;
	border-bottom: 5px solid #ddd;
	padding: 10px 0;
  font-size: 1.6rem;
  font-weight: 600;
	}
.h3_style:before {
	position: absolute;
	left: 0;
	bottom: -5px;
	width: 20%;
	height: 5px;
	content: '';
	background: #27acd9;
	}
@media screen and (max-width: 768px) {
  .h3_style {
    font-size: 1.3rem;
  }
}

/* 20221116追加 参加登録・単位申請 テキスト箱 */
.regtxt_box {
  /*border: solid 3px #ddd;*/
  line-height: 1.5;
  letter-spacing: 1px;
  padding: 0 1rem 0 1rem;
  margin-bottom: 1rem;
}
/*.regtxt_box p {
  margin-bottom: 1.5rem; 
}*/

.regtxt_box ul {
  counter-reset:list;
  list-style-type:none;
  font: 14px/1.6 'arial narrow', sans-serif;
  padding:0;
}
.regtxt_box ul li{
  position:relative;
  color: #333;
  padding: 0 0 0 20px;
  margin: 7px 0px;
  line-height: 30px;
  border-bottom: dashed 1px #ccc;
  letter-spacing: 1px;
}
.regtxt_box ul li:before{
  counter-increment: list;
  content: counter(list) ".";
  display: block;
  position: absolute;
  left: 0px;
  font-weight: bold;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.regtxt_mt1 {
  margin-top: 1rem;
}
.regtxt_mt2 {
  margin-top: 2rem;
}

/* 20221116追加 参加登録・単位申請 STEPフロー */
.stepbar {
  margin: 0 auto;
  width: 100%;
}

.stepbar .stepbarwrap {
  margin: 2em 0;
  position: relative;
}

.stepbar .stepbarwrap .steptitle {
  display: inline-flex;
  align-items: center;
}

@media screen and (max-width: 768px) {
 .stepbar .stepbarwrap .steptitle {
  align-items: flex-start;
} 
}

.stepbar .stepbarwrap .steptitle .stepcircle {
  display: inline-block;
  width: 3em;
  height: 3em;
  content: "";
  border-radius: 50%;
  background-color: #333;
  color: #fff;
  text-align: center;
}

.stepbar .stepbarwrap .steptitle .stepcircle span {
  display: inline-block;
  line-height: 1.2em;
  font-size: 0.8em;
  font-weight: bold;
  position: relative;
  top: 0.9em;
}

.stepbar .stepbarwrap .steptitle .title {
  width: 100%;
  margin: 0.5em;
  font-weight: bold;
  font-size: 1.1em;
}

.stepbar .stepbarwrap .steptxt {
  padding-left: 3.5em;
}

.stepbar .stepbarwrap .steptxt .txt {
  font-size: 0.9em;
}

.stepbar .stepbarwrap .stepline {
  width: 1px;
  height: calc(100% + 1em);
  background-color: #000;
  position: absolute;
  top: 1em;
  left: 1.3em;
  z-index: -1;
}

.stepbarwrap:last-of-type .stepline:last-of-type {
  display: none;
}

@media screen and (max-width: 960px) {
  .stepbar {
    width: 100%;
  }
}

/* 20221116追加 参加登録・単位申請 上下だけ線 */
.border_tb {
  border: none;
  border-top: 1px dotted #333;
  border-bottom: 1px dotted #333;
  padding: 10px;
  background: #fff;
  display: block;
  margin-bottom: 10px;
  text-align: center;
}

/* 20230117追加 Notice.html 数字リスト文頭揃え */
.regtxt_box2 ol {
	/*margin-left: 3.5em;*/
}
.regtxt_box2 ol li {
	list-style-type: none;
	counter-increment: cnt;
	position: relative;
}
.regtxt_box2 ol li:before {
	content: counter(cnt) ")";
	display: inline-block;
	margin-left: -3.5em;
	width: 3em;
	text-align: right;
	position: absolute;
	/*top: 0;*/
	left: 0;
}

.regtxt_box_pc {
  background: #f7f7f7;
  padding: .5rem 1rem 1rem 1rem;
  margin-top: 1rem;
}

.regtxt_box .tit {
  font-size: 1.1rem;
  font-weight: 600;
  margin-top: 1.5rem;
}
/* 文頭揃え */
.regtxt_box .tt {
  padding-left: 14em;
  text-indent: -14em;
  margin-top: .5rem;
  line-height: 1.8;
}
.regtxt_box .ttn {
  margin-top: 1.0rem;
  line-height: 1.8;
}
.regtxt_box .ttb {
  margin-top: 1.0rem;
  font-weight: 600;
}
.regtxt_box .tts {
  text-indent : -1em;
  padding-left : 1em;
  margin-top: .5rem;
  line-height: 1.8;
}
.regtxt_box .tts:last-child {
  text-indent : -1em;
  padding-left : 1em;
  margin-top: .5rem;
  margin-bottom: 1rem;
  line-height: 1.8;
}
.regtxt_box .tts::before {
  display: inline-block;
  margin: 0 6px 0 10px;
  content: '・';
}

@media screen and (max-width: 768px) {
  .regtxt_box .tt {
    padding-left: 0;
    text-indent: 0;
  }
}
@media screen and (min-width: 600px){
  .sp{
    display: none;
  }
  .spbr{
    display: none;
  }
}

/* ab_submission  画像とテキスト横並び */
.parent_box {
     width: 100%;
     max-width: 1200px;
     /*margin: auto;*/
 }
 .parent_box img {
     /*width: 100%;*/
 }
 .text-center {
     text-align: center;
 }
 .flexbox {
     display: flex;
 }
 .box1 {
     width: 60%;
     /*margin: auto;*/
 }
 .box2 {
   width: 40%;
   margin: auto .5rem;
   padding-left: 2.5rem;
 }
 @media screen and (max-width: 767px) {
     .flexbox {
         display: block;
     }
     .flexbox .box1 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box2 {
         width: 100%;
         margin: 0 auto;
     }
     .box2 {
         padding-left: 0 !important;
     }
    .parent_box img {
     width: 100%;
 }
 }

/* margin */
.mg_b1 {
  margin-bottom: 1rem;
}
.mg_b2 {
  margin-bottom: 2rem;
}
.mg_b4 {
  margin-bottom: 4rem;
}
.mg_b-1 {
  margin-bottom: -1rem;
}
.mg_t1 {
  margin-top: 1rem;
}
.mg_t2 {
  margin-top: 2rem;
}
.mg_t4 {
  margin-top: 4rem;
}

/* bold */
.bo {
  font-weight: bold;
}

/* センタリング */
.ce {
  text-align: center;
}
.ce span {
  font-weight: 600;
  font-size: 1.2rem;
}

/* index 更新履歴 */
.ttl {
  font-size: 150%;
  font-weight: bold;
  color: #7d0000;
  padding: 10px 0;
  border-bottom: solid 2px
}
.topics {
  margin-bottom: 2rem;
}
.topics dl {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}
.topics dt {
  padding-bottom: 5px;
}
@media screen and (min-width: 768px) {
  .topics dt {
    clear: left;
    float: left;
    width: 10%;
}
  .topics dd {
    margin-left: 11%;
}
}

.ttl_line {
  font-size: 150%;
  font-weight: bold;
  border-bottom: 3px solid #e3e3e3;
  padding: 10px 0;
  margin-bottom: 1.3em;
  position: relative;
}
.ttl_line::after {
  content: '';
  background-color: #7d0000;
  width: 2em;
  height: 3px;
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 1;
}

/* 2023年追加 強調ボックス */
.notice_box {
  background: #7d0000;
  max-width: 660px;
  margin-top: 2rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: .5rem;
  padding-bottom: 0.5em;
}
.notice_box span {
  color: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  text-align: center;
  display: block;
}
.notice_box a:hover {
  opacity: 0.7;
}

/* DLリンクボタン */
a.btn_dl {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 540px;
	margin: auto;
	padding: 1rem 4rem;
	font-weight: bold;
	background: linear-gradient(to top, rgb(5, 130, 174), #27acd9);
	color: #fff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	transition: 0.5s;
}

a.btn_dl2 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 300px;
	margin: auto;
	padding: 1rem 4rem;
	font-weight: bold;
	background: linear-gradient(to top, rgb(5, 130, 174), #27acd9);
	color: #fff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	transition: 0.5s;
}

a.btn_dl:hover, a.btn_dl2:hover {
	color: #fff;
	opacity: 0.5;
}

@media screen and (max-width:768px) {
    a.btn_dl, a.btn_dl2 {
       width: 100%;
    }
}

/* container幅 （無理やり）調整 */
.container {
  max-width: 1000px !important;
}

/* 打ち消し線 赤 */
.s-red {
  text-decoration: line-through 2px solid #ff0000;
}


/* Faculty & Physiology レスポンシブのテーブル */
table.faculty, table.physiology {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 14px;
}
table.faculty th, table.physiology th {
  width: 25%;
  background: #eee;
  border: 1px solid #ccc;
  box-sizing: border-box;
  padding: 15px;
  vertical-align: middle;
  font-weight: bold;
  text-align: left;
}
table.faculty td, table.physiology td { 
  background: #fff;
  border: 1px solid #ccc;
  box-sizing: border-box;
  padding: 15px;
  vertical-align: top;
  text-align: left;
}
@media all and (max-width: 767px) {
  table.faculty th, table.physiology th, table.faculty td, table.physiology td {
    display: block;
    width: 100%;
    border-bottom: none;
  }
  table.faculty tr:last-child, table.faculty td:last-child {
    border-bottom: 1px solid #ccc;
  }
}


.faculty_tit, .physiology_tit {
  color: #666;
  font-weight: bold;
  font-size: 1.1rem;
  margin-left: .5rem;
  margin-bottom: 0.2em;
}
@media screen and (max-width: 768px) {
  .faculty_tit, .physiology_tit {
    font-size: 1.0rem;
    margin-bottom: 0.1em;
  }
}

/* スマホの時だけ改行 */
/* PCでは無効（改行しない）*/
.sma {
    display: none;
}
/*スマートフォンでは有効*/
@media screen and (max-width:768px) {
    .sma {
        display: block;
    }
}

/* スマホの時だけ非表示 */
.sma_none {
    display: none;
}

/* PCの時だけ改行 */
@media screen and (min-width: 640px){	
.br_pc {
display:inline;
}
.br_sp {
display:none;
}
}

/* 取得単位 Notice - 20250116追加 */
.reg-notice {
  font-weight: bold;
  margin-left: 1rem;
}

.earning-c {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    background: #fff;
    border: 1px solid #ccc;
}
.earning-c th,
.earning-c td {
    display: block;
    width: 100%;
    border: 1px solid #ccc;
    font-size: 14px;   
    padding: 10px;
    vertical-align: top;
    text-align: left;
    box-sizing: border-box;
}
.earning-c th {
    font-weight: 700;
    color: #fff;
    background: #27acd9;
}

@media screen and (min-width: 768px) {
    .earning-c th,
    .earning-c td {
        display: table-cell;
        border-bottom: 1px solid #ccc;
        color: #000;
        background: #fff;
    }
    .earning-c th {
        color: #1b1b1b;
        background: #f7f7f7;
    }
    .earning-c tr th:first-child {
        width: 240px;
}

