@charset "utf-8";
/* =======================================

	contentsElements

======================================= */

/* ------------------------------------
	contents common
------------------------------------ */

main .parts_wrap {
	padding: 0 0 2.5em;
}

main p {
	line-height: 2.2;
	padding: 0 0 2.5em;
}
main p.no_gap,
main .no_gap p {
	padding-bottom: 0;
}

main a:link, main a:visited {
	text-decoration: underline;
}
main a.link:link, main a.link:visited,
main p a:link, main p a:visited {
	text-decoration: none;
}
main a.link:link span, main a.link:visited span,
main p a:link span, main p a:visited span {
	text-decoration: underline;
}
main a.link:before,
main p a:before {
	font-family: 'sannoclc';
	content: '\e907';
}
main a[href^="tel:"].link:before,
main p a[href^="tel:"]:before {
	content: none;
}
main a.link[target="_blank"]:before,
main p a[target="_blank"]:before {
	content: '\e90e';
	margin: 0 0.2em;
}
main a.link[href$=".pdf"]:before,
main p a[href$=".pdf"]:before {
	display: inline-block;
	content: '';
	background: transparent url(../../img/ico_pdf.png) center center no-repeat;
	background-size: 100%;
	margin: 0 0.2em;
	width: 1em;
	height: 1em;
	max-width: 24px;
	max-height: 24px;
	vertical-align: middle;
}

main table th a:link, main table th a:visited {
	color: #fff;
	text-decoration: underline;
}

main small {
	font-size: 0.875em;
}

ul.basic li p, ol li p {
	line-height: 1.6;
}

main figure {
	text-align: center;
	padding: 0 0 2.5em;
}
main figcaption {
	padding: 1em 0 0;
	font-size: 0.875em;
	line-height: 1.6;
}

@media only screen and (max-width: 768px) {
	main {
		padding: 2.5em 0 0;
	}
}

/*	:hover
------------------------------------ */
main a:hover,
main a.link:hover span,
main p a:hover span,
main table th a:hover {
	text-decoration: none;
}


/* breadcrumb
------------------------------------ */
#breadcrumb div {
	background: #f4f4f4;
	text-align: right;
	padding: 20px;
	line-height: 1;
	font-size: 0.875em;
}
#breadcrumb a {
	color: #000;
}
#breadcrumb a:link, #breadcrumb a:visited { text-decoration: none; }
#breadcrumb div > span:first-child:before {
	font-family: 'sannoclc';
	content: '\e913';
	color: #8e680e;
}
#breadcrumb div > span:after {
	content: '/';
	display: inline-block;
	padding: 0 0.7em;
}
#breadcrumb div > span:last-child:after {
	content: none;
}
#breadcrumb div::-webkit-scrollbar{
	display:none;
}
#breadcrumb div {
	-ms-overflow-style:none;
}
@media only screen and (max-width: 768px) {
	#breadcrumb div {
		padding: 15px 2.5% 15px 10%;
		line-height: 1;
		font-size: 1em;
		border-top: 1px solid #e2e2e2;
		overflow-x: scroll;
		white-space: nowrap;
	}
	#breadcrumb {
		position: relative;
	}
	#breadcrumb:before {
		position: absolute;
		display: block;
		content: '';
		width: 10%;
		height: 100%;
		top: 0;
		left: 0;
		background: linear-gradient(to right, rgba(244,244,244,1) 0%,rgba(244,244,244,0) 100%);
	}
}


/* contents main visual (intro)
------------------------------------ */
.main_visual,
.intro {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 0 2.5em;
}
.main_visual.short,
.intro.short {
	width: 980px;
}
.main_visual .visual {
	margin-bottom: 2.5em;
}
.intro.center {
	text-align: center;
}

/* contents second layer
------------------------------------ */
main.second_layer {
	padding-top: 0;
}
.second_layer .main_visual {
	width: 100%;
	position: relative;
	padding: 29% 0 0 22%;
	min-height: calc(29vw + 120px + 5em);
	border-bottom: 1px solid transparent;
}
.second_layer .main_visual.no_read {
	min-height: calc(29vw + 120px);
}
.second_layer .main_visual img {
	position: absolute;
	top: 0;
	right: 0;
	width: 78%;
	height: auto;
}
.second_layer #breadcrumb {
	margin-bottom: 3.75em;
}
.second_layer .main_visual p {
	max-width: 100%;
	width: calc(100% - (50vw - 590px) - 6.25em);
}
.second_layer .main_visual .title {
	position: absolute;
	top: 0;
	left: 0;
	width: 22%;
	height: 29vw;
	min-height: 286px;
	text-align: center;
}
.second_layer .main_visual .title h1 {
	width: 100%;
	height: 100%;
	min-height: 286px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-align: left;
	font-size: 2.5vw;
	font-feature-settings: normal;
	letter-spacing: 0.14em;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
	position: relative;
	white-space: nowrap;
}
.second_layer .main_visual .title.long h1 {
	letter-spacing: 0;
	font-size: 2.2vw;
}
.second_layer .cont_list {
	border-top: none;
	margin-top: 0;
	padding-top: 1em;
}


@media only screen and (max-width: 980px) {
	.second_layer .main_visual {
		min-height: calc(286px + 120px + 5em);
	}
	.second_layer .main_visual .title,
	.second_layer .main_visual .title h1 {
		height: 286px;
	}
	.second_layer .main_visual .title h1 {
		font-size: 24px;
	}
	.second_layer .main_visual .title.long h1 {
		font-size: 22px;
	}
}
@media only screen and (max-width: 768px) {
	.second_layer .main_visual {
		padding: 0;
		margin: 0 auto 2.5em;
		min-height: 0;
	}
	.second_layer #breadcrumb {
		margin-bottom: 0;
	}
	.second_layer .main_visual img {
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
	}
	.second_layer .main_visual .title {
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		height: auto;
		min-height: 0;
		display: block;
	}
	.second_layer .main_visual .title h1 {
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		text-align: center;
		width: 88%;
		height: auto;
		min-height: 0;
		padding: 1em;
		margin: -6vw auto 0;
		background: #fff;
	}
	.second_layer .main_visual p {
		width: 88%;
		margin: 0 auto;
		text-align: center;
		padding: 0 1.25em 2.5em;
	}
}


/* contents slider
------------------------------------ */
.slick-dotted.slick-slider {
	margin-bottom: 5em;
}
.slick-dots {
	bottom: -2.5em;
}
.slick-dots li {
	width: auto;
	height: auto;
	margin: 0 2px;
}
.slick-dots li button {
	width: 16px;
	height: 16px;
	padding: 3px;
	letter-spacing: 0;
}
.slick-dots li button:before {
	content: '';
	display: block;
	position: relative;
	width: 10px;
	height: 10px;
	border-radius: 5px;
	background: #fff;
	border: 1px solid #000;
	opacity: 1;
}
.slick-dots li.slick-active button:before {
	background: #000;
}

