@charset "UTF-8";
@import url("https://www.naruto-u.ac.jp/schools/clinical/wp-content/themes/nue-clinical/assets/grid.css");

/* 全体の設定
–––––––––––––––––––––––––––––––––––––––––––––––––– */
html {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	font-size: 62.5%;
}

body {
	color: #000;
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	background: #fff;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	margin: 0;
	padding: 0;
}

body {
	color: #4B4E2A;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	display: block;
	color: #666;
	text-decoration-line: none;
}

a:hover {
	color: #999;
}

hr {
	margin-top: 3rem;
	margin-bottom: 3.5rem;
	border-width: 0;
	border-top: 1px solid #E1E1E1;
	width: 100%;
}

.container {
	margin: 0 auto;
	max-width: 75vw;
	padding: 0 2.0rem;
	position: relative;
}

.font-patrick {
	font-family: 'Source Code Pro', monospace;
	font-size: 6.5rem;
	margin-top: -5em;
}

dt {
	padding-top: 0.5em;
}

dd {
	border-bottom: 1px dotted #7fcbaa;
	padding-bottom: 0.5em;
}

dd > a {
	font-size: 0.9em;
}

.border {
	border-bottom: solid 3px #999;
	padding: 1rem 0;
}

/*ヘッダー
-------------------------------------*/
.header {
	display: flex;
	flex-direction: row;
	padding: 2rem 0 0.5rem 0;
	border-bottom: 3px solid #7fcbaa;
}

.header-box {
	margin-left: auto;
	margin-top: 8px;
	display: flex;
	justify-content: space-around;
	flex-direction: row;
	align-items: flex-end;
	min-width: 520px;
}

img.bn {
	border: 0.5px solid rgba(218, 201, 166, 0.4);
	transition: 1.0s;
}

img.bn:hover {
	opacity: 0.5;
}

.contact-button {
	padding: 1rem;
	border: 2px solid #000;
}

nav {
	padding: 0.5em 0 1em 0;
}

nav ul {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	list-style: none;
	align-items: center;
	margin: 1rem 0 0 0;
}

nav li {
	flex: 1 1 204px;
}

li.nav-item {
	border-left: 1px solid #dee2e6;
}

.last-list-md {
	border-right: 1px solid #dee2e6;
}

nav li a {
	text-decoration: none;
	text-align: center;
	width: 100%;
}

nav a:hover {
	background-color: #f7f7f7;
}

nav a {
	padding: 0.5rem;
}

@media screen and (min-width: 768px) {

	/* PC時はMENUボタンを非表示 */
	#open,
	#close {
		display: none !important;
	}

	#navi {
		display: block !important;
	}
}

@media screen and (max-width: 768px) {

	h2,
	h3,
	h4 {
		font-size: 2rem;
	}

	.s3 {
		font-size: initial !important;
	}

	.under {
		padding: 0 !important;
	}

	.font-patrick {
		font-size: 3.5rem;
		margin-top: -3em;
	}

	.sub_title {
		font-size: 2rem !important;
	}

	.header {
		flex-direction: column;
		margin-bottom: 10px;
	}

	.header #open,
	#close {
		position: absolute;
		top: 20px;
		right: 12px;
	}

	nav ul {
		flex-direction: column;
	}

	.header li {
		padding-top: 0;
	}

	#open,
	#close {
		display: block;
		width: 50px;
		border: none;
		position: absolute;
		top: 20px;
		right: 12px;
	}

	#navi {
		display: none;
	}

	li.last-li {
		border-right: initial;
	}

	li.nav-item {
		border-left: initial;
		border-bottom: 1px solid #7fcbaa;
	}

	li.last-list-md {
		border-right: initial;
	}

	nav li {
		flex: 1 1;
	}

	.fb_footer {
		flex-wrap: wrap;
	}

	.fb_footer_item2 {
		padding: 0 !important;
	}
}

/*メイン画像
-------------------------------------*/
.mainimg img {
	width: 100vw;
}

/*メインコンテンツ
-------------------------------------*/
main {
	margin: 5rem 0 0 0;
}

section {
	margin: 0 0 5rem 0;
	padding: 0 0 10rem 0;
}

.gray-back {
	background-color: #e3fff1;
}

.small {
	width: 50%;
	border-radius: 50%;
	margin-bottom: 2em;
}

table {
	border-collapse: collapse;
}

