@charset "utf-8";
/***** 全体 *****/
#container {
	padding: var(--item-l-padding) var(--item-s-padding) var(--section-padding);
	min-height: 300px;
}

#container section {
	width: 100%;
	max-width: var(--section-width);
	margin-inline: auto;
}

.c-item {
	margin-bottom: var(--inner-margin);
}

.c-item__in {
	margin-bottom: var(--item-l-margin);
}

.c-item:last-child,
.c-item__in:last-child {
	margin-bottom: 0;
}

@media screen and (max-width:768px) {
	#container {
		padding: var(--item-s-padding) var(--item-s-padding) var(--section-padding);
	}
}

/***** サイドメニュー *****/
.c-column {
	width: 100%;
	max-width: var(--section-width);
	margin-inline: auto;
	display: flex;
	justify-content: space-between;
	gap: 6rem;
}

.c-column__contents {
	order: 2;
	flex: 1;
}

.c-column__side {
	width: 240px;
	order: 1;
}

.c-side__nav {
	position: sticky;
	top: 144px;
}

.c-side__ttl {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	padding: var(--item-s-padding) 0;
	border-top: 2px solid var(--base-color);
	border-bottom: 1px solid var(--base-color);
	color: var(--base-color);
	padding-left: 40px;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 35px 35px;
	background-image: url("../images/common/gastro_icon.svg");
}

.c-column__endocrine .c-side__ttl {
	color: var(--orange-color);
	background-image: url("../images/common/endocrine_icon.svg");
}

.c-side__ttl02 {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	padding: var(--item-s-padding) 0;
	border-bottom: 4px double var(--base-color);
	color: var(--base-color);
	padding-left: 40px;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 35px 35px;
	background-image: url("../images/common/gastro_icon.svg");
}

.c-column__endocrine .c-side__ttl02 {
	color: var(--orange-color);
	background-image: url("../images/common/endocrine_icon.svg");
}

.c-side__nav__list:nth-child(2) {
	margin-top: 52px;
	border-top: 1px solid var(--base-color);
}

.c-side__nav__list.c-column__endocrine:last-child {
	border-color: var(--orange-color);
}

.c-side__nav__item {
	border-bottom: 1px solid var(--border-color);
}

.c-side__nav__link,
.c-side__nav__link02 {
	display: block;
	text-decoration: none;
	color: var(--black-color);
	position: relative;
	padding: 1.2rem var(--item-l-padding) 1.2rem 0;
	transition: 0.3s;
}

.c-side__nav__link::before,
.c-side__nav__link::after,
.c-side__nav__link02::before,
.c-side__nav__link02::after {
	content: "";
	position: absolute;
	transition: 0.3s;
}

.c-side__nav__link::before,
.c-side__nav__link02::before {
	width: clamp(6px,1.6vw,8px);
	height: clamp(6px,1.6vw,8px);
	right: clamp(10px,2.7vw,16px);
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	border-top: 2px solid var(--base-color);
	border-right: 2px solid var(--base-color);
}

.c-side__nav__link:hover::before,
.c-side__nav__link02:hover::before {
	right: 1.1rem;
}

.c-side__nav__link::after,
.c-side__nav__link02::after {
	width: clamp(12px,3.2vw,16px);
	height: 2px;
	right: clamp(10px,2.7vw,16px);
	top: 50%;
	transform: translateY(-50%);
	background: var(--base-color);
}

.c-side__nav__link:hover::after,
.c-side__nav__link02:hover::after {
	width: 21px;
	right: 1.1rem;
}

.c-side__nav__link:hover,
.focus.c-side__nav__link {
	color: var(--base-color);
}

.c-side__nav__subttl {
	display: block;
	padding: 1.2rem 0;
}

.focus.c-side__nav__item .c-side__nav__subttl {
	color: var(--base-color);
}

.c-side__nav__sublist {
	margin-bottom: 1.2rem;
	padding-left: 1em;
}

.c-side__nav__subitem:not(:last-child) {
	margin-bottom: 1.2rem;
}

.c-side__nav__sublink {
	display: block;
	text-decoration: none;
	color: var(--black-color);
	font-size: 1.4rem;
	transition: 0.3s;
	position: relative;
}

.c-side__nav__sublink::before {
	content: "";
	position: absolute;
	width: 6px;
	height: 6px;
	right: 1.5em;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	border-top: 2px solid var(--base-color);
	border-right: 2px solid var(--base-color);
	transition: 0.3s;
}

.c-side__nav__sublink:hover::before {
	right: 1.2em;
}