/*	float parts
--------------------------------------- */
.float_box {
	padding: 0;
	margin: 0 0 1.25em;
	text-align: center;
	display: table;
	width: 100px;
}
.float_box img {
	max-width: 1000px;
}
.float_box.left { float: left; margin-right:  2.5em; }
.float_box.right { float: right; margin-left:  2.5em; }
figure.float_box figcaption small {
	display: block;
	font-size: 0.667em;
}
@media only screen and (max-width: 768px) {
	.float_box {
		display: block;
		width: 100%;
	}
	.float_box img {
		max-width: 100%;
	}

	.float_box.left,
	.float_box.right {
		float: none;
		margin: 0 0 1.25em;
	}
}

/* info_area
------------------------------------ */
.info_area {
	margin-bottom: 2.5em;
}
.info_area a {
	display: block;
}
.info_area a:link, .info_area a:visited { text-decoration: none; }
.info_area dl {
	border: 1px solid #e2e2e2;
	padding: 110px 2.5em 1.25em;
	text-align: center;
	position: relative;
	margin: 30px 0 0;
	min-height: 17em;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
}
.info_area dl:before {
	content: '';
	position: absolute;
	top: -30px;
	left: 50%;
	margin-left: -60px;
	padding-top: 20px;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	background: #8e680e;
	color: #fff;
	font-size: 36px;
	text-align: center;
	font-family: 'sannoclc';
}
.info_area dl:after {
	content: '';
	position: absolute;
	top: -30px;
	left: 50%;
	margin-left: -60px;
	width: 0;
	height: 0;
	border-top: 60px solid transparent;
	border-right: 60px solid rgba(255,255,255,0.08);
	border-bottom: 60px solid rgba(255,255,255,0.16);
	border-left: 60px solid rgba(255,255,255,0.08);
	transform: rotate(45deg);
	border-radius: 50%;
}
.info_area dl dt {
	color: #000;
	font-size: 1.25em;
	font-family: "æ¸¸ã´ã·ãã¯ä½", YuGothic, "æ¸¸ã´ã·ãã¯", "Yu Gothic", sans-serif;
}
.info_area a dl dt:before {
	font-family: 'sannoclc';
	content: '\e907';
	color: #8e680e;
}
.info_area dl dt:after {
	content: '';
	position: absolute;
	top: 45px;
	left: 50%;
	margin-left: -60px;
	width: 120px;
	color: #fff;
	text-align: center;
	font-size: 0.7em;
	line-height: 1;
	letter-spacing: 0;
}
.info_area dl.faq:before { content: '\e917'; }
.info_area dl.faq dt:after { content: 'FAQ'; }
.info_area dl.contact:before { content: '\e915'; }
.info_area dl.contact dt:after { content: 'CONTACT'; }
.info_area dl.contact_form:before { content: '\e926'; }
.info_area dl.contact_form dt:after { content: 'CONTACT'; }
.info_area dl.doctor:before { content: '\e911'; }
.info_area dl.doctor dt:after { content: 'DOCTOR'; }
.info_area dl.department:before { content: '\e90d'; }
.info_area dl.department dt:after { content: 'DEPARTMENT'; }
.info_area dl.shift:before { content: '\e921'; }
.info_area dl.shift dt:after { content: 'SHIFT'; }

.info_area dl dd {
	margin-top: 1em;
	color: #5f5f5f;
	width: 100%;
}
.info_area dl.mail dd,
.info_area dl.tel dd {
	margin-top: 0.2em;
}

.info_area dl dd .point {
	position: relative;
	display: block;
	font-size: 1.5em;
	font-weight: bold;
	color: #000;
	white-space: nowrap;
}
.info_area dl dd .point::before {
	margin-right: 5px;
	display: inline-block;
	vertical-align: top;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #8e680e;
	color: #fff;
	font-size: 16px;
	line-height: 40px;
	text-align: center;
	font-family: 'sannoclc';
	font-weight: normal;
	content: '';
}
.info_area dl dd .point a {
	display: inline;
	text-decoration: underline;
}
.info_area dl.mail dd .point::before {
	content: '\e915';
}
.info_area dl.tel dd .point::before {
	content: '\e91d';
	background: #8b744d;
}
.info_area dl dd .point small {
	font-size: 0.533em;
}

.info_area dl dd .department {
	font-weight: bold;
	padding-top: 5px;
	display: inline-block;
}