th,
td {
	padding: 12px 15px;
	text-align: left;
	border-bottom: 1px solid #E1E1E1;
}

/*キャッチコピー
-------------------------------------*/
.catch {
	text-align: center;
	padding: 2em 0 6em 0;
	font-size: 1.6em;
	display: flex;
	width: 75vw;
	margin: 0 auto;
	justify-content: center;
	align-items: center;
}

.under {
	border-bottom: 3px solid #7fcbaa;
	padding: 0 1rem 1rem 1rem;
}

.center {
	text-align: center;
	margin-bottom: 4rem;
}

/*申し込みの流れ
-------------------------------------*/
.flow.row {
	margin-bottom: 3rem;
}

/*フッター
-------------------------------------*/
footer {
	background-color: #faf9f1;
	padding: 5rem 0;
}

footer h4 {
	border-bottom: 3px solid #777F7B;
}

.fb_footer {
	display: flex;
	justify-content: center;
	align-items: center;
}

.fb_footer_item2 {
	padding: 5em;
}

/*お問い合わせ
-------------------------------------*/
.contact-box {
	border: 1px solid #ccc;
	text-align: center;
	padding: 2rem 0;
}

.table {
	margin: 4rem 0;
}

.table th {
	width: 250px;
}

/*コピーライト
-------------------------------------*/
.copyright {
	text-align: center;
	padding: 1rem 0;
	background-color: #777F7B;
	color: white;
}

.copyright a {
	color: #fff;
	text-decoration: none;
	display: inline;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
	position: fixed;
	bottom: 15px;
	right: 15px;
}

#pagetop a {
	display: block;
	background: #000;
	color: #fff;
	width: 50px;
	padding: 10px 5px;
	text-align: center;
}

#pagetop a:hover {
	background: #666;
}

/*パンくずリスト
-----------------------------------*/
#breadCrumbs {
	margin: 0 0 1em 0;
	padding: 0;
}

#breadCrumbs ol {
	display: flex;
}

#breadCrumbs li {
	margin: 0;
	list-style-type: none;
}

#breadCrumbs li:not(:first-child)::before {
	content: ">";
	margin: 0 0.5em;
}

#breadCrumbs li a {
	display: inline-block;
	color: #959fa5;
	position: relative;
	transition: .3s;
}

#breadCrumbs li a:hover::after {
	width: 100%;
}

#breadCrumbs li a::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	height: 2px;
	background-color: #959fa5;
	transition: .3s;
	transform: translateX(-50%);
}

/* 幅768px以下の表示
-------------------------------------*/
@media screen and (max-width: 768px) {

	.container {
		max-width: 720px;
	}

	/*ヘッダー
-------------------------------------*/
	.header-box {
		display: none;
	}

	/*お問い合わせ
-------------------------------------*/
	.table th {
		width: 100%;
		display: block;
	}

	.table td {
		display: block;
	}

	.archive-list2 {
		flex-wrap: wrap;
	}

	.archive-item2 {
		width: 100% !important;
	}

	.catch {
		font-size: initial !important;
		padding: 0 0 5em 0 !important;
		flex-wrap: wrap;
	}

	.wrapper2 {
		width: 100% !important;
		padding: initial !important;
	}

	.fb_container,
	.fb_bn,
	.fb_bn2 {
		flex-wrap: wrap;
	}

	.fb_bn {
		padding: 0 1em 1em 1em;
	}

	.fb_bn2 {
		padding: 0 1em 1em 1em;
	}

	.fb_centered {
		flex-basis: initial !important;
	}

	.fb_center_1 > h3 {
		font-size: 2rem !important;
	}

	.fb_bning {
		flex-basis: initial !important;
	}

	.fb_bn div,
	.fb_bn2 div {
		width: 100% !important;
	}

	.fb_bnimg {
		flex-basis: initial !important;
	}

	.fb_course1 > .comment,
	.fb_course2 > .comment,
	.fb_course3 > .comment,
	.fb_course4 > .comment,
	.fb_course5 > .comment {
		width: 100% !important;
	}

	.fb_course1,
	.fb_course2,
	.fb_course3,
	.fb_course4,
	.fb_course5 {
		flex-wrap: wrap;
		height: initial !important;
	}

	.fb_training1 {
		flex-wrap: wrap;
	}

	.sub_title {
		padding-bottom: 5rem !important;
	}

	.fb_center_1 {
		width: 75vw !important;
	}

	.fb_center {
		flex-wrap: wrap;
	}

	.fb_center_2img > img {
		width: initial !important;
		height: initial !important;
	}

	.caution {
		margin-left: initial !important;
	}

	.fb_seminar1,
	.fb_seminar2 {
		flex-wrap: wrap;
	}

	.fb_seminar_image {
		height: initial !important;
	}

	.fb_seminar_comment {
		width: initial !important;
	}

	.fb_seminar_comment > p {
		text-align: left !important;
	}
}