.c-side__nav__sublink:hover,
.focus.c-side__nav__sublink {
	color: var(--base-color);
}

.c-column__endocrine .c-side__ttl,
.c-column__endocrine .c-side__nav__link::before,
.c-side__nav__link02::before,
.c-column__endocrine .c-side__nav__sublink::before,
.c-column__endocrine .c-side__ttl02 {
	border-color: var(--orange-color);
}

.c-column__endocrine .c-side__nav__link::after,
.c-side__nav__link02::after {
	background: var(--orange-color);
}

.c-column__endocrine .c-side__nav__link:hover,
.c-column__endocrine .focus.c-side__nav__link,
.c-side__nav__link02:hover,
.focus.c-side__nav__link02 {
	color: var(--orange-color);
}

.c-column__endocrine .focus.c-side__nav__item .c-side__nav__subttl,
.c-column__endocrine .c-side__nav__sublink:hover,
.c-column__endocrine .focus.c-side__nav__sublink {
	color: var(--orange-color);
}

@media screen and (max-width:768px) {
	.c-column {
		max-width: 100%;
		flex-direction: column;
	}
	
	.c-column__side {
		display: none;
	}
}

/***** 準備中ページ *****/
.c-under {
	display: flex;
	align-items: center;
	min-height: 306px;
	margin-left: 100px;
}

.c-under__txt {
	font-size: 1.8rem;
}

@media screen and (max-width:768px) {
	.c-under {
		min-height: 200px;
	}
	
	.c-under__txt {
		font-size: 1.7rem;
	}
}

/***** header *****/
.l-header {
	position: sticky;
	background: #fff;
	width: 100%;
	margin: 0;
	border-radius: 0;
}

.l-header .l-header__nav__sublist {
	background-color: #fff;
	top: var(--header-height);
	border-radius: 0;
}

/***** ページタイトル *****/
/* 写真あり（グローバルメニュー） */
.l-headline {
	width: 100%;
	height: 100%;
	min-height: 200px;
	position: relative;
}

.l-headline:after {
	display: block;
	content: '';
	width: 85vw;
	min-width: 1100px;
	height: 200px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	border-radius: 0 0 0 10px;
	z-index: 1;
	background-image: url("../images/common/headline_gastro.jpg");
}

.history .l-headline:after {
	background-image: url("../images/common/headline_history.jpg");
}

.end-index .l-headline:after,
.end-clinical .l-headline:after,
.end-research .l-headline:after,
.end-training .l-headline:after,
.end-briefing .l-headline:after,
.end-staff .l-headline:after,
.end-outpatient .l-headline:after,
.end-introduction .l-headline:after {
	background-image: url("../images/common/headline_endocrine.jpg");
}

.end-index .l-headline__en,
.end-clinical .l-headline__en,
.end-research .l-headline__en,
.end-training .l-headline__en,
.end-briefing .l-headline__en,
.end-staff .l-headline__en,
.end-outpatient .l-headline__en,
.end-introduction .l-headline__en,
.out-endocrine .l-headline__en {
	color: var(--orange-color);
}

.out-gastro .l-headline:after,
.out-endocrine .l-headline:after {
	background-image: url("../images/common/headline_outpatient.jpg");
}

.donation .l-headline:after {
	background-image: url("../images/common/headline_donation.jpg");
}

.news .l-headline:after,
.topics .l-headline:after,
.contact .l-headline:after,
.access .l-headline:after,
.member .l-headline:after,
.english .l-headline:after {
	background-image: url("../images/common/headline_other.jpg");
}

.l-headline__inner {
	min-width: 200px;
	height: 64%;
	min-height: 80px;
	padding: var(--item-s-padding) var(--inner-padding);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: #fff;
	bottom: 18%;
	left: 10%;
	z-index: 2;
	position: absolute;
}

.l-headline__ttl {
	font-size: clamp(1.8rem,4.8vw,2.4rem);
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1.5;
}

.l-headline__en {
	font-size: clamp(1.2rem,3.2vw,1.4rem);
	font-weight: 500;
	color: var(--base-color);
}