.info_area dl.tel::before { content: '\e91d';  background: #8b744d; }
.info_area dl.tel dt:after { content: 'CONTACT'; }
.info_area dl.tel dd .reception {
	display: block;
	padding-top: 10px;
	font-weight: bold;
}
.info_area dl.tel dd .reception span { color: #8b744d; }

@media only screen and (max-width: 1180px) {
	.info_area dl dd .point {
		font-size: 1.2em;
		letter-spacing: 0;
	}
}

@media only screen and (max-width: 768px) {
	.info_area dl {
		padding: 110px 5% 1.25em;
	}
}
@media only screen and (max-width: 480px) {
	.info_area dl dd .point {
		font-size: 1.7em;
	}
}

/*è¿½å */

.info_area dl dd .point2 {
	position: relative;
	display: block;
	font-size: 1.5em;
	font-weight: bold;
	color: #000;
	white-space: nowrap;
}
.info_area dl dd .point2::before {
	margin-right: 5px;
	display: inline-block;
	vertical-align: top;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #8e680e;
	color: #fff;
	font-size: 16px;
	line-height: 40px;
	text-align: center;
	font-family: 'sannoclc';
	font-weight: normal;
	content: '';
}
.info_area dl dd .point2 a {
	display: inline;
	/*text-decoration: underline;*/
    text-decoration: none;
    pointer-events: none;
    color: #000;
}
.info_area dl.mail dd .point2::before {
	content: '\e915';
}
.info_area dl.tel dd .point2::before {
	content: '\e91d';
	background: #8b744d;
}
.info_area dl dd .point2 small {
	font-size: 0.533em;
}

.info_area dl dd .department {
	font-weight: bold;
	padding-top: 5px;
	display: inline-block;
}

.info_area dl.tel::before { content: '\e91d';  background: #8b744d; }
.info_area dl.tel dt:after { content: 'CONTACT'; }
.info_area dl.tel dd .reception {
	display: block;
	padding-top: 10px;
	font-weight: bold;
}
.info_area dl.tel dd .reception span { color: #8b744d; }

@media only screen and (max-width: 1180px) {
	.info_area dl dd .point2 {
		font-size: 1.2em;
		letter-spacing: 0;
	}
        .info_area dl dd .point2 a {
	/*display: inline;*/
            pointer-events: auto;
	text-decoration: underline;
        color: #8b744d;
}
}

@media only screen and (max-width: 768px) {
	.info_area dl {
		padding: 110px 5% 1.25em;
	}
}
@media only screen and (max-width: 480px) {
	.info_area dl dd .point2 {
		font-size: 1.7em;
	}
}



/* .pager
------------------------------------ */
.pager {
	width: 100%;
	border-top: 1px solid #e2e2e2;
	padding: 2.5em 0 0;
	margin: 0 0 2.5em;
}
.pager > * {
	display: inline-block;
	position: relative;
	padding: 1em 2em;
	border: 1px solid #e2e2e2;
	font-size: 1.125em;
	line-height: 1.2;
	color: #5f5f5f;
}
.pager .prev {
	color: #5f5f5f;
}
.pager .prev:before {
	font-family: 'sannoclc';
	content: '\e906';
}
.pager .next {
	float: right;
}
.pager .next:after {
	font-family: 'sannoclc';
	content: '\e907';
}

@media only screen and (max-width: 768px) {
	.pager {
		display: flex;
		flex-flow: column;
	}
	.pager > * {
		width: 100%;
		height: 4.4em;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 2em;
	}
	.pager .next {
		order: 1;
	}
	.pager .prev {
		order: 2;
		margin-top: 30px;
	}
}

/*	:hover
------------------------------------ */
body.pc_view .pager a.prev:after,
body.pc_view .pager a.next:before {
	content: "";
	width: 0;
	height: 100%;
	display: block;
	background: #fefbed;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
}
body.pc_view .pager a.prev:after {
	left: auto;
	right: 0;
}

body.pc_view .pager a.next:hover:before,
body.pc_view .pager a.prev:hover:after {
	width: 100%;
}

/* .page_up
------------------------------------ */
.page_up {
	width: 100%;
	border-top: 1px solid #e2e2e2;
	padding: 2.5em 0 0;
	margin: 0 0 2.5em;
	text-align: center;
}
.page_up a {
	display: inline-block;
	position: relative;
	border: 1px solid #e2e2e2;
	padding: 1em 2em;
	font-size: 1.125em;
	min-width: 350px;
	color: #5f5f5f;
	text-align: center;
}
.page_up a:link, .page_up a:visited { text-decoration: none; }
.page_up a:before {
	font-family: 'sannoclc';
	content: '\e906';
}

@media only screen and (max-width: 768px) {
	.page_up a {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}
}

/*	:hover
------------------------------------ */
body.pc_view .page_up a:after {
	content: "";
	width: 0;
	height: 100%;
	display: block;
	background: #fefbed;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
}

body.pc_view .page_up a:hover:after {
	width: 100%;
}

/* .skill
------------------------------------ */
.skill li {
	display: inline-block;
	width: 48%;
	vertical-align: top;
	position: relative;
	padding: 0.5em 0 0 1em;
}
.skill li:nth-child(odd) {
	margin-right: 3%;
}

@media only screen and (max-width: 768px) {
	.skill li {
		display: block;
		width: 100%;
	}
	.skill li:nth-child(odd) {
		margin-right: 0;
	}
}

/* sign
------------------------------------ */
.sign {
	text-align: right;
}

/*	main .cont_list.txt
--------------------------------------- */
main .cont_list.txt {
	border-bottom: 1px solid #e2e2e2;
	padding-bottom: 1.25em;
	margin-bottom: 2.5em;
	text-align: left;
}

@media only screen and (max-width: 768px) {
	main .cont_list.txt {
		padding-bottom: 2.5em;
	}
}

/* ---------------------------------------
flow_list
--------------------------------------- */

main ol.flow_list {
	border: 1px solid #e2e2e2;
	padding: 0;
	margin: 0 0 2.5em;
}
main ol.flow_list > li {
	padding: 2.5em 2.5em 0 6.250em;
	border-bottom: 1px solid #e2e2e2;
}
main ol.flow_list > li::before {
	content: none;
}
main ol.flow_list > li:last-child {
	border-bottom: none;
}
main ol.flow_list > li:nth-child(even) {
	background: #f4f4f4;
}
main ol.flow_list > li dl dt {
	font-family: "æ¸¸ã´ã·ãã¯ä½", YuGothic, "æ¸¸ã´ã·ãã¯", "Yu Gothic", sans-serif;
	font-size: 1.5em;
	margin-bottom: 0.813em;
}
main ol.flow_list > li > dl > dt::before {
	display: flex;
	justify-content: center;
	align-items: center;
	counter-increment: num;
	content: counter(num);
	color: #fff;
	background: #8e680e;
	font-size: 22px;
	width: 1.875em;
	height: 1.875em;
	line-height: 1.7;
	position: absolute;
	top: 40px;
	left: 40px;
	padding: 0;
}

@media only screen and (max-width: 768px) {
	main ol.flow_list > li {
		padding: 2.5em 4% 0 calc(4% + 50px);
	}
	main ol.flow_list > li dl dt::before {
		font-size: 18px;
		top: 28px;
		left: 4%;
	}
}


/* table (calendar)
------------------------------------ */
main table.calendar {
	width: 100%;
	border: none;
}
main table.calendar th, main table.calendar td {
	padding: 1em;
	border-top: 1px solid #e2e2e2;
}
main table.calendar th {
	vertical-align: middle;
}
main table.calendar thead th {
	background: #f4f4f4;
	color: #5f5f5f;
	border: 1px solid #e2e2e2;
	font-size: 1.125em;
	font-weight: bold;
	text-align: center;
}
main table.calendar thead th:first-child,
main table.calendar thead th:nth-child(2)  {
	border: none;
	background: #fff;
}
main table.calendar thead th.saturday {
	color: #285fb9;
}
main table.calendar thead th.sunday {
	color: #91311e;
}
main table.calendar tbody th {
	width: 10%;
	text-align: center;
	background: #a98734;
	color: #fff;
	font-size: 1.5em;
}
main table.calendar tbody th.time {
	width: 18%;
	border-right: 1px solid #e2e2e2;
	color: #000;
	font-size: 1.125em;
	background: #fefbed;
}
main table.calendar tbody td {
	width: 10%;
	text-align: center;
	vertical-align: middle;
	font-size: 1.5em;
	border-right: 1px solid #e2e2e2;
	color: #a98734;
}
main table.calendar tbody td.closed {
	color: #5f5f5f;
}

@media only screen and (max-width: 768px) {
	.guide_time dl.consultation {
		margin-bottom: 0;
	}

	main table.calendar thead th, main table.calendar thead th,
	main table.calendar tbody th, main table.calendar tbody td {
		font-size: 12px;
	}
	main table.calendar thead th {
		font-size: 0.813em;
		padding: 0.3em 0;
	}
	main table.calendar th, main table.calendar td {
	padding: 0.5em 0.3em;
	}
	main table.calendar thead th:nth-child(2),
	main table.calendar tbody th.time {
		display: none;
	}
}


/*	ol.cir_list
--------------------------------------- */
ol.cir_list li {
	text-align: center;
	padding: 1.25em;
}
ol.cir_list li:before {
	position: relative;
	top: auto;
	left: auto;
	font-size: 1.625em;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	margin: 0 auto 0.5em;
}
ol.cir_list li:after {
	content: '';
	position: absolute;
	top: 20px;
	left: 50%;
	margin-left: -25px;
	width: 0;
	height: 0;
	border-top: 25px solid transparent;
	border-right: 25px solid rgba(255,255,255,0.08);
	border-bottom: 25px solid rgba(255,255,255,0.16);
	border-left: 25px solid rgba(255,255,255,0.08);
	transform: rotate(45deg);
	border-radius: 50%;
}

/* .table_list
------------------------------------ */
ul.table_list {
	padding: 0;
}
ul.table_list li {
	padding: 0 0 0 1.5em;
}
ul.table_list li:last-of-type {
	padding-bottom: 0;
}

/*	nest two_clm
--------------------------------------- */
.two_clm .two_clm > figure {
	padding: 0 0 1.25em;
}
.two_clm .two_clm > figure figcaption {
	padding: 0.2em 0 0;
}

/* ---------------------------------------

	PATIENT

--------------------------------------- */

/* ---------------------------------------
	department
--------------------------------------- */

/*	.appeal
--------------------------------------- */
.cont_patient_department .appeal {
	padding: 0 0 3em;
}
.cont_patient_department .appeal h2 {
	text-align: center;
	border-bottom: none;
}
.cont_patient_department .appeal > ol {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}
.cont_patient_department .appeal > ol > li {
	flex-basis: 31%;
	background: #fefbed;
	width: 31%;
	margin: 0 1.7% 2em;
	flex: 1;
	display: flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	justify-content: center;
	-ms-justify-content : center;
	-webkit-justify-content: center;
}
.cont_patient_department .appeal > ol > li:before,
.cont_patient_department .appeal > ol > li:after {
	content: none;
}
.cont_patient_department .appeal > ol > li:nth-child(3n-2) {
	margin-left: 0;
}
.cont_patient_department .appeal > ol > li:nth-child(3n) {
	margin-right: 0;
}
.cont_patient_department .appeal > ol > li:last-child {
	padding-bottom: 20px;
}
@media only screen and (max-width: 768px){
	.cont_patient_department .appeal > ol {
		display: block;
	}
	.cont_patient_department .appeal > ol > li {
		width: 100%;
	}
	.cont_patient_department .appeal > ol > li,
	.cont_patient_department .appeal > ol > li:nth-child(3n-2),
	.cont_patient_department .appeal > ol > li:nth-child(3n) {
		margin: 0 0 1em;
	}
}

/*	.cont_list, .page_up
--------------------------------------- */
.cont_patient_department .cont_list,
.cont_patient_department .page_up {
	border-top: none;
	border-bottom: 1px solid #e2e2e2;
	margin: 40px 0;
}
.cont_patient_department .cont_list {
	padding: 0 0 25px;
}
.cont_patient_department .cont_list:last-child {
	margin-bottom: 0;
}
.cont_patient_department .page_up {
	padding: 0 0 40px;
	text-align: left;
}

@media only screen and (max-width: 768px){
	.cont_patient_department .cont_list,
	.cont_patient_department .page_up {
		margin-bottom: 30px;
	}
}

/*	.relation
--------------------------------------- */
.cont_patient_department .relation h3 {
	margin-bottom: 0;
}
.cont_patient_department .news.list {
	padding: 0 0 2.5em;
}
.cont_patient_department .news.list li:first-child > * {
	border-top: none;
}


/* ---------------------------------------
	patient_table
--------------------------------------- */
.cont_patient_table .cont_base_wrap section:last-of-type .cont_list_nopic {
	padding-bottom: 1.5em;
	border-bottom: 1px solid #e2e2e2;
	margin-bottom: 2.5em;
}
@media only screen and (max-width: 768px){
	.cont_patient_table .cont_base_wrap section:last-of-type .cont_list_nopic {
		padding-bottom: 2em;
	}
}

/* ---------------------------------------
	doctor top
--------------------------------------- */
.cont_list.doctor li span span {
	display: inline-block;
	text-indent: 0;
}
@media only screen and (max-width: 768px){
	.cont_list.doctor li {
		display: inline-block;
		width: calc(50% - 2.5px);
		margin-right: 5px;
	}
	.cont_list.doctor li:nth-child(even) {
		margin-right: 0;
	}
}

/* ---------------------------------------

	GUIDANCE

--------------------------------------- */
.cont_guidance_access .access_map{
	width: 100%;
	height: 430px;
	padding: 0;
	margin-bottom: 4.4em;
}
.cont_guidance_access .access_map iframe{
	width: 100%;
	height: 100%;
	border: 8px solid #fefbed;
}

.parking_table th {
	white-space: nowrap;
}

@media only screen and (max-width: 768px){
	.cont_guidance_access .access_map{
		width: 100%;
		height: auto;
		padding-top: 60%;
		margin-bottom: 3em;
		position: relative;
	}
	.cont_guidance_access .access_map iframe{
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
}


/* ---------------------------------------
	philosophy
--------------------------------------- */

/*	philosophy
--------------------------------------- */
#hospital_policy ol {
	font-size: 1.1em;
}
#hospital_policy ol li {
	margin: 20px 0 0;
	padding: 2em;
	background: #fefbed;
}
#hospital_policy ol li:before {
	display: none;
}
#hospital_policy ol li strong {
	font-size: 1.4em;
}

/*	message
--------------------------------------- */
.cont_guidance_philosophy figure.float_box figcaption {
	font-size: 1.5em;
}


/* ---------------------------------------
	history
--------------------------------------- */
.cont_guidance_outline .history h2 {
	margin-bottom: 0;
}
.cont_guidance_outline .history dl {
	position: relative;
	padding: 2.5em 0;
	border-bottom: 1px solid #e2e2e2;
	letter-spacing: -1em;
	overflow: hidden;
	margin-top: -1px;
}
.cont_guidance_outline .history dl:last-child {
	margin-bottom: 2.5em;
}
.cont_guidance_outline .history dl:before {
	position: absolute;
	content: '';
	width: 0;
	padding-top: 100%;
	border-left: 1px solid #8e680e;
	top: 0;
	left: 7px;
}
.cont_guidance_outline .history dl:first-of-type:before { top: 3.2em;}
.cont_guidance_outline .history dl:last-of-type:before { top: auto; bottom: calc(100% - 3.2em); }
.cont_guidance_outline .history dl > * {
	display: inline-block;
	vertical-align: top;
	letter-spacing: 0.1em;
}
.cont_guidance_outline .history dl dt {
	font-family: "æ¸¸ã´ã·ãã¯ä½", YuGothic, "æ¸¸ã´ã·ãã¯", "Yu Gothic", sans-serif;
	font-size: 1.125em;
	width: 280px;
	color: #8e680e;
	line-height: 1.2;
	padding: 0 0 0 15px;
}
.cont_guidance_outline .history dl dt:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #8e680e;
	margin: 0 10px 0 -15px;
}
.cont_guidance_outline .history dl dt span {
	font-size: 1.333em;
	font-weight: bold;
}
.cont_guidance_outline .history dl dt small {
	font-size: 0.888em;
	color: #5f5f5f;
	margin: 0 0 0 0.4em;
	display: inline-block;
}
.cont_guidance_outline .history dl dd {
	max-width: calc(100% - 280px);
	padding: 0 0 0 2.5em;
	border-left: 1px solid #e2e2e2;
}