/*他
-------------------------------------*/
.box26 {
	position: relative;
	margin: 2em 0;
	padding: 0.5em 1em;
	border: solid 3px #7fcbaa;
	border-radius: 8px;
	text-align: center;
}

.box26 .box-title {
	position: absolute;
	display: inline-block;
	top: -13px;
	left: 10px;
	padding: 0 9px;
	line-height: 1;
	font-size: 19px;
	background: #e3fff1;
	color: #7fcbaa;
	font-weight: bold;
}

.box26 p {
	margin: 0;
	padding: 0;
}

p.text-justify {
	text-align: justify;
	padding-top: 1.5rem;
	text-indent: 1em;
}

.t-img {
	margin-bottom: 2em;
}

h3.t-introduction {
	border-bottom: 1px solid #7fcbaa;
	padding-bottom: 1rem;
	font-weight: bold;
}

dl.left,
p.left {
	text-align: left;
}

.wrapper2 {
	width: 75vw;
	margin: 0 auto;
	padding: 0 2.0rem;
	text-align: center;
	margin-bottom: 4rem;
}

.archive-list2 {
	display: flex;
	justify-content: space-between;
}

.archive-item2 {
	width: 48%;
	padding: 1.5em;
	display: flex;
	flex-direction: column;
	background: #e3fff1;
}

.archive-img-wrap2 {
	margin-bottom: 10px;
}

.archive-img-wrap2 img {
	object-fit: cover;
}

.archive-ttl2 {
	margin-bottom: 10px;
	line-height: 1.5;
	flex-grow: 1;
}