/* 写真なし（その他） */
/*.news .l-headline,
.topics .l-headline,
.contact .l-headline,
.access .l-headline,
.member .l-headline,
.english .l-headline {
	min-height: auto;
	padding: 0 var(--item-s-padding);
	background-color: #fff;
}

.news .l-headline:after,
.topics .l-headline:after,
.contact .l-headline:after,
.access .l-headline:after,
.member .l-headline:after,
.english .l-headline:after {
	content: none;
}

.news .l-headline__inner,
.topics .l-headline__inner,
.contact .l-headline__inner,
.access .l-headline__inner,
.member .l-headline__inner,
.english .l-headline__inner {
	width: 100%;
	max-width: var(--section-width);
	min-width: auto;
	min-height: auto;
	height: 100%;
	margin:  var(--item-m-margin) auto 0;
	padding: var(--item-s-padding) var(--item-m-padding);
	position: static;
	border: 1px solid var(--base-color);
}

.news .l-headline__ttl,
.topics .l-headline__ttl,
.contact .l-headline__ttl,
.access .l-headline__ttl,
.member .l-headline__ttl,
.english .l-headline__ttl {
	color:  var(--base-color);
}*/

@media screen and (max-width:1230px) {
	.l-headline__inner {
		left: 0;
	}
}

@media screen and (max-width:1100px) {
	.l-headline {
		min-height: 100px;
	}
	
	.l-headline:after {
		width: 100%;
		height: 100px;
	}
	
	.l-headline__inner {
		min-width: 120px;
		left: -8px;
		bottom: -8%;
		padding: var(--item-s-padding) var(--item-l-padding);
	}
}

/***** パンくずリスト *****/
.l-breadcrumbs {
	padding: 0 1.6rem;
}

.l-breadcrumbs__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	width: 100%;
	max-width: var(--section-width);
	margin: var(--item-s-padding) auto;
}

.l-breadcrumbs__item {
	margin-right: 10px;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	position: relative;
}

.l-breadcrumbs__item:not(:last-child)::after {
	content: "";
	display: inline-block;
	width: 1px;
	height: 12px;
	border-right: 1px solid var(--border-color);
	margin-left: 10px;
}

.l-breadcrumbs__item a {
	text-decoration: none;
	position: relative;
}

.l-breadcrumbs__item a::after {
	background-color: var(--base-color);
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
	width: 100%;
}

.l-breadcrumbs__item a:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}

/***** 見出し *****/
.c-title__large,
.c-title__large02 {
	position: relative;
	margin-bottom: var(--item-s-margin);
	padding-top: 1rem;
	border-top: 1px solid var(--black-color);
	font-size: clamp(2rem,5.3vw,2.4rem);
	font-weight: 600;
	letter-spacing: 0.05em;
}

.c-title__large:before,
.c-title__large02:before {
	position: absolute;
	content: '';
	width: 4em;
	left: 0;
	top: -2px;
	border-top: 3px solid var(--base-color);
}

.c-title__large02:before {
	border-color: var(--orange-color);
}

.c-title__large__sub {
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	font-weight: normal;
	padding-left: 1rem;
}

.c-title__medium {
	margin-bottom: var(--item-s-margin);
	padding-top: 0.8rem;
	background: linear-gradient(90deg, var(--sub-color) 0% 100%);
	background-repeat: no-repeat;
	background-size: 3em 2px;
	background-position: left top;
	font-size: clamp(1.8rem,4.8vw,2rem);
	font-weight: 500;
}

.c-title__medium02 {
	margin-bottom: var(--item-s-margin);
	padding-top: 0.8rem;
	background: linear-gradient(90deg, var(--yellow-color) 0% 100%);
	background-repeat: no-repeat;
	background-size: 3em 2px;
	background-position: left top;
	font-size: clamp(1.8rem,4.8vw,2rem);
	font-weight: 500;
}

.c-title__small,
.c-title__small02 {
	position: relative;
	margin: clamp(1rem,2.7vw,1.2rem) 0;
	padding-left: 2.6rem;
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	font-weight: 600;
}

.c-title__small:before,
.c-title__small02:before {
	position: absolute;
	content: '';
	top: 50%;
	width: 20px;
	height: 2px;
	left: 0;
	background-color: var(--base-color);
}

.c-title__small02:before {
	background-color: var(--orange-color);
}

.c-title__sub,
.c-title__sub02 {
	font-weight: 600;
	margin-bottom: 1rem;
	color: var(--base-color);
}

.c-title__sub02 {
	color: var(--orange-color);
}

.c-title__catch__box,
.c-title__catch__box02 {
	position: relative;
	padding: var(--item-m-padding) var(--item-l-padding);
}

.c-title__catch__box::before,
.c-title__catch__box::after,
.c-title__catch__box02::before,
.c-title__catch__box02::after {
	position: absolute;
	width: 6%;
	height: 35%;
	content: '';
}