@media only screen and (max-width: 768px) {
	.cont_guidance_outline .history dl dt {
		width: 200px;
	}
	.cont_guidance_outline .history dl dd {
		max-width: calc(100% - 200px);
	}
}

@media only screen and (max-width: 560px) {
	.cont_guidance_outline table,
	.cont_guidance_outline tbody,
	.cont_guidance_outline tr,
	.cont_guidance_outline th,
	.cont_guidance_outline td {
		display: block;
		width: 100%;
	}
	.cont_guidance_outline th {
		border-right: 1px solid #a98734;
	}
	.cont_guidance_outline td {
		border-left: 1px solid #e2e2e2;
	}

	.cont_guidance_outline .history dl dt {
		width: 140px;
	}
	.cont_guidance_outline .history dl dd {
		max-width: calc(100% - 140px);
	}
}

/* ---------------------------------------
	information
--------------------------------------- */
.cont_hospitalization_information .cont_base_wrap .information_memo {
	width: 50%;
}

@media only screen and (max-width: 768px) {
	.cont_hospitalization_information .cont_base_wrap .information_memo{
		width: 100%;
	}

}


/* ---------------------------------------
	room
--------------------------------------- */
.facility_table.pc th {
	white-space: nowrap;
	text-align: center;
}
.facility_table.pc td {
	padding: 0.2em 1em;
	vertical-align: middle;
	text-align: center;
	color: #8e680e;
}
.facility_table.pc td span {
	color: #000;
}
.facility_table td.thingreen {
	background: #fefbed;
	color: #000;
}
.facility_table.pc .thingreen {
	white-space: nowrap;
}
@media only screen and (max-width: 768px) {
	.facility_table.sp th {
		border-right: 1px solid #a98734;
	}
	.facility_table.sp td {
		vertical-align: middle;
	}
	.facility_table.sp .thingreen {
		white-space: nowrap;
		border-left: 1px solid #e2e2e2;
	}
}