.fb_container {
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.fb_centered {
	display: flex;
	flex-direction: column;
	flex-basis: 20%;
}

.fb_introduction {
	display: flex;
	flex-direction: column;
	flex-basis: 75%;
}

.fb_details {
	align-self: flex-start;
	background: white;
}

.fb_details p {
	padding: 0.5em 1em;
}

.fb_link {
	align-self: flex-start;
	display: flex;
	flex-direction: column;
	width: 100%;
	background: #e3fff1;
	margin-top: 1em;
}

.fb_related-links {
	width: 100%;
}

.fb_bn {
	display: flex;
	align-items: center;
}

.fb_bn2 {
	display: flex;
	align-items: center;
	padding-bottom: 2em;
}

.fb_bn div {
	width: 48%;
}

.fb_centered img {
	box-shadow: 9px 7px 10px rgb(0 0 0 / 32%);
	margin-bottom: 1em;
}

.fb_bnimg {
	flex-basis: 30%;
}

.fb_bnurl {
	text-align: left;
	flex-basis: 70%;
	align-self: center;
}

.fb_course {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background: #fff;
	padding: 0;
}

.fb_course1,
.fb_course3,
.fb_course5 {
	display: flex;
	align-items: center;
}

.fb_course2,
.fb_course4 {
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}

.fb_course1 > .comment,
.fb_course2 > .comment,
.fb_course3 > .comment,
.fb_course4 > .comment,
.fb_course5 > .comment {
	width: 50vw;
	background: white;
	text-align: justify;
}

.comment h4 {
	text-decoration: underline;
}

.comment h4,
.comment p {
	padding: 1em 3em;
}

.fb_course1,
.fb_course2,
.fb_course3,
.fb_course4 {
	height: 330px;
}

.fb_course4 {
	margin-bottom: 5rem;
}

.fb_course5 {
	height: 420px;
}

.fb_course5 img {
	height: 420px;
}

.fb_seminar {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.fb_seminar1 {
	display: flex;
	justify-content: center;
	align-items: center;
}

.fb_seminar2 {
	display: flex;
	justify-content: center;
	align-items: center;
}

.fb_seminar_image {
	width: auto;
	height: 420px;
	object-fit: cover;
	object-position: 100% 0;
}

.fb_seminar_comment {
	width: 33.3vw;
	padding: 1.5em;
	align-self: center;
	display: block;
	text-align: center;
	margin: 0 auto;
}

.fb_seminar_comment > p {
	display: inline-block;
	text-align: left;
}

.course_img {
	width: 50vw;
	height: 330px;
	object-fit: cover;
	object-position: 50% 50%;
}

.fb_training1 {
	display: flex;
	justify-content: center;
	align-items: center;
}

.fb_center {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 440px;
	margin-bottom: 5em;
}

.fb_center_1 {
	width: 30%;
	font-size: 1.1em;
	text-align: justify;
	color: #646A58;
}

.fb_center_1 > h3 {
	font-weight: bold;
	font-size: 2.3rem;
	text-align: center;
	border: 5px solid #777F7B;
	border-radius: 70px;
	padding: 1em;
}

.fb_center_2img > img {
	width: 50vw;
	height: 440px;
	object-fit: cover;
	object-position: 50% 50%;
}

.fb_center_2text {
	width: 25vw;
	margin-left: 2vw;
	margin-right: 23vw;
	font-size: 1.1em;
}

.fb_pamphlet {
	text-align: center;
	padding: 2em 0 6em 0;
	font-size: 2rem;
	display: flex;
	width: 75vw;
	margin: 0 auto;
	justify-content: center;
	align-items: center;
}

.fb_pamphlet_item {
	width: 47%;
}

.fb_pamphlet_item img {
	max-height: 450px;
}

.s3 {
	margin: 1em 1.5em;
	font-weight: bold;
	font-size: 1.25em;
	color: gray;
	display: flex;
	align-items: center;
}

.s3:before,
.s3:after {
	content: "";
	flex-grow: 1;
	border-top: 2px dotted gainsboro;
	display: block;
}

.s3:before {
	margin-right: .4em;
}

.s3:after {
	margin-left: .4em;
}

.hr-text {
	line-height: 1em;
	position: relative;
	outline: 0;
	border: 0;
	color: black;
	text-align: center;
	height: 1.5em;
	opacity: .5;
}

.hr-text:before {
	content: '';
	background: -webkit-linear-gradient(left, transparent, #818078, transparent);
	background: linear-gradient(to right, transparent, #818078, transparent);
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 1px;
}

.hr-text:after {
	content: attr(data-content);
	position: relative;
	display: inline-block;
	color: black;
	padding: 0 .5em;
	line-height: 1.5em;
	background-color: #e3fff1;
}

.sub_title {
	text-align: center;
	padding-bottom: 5em;
	font-weight: bold;
	font-size: 2.5rem;
}

.frame {
	display: inline-block;
	position: relative;
}

.frame:after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
	transform: rotate(3deg);
	background: #fff;
	z-index: -1;
}

.caution {
	font-weight: bold;
	font-size: 0.8em;
	color: #909090;
	margin-bottom: 5em;
	margin-left: 47vw;
}

/*PCの場合*/
.mb {
	display: none !important;
}

.pc {
	display: contents !important;
}

@media screen and (max-width: 768px) {

	/*タブレット、スマホの場合*/
	.pc {
		display: none !important;
	}

	.mb {
		display: block !important;
	}
}

.tbl-r02 p {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin: 60px auto 40px;
}

table.tbl-r02 {
	margin: 20px auto;
}

.tbl-r02 th {
	padding: 10px;
	min-width: 17rem;
}

thead th {
	border: none !important;
	text-align: center;
}

tr.tr-spacing > th,
tr.tr-spacing > td {
	border-bottom: none !important;
}

.fb_header {
	display: flex;
	flex-direction: column;
	padding: 0;
	width: 100%;
}

@media screen and (max-width: 640px) {
	.last td:last-child {
		border-bottom: solid 1px #ccc;
		width: 100%;
	}

	.tbl-r02 {
		width: 80%;
	}

	.tbl-r02 th,
	.tbl-r02 td {
		border-bottom: none;
		display: block;
		width: 100%;
	}

	tr.tr-spacing > th,
	tr.tr-spacing > td {
		line-height: 0px;
	}
}

@media (min-width : 768px) {
	.fb_header {
		display: flex;
		flex-direction: row;
		padding: 0;
	}

	.col {
		margin-left: 4%;
	}

	.fb_header .col.span {
		flex: 0 0 100%;
		max-width: 100%;
	}

	.col:first-child {
		margin-left: 0;
	}
}