.c-title__catch__box::before,
.c-title__catch__box02::before {
	border-left: 3px solid var(--base-color);
	border-top: 3px solid var(--base-color);
	top: 0;
	left: 0;
}

.c-title__catch__box::after,
.c-title__catch__box02::after {
	border-right: 3px solid var(--base-color);
	border-bottom: 3px solid var(--base-color);
	bottom: 0;
	right: 0;
}

.c-title__catch__box02::before,
.c-title__catch__box02::after {
	border-color: var(--orange-color);
}

.c-title__catch {
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	font-weight: 600;
	letter-spacing: 0.04em;
	margin-bottom: var(--item-s-margin);
}

.c-title__catch:last-of-type {
	margin: 0;
}

.c-title__catch__list {
	margin: var(--item-s-margin) 0 0 1em;
	font-size: 1.4rem;
}

.c-title__catch__list.disc02 li::before {
	height: 3px;
	width: 3px;
	background-color: var(--black-color);
}

@media screen and (max-width:768px) {
	.c-title__catch__box::before,
	.c-title__catch__box::after,
	.c-title__catch__box02::before,
	.c-title__catch__box02::after {
		width: 10%;
		height: 25%;
	}
}

/***** 枠線 *****/
.c-box {
	margin: var(--item-s-margin) 0;
	padding: var(--item-m-padding);
	border-radius: 10px;
}

.c-box__border {
	border: 1px solid var(--base-color);
	background-color: var(--light-blue-color02);
}

.c-box__border02 {
	border: 1px solid var(--orange-color);
	background-color: var(--light-orange-color02);
}

.c-box__background {
	background-color: var(--light-blue-color);
}

.c-box__background02 {
	background-color: var(--light-orange-color);
}

.c-box__attention {
	background-color: #fdf1f2;
	padding: 0;
}

.c-box__attention__ttl {
	color: #fff;
	padding: 1rem var(--item-m-padding);
	background-color: #ec3c44;
	border-radius: 10px 10px 0 0;
	font-size: clamp(1.6rem,4.3vw,1.8rem);
}

.c-box__attention__txt {
	padding: var(--item-m-padding);
}

.c-box__attention .disc li::before {
	background-color: #ec3c44;
}

.c-box__attention .deci li::marker {
	color: #ec3c44;
}

.c-box__ttl,
.c-box__ttl02 {
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	font-weight: 600;
	margin-bottom: 1rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid var(--base-color);
}

.c-box__ttl02 {
	border-color: var(--orange-color);
}

.c-box__subttl,
.c-box__subttl02 {
	font-weight: 600;
	position: relative;
	padding-left: var(--item-s-padding);
	display: flex;
	align-items: center;
}

.c-box__subttl::after,
.c-box__subttl02::after {
	position: absolute;
	content: '';
	left: 0;
	width: 8px;
	height: 8px;
	background-color: var(--base-color);
}

.c-box__subttl02::after {
	background-color: var(--orange-color);
}

/***** テーブル *****/
.c-table,
.c-table02 {
	width: 100%;
}

.c-table th,
.c-table02 th {
	padding: 10px;
	font-weight: 600;
	text-align: center;
	border: 1px solid var(--border-color);
	background-color: var(--light-blue-color);
}

.c-table02 th {
	background-color: var(--light-orange-color);
}

.c-table td,
.c-table02 td {
	padding: 10px;
	border: 1px solid var(--border-color);
}

/* スマホテーブル */
@media screen and (max-width:768px) {
	.js-scrollable {
		overflow-x: scroll;
		width: 100%;
	}
}

/***** ステップバー *****/
.c-step,
.c-step02 {
	counter-reset: count;
	position: relative;
}

.c-step::after,
.c-step02::after {
	content: "";
	display: block;
	height: calc(100% - 35px);
	border-left: 1px solid var(--base-color);
	position: absolute;
	top: 20px;
	left: 4px;
}

.c-step02::after {
	border-color: var(--orange-color);
}

.c-step__item,
.c-step__item02 {
	padding: 0 0 var(--item-m-margin) var(--item-l-padding);
	position: relative;
}

.c-step__item::before,
.c-step__item02::before {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	background: var(--base-color);
	border-radius: 50%;
	position: absolute;
	top: 14px;
	left: 0;
}

.c-step__item02::before {
	background: var(--orange-color);
}

.c-step__ttl,
.c-step__ttl02 {
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	font-weight: 600;
	margin-bottom: clamp(1rem,2.7vw,1.2rem);
	color: var(--base-color);
}

.c-step__ttl02 {
	color: var(--orange-color);
}