/* ---------------------------------------

 RECRUIT

--------------------------------------- */

main.cont_recruit.second_layer .cont_list_nopic {
	border-top: none;
	padding-top: 0;
	vertical-align: top;
}
main.cont_recruit.second_layer .cont_list_nopic > li:nth-child(n+4) {
	margin-bottom: 0;
}
main.cont_recruit table th {
	width: 20%;
}
main.cont_recruit table td {
	vertical-align: middle;
}
main.cont_recruit table td p {
	line-height: 1.6;
}

main.cont_recruit table td .cap span {
	text-decoration: underline;
}
main.cont_recruit table td > span {
	font-weight: bold;
}
main.cont_recruit table td ol {
	padding: 0;
}
main.cont_recruit table td ol li {
	padding: 0 0 0em 1.5em;
}
main.cont_recruit table .contact {
	margin-top: 20px;
}

main.cont_recruit table td .basic_count,
main.cont_recruit table .cap .basic_count  {
	display: inline-block;
	color: #fff;
	background: #8e680e;
	font-size: 0.75em;
	width: 1.7em;
	height: 1.7em;
	line-height: 1.7;
	padding: 0 0.5em;
	text-decoration: none;
}

@media only screen and (max-width: 768px) {
	main.cont_recruit.second_layer .cont_list_nopic > li:nth-child(n+4) {
		margin: 0 0 0.5em;
	}
}

/* ---------------------------------------

	INFO / EVENT

--------------------------------------- */
#news_archive {
	margin: 0 0 5em;
}

#news_archive #news_list {
	width: calc(100% - (24% + 60px));
	float: left;
}

#news_archive #news_sub {
	width: 24%;
	float: right;
	border-top: 1px solid #e2e2e2;
}

#news_archive #news_sub ul {
	padding: 30px 0 20px;
	border-bottom: 1px solid #e2e2e2;
}

#news_archive #news_sub ul li {
	margin: 0 0 10px;
}

#news_archive #news_sub ul a {
	width: 100%;
	padding: 0.7em 1.8em 0.5em 2.8em;
	display: block;
	position: relative;
	border: 1px solid #e2e2e2;
	text-indent: -0.55em;
	text-decoration: none;
}

#news_archive #news_sub ul a:before {
	font-family: 'sannoclc';
	content: '\e907';
	display: inline-block;
	line-height: 1;
}

#news_archive #news_sub ul li.current-cat > a {
	background: #fefbed;
}

#news_archive #news_sub ul ul {
	padding: 10px 0 0 1.8em;
	border-bottom: none;
}

/*	:hover
------------------------------------ */
body.pc_view #news_archive #news_sub ul a:after {
	content: "";
	width: 0;
	height: 100%;
	display: block;
	background: #fefbed;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
}

body.pc_view #news_archive #news_sub ul a:hover:after {
	width: 100%;
}

.news.list li:first-child > * {
	border-top: 1px solid #e2e2e2;
}

/*	detail
------------------------------------ */
.news.detail .data {
	text-align: right;
	padding: 0 0 2.5em;
}

.news.detail .label {
	margin: 0 5px 0 0;
}

/* EDITOR styles
------------------------------------ */
.memo_editor {
	position: relative;
	border: 1px solid #e2e2e2;
	padding: 2.5em;
	margin: 0 0 2.5em;
}

.memo_editor::before {
	content: '';
	display: block;
	position: absolute;
	right: -1px;
	top: -1px;
	width: 0;
	height: 0;
	border-right: 30px solid transparent;
	border-bottom: 30px solid #fefbed;
	background: #fff;
}

.attn_editor {
	background: #fefbed;
	padding: 2.5em;
	margin: 0 0 2.5em;
}

@media only screen and (max-width: 768px) {
	#news_archive #news_list,
	#news_archive #news_sub {
		width: 100%;
		float: none;
	}
	#news_archive #news_sub {
		border-top: none;
	}
	#news_archive .cat-select {
		padding: 0 0 2em;
		position: relative;
	}
	#news_archive .cat-select:after {
		font-family: 'sannoclc';
		content: '\e905';
		display: inline-block;
		line-height: 1;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
		position: absolute;
		top: 1.8em;
		right: 0.8em;
	}
	#news_archive .cat-select select {
		width: 100%;
		padding: 1em 0.8em;
		outline:none;
		color: inherit;
		font-size: inherit;
		vertical-align: middle;
		text-overflow: '';
		text-indent: 0.01px;
		background: transparent;
		border: 1px solid #e2e2e2;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
	}
	#news_archive .cat-select select::-ms-expand {
		display: none;
	}
	#news_archive .cat-select select:-moz-focusring { 
		color: transparent; 
	}
}

/* .news .content
------------------------------------ */
.news.detail .content strong { font-weight: bold; }
.news.detail .content em { font-style: italic; }
.news.detail .content blockquote {
	display: block;
	-webkit-margin-before: 1em;
	-webkit-margin-after: 1em;
	-webkit-margin-start: 40px;
	-webkit-margin-end: 40px;
}

.news.detail .content .aligncenter {
	display: block;
	margin: 0 auto 40px;
}
.news.detail .content .alignright {
	max-width: 40%;
	margin: 0 0 40px 40px;
	float: right;
}

.news.detail .content .alignleft {
	max-width: 40%;
	margin: 0 40px 40px 0;
	float: left;
}

.news.detail .content img[class*="wp-image-"],
.news.detail .content img[class*="attachment-"] {
	max-width: 100%;
	height: auto;
}

/* .news_pager
------------------------------------ */
.news_pager {
	width: 100%;
	margin: 2.5em 0 5em;
	text-align: center;
	position: relative;
}
.news_pager a,
.news_pager .current {
	display: inline-block;
	padding: 1em;
	border: 1px solid #e2e2e2;
	line-height: 1;
	color: #5f5f5f;
	min-width: 3em;
	height: 3em;
	overflow: hidden;
	position: relative;
	text-decoration: none!important;
}
.news_pager > *:link, .news_pager > *:visited {
	color: #5f5f5f;
}
.news_pager .num {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	line-height: 0;
	z-index: 0;
}
.news_pager .current{
	background: #fefbed;
	color: #8e680e;
}
.news_pager .prev,
.news_pager .next {
	padding: 1em;
	z-index: 1;
}
.news_pager .prev {
	float: left;
	margin-right: 0.5em;
}
.news_pager .next {
	float: right;
	margin-left: 0.5em;
}
.news_pager .prev:before {
	font-family: 'sannoclc';
	content: '\e90a';
	vertical-align: top;
}
.news_pager .next:before {
	font-family: 'sannoclc';
	content: '\e90b';
	vertical-align: top;
}

@media only screen and (max-width: 768px) {
	.news_pager {
		margin: 30px 0 0;
		padding: 4em 0 30px;
		border-bottom: 1px solid #e2e2e2;
	}
	.news_pager .num {
		bottom: 30px;
	}
	.news_pager .turn {
		padding: 1em 3em;
		position: absolute;
		top: 0;
	}
	.news_pager .prev.turn {
		left: 0;
	}
	.news_pager .next.turn {
		right: 0;
	}
	.news_pager .prev:not(.turn),
	.news_pager .next:not(.turn) {
		padding: 1em 0.4em;
	}
}
@media only screen and (max-width: 420px) {
	.news_pager a,
	.news_pager .current {
		font-size: 0.8em;
		padding: 1em 0.6em;
		min-width: 0;
	}
}

/*	:hover
------------------------------------ */
body.pc_view .news_pager a:after {
	content: "";
	width: 0;
	height: 100%;
	display: block;
	background: #fefbed;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
}
body.pc_view .news_pager a.prev:after,
body.pc_view .news_pager a.back:after {
	left: auto;
	right: 0;
}

body.pc_view .news_pager a:hover:after {
	width: 100%;
}


/* .news_pager.detail
------------------------------------ */
.news_pager.detail {
	border-top: 1px solid #e2e2e2;
	padding: 3.5em 0 0;
	position: relative;
}
.news_pager.detail .prev {
	position: absolute;
	top: -1px;
	left: 0;
}
.news_pager.detail .next {
	position: absolute;
	top: -1px;
	right: 0;
}
.news_pager.detail .back {
	padding: 1em 2em;
}
.news_pager.detail .back:before {
	font-family: 'sannoclc';
	content: '\e906';
	vertical-align: top;
}

@media only screen and (max-width: 768px) {
	.news_pager.detail {
		margin: 30px 0 0;
		padding: 4em 0 30px;
		border-bottom: none;
	}
}


/* ---------------------------------------

	FAQ

--------------------------------------- */
.faq_list > dl {
	padding: 0;
	border-top: 1px solid #e2e2e2;
}
.faq_list > dl:last-of-type {
	border-bottom: 1px solid #e2e2e2;
	margin-bottom: 2.5em;
}
body.pc_view .faq_list > dl:hover {
	background: #fefbed;
}
.faq_list > dl > dt {
	font-family: "æ¸¸ã´ã·ãã¯ä½", YuGothic, "æ¸¸ã´ã·ãã¯", "Yu Gothic", sans-serif;
	font-size: 1.375em;
	padding: 1.8em 3.6em 1.8em 4em;
	position: relative;
	cursor: pointer;
}
.faq_list > dl > dt:before {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "æ¸¸ææä½", "Yu Mincho", YuMincho, serif;
	content: 'Q';
	font-size: 16px;
	width: 36px;
	height: 36px;
	line-height: 0;
	border-radius: 50%;
	background: #8e680e;
	color: #fff;
	letter-spacing: 0;
	position: absolute;
	top: 2.5em;
	left: 1.8em;
}
.faq_list > dl > dt:after {
	font-family: 'sannoclc';
	content: '\e91c';
	color: #8e680e;
	font-size: 1.5em;
	position: absolute;
	top: 0.9em;
	right: 0.8em;
}
.faq_list > dl.open > dt:after {
	content: '\e91b';
}
.faq_list > dl > dd {
	display: none;
	position: relative;
	padding: 0 0 0 5.5em;
}
.faq_list > dl > dd:before {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "æ¸¸ææä½", "Yu Mincho", YuMincho, serif;
	content: 'A';
	font-size: 16px;
	width: 36px;
	height: 36px;
	line-height: 0;
	border-radius: 50%;
	border: 1px solid #8e680e;
	color: #8e680e;
	letter-spacing: 0;
	position: absolute;
	top: 0;
	left: 1.8em;
}