.c-step__ttl::after,
.c-step__ttl02::after {
	counter-increment: count;
	content: counter(count);
	position: relative;
	left: 0.2em;
}

.c-step__no-count::after {
	counter-increment: none;
	content: none;
}

/***** フォーム *****/
.c-form,
.c-form__table,
.c-form__table02 {
	width: 100%;
}

.c-form__td {
	padding: var(--item-s-padding);
	border: 1px solid var(--border-color);
}

.c-form__title,
.c-form__title02 {
	width: 30%;
	padding: var(--item-s-padding);
	background: var(--light-blue-color);
	box-sizing: border-box;
	border: 1px solid var(--border-color);
}

.c-form__title02 {
	background: var(--light-orange-color);
}

.c-form__icon {
	margin-left: 0.5rem;
}

.c-form__input,
.c-form__input__s {
	width: 100%;
	height: 3rem;
	padding: 0.5rem;
	box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
	border: 1px solid #d1d1d1;
}

.c-form__input__s {
	width: 25%;
	margin-bottom: 10px;
}

.c-form textarea {
	height: 15em;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #d1d1d1;
}

.c-form__btn.c-btn,
.c-form__btn.c-btn02,
.c-form__check .c-btn__flex {
	font-size: 1.7rem;
	cursor: pointer;
	margin-top: var(--item-l-margin);
	padding: 0;
}

.c-form__btn input,
.c-form__btn.c-btn02 input {
	width: 100%;
	background: none;
	border: none;
	padding: clamp(1.6rem,4.3vw,2.4rem) 3.2rem clamp(1.6rem,1.3vw,2.4rem) 1rem;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.7;
	color: var(--base-color);
	cursor: pointer;
}

.c-form__check .c-btn__flex input {
	font-size: 1.7rem;
	font-weight: 500;
	cursor: pointer;
}

.c-form__btn.c-btn02 input {
	color: var(--orange-color);
}

/* 送信確認画面 */
.c-form__check .c-form__table th,
.c-form__check .c-form__table02 th {
	width: 30%;
	padding: var(--item-s-padding);
	background: var(--light-blue-color);
	box-sizing: border-box;
	border: 1px solid var(--border-color);
}

.c-form__check .c-form__table02 th {
	background: var(--light-orange-color);
}

.c-form__check .c-form__table td,
.c-form__check .c-form__table02 td {
	padding: var(--item-s-padding);
	border: 1px solid var(--border-color);
}

@media screen and (max-width:768px) {
	.c-form__td {
		width: 100%;
		display: block;
	}
	
	.c-form__tr:not(:last-child) .c-form__td {
		border-bottom: none;
	}
	
	.c-form__title,
	.c-form__title02 {
		text-align: center;
		width: 100%;
		display: block;
		padding: 0.8rem;
		border-bottom: none;
	}
	
	.c-form__input__s {
		width: 50%;
	}
}

/***** 当科の沿革 *****/
.p-history__item {
	padding-top: var(--inner-padding);
	border-top: 1px solid var(--border-color);
}

.p-history__ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: var(--item-m-margin);
}

.p-history__large {
	font-size: clamp(1.8rem,4.8vw,2rem);
	font-weight: 600;
	letter-spacing: 0.05em;
}

.p-history__medium {
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	font-weight: 500;
	margin-left: 0.5rem;
	padding-left: 2.6rem;
	position: relative;
}

.p-history__medium:before {
	position: absolute;
	content: '';
	top: 50%;
	width: 20px;
	height: 1px;
	left: 0;
	background-color: var(--base-color);
}

.p-history__timeline {
	display: flex;
	align-items: flex-start;
	width: 100%;
	padding-top: 5%;
	font-size: 1.4rem;
	position: relative;
}

.p-history__inner {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0;
	vertical-align: top;
	border-top: 1px solid var(--base-color);
	text-align: center;
	position: relative;
}

.p-history__inner:before {
	position: absolute;
	top: -4px;
	left: 50%;
	display: block;
	width: 8px;
	height: 8px;
	content: '';
	border-radius: 50%;
	background: var(--base-color);
	transform: translateX(-50%);
}

.p-history__inner:last-of-type:before {
	top: 0;
	right: -1px;
	bottom: auto;
	left: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-radius: 0;
	transform: translateX(0) translateY(-50%);
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent var(--base-color);
	background: transparent;
}

.p-history__noflex {
	flex: 0;
}

.p-history__label {
	position: absolute;
	top: -55px;
	left: 50%;
	transform: translateX(-50%);
	display: block;
	white-space: nowrap;
}