@media only screen and (max-width: 768px) {
	.faq_list > dl > dt,
	.faq_list > dl > dd {
		padding-left: 40px;
	}
	.faq_list > dl > dt:before {
		font-size: 14px;
		width: 31px;
		height: 31px;
		top: 1.8em;
		left: 0;
	}
	.faq_list > dl > dd:before {
		font-size: 14px;
		width: 31px;
		height: 31px;
		top: 0;
		left: 0;
	}
}

/* ---------------------------------------

	SEARCH RESULT

--------------------------------------- */
.gsc-resultsHeader {
	visibility: hidden;
}
.cse .gsc-control-cse, .gsc-control-cse {
	padding: 0!important;
}

/*	result
--------------------------------------- */
.gsc-webResult.gsc-result {
	border: 1px solid transparent!important;
	border-bottom-color: #e2e2e2!important;
}
.gsc-webResult.gsc-result:hover {
	border-left-color: #8e680e!important;
}
.gsc-webResult .gsc-result {
	padding: 1.25em 0!important;
}
.gsc-result .gs-title {
	height: 1.5em!important;
}
.gsc-table-result {
	margin-bottom: 0;
}
.gsc-table-result tr {
	border-left: 1px solid #e2e2e2;
}
.gsc-table-result td {
	padding: 1em;
}

/*	pager
--------------------------------------- */
.gsc-results .gsc-cursor-box {
	margin: 0 auto!important;
	padding: 2.5em 0 0;
}
.gsc-cursor-page {
	display: inline-block!important;
	text-align: center;
	border: 1px solid #e2e2e2;
	line-height: 1;
	padding: 1em 0;
	min-width: 3em;
	height: 3em;
	background-color: transparent!important;
	position: relative!important;
	z-index: 0;
	margin-bottom: 8px;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
	background-color: #fefbed!important;
	font-weight: normal!important;
	color: #8e680e!important;
}

.gcsc-branding {
	padding: 2.5em 0 0!important;
}

/*	:hover
------------------------------------ */
.gsc-results .gsc-cursor-box .gsc-cursor-page:hover {
	text-decoration: none!important;
}
body.pc_view .gsc-cursor-page:after {
	content: "";
	width: 0;
	height: 100%;
	display: block;
	background: #fefbed;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
}

body.pc_view .gsc-cursor-page:hover:after {
	width: 100%;
}


/* ---------------------------------------

	SITEMAP

--------------------------------------- */
.cont_sitemap {
	padding-bottom: 40px;
}

.sitemap {
	letter-spacing: -1em;
	width: 100%;
}

.sitemap a {
	letter-spacing: 0.1em;
	line-height: 1.2;
}
.sitemap a:link, .sitemap a:visited { text-decoration: none; }
.sitemap .r_clm { margin-right: 0!important; }

.cont_sitemap hr {
	padding-top: calc(60px - 1.25em);
}

@media only screen and (max-width: 720px) {
.cont_sitemap hr {
	padding-top: calc(50px - 1.25em);
}
}

/* second_layer
--------------------------------------- */
.sitemap > li {
	display: inline-block;
	width: 31.1%;
	padding: 0 0 1.25em;
	margin-right: 3.4%;
	font-size: 1.125em;
}
.sitemap > li > a {
	display: block;
	overflow: hidden;
	border: 1px solid #e2e2e2;
	padding: 1em;
	position: relative;
}
.sitemap > li > a:before {
	font-family: 'sannoclc';
	content: '\e907';
}

/* third_layer
--------------------------------------- */
.sitemap > li > ul {
	padding: 0.8em 0;
}
.sitemap > li > ul li {
	position: relative;
	padding: 0.2em 0 0.2em 1.2em;
}
.sitemap > li > ul li:before {
	display: inline-block;
	letter-spacing: 0;
	content: '\30fb';
	width: 1.2em;
	text-align: center;
	position: absolute;
	top: 0.2em;
	left: 0;
}
.sitemap > li > ul li a[target="_blank"]:after {
	font-family: 'sannoclc';
	content: '\e90e';
	margin-left: 0.2em;
}

/* forth_layer
--------------------------------------- */
.sitemap > li > ul > li > ul > li {
	font-size: 0.888em;
}
.sitemap > li > ul > li li:before {
	content: '\2514';
	text-align: left;
}

/* fifth_layer
--------------------------------------- */
.sitemap > li > ul > li > ul > li > ul > li {
	font-size: 0.875em;
}

.sitemap .category {
	vertical-align: top;
}
.sitemap .category.float {
	float: left;
}

.sitemap .category > a:first-child {
	width: 100%;
	border-left: 3px solid #8e680e;
}

/*	category.double
--------------------------------------- */
.sitemap .category.double {
	width: 65.5%;
}
.sitemap .double > ul > li {
	display: inline-block;
	width: 47.5%;
	vertical-align: top;
	margin-right: 5%;
}
.sitemap .double > ul > li:nth-child(even) {
	margin-right: 0;
}

/*	category.triple
--------------------------------------- */
.sitemap .category.triple {
	width: 100%;
	margin-right: 0;
}
.sitemap .triple > ul > li {
	display: inline-block;
	width: 31%;
	vertical-align: top;
	margin-right: 3.4%;
}

.sitemap .category.triple .triple {
	width: 100%;
}

/*	other page sitemap
--------------------------------------- */
.sitemap.other {
	margin: 0 0 3em;
}
.sitemap.other > li {
	display: inline-block;
	width: 22.45%;
	font-size: 1em;
}
.sitemap.other > li:nth-child(4n) {
	margin-right: 0;
}
.sitemap.other > li > a {
	padding: 0.8em 1.125em;
}

/*	:hover
------------------------------------ */
body.pc_view .sitemap > li > a:after {
	content: "";
	width: 0;
	height: 100%;
	display: block;
	background: #fefbed;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all 0.2s ease-out;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
}
body.pc_view .sitemap > li > a:hover:after {
	width: 100%;
}