.p-history__contents {
	margin-top: var(--item-s-margin);
}

.p-history__img__txt {
	font-size: 1.2rem;
	margin-top: 1rem;
}

.p-history__img__txt span {
	font-size: 1.4rem;
	font-weight: 500;
}

.p-history__txt__position,
.p-history__txt__position02,
.p-history__txt__position03,
.p-history__txt__position04 {
	position: absolute;
	width: 100%;
	min-width: 294px;
	z-index: 1;
}

.p-history__txt__position02,
.p-history__txt__position03 {
	margin-top: var(--item-s-margin);
}

.p-history__txt__position02 {
	min-width: 200px;
}

.p-history__txt__position03 {
	min-width: 310px;
}

.p-history__txt__position04 {
	margin-top: 38%;
	padding: 0.5rem;
	border: 1px solid var(--border-color);
	width: 148px;
	min-width: 148px;
}

.p-history__txt__position04:before {
	content: "";
  position: absolute;
  top: -44px;
  left: 50%;
  margin-left: -16px;
  border: 13px solid transparent;
  border-bottom: 32px solid #fff;
  z-index: 2;
}

.p-history__txt__position04:after {
	content: "";
  position: absolute;
  top: -48px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-bottom: 34px solid var(--border-color);
  z-index: 1;
}

.p-history__img {
	width: 100%;
	max-width: 120px;
	margin-top: 90px;
}

.p-history__img02 {
	width: 100%;
	max-width: 150px;
}

.p-history__img03 {
	width: 100%;
	max-width: 200px;
	margin-top: 1rem;
}

@media screen and (max-width:768px) {
	.p-history__ttl {
		flex-direction: column;
		align-items: flex-start;
	}
	
	.p-history__medium {
		margin: 0;
	}
	
	.p-history__timeline {
		flex-direction: column;
		padding-top: 0;
		padding-left: 5%;
	}
	
	.p-history__inner {
		border-top: none;
		border-left: 1px solid var(--base-color);
		padding: 0 0 var(--item-s-padding) var(--item-s-padding);
		width: 100%;
	}
	
	.p-history__inner:last-of-type {
		padding-bottom: 0;
	}
	
	.p-history__inner:last-of-type:before {
		top: 100%;
		right: 0;
		left: -5px;
		transform: rotate(90deg);
	}
	
	.p-history__inner:before {
		top: 12px;
		left: 0;
	}
	
	.p-history__contents {
		margin-top: 1rem;
	}
	
	.p-history__label {
		position: relative;
		top: 0;
		width: 100%;
	}
	
	.p-history__txt__position, .p-history__txt__position02, .p-history__txt__position03, .p-history__txt__position04 {
		position: relative;
	}
	
	.p-history__txt__position04 {
		margin-top: 40px;
	}
	
	.p-history__img {
		margin-top: 1rem;
	}
}

/***** お知らせ一覧 *****/
.p-news__inner {
	display: flex;
	gap: 2.4rem;
	padding-bottom: var(--item-s-padding);
	margin-bottom: var(--item-s-margin);
	border-bottom: 1px solid var(--border-color);
}

.p-news__inner dt {
	min-width: 220px;
}

.p-news__inner dd {
	flex: 1;
}

.p-news__icon,
.p-news__icon02 {
	font-size: 1.2rem;
	color: var(--base-color);
	margin-left: var(--item-m-margin);
	width: 115px;
	padding: 0.4rem 1rem;
	text-align: center;
	font-weight: 500;
	border: 1px solid var(--base-color);
	display: inline-block;
}

.p-news__icon02 {
	color: var(--orange-color);
	border-color: var(--orange-color);
}

@media screen and (max-width:768px) {
	.p-news__inner {
		flex-direction: column;
		gap: 1.6rem;
	}
}

/***** お知らせ詳細 *****/
.p-news__date,
.p-news__date02 {
	margin-bottom: 1rem;
	color: var(--base-color);
}

.p-news__date02 {
	color: var(--orange-color);
}

/***** トピックス一覧 *****/
.p-topics__container {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 2.4rem;
}

.p-topics__inner {
	padding-bottom: var(--inner-padding);
	min-width: 200px;
}

.p-topics__link {
	text-decoration: none;
	color: var(--black-color);
	transition: 0.3s;
}

.p-topics__link:hover {
	opacity: 0.7;
}

.p-topics__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-topics__contents {
	margin-top: var(--item-s-margin);
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.p-topics__date {
	white-space: nowrap;
}

.p-topics__icon,
.p-topics__icon02 {
	font-size: clamp(1rem,1vw,1.4rem);
	color: var(--base-color);
	margin-left: 5px;
	width: 146px;
	padding: 0.4rem 1rem;
	text-align: center;
	font-weight: 500;
	border: 1px solid var(--base-color);
	display: inline-block;
	white-space: nowrap;
}

.p-topics__icon02 {
	color: var(--orange-color);
	border-color: var(--orange-color);
}

.p-topics__txt {
	margin-top: var(--item-s-margin);
}

.c-topics__staff {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 3.2rem;
}

.c-topics__staff__item:nth-child(1) {
	max-width: 250px;
	align-items: center;
}

.c-topics__staff__item:nth-child(2) {
	flex: 1;
}

.c-topics__staff__img img {
	border-radius: 10px;
}

@media screen and (max-width:914px) {
	.p-topics__container {
		grid-template-columns: repeat(1,1fr);
	}
	
	.p-topics__contents {
		flex-direction: column;
		align-items: baseline;
	}
	
	.p-topics__icon {
		font-size: 1.4rem;
	}
	
	.c-topics__staff {
		flex-direction: column;
		align-items: center;
		gap: 1.6rem;
	}
}

/***** 教授挨拶 *****/
.c-professor__img__flex {
	align-items: flex-end;
}

.c-professor__img__flex .c-img__flex__img {
	width: 28%;
}

.c-professor__name {
	font-size: clamp(1.8rem,4.8vw,2rem);
	font-weight: 600;
	margin-top: 0.8rem;
}

.c-professor__position {
	font-size: 1.6rem;
	line-height: 1.5;
}

.c-professor__float__fig {
	max-width: 30%;
	float: left;
	margin: 0 3rem 4rem 0;
	vertical-align: bottom;
}

.c-professor__float::after {
	content: "";
	display: block;
	clear: both;
}

.c-professor__youtube {
	width: 100%;
	aspect-ratio: 16 / 9;
	transition: 0.3s;
}

.c-professor__youtube iframe {
	width: 100%;
	height: 100%;
}

.c-professor__youtube:hover {
	opacity: 0.8;
}

@media screen and (max-width:768px) {
	.c-professor__img__flex {
		flex-direction: column-reverse;
		align-items: center;
	}
	
	.c-professor__img__flex .c-img__flex__img {
		width: 100%;
		max-width: 200px;
	}
	
	.c-professor__float__fig {
		float: none;
		max-width: 100%;
		margin: 0;
	}
	
	.c-professor__float__img {
		max-width: 200px;
		margin-inline: auto;
	}
	
	.c-professor__float__cap {
		margin: 1.6rem 0 var(--inner-margin);
		text-align: center;
	}
}

/***** スタッフ紹介 *****/
.c-staff__flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 3.2rem;
}

.c-staff__item:nth-child(1) {
	flex: 1;
	min-width: 160px;
	text-align: center;
}

.c-staff__item:nth-child(2),
.c-staff__item:nth-child(3) {
	flex: 2;
}

.c-staff__flex p {
	font-size: 1.4rem;
}

.c-staff__flex .c-professor__name {
	font-size: clamp(1.6rem,4.3vw,1.8rem);
	margin: 0.5rem 0;
}

.c-staff__flex .c-title__medium,
.c-staff__flex .c-title__medium02 {
	font-size: clamp(1.4rem,3.7vw,1.6rem);
	margin-bottom: 1rem;
	padding-top: 0.5rem;
}

.c-staff__flex p + .c-title__medium,
.c-staff__flex p + .c-title__medium02 {
	margin-top: var(--item-m-margin);
}

.c-staff__img img {
	border-radius: 10px;
}

.gas-staff .c-item + .c-item,
.end-staff .c-item + .c-item {
	padding-top: var(--inner-padding);
	border-top: 1px solid var(--border-color);
}

.end-staff .c-item:last-child {
	padding: 0;
	border: none;
}

@media screen and (max-width:768px) {
	.c-staff__flex {
		flex-direction: column;
		gap: 2.4rem;
	}
	
	.c-staff__item:nth-child(1) {
		margin-inline: auto;
		max-width: 160px;
	}
}

/***** 胃食道外科/臨床 *****/
.p-gastro__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: clamp(1rem,1.3vw,2.4rem);
}