@media only screen and (max-width: 768px) {
	.sitemap > li {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	.sitemap .category.float {
		float: none;
	}
	/*	category.double,triple
	--------------------------------------- */
	.sitemap .category.double,
	.sitemap .category.triple {
		width: 100%;
		margin-right: 0;
	}
	.sitemap .category ul li,
	.sitemap .category ul li.r_clm {
		display: inline-block;
		width: 47.5%;
		margin-right: 5%!important;
	}
	.sitemap .category ul li:nth-child(even) {
		margin-right: 0!important;
	}

	/*	other page sitemap
	--------------------------------------- */
	.sitemap.other > li,
	.sitemap.other > li:nth-child(4n) {
		width: 47.5%;
		margin-right: 5%!important;
	}
	.sitemap.other > li:nth-child(even) {
		margin-right: 0!important;
	}
}

@media only screen and (max-width: 488px) {
	.sitemap .double > ul > li,
	.sitemap .triple > ul > li,
	.sitemap .category ul li,
	.sitemap .category ul li.r_clm {
		width: 100%;
		margin-right: 0;
	}

	/*	other page sitemap
	--------------------------------------- */
	.sitemap.other > li,
	.sitemap.other > li:nth-child(4n) {
		width: 100%;
		margin-right: 0;
	}
}

/* ---------------------------------------

	CLUB

--------------------------------------- */
.cont_club .main_visual {
	position: relative;
}
.cont_club .main_visual img.club_logo {
	position: absolute;
	top: -40px;
	right: -40px;
}

@media only screen and (max-width: 768px) {
	.cont_club .main_visual img.club_logo {
		width: 20%;
		top: -4vw;
		right: -4vw;
	}
}

/* ---------------------------------------

	FROM

--------------------------------------- */
/* ------------------------------------
	contact
------------------------------------ */
.form_content {
	padding: 20px 0 0;
}
#contact_form {
	padding: 0 0 40px;
}
#contact_form dl {
	width: 100%;
	padding: 20px 0 15px;
	overflow: hidden;
	position: relative;
	display: table;
	border-bottom: 1px solid #e2e2e2;
}
#contact_form dl:first-of-type {
	border-top: 1px solid #e2e2e2;
}
#contact_form dt {
	position: relative;
	font-family: "æ¸¸ã´ã·ãã¯ä½", YuGothic, "æ¸¸ã´ã·ãã¯", "Yu Gothic", sans-serif;
}
#contact_form dt,
#contact_form dd {
	display: table-cell;
	vertical-align: middle;
	word-break: break-all;
}
#contact_form dt {
	width: 35%;
	padding: 0 140px 0 0;
	font-weight: bold;
}
#contact_form dt span.require {
	margin: -0.8em 0 0 0;
	padding: 0 20px;
	color: #FFF;
	font-size: 0.7em;
	display: inline-block;
	vertical-align: middle;
	background: #f75d00;
	border-radius: 3px;
	position: absolute;
	top: 50%;
	right: 60px;
}
#contact_form input[type="text"] {
	width: 100%;
	margin: 0 0 5px;
	outline: 0;
	font-size: 16px;
}
#contact_form select {
	margin: 0 0 5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	outline: 0;
}
#contact_form textarea {
	width: 100%;
	margin: 0 0 5px;
	min-height: 225px;
	margin: 0;
	vertical-align: bottom;
	resize: vertical;
	outline: 0;
}
#contact_form textarea.heightMid {
	min-height: 160px;
}
#contact_form input.text_small {
	width: 20%;
}
#contact_form input.text_medium {
	width: 60%;
}
#contact_form input[type="checkbox"],
#contact_form input[type="radio"] {
	padding: 0 0 10px;
	vertical-align:middle;
}
#contact_form label {
	display: block;
	overflow: hidden;
	word-break: break-all;
}
#contact_form input,
#contact_form select,
#contact_form textarea {
	padding: 15px 15px 15px 20px;
	font-size: 15px;
	border: 1px solid #e2e2e2;
}
#contact_form dd p,
#contact_form dd ul {
	padding: 0 0 5px;
}
#contact_form dd .wpcf7-radio > span {
	margin: 0;
	padding: 0 10px 0 0;
	display: inline-block;
	overflow: hidden;
}
/* -- ERROR -- */
#contact_form .wpcf7-not-valid-tip {
	color: #f75d00;
	font-size: 0.875em;
}

#contact_form .wpcf7-response-output {
	width: 100%;
	margin: 0 0 2em;
	padding: 1.5em;
	border: 2px solid #f75d00;
	background: #fee7d9;
}

#contact_form .wpcf7-response-output.wpcf7-mail-sent-ok {
	border: 2px solid #009944;
	background: #e5f5ec;
}

#contact_form .policy_box {
	padding: 60px 0 0;
}
#contact_form .policy_box h2 {
	margin: 0 0 20px;
	border-bottom: none;
}
#contact_form .button_area {
	text-align: center;
	font-size: 0;
}
#contact_form .button_area li {
	margin: 0 20px;
	display: inline-block;
	overflow: hidden;
	font-size: 16px;
}
#contact_form .button_area li input {
	width: 240px;
	padding: 15px 10px;
	display: inline-block;
	overflow: hidden;
	cursor: pointer;
	color: #ffffff;
	font-size: 1em;
	text-decoration: none;
	background: #017b37;
	border: 0;
	transition: all 0.3s ease-out;
}
/* -- PC Hover -- */
@media only screen and (min-width: 720px) {
	body.pc_view #contact_form .button_area li input:hover {
		opacity: 0.7;
	}
}

@media only screen and (max-width: 720px) {
	#contact_form dl {
		width: 100%;
		overflow: hidden;
		display: block;
	}
	#contact_form dt,
	#contact_form dd {
		display: block;
	}
	#contact_form dt {
		width: 100%;
		padding: 0 4em 1em 0;
		position: relative;
		font-weight: bold;
	}
	#contact_form dt small {font-size: 1rem;}
	#contact_form dt span.require {
		margin: -0.8em 0 0 0;
		padding: 0 10px;
		color: #FFF;
		font-size: 0.7em;
		display: inline-block;
		vertical-align: middle;
		background: #f75d00;
		border-radius: 3px;
		position: absolute;
		top: 10px;
		right: 0;
	}
	#contact_form input.text_small {
		width: 60%;
	}
	#contact_form input.text_medium {
		width: 100%;
	}
}


/* =====================================
	:hover Opacity Elements
===================================== */
body.pc_view #breadcrumb a:hover,
body.pc_view .info_area a:hover,
body.pc_view .sitemap > li ul a:hover {
	opacity: 0.65;
}

/* =====================================
	ClearFixElements
===================================== */
.parts_wrap:after,
.pager:after,
.news_pager:after,
.sitemap:after,
#news_archive .cont_base_wrap:after {
	content: " ";
	display: block;
	clear: both;
}


/* =====================================
	Arrow
===================================== */

.triangle-down {
  width: 0;
  height: 0;
  margin: auto; 
  margin-top: -0.5em;	
  padding-top: 1.5em;	
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #8e680e; /* ä¸è§å½¢ã®è² */
}

/* =====================================
	å±±çã¡ãã£ã«ã«ã»ã³ã¿ã¼ã«ã¤ãã¦ï¼guidance.htmlï¼
===================================== */
@media only screen and (max-width: 768px) {
	.second_layer .main_visual .title.long h1.h1_small{
		font-size: 20px;
	}
}

@media only screen and (min-width: 769px) {
	.second_layer .main_visual .title.long h1.h1_small{
		font-size: 1.9vw;
	}
}