.p-gastro__item {
	width: calc((100% - clamp(1rem,1.3vw,2.4rem))/2);
	font-weight: 500;
	padding: var(--item-s-padding);
	border-radius: 10px;
	background-color: var(--light-blue-color);
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.p-gastro__link {
	display: block;
	text-decoration: underline;
	color: var(--black-color);
	padding-right: var(--item-s-padding);
	transition: 0.3s;
}

.p-gastro__link:hover {
	color: var(--base-color);
}

.p-gastro__link::before,
.p-gastro__link::after {
	content: "";
	position: absolute;
	transition: 0.3s;
}

.p-gastro__link::before {
	width: clamp(6px,1.6vw,8px);
	height: clamp(6px,1.6vw,8px);
	right: clamp(10px,2.7vw,16px);
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	border-top: 2px solid var(--black-color);
	border-right: 2px solid var(--black-color);
	margin-right: var(--item-s-margin);
}

.p-gastro__link:hover::before {
	right: 1.1rem;
	border-color: var(--base-color);
}

.p-gastro__link::after {
	width: clamp(12px,3.2vw,16px);
	height: 2px;
	right: clamp(10px,2.7vw,16px);
	top: 50%;
	transform: translateY(-50%);
	background: var(--black-color);
	margin-right: var(--item-s-margin);
}

.p-gastro__link:hover::after {
	width: 21px;
	right: 1.1rem;
	background: var(--base-color);
}

@media screen and (max-width:768px) {
	.p-gastro__list {
		flex-direction: column;
	}
	
	.p-gastro__item {
		width: 100%;
	}
}

/***** 胃食道外科/研究について *****/
.p-research__table td {
	border-right: none;
	border-left: none;
	padding: var(--item-s-padding) 10px;
}

@media screen and (max-width:768px) {
	.p-research__table td {
		padding: 10px;
	}
}

/***** 乳腺内分泌外科/研究について *****/
.p-endocrine-research__table th {
	font-size: 1.5rem;
	background-color: #fff;
}

.p-endocrine-research__table td {
	font-size: 1.4rem;
	text-align: center;
}

.p-endocrine-research__table th:first-child {
	width: 20%;
}

.p-endocrine-research__table th:nth-child(2) {
	width: 18%;
}

.p-endocrine-research__table th:nth-child(3) {
	width: 10%;
}

.p-endocrine-research__table th:nth-child(4) {
	width: 10%;
}

.p-endocrine-research__table th:nth-child(5) {
	width: 20%;
}

.p-endocrine-research__table tr:last-child td:nth-child(2) {
	font-size: 1.2rem;
	text-align: left;
}

.p-endocrine-research__table tr:last-child td:last-child {
	font-size: 1.2rem;
	text-align: right;
}

.p-endocrine-research__table tr:last-child td {
	border-left: none;
	border-right: none;
	border-bottom: none;
	vertical-align: baseline;
}

.p-endocrine-research__table tr:nth-child(2) td {
	background-color: #edf9fd;
}

.p-endocrine-research__table tr:nth-child(3) td {
	background-color: #eaf1fd;
}

.p-endocrine-research__table tr:nth-child(4) td {
	background-color: #ecf9ec;
}

.p-endocrine-research__table tr:nth-child(5) td {
	background-color: #fffdeb;
}

.p-endocrine-research__table tr:nth-child(6) td {
	background-color: var(--light-orange-color);
}

@media screen and (max-width:768px) {
	.p-endocrine-research__table {
		width: 800px;
	}
}

/***** 患者さんのご紹介 *****/
.p-intro__table {
	margin-top: var(--item-s-margin);
}

.p-intro__table th {
	width: 30%;
}

.p-intro__table td:first-of-type {
	width: 40%;
}

/***** アクセス *****/
.p-access__map {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	height: 0;
}

.p-access__map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.p-access__table th {
	width: 30%;
}

.p-access__table02 th {
	width: 20%;
}

@media screen and (max-width:768px) {
	.p-access__table th {
		width: 35%;
	}
	
	.p-access__table02 th {
		width: 30%;
	}
}


/***** 外来・受診案内 *****/
.c-side__outpatient__ttl {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	color: var(--base-color);
	padding: var(--item-s-padding) 0;
	border-top: 2px solid var(--base-color);
	border-bottom: 1px solid var(--base-color)
}

/***** 見学・研修希望の方へ *****/
.p-training__table td {
	width: 50%;
}

.p-endocrine-training__table th {
	width: 15%;
}

@media screen and (max-width:768px) {
	.p-endocrine-training__table th {
		width: 30%;
	}
}

/***** 説明会のご案内 *****/
.p-briefing__table th {
	width: 18%;
}