@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&family=Roboto:wght@300;400;500;700;900&display=swap');
/***********************************************************
bass
************************************************************/
.pcNone {
	display: none;
}
@media screen and (max-width:740px) {
	.pcNone {
		display: inline-block;
	}
}	
.warp {
  width: 1024px;
	min-width: 1024px;
  margin: 0 auto;
}
@media screen and (max-width:740px) {
	.warp {
		width: 100%;
		min-width: 100%;
		padding: 0 20px;
	}
}	
main {
	width: 100%;
	min-width: 1024px;
	margin-top: 90px;
}
@media screen and (max-width:740px) {
	main {
		min-width: 100%;
		margin-top: 55px;
	}
}
.contents {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	.contents {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
/* --------- リンクボタン --------- */
.link-blue {
	position: relative;
	color: var(--white);
  background-color: var(--keycolor);
	border: 1px solid var(--keycolor);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.4;
	min-height: 70px;
	width: 420px;
	border-radius: 35px;
	padding: 15px 2em;
}
@media screen and (max-width:740px) {
	.link-blue {
		min-height: 50px;
		width: 100%;
		font-size: 1.4rem;
	}
}
.link-blue.hover {
	color: var(--keycolor);
  background-color: var(--white);
}
.link-blue.arrow::after {
	display: block;
	position: absolute;
	content: "";
	right: 30px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--white);
}
.link-blue.arrow.hover::after {
	right: 25px;
	border-color: transparent transparent transparent var(--keycolor);
}
@media screen and (max-width:740px) {
	.link-blue.arrow::after {
		right: 25px;
	}
	.link-blue.arrow.hover::after {
		right: 20px;
	}
}
.link-blue svg {
	position: absolute;
	right: 20px;
	fill: var(--white);
}
.link-blue.hover svg {
	fill: var(--keycolor);
}
.link-blue img {
	position: absolute;
	right: 30px;
}
.link-blue.hover img {
	filter: brightness(120%);
}
@media screen and (max-width:740px) {
	.link-blue img {
		width: auto;
		right: 20px;
	}
}
.link-white {
	position: relative;
	color: var(--keycolor);
  background-color: var(--white);
	border: 1px solid var(--keycolor);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.4;
	min-height: 70px;
	width: 420px;
	border-radius: 35px;
	padding: 15px 2em;
}
@media screen and (max-width:740px) {
	.link-white {
		min-height: 50px;
		width: 100%;
		font-size: 1.4rem;
	}
}
.link-white.hover {
	color: var(--white);
  background-color: var(--keycolor);
}
.link-white.arrow::after {
	display: block;
	position: absolute;
	content: "";
	right: 30px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--keycolor);
}
.link-white.arrow.hover::after {
	right: 25px;
	border-color: transparent transparent transparent var(--white);
}
@media screen and (max-width:740px) {
	.link-white.arrow::after {
		right: 25px;
	}
	.link-white.arrow.hover::after {
		right: 20px;
	}
}
.link-white svg {
	position: absolute;
	right: 20px;
	fill: var(--keycolor);
}
.link-white.hover svg {
	fill: var(--white);
}
.link-white img {
	position: absolute;
	right: 30px;
}
.link-white.hover img {
	filter: brightness(120%);
}
@media screen and (max-width:740px) {
	.link-white img {
		width: auto;
		right: 20px;
	}
}
.link-return {
	position: relative;
	color: var(--white);
  background-color: var(--black);
	border: 1px solid var(--black);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	height: 50px;
	width: 300px;
	border-radius: 25px;
	margin: 0 auto;
}
@media screen and (max-width:740px) {
	.link-returne {
		height: 50px;
		width: 100%;
		font-size: 1.4rem;
	}
}
.link-return.hover {
	color: var(--black);
  background-color: var(--white);
}
.link-return::after {
	display: block;
	position: absolute;
	content: "";
	left: 20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--white);
	transform: rotate(180deg);
}
.link-return.hover::after {
	left: 15px;
	border-color: transparent transparent transparent var(--black);
}

/* --------- #header --------- */
#header {
	position: fixed;
	display: flex;
	justify-content: space-between;
  width: 100%;
	min-width: 1024px;
  height: 90px;
	top: 0;
	left: 0;
	z-index: 1000;
	background-color: var(--white);
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	box-shadow: 0px 6px 10px -6px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width:1160px) {
	.open #header {
		background-color: var(--keycolor);
		box-shadow: 0px 6px 10px -6px rgb(49, 127, 157, 1);
	}
}
@media screen and (max-width:740px) {
	#header {
		height: 55px;
		width: 100%;
	}
	.open #header {
		background-color: var(--keycolor);
	}
}
#header .logo {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	max-width: 362px;
	margin: 8px 0 12px 28px;
	
}
@media screen and (max-width:1320px) {
	#header .logo {
		margin: 0 15px 0 10px;
	}
}
@media screen and (max-width:1160px) {
	#header .logo {
		margin: 10px 0 10px 28px;
	}
	#header .logo img {
		transition: all 0.3s;
	}
	.open #header .logo img {
		filter: brightness(0) invert(1);
	}
}
@media screen and (max-width:740px) {
	#header .logo {
		width: calc(100% - 65px);
		margin: 4px 0 6px 10px;
	}
	#header .logo a {
		width: calc(100% - 65px);
		display: block;
	}
	#header .logo img {
		width: 100%;
		transition: all 0.3s;
	}
	.open #header .logo img {
		filter: brightness(0) invert(1);
	}
}	
#header .logo img {
	max-width: 273px;
	min-width: 220px;
	width: 100%;
}
@media screen and (max-width:740px) {
	#header .logo img {
		min-width: auto;
		width: auto;
		height: 25px;
	}
}
#header .logo span {
	font-size: 1.1rem;
	margin-bottom: 9px;
	line-height: 1.2;
	transition: all 0.3s;
}
@media screen and (max-width:1320px) {
	#header .logo span {
		font-size: 0.8rem;
		margin-bottom: -10px;
	}
}
@media screen and (max-width:1160px) {
	#header .logo span {
		display: inline-block;
		font-size: 1.0rem;
	}
	.open #header .logo span {
		color: var(--white);
	}
}
@media screen and (max-width:740px) {
	#header .logo span {
		display: inline-block;
		font-size: 1.0rem;
		transform: scale(0.9);
		transform-origin:0 0;
		word-break: keep-all;
		margin-bottom: -2px;
	}
	.open #header .logo span {
		color: var(--white);
	}
}
/* --------- #footer --------- */
#footer {
	background-color: #F7F7F7;
	padding: 50px 0 0;
}
@media screen and (max-width:740px) {
	#footer {
		text-align: center;
		padding-top: 40px;
	}
	#footer.top {
		padding-bottom: 50px;
	}
}
#footer p {
	margin-bottom: 20px;
}
#footer p br {
	display: none;
}
@media screen and (max-width:740px) {
	#footer p br {
		display: inline-block;
	}
}
#footer dl {
	display: flex;
	align-items: center;
	line-height: 1.5;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	#footer dl {
		display: inline-block;
	}
}
#footer dl dt {
	margin-right: 20px;
}
@media screen and (max-width:740px) {
	#footer dl dt {
		margin: 0 0 40px 0;
	}
	#footer dl dt img {
		width: auto;
	}
}
#footer dl dd {
	font-size: 1.7rem;
}
#footer dl dd br:not(:first-of-type) {
	display: none;
}
@media screen and (max-width:740px) {
	#footer dl dd {
		font-size: 1.5rem;
	}
	#footer dl dd br:not(:first-of-type) {
		display: inline-block;
	}
}
#footer ul {
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
	margin-bottom: 35px;
}
@media screen and (max-width:740px) {
	#footer ul {
		margin-bottom: 30px;
	}
}
#footer ul li a {
	font-size: 1.2rem;
	padding: 0 2em;
	border-left: 1px solid var(--black);
}
#footer ul li:last-of-type a {
	border-right: 1px solid var(--black);
}
#footer ul li a.hover {
	text-decoration: underline;
}
#footer small {
	background-color: var(--white);
	text-align: center;
	display: block;
	width: 100%;
	line-height: 1;
	padding: 40px 0 30px;
}
@media screen and (max-width:740px) {
	#footer small {
		padding: 20px 0 30px;
	}
}
/* --------- #navtoggle --------- */
#navtoggle {
	display: none;
}
@media screen and (max-width:1160px) {
	#navtoggle {
		display: block;
		position: fixed;
		right: 0;
		top: 0;
		width: 90px;
		height: 90px;
		cursor: pointer;
		z-index: 1001;
		background-color: var(--keycolor);
	}
	#navtoggle span {
		display: block;
		position: absolute;
		height: 4px;
		width: 50%;
		margin: 0 25%;
		background: var(--white);
		left: 0;
		transition: all 0.6s;
	}
	#navtoggle span:nth-child(1) {
		top: 29px;
	}
	#navtoggle span:nth-child(2) {
		top: 42px;
	}
	#navtoggle span:nth-child(3) {
		top: 55px;
	}
	/* #nav-toggle 切り替えアニメーション */
	.open #navtoggle div {
		border: none;
	}
	.open #navtoggle span {
		background: var(--white);
	}
	.open #navtoggle span:nth-child(1) {
		top: 42px;
		width: 50%;
		margin: 0 25%;
		transform: rotate(135deg);
	}
	.open #navtoggle span:nth-child(2) {
		visibility: hidden;
		opacity: 0;
	}
	.open #navtoggle span:nth-child(3) {
		top: 42px;
		width: 50%;
		margin: 0 25%;
		transform: rotate(-135deg);
	}
}
@media screen and (max-width: 740px) {
	#navtoggle {
		width: 55px;
		height: 55px;
	}
	#navtoggle span {
		height: 2px;
	}
	#navtoggle span:nth-child(1) {
		top: 19px;
	}
	#navtoggle span:nth-child(2) {
		top: 27px;
	}
	#navtoggle span:nth-child(3) {
		top: 35px;
	}
	.open #navtoggle span {
		background: var(--white);
	}
	.open #navtoggle span:nth-child(1) {
		top: 27px;
	}
	.open #navtoggle span:nth-child(3) {
		top: 27px;
	}
}
/* --------- #gnav --------- */
#gnav {
	height: 100%;
	width: 990px;
	background-color: var(--white);
}
@media screen and (max-width:1160px) {
	#gnav {
		visibility: hidden;
		opacity: 0;
		width: 100%;
		height: calc(100vh - 50px);
		display: block;
		position: fixed;
		left: 0;
		top: 89px;
		margin: 0;
		overflow: auto;
		transition: opacity 0.2s ease, visibility 0s ease;
		background-color: var(--keycolor);
	}
	#gnav.open {
		visibility: visible;
		opacity: 1;
	}
}
@media screen and (max-width:740px) {
	#gnav {
		top: 55px;
	}
}
#gnav ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100%;
	width: auto;
}
@media screen and (max-width:1160px) {
	#gnav ul {
		display: block;
		height: auto;
		width: 100%;
		padding: 0;
		margin-top: 20px;
	}
}
#gnav li {
	height: 100%;
}
#gnav li a {
	display: flex;
	height: 100%;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	white-space: nowrap;
	font-size: 1.5rem;
	line-height: 1.4;
	padding: 18px .5em;
}
#gnav li a.hover,
#gnav li a.current {
	color: var(--white);
	background-color: var(--keycolor);
}
#gnav li:nth-last-of-type(2),#gnav li.member-btn {
	display: flex;
	height: 100%;
	align-items: center;
}
#gnav li:nth-last-of-type(2) {
    padding: 0 1em;
}
#gnav li:nth-last-of-type(2) a,#gnav li.member-btn a  {
	height: 40px;
	width: 90px;
	border-radius: 6px;
	border: 1px solid var(--keycolor);
	color:  var(--keycolor);
	padding: 0;
	line-height: 1;
}
#gnav li:nth-last-of-type(2) a.hover,
#gnav li:nth-last-of-type(2) a.current,
#gnav li.member-btn a.hover,
#gnav li.member-btn a.current{
	color:  var(--white);
}
#gnav li:last-of-type a {
	color: var(--white);
	background-color: var(--keycolor);
	border: 1px solid var(--keycolor);
}
#gnav li:last-of-type a.hover {
	color: var(--keycolor);
	background-color: var(--white);
}
#gnav li:last-of-type a svg {
	fill: var(--white);
}
#gnav li:last-of-type a.hover svg {
	fill: var(--keycolor);
}
#gnav li:nth-last-of-type(2) a.current,#gnav li.member-btn a.current {
	color:  var(--white);
}
#gnav li.member-btn {
    padding: 0 0 0 1em;
}

/*
#gnav li:last-of-type a.current {
	color: var(--keycolor);
	background-color: var(--white);
}
#gnav li:last-of-type a.current svg {
	fill: var(--keycolor);
}
*/
@media screen and (max-width:1160px) {
	#gnav li a {
		position: relative;
		justify-content: flex-start;
		font-size: 1.8rem;
		padding: 10px 1em;
		margin: 0 1.5rem;
		color: var(--white);
		border-bottom: 1px solid #69A0B5;
	}
	#gnav li a::after {
		display: block;
		position: absolute;
		content: "";
		right: 1em;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 7px 0 7px 10px;
		border-color: transparent transparent transparent var(--white);
	}
	#gnav li a.hover,
	#gnav li a.current {
		color: var(--keycolor);
		background-color: var(--white);
	}
	#gnav li a.hover::after,
	#gnav li a.current::after {
		border-color: transparent transparent transparent var(--keycolor);
	}
	#gnav li:first-child a {
		border-top: 1px solid #69A0B5;
	}
	#gnav li:nth-last-of-type(2),#gnav li.member-btn {
		display: flex;
		height: 100%;
		align-items: center;
		padding: 0;
	}
    #gnav li:nth-last-of-type(2) {
        margin-top: 10px;
    }
    #gnav li.member-btn {
        margin-top: 30px;
    }
	#gnav li:nth-last-of-type(2) a,#gnav li.member-btn a {
		height: 50px;
		width: 100%;
		border-color: var(--white);
		color:  var(--white);
		padding: 0 1em;
	}
	#gnav li:nth-last-of-type(2) a.hover,
	#gnav li:nth-last-of-type(2) a.current,
    #gnav li.member-btn a.hover,
	#gnav li.member-btn a.current{
		color: var(--keycolor);
		background-color: var(--white);
	}
	#gnav li:last-of-type a {
		color: var(--keycolor);
		background-color: var(--white);
		border-color: var(--white);
		height: 50px;
		border-radius: 6px;
		margin-top: 20px;
	}
	#gnav li:last-of-type a.hover {
		color: var(--white);
		background-color: var(--keycolor);
	}
	#gnav li:last-of-type a svg {
		fill: var(--keycolor);
		margin-right: 1em;
	}
	#gnav li:last-of-type a.hover svg {
		fill: var(--white);
	}
}

#gnav li a span {
	font-size: 1.1rem;
	font-family: var(--enfont);
}
@media screen and (max-width:1160px) {
	#gnav li a span {
		font-size: 1.3rem;
		width: 100%;
		display: block;
	}
}
/* --------- #breadcrumb --------- */
#breadcrumb {
	position: relative;
}
#breadcrumb ol {
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 20px 0 0;
}
@media screen and (max-width:740px) {
	#breadcrumb {
		position: absolute;
		top: 0;
		height: auto;
	}
	#breadcrumb ol {
		padding: 6px;
		font-size: 1.0rem;
	}
}
#breadcrumb ol li {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	font-size: 1.2rem;
	color: var(--white);
}
#breadcrumb ol li a {
	color: var(--white);
}
#breadcrumb ol li a.hover {
	text-decoration: underline;
}
@media screen and (max-width:740px) {
	#breadcrumb ol li a {
		font-size: 1.0rem;
	}
}
#breadcrumb ol li:not(:last-of-type)::after{
	display: inline-block;
	content: "";
	width: 0.5em;
	height: 0.5em;
	margin: 1px 0.6em 0;
	border-top: 1px solid var(--white);
	border-right: 1px solid var(--white);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* --------- #各ページ下部CONTACT --------- */
#inquiry {
	position: relative;
	height: 485px;
	width: 100%;
	padding: 70px 0 90px;
}
#inquiry.underlayer {
	padding-top: 0;
}
@media screen and (max-width:740px) {
	#inquiry {
		height: 375px;
		padding: 55px 0 80px;
	}
}
#inquiry figure {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
}
#inquiry figure::after {
	content: "";
  display: block;
	position: absolute;
	height: 100%;
	width: 100%;
  background: var(--keycolor);
	mix-blend-mode:multiply;
}
#inquiry figure img {
	height: auto;
	min-height: 300px;
	width: 100%;
	min-width: 1440px;
}
@media screen and (max-width:740px) {
	#inquiry figure img {
		height: 375px;
		min-height: 375px;
		width: auto;
		min-width: auto;
	}
}
#inquiry p {
	position: relative;
	display: block;
	text-align: center;
	color: var(--white);
	font-weight: bold;
	line-height: 1;
	padding-bottom: 60px;
}
#inquiry p:first-of-type {
	font-size: 3.7rem;
}
@media screen and (max-width:740px) {
	#inquiry p:first-of-type {
		font-size: 2.3rem;
		padding-bottom: 30px;
	}
}
#inquiry p:first-of-type strong {
	display: block;
	color: #6DB1CC;
	text-align: center;
	font-family: var(--enfont);
	font-size: 6.0rem;
	padding-bottom: 30px;
}
@media screen and (max-width:740px) {
	#inquiry p:first-of-type strong {
		font-size: 3.1rem;
		padding-bottom: 10px;
	}
}
#inquiry p:last-of-type {
	font-size: 1.8rem;
	font-weight: normal;
	padding-bottom: 50px;
}
#inquiry p:last-of-type br {
	display: none;
}
@media screen and (max-width:740px) {
	#inquiry p:last-of-type {
		font-size: 1.5rem;
		line-height: 2;
		margin: auto;
	}
	#inquiry p:last-of-type br {
		display: inline-block;
	}
}
#inquiry .link-white {
	margin: 0 auto;
}
#inquiry .link-white.hover {
	border-color: var(--white);
}
@media screen and (max-width:740px) {
	#inquiry .link-white {
		width: calc(100% - 40px);
	}
}
/* --------- #linkfirstaid --------- */
#linkfirstaid {
	position: fixed;
	right: 0;
	top: 380px;
	cursor: pointer;
	display: block;
	z-index: 5;
}
@media screen and (max-width:740px) {
	#linkfirstaid {
		top: inherit;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 50px;
	}
}
#linkfirstaid a {
	display: block;
	width: 180px;
	height: 185px;
	padding: 10px;
	background-color: var(--white);
	border-radius: 8px 0 0 8px;
	color: var(--keycolor);
	font-size: 1.7rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.3;
	box-shadow: 0px 3px 10px 2px rgb(0 0 0 / 16%);
}
@media screen and (max-width:740px) {
	#linkfirstaid a {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		padding: 8px;
		font-size: 1.5rem;
		border-radius: 0;
		box-shadow: 0px 3px 8px 4px rgb(0 0 0 / 20%);
	}
	#linkfirstaid a::after {
    display: block;
    position: absolute;
    content: "";
    right: 30px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 9px;
    border-color: transparent transparent transparent var(--keycolor);
	}
	#linkfirstaid a.hover::after {
    right: 25px;
    border-color: transparent transparent transparent var(--white);
	}
	#linkfirstaid a br {
		display: none;
	}
}
#linkfirstaid a.hover {
	background-color: var(--keycolor);
	color: var(--white);
	box-shadow: 0px 0px 1px 1px rgb(255 255 255 / 100%);
}
#linkfirstaid a img {
	margin-bottom: 5px;
}
#linkfirstaid a.hover img {
	filter: brightness(130%);
}
@media screen and (max-width:740px) {
	#linkfirstaid a img {
		display: none;
	}
}
/* --------- #各ページタイトルビジュアル --------- */
#title {
	position: relative;
	height: 300px;
	width: 100%;
}
@media screen and (max-width:740px) {
	#title {
		height: 150px;
	}
}
#title figure {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
}
#title figure::after {
	content: "";
  display: block;
	position: absolute;
	height: 100%;
	width: 100%;
  background: var(--keycolor);
	mix-blend-mode:multiply;
}
#title figure img {
	height: auto;
	min-height: 300px;
	width: 100%;
	min-width: 1440px;
}
@media screen and (max-width:740px) {
	#title figure img {
		height: 150px;
		min-height: 150px;
		width: auto;
		min-width: auto;
	}
}
#title h1,
#title p {
	position: relative;
	color: var(--white);
	text-align: center;
	font-weight: bold;
}
#title h1 {
	padding-top: 1em;
	font-size: 4.2rem;
}
@media screen and (max-width:740px) {
	#title h1 {
		font-size: 2.8rem;
	padding-top: 1.5em;
	}
}
#title p {
	font-family: var(--enfont);
	font-size: 2.7rem;
}
@media screen and (max-width:740px) {
	#title p {
		font-size: 1.7rem;
	}
}
.underlayer_ttl {
	color: var(--keycolor);
	font-size: 3.5rem;
	font-weight: bold;
	background-color: var(--blue);
	height: 190px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-bottom: 80px;
	padding: 20px;
}
@media screen and (max-width:740px) {
	.underlayer_ttl {
		font-size: 2.3rem;
		height: auto;
		min-height: 100px;
		padding: 10px 20px;
		margin-bottom: 40px;
	}
}
.underlayer_ttl span {
	width: 100%;
	color: var(--black);
	font-size: 1.5rem;
	font-weight: normal;
	display: flex;
	justify-content: center;
	margin-top: -50px;
}
@media screen and (max-width:740px) {
	.underlayer_ttl span {
		margin-top: 10px;
		justify-content: flex-start;
	}
}
/* --------- #各サブタイトル --------- */
.subttl {
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 1.34;
	width: 100%;
	padding: 14px 1em;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	color: var(--white);
  background-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.subttl {
		font-size: 1.9rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.subttl.reserve {
	margin-top: 80px;
}
@media screen and (max-width:740px) {
	.subttl.reserve {
		margin-top: 40px;
	}
}
.subheading {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.34;
	width: 100%;
	padding: 12px 30px;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
  background-color: var(--blue);
	border-left: 10px solid var(--keycolor);
}
@media screen and (max-width:740px) {
	.subheading {
		font-size: 1.7rem;
		padding: 10px 15px;
		margin-bottom: 20px;
	}
}


/* --------- #pagetop --------- */
#pagetop {
	position: fixed;
	right: 30px;
	bottom: 58px;
	cursor: pointer;
	display: block;
	height: 50px;
	width: 50px;
	border-radius: 50px;
	border: 1px solid var(--white);
	background-color: var(--keycolor);
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	z-index: 10;
}
#pagetop.hover {
	border-color: var(--keycolor);
	background-color: var(--white);
}
#pagetop::after {
	display: block;
	position: absolute;
	content: "";
	top: 19px;
	right: 20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--white);
	transform:rotate(-90deg);
}
#pagetop.hover::after {
	border-color: transparent transparent transparent var(--keycolor);
}
@media screen and (max-width:740px) {
	#pagetop {
		height: 40px;
		width: 40px;
		right: 8px;
		bottom: 60px;
	}
	#pagetop::after {
		top: 14px;
		right: 15px;
	}
}
/* --------- .pager  --------- */
.pager {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 40px 0 40px;
}
@media screen and (max-width:740px) {
	.pager {
		margin: 30px 0 30px;
	}
}
.pager li {
	margin: 0 5px;
}
@media screen and (max-width:740px) {
	.pager li {
		margin: 0 4px 4px;
	}
}
.pager li a {
	display: table-cell;
	width: 40px;
	height: 40px;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #C6C6C6;
	background-color: var(--white);
}
@media screen and (max-width:740px) {
	.pager li a {
		width: 28px;
		height: 28px;
	}
}
.pager li a.hover {
	color: var(--white);
	background-color: var(--keycolor);
	border-color: var(--keycolor);
	text-decoration: none;
}
.pager li .link_before,
.pager li .link_next {
	font-size: 2.5rem;
	padding-bottom: 6px;
}
@media screen and (max-width:740px) {
	.pager li .link_before,
	.pager li .link_next {
		font-size: 2.0rem;
		padding-bottom: 4px;
	}
}
.pager li .current_page {
	display: table-cell;
	width: 40px;
	height: 40px;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	color: var(--white);
	background-color: var(--keycolor);
	border-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.pager li .current_page {
		width: 28px;
		height: 28px;
	}
}


/* ================================================
	message
================================================== */
#message {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	#message {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
#message h1 {
	font-size: 3.5rem;
	font-weight: bold;
	margin-bottom: 70px;
}
@media screen and (max-width:740px) {
	#message h1 {
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
}
#message section {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#message section div {
	width: 570px;
}
@media screen and (max-width:740px) {
	#message section div {
		width: 100%;
	}
}
#message section div p:not(:last-of-type) {
	padding-bottom: 2em;
}
@media screen and (max-width:740px) {
	#message section div p:last-of-type {
		padding-bottom: 2em;
	}
}
#message section figure {
	text-align: right;
}
#message section figure figcaption {
	margin-top: 28px;
}
@media screen and (max-width:740px) {
	#message section figure figcaption {
		margin-top: 15px;
	}
	#message section figure figcaption img {
		width: auto;
	}
}
#message .link-blue {
	margin: 80px auto 0;
}
@media screen and (max-width:740px) {
	#message .link-blue {
		margin-top: 30px;
	}
}
/* ================================================
	medical-info
================================================== */
#medical {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	#medical {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.medica-linfo {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 100px;
}
.medica-linfo div {
	width: 570px;
}
@media screen and (max-width:740px) {
	.medica-linfo div {
		width: 100%;
	}
}
.medica-linfo div h1 {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 1em;
}
@media screen and (max-width:740px) {
	.medica-linfo div h1 {
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
}
.medica-linfo div p:first-of-type {
	margin-bottom: 2em;
}
@media screen and (max-width:740px) {
	.medica-linfo div p:first-of-type,
	.medica-linfo div p:last-of-type {
		margin-bottom: 1em;
	}
}
.medica-linfo div > ul {
	padding-bottom: 1em;
}
.medica-linfo div ul li {
	position: relative;
	color: var(--keycolor);
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.2;
	padding: 0 0 8px 1em
}
@media screen and (max-width:740px) {
	.medica-linfo div ul li {
		font-size: 1.8rem;
	}
}
.medica-linfo div ul li::before {
	position: absolute;
	content: "";
	width: 15px;
	height: 3px;
	background-color: var(--keycolor);
	left: 0;
	top: 15px;
}
@media screen and (max-width:740px) {
	.medica-linfo div ul li::before {
		width: 10px;
		height: 3px;
		top: 9px;
	}
}
.medica-linfo div ul li ul {
	padding-top: 10px;
}
.medica-linfo div ul li ul li {
	position: relative;
	color: var(--black);
	font-size: 1.5rem;
	font-weight: normal;
	line-height: 1.2;
	padding: 0 0 5px 1em;
	text-indent: -1em;
}
.medica-linfo div ul li ul li::before {
	content: none;
}
.new::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 40px solid #f00;
  border-right: 40px solid transparent;
	z-index: 1;
}
.new::after {
  content: "NEW";
  position: absolute;
  top: 1.5px;
  left: 1.5px;
	color: var(--white);
	font-family: var(--enfont);
	font-size: 1.2rem;
	font-weight: bold;
	transform: rotate(-40deg);
	z-index: 1;
}
.medica-linfo_new {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 80px;
}
@media screen and (max-width:740px) {
	.medica-linfo_new {
		margin-bottom: 40px;
	}
}
.medica-linfo_new li {
	position: relative;
	width: 234px;
	margin-right: 29px;
	overflow: hidden;
}
.medica-linfo_new li:last-of-type {
	margin-right: 0;
}
@media screen and (max-width:740px) {
	.medica-linfo_new li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
    .medica-linfo_new li div {
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
    }
}
.medica-linfo_new li figure {
	border: 1px solid #B7B7B7;
	overflow: hidden;
    width: 234px;
    height: 171px;
}
@media screen and (max-width:740px) {
    .medica-linfo_new li figure {
        min-width: 100px;
        width: 100px;
        height: 72px;
        margin-right: 10px;
    }
}
.medica-linfo_new li figure img {
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.medica-linfo_new li p {
	line-height: 1.5;
	margin-top: 12px;
	padding-left: 10px;
	border-left: 7px solid var(--black);
}
@media screen and (max-width:740px) {
    .medica-linfo_new li p {
        width: calc( 100% - 110px );
        margin: 0;
        font-size: 1.5rem;
        line-height: 2rem;
    }
}
.medica-linfo_new li.cata01 p {
	border-left-color: var(--catcolor01);
}
.medica-linfo_new li.cata02 p {
	border-left-color: var(--catcolor02);
}
.medica-linfo_new li.cata03 p {
	border-left-color: var(--catcolor03);
}
.medica-linfo_new li.cata04 p {
	border-left-color: var(--catcolor04);
}
.medica-linfo_new li.cata05 p {
	border-left-color: var(--catcolor05);
}
.medica-linfo_new li.cata06 p {
	border-left-color: var(--catcolor06);
}
.medica-linfo_new li.cata07 p {
	border-left-color: var(--catcolor07);
}
.medica-linfo_new li p time {
	display: block;
	color: #6A6A6A;
	line-height: 1;
	font-size: 1.5rem;
	padding: 3px 0;
}
@media screen and (max-width:740px) {
    .medica-linfo_new li p time {
        position: absolute;
        bottom: 5px;
        right: 0;
    }
}
.medica-linfo_new li a.hover figure {
	border-color: var(--keycolor);
}
.medica-linfo_new li a.hover img {
	filter: brightness(120%);
	transform: scale(1.05);
}
.medica-linfo_new li a.hover p {
	color: var(--keycolor); 
	border-left-color: var(--keycolor);
}
.medica-linfo_cata {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	.medica-linfo_cata {
		margin-bottom: 30px;
	}
}
.medica-linfo_cata li {
	width: 496px;
	height: 280px;
	margin-bottom: 30px;
}
.medica-linfo_cata li:last-of-type {
	margin-bottom: 0;
}
@media screen and (max-width:740px) {
	.medica-linfo_cata li {
		width: 100%;
		height: auto;
		min-height: 64px;
		margin-bottom: 15px;
	}
}
.medica-linfo_cata li a {
	display: block;
	width: 100%;
	height: 100%;
	background-color: #F8F8F8;
	border-bottom: 3px solid var(--black);
	box-shadow: 0px 2px 6px 0px rgb(0 0 0 / 16%);
}
.medica-linfo_cata li.cata01 a {
	border-bottom-color: var(--catcolor01);
}
.medica-linfo_cata li.cata02 a {
	border-bottom-color: var(--catcolor02);
}
.medica-linfo_cata li.cata03 a {
	border-bottom-color: var(--catcolor03);
}
.medica-linfo_cata li.cata04 a {
	border-bottom-color: var(--catcolor04);
}
.medica-linfo_cata li.cata05 a {
	border-bottom-color: var(--catcolor05);
}
.medica-linfo_cata li.cata06 a {
	border-bottom-color: var(--catcolor06);
}
.medica-linfo_cata li.cata07 a {
	border-bottom-color: var(--catcolor07);
}
@media screen and (max-width:740px) {
	.linfo_cata li {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 30px;
	}
    .medica-linfo_cata div {
        display: flex;
    }
}
.medica-linfo_cata li figure {
	overflow: hidden;
}
@media screen and (max-width:740px) {
    .medica-linfo_cata div figure {
        width: 100px;
    }
    .medica-linfo_cata div figure img {
        height: 100%;
        width: -webkit-fill-available;
        object-fit: cover;
    }
    .medica-linfo_cata .cata04 div figure img {
        object-position: 30% 0;
    }
}
.medica-linfo_cata li p {
	position: relative;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	padding-top: 15px;
	text-align: center;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.medica-linfo_cata li p::before {
	position: absolute;
	content: "";
	top: 38px;
	right: 18px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #8E8E8E;
	border-right: 1px solid #8E8E8E;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
@media screen and (max-width:740px) {
	.medica-linfo_cata li p {
		width: 100%;
        font-size: 1.5rem;
        line-height: 2rem;
        text-align: left;
        padding: 10px 30px 15px 15px;
	}
    .medica-linfo_cata li p::before {
        top: 50%;
        right: 10px;
        margin-top: -5px;
    }
}
.medica-linfo_cata li p span {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 1.3rem;
	padding-top: 4px;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
@media screen and (max-width:740px) {
    .medica-linfo_cata li p span {
        font-size: 1rem;
        text-align: left;
        line-height: 1.2rem;
    }
}
.medica-linfo_cata li.cata01 p span {
	color: var(--catcolor01);
}
.medica-linfo_cata li.cata02 p span {
	color: var(--catcolor02);
}
.medica-linfo_cata li.cata03 p span {
	color: var(--catcolor03);
}
.medica-linfo_cata li.cata04 p span {
	color: var(--catcolor04);
}
.medica-linfo_cata li.cata05 p span {
	color: var(--catcolor05);
}
.medica-linfo_cata li.cata06 p span {
	color: var(--catcolor06);
}
.medica-linfo_cata li.cata07 p span {
	color: var(--catcolor07);
}
.medica-linfo_cata li a.hover {
	border-bottom-color: var(--keycolor);
	box-shadow: 0px 0px 0px 1px var(--keycolor);
}
.medica-linfo_cata li a.hover img {
	filter: brightness(120%);
	transform: scale(1.05);
}
.medica-linfo_cata li a.hover p {
	color: var(--keycolor);
}
.medica-linfo_cata li a.hover p::before {
	right: 10px;
	border-top-color: var(--keycolor);
	border-right-color: var(--keycolor);
}
.medica-linfo_cata li a.hover p span {
	color: var(--keycolor);
}
.medica-linfo_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	.medica-linfo_link {
		margin-bottom: 30px;
	}
}
.medica-linfo_link li {
	width: 497px;
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.medica-linfo_link li {
		width: 100%;
	}
}
.medica-linfo_link li .link-blue {
	width: 100%;
}
.medica-linfo_notes {
	line-height: 1.75;
	padding: 30px;
	background-color: #EBEBEB;
	margin-bottom: 60px;
}
@media screen and (max-width:740px) {
	.medica-linfo_notes {
		padding: 20px;
		margin-bottom: 40px;
	}
}
.medica-linfo_notes a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.medica-linfo_notes a.hover {
	text-decoration: none;
}
.medica-linfo_name {
	width: 100%;
	height: 100px;
	margin: -90px 0 50px;
	background-color: #F2F2F2;
	border-bottom: 3px solid var(--black);
}
@media screen and (max-width:740px) {
	.medica-linfo_name {
		margin-top: -40px;
		height: auto;
		min-height: 100px;
	}
}
.medica-linfo_name .warp {
	display: flex;
	align-items: center;
	height: 100%;
}
.medica-linfo_name h2 {
	display: flex;
	align-items: center;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1;
}
@media screen and (max-width:740px) {
	.medica-linfo_name h2 {
		display: inline-block;
		font-size: 2.5rem;
		padding-top: 27px;
		line-height: 1.2;
	}
}
.medica-linfo_name h2 span {
	font-family: var(--enfont);
	font-size: 1.3rem;
	padding: 6px 0 0 30px;
}
@media screen and (max-width:740px) {
	.medica-linfo_name h2 span {
		display: block;
		padding: 10px 0 20px;
	}
}
.medica-linfo_name.cata01 {
	border-bottom-color: var(--catcolor01);
}
.medica-linfo_name.cata01 h2 span {
	color: var(--catcolor01);
}
.medica-linfo_name.cata02 {
	border-bottom-color: var(--catcolor02);
}
.medica-linfo_name.cata02 h2 span {
	color: var(--catcolor02);
}
.medica-linfo_name.cata03 {
	border-bottom-color: var(--catcolor03);
}
.medica-linfo_name.cata03 h2 span {
	color: var(--catcolor03);
}
.medica-linfo_name.cata04 {
	border-bottom-color: var(--catcolor04);
}
.medica-linfo_name.cata04 h2 span {
	color: var(--catcolor04);
}
.medica-linfo_name.cata05 {
	border-bottom-color: var(--catcolor05);
}
.medica-linfo_name.cata05 h2 span {
	color: var(--catcolor05);
}
.medica-linfo_name.cata06 {
	border-bottom-color: var(--catcolor06);
}
.medica-linfo_name.cata06 h2 span {
	color: var(--catcolor06);
}
.medica-linfo_name.cata07 {
	border-bottom-color: var(--catcolor07);
}
.medica-linfo_name.cata07 h2 span {
	color: var(--catcolor07);
}
.medica-linfo_list {
	display: flex;
	align-items:stretch; 
	flex-wrap: wrap;
}
.medica-linfo_list li {
	position: relative;
	display: flex;
	align-items:stretch;
	width: 320px;
	height: 310px;
	background-color: var(--white);
	margin: 0 32px 40px 0;
}
.medica-linfo_list li:nth-of-type(3n) {
	margin-right: 0;
}
@media screen and (max-width:740px) {
	.medica-linfo_list li {
		width: 100%;
		height: auto;
		margin: 0 auto 15px auto;
	}
	.medica-linfo_list li:nth-of-type(3n) {
		margin-right: auto;
	}
}
.medica-linfo_list li a {
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #F8F8F8;
	box-shadow: 0px 0px 6px 1px rgb(0 0 0 / 16%);
}
@media screen and (max-width:740px) {
    .medica-linfo_list li a {
        display: flex;
        flex-direction: row;
    }
}
.medica-linfo_list li p {
	font-size: 1.7rem;
	line-height: 1.4;
	padding: 13px 15px;
	width: 100%;
	height: 76px;
}
@media screen and (max-width:740px) {
	.medica-linfo_list li p {
        width: 70%;
        height: auto;
        font-size: 1.5rem;
        line-height: 2rem;
	}
}
.medica-linfo_list li time {
	position: absolute;
	right: 13px;
	bottom: 10px;
	color: #6A6A6A;
	line-height: 1;
	font-size: 1.5rem;
	padding: 3px 0;
}
@media screen and (max-width:740px) {
    .medica-linfo_list li time {
        font-size: 1.2rem;
        bottom: 5px;
    }
}
.medica-linfo_list li figure {
	overflow: hidden;
	width: 320px;
	height: 234px;
}
@media screen and (max-width:740px) {
	.medica-linfo_list li figure {
		width: 30%;
		height: 74px;
	}
}
.medica-linfo_list li figure img {
	width: 100%;
	height: 100%;
    object-fit: cover;
}
.medica-linfo_list li a.hover {
	background-color: var(--white);
	box-shadow: 0px 0px 0px 1px var(--keycolor);
}
.medica-linfo_list li a.hover img {
	filter: brightness(120%);
	transform: scale(1.05);
}
.medica-linfo_list li a.hover p,
.medica-linfo_list li a.hover time {
	color: var(--keycolor); 
}
#medical-info {
	padding-top: 80px;
	background-color: var(--blue);
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	#medical-info {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.medical-info_ttl {
	color: var(--keycolor);
	font-size: 3.5rem;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
	padding-bottom: 80px;
}
@media screen and (max-width:740px) {
	.medical-info_ttl {
		font-size: 2.3rem;
		padding-bottom: 40px;
	}
}
.medical-info_report {
	padding: 60px 55px 10px;
	margin-bottom: 60px;
	background-color: var(--white);
	word-break: break-word;
	overflow-wrap: break-word;
}
@media screen and (max-width:740px) {
	.medical-info_report {
		padding: 40px 20px 0;
		margin: 0 -20px 40px;
	}
}
.medical-info_report img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.medical-info_report a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.medical-info_report a.hover {
	text-decoration: none;
}

.medical-info_report h2 {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	padding: 14px 1em;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	color: var(--keycolor);
	border: 5px solid #ABD9EB;
}
@media screen and (max-width:740px) {
	.medical-info_report h2 {
		font-size: 2.0rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.medical-info_report h3 {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	padding: 14px 35px;
	margin-bottom: 35px;
	display: flex;
	align-items: center;
	color: var(--white);
  background-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.medical-info_report h3 {
		font-size: 1.8rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.medical-info_report h4 {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	padding: 11px 15px;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
  background-color: #D7EEF7;
	border-left: 10px solid var(--keycolor);
}
@media screen and (max-width:740px) {
	.medical-info_report h4 {
		font-size: 1.6rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.medical-info_report h5 {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	margin-bottom: 15px;
}
@media screen and (max-width:740px) {
	.medical-info_report h5 {
		font-size: 1.5rem;
	}
}
.medical-info_report h6 {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	margin-bottom: 15px;
}
@media screen and (max-width:740px) {
	.medical-info_report h6 {
		font-size: 1.6rem;
	}
}
.medical-info_report p {
	padding-bottom: 40px;
}
@media screen and (max-width:740px) {
	.medical-info_report p {
		padding-bottom: 20px;
	}
}
.medical-info_report .paragraphIntro {
	border: 1px solid #C6C6C6;
	border-radius: 8px;
	padding: 20px 25px;
	margin-bottom: 40px;
}
.medical-info_report .paragraphIntro p,
.medical-info_report .paragraphIntro ol,
.medical-info_report .paragraphIntro ul {
	padding-bottom: 0;
	margin-bottom: 0;
}
.medical-info_report blockquote {
	border-top: 1px solid #BEBEBE;
	border-bottom: 1px solid #BEBEBE;
	line-height: 1.67;
	padding: 23px 0;
	margin: 0 0 50px;
}
@media screen and (max-width:740px) {
	.medical-info_report blockquote {
		padding: 15px 0;
		margin: 0 0 30px;
	}
}
.medical-info_report blockquote p,
.medical-info_report blockquote ol,
.medical-info_report blockquote ul {
	padding-bottom: 0;
	margin-bottom: 0;
}
.medical-info_report .mt-be-columns {
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.medical-info_report .mt-be-columns {
		flex-wrap: wrap;
	}
}
.medical-info_report .mt-be-columns .mt-be-column {
	width: 50%;
}
@media screen and (max-width:740px) {
	.medical-info_report .mt-be-columns .mt-be-column {
		width: 100%;
	}
}
.medical-info_report pre {
	font-size: 1.4rem;
	width: 100%;
	white-space: pre-wrap;
	border: 1px solid #C6C6C6;
	padding: 20px 25px;
	margin-bottom: 40px;
}
.medical-info_report pre p,
.medical-info_report pre ol,
.medical-info_report pre ul {
	padding-bottom: 0;
	margin-bottom: 0;
}
.medical-info_report ol {
	margin-bottom: 50px;
	list-style-type: decimal;
	margin-left: 25px;
}
.medical-info_report ol li {
	line-height: 1.4;
	padding-bottom: 1em;
	word-break: break-word;
	overflow-wrap: break-word;
	list-style-position: outside;
}
.medical-info_report ul {
	margin: 0 0 40px 6px;
	list-style-type: disc;
}
.medical-info_report ul li {
  margin-left: 1em;
	line-height: 1.4;
	padding-bottom: 1em;
	word-break: break-word;
	overflow-wrap: break-word;
	list-style-position: outside;
}
.medical-info_report .topics {
	background-color: #F7F7F7;
	border: 1px solid #C6C6C6;
	padding: 20px 30px;
	font-size: 1.4rem;
	margin-bottom: 50px;
}
.medical-info_report .topics h5 {
	font-size: 1.6rem;
	font-weight: normal;
	padding-bottom: 0;
	margin-bottom: 0;
}
.medical-info_report .topics p {
	padding-bottom: 0;
	margin-bottom: 0;
}
.medical-info_quote {
	padding: 30px;
	margin-bottom: 80px;
	border: 1px solid var(--black);
}
@media screen and (max-width:740px) {
	.medical-info_quote {
		padding: 20px;
		margin-bottom: 40px;
	}
}
.medical-info_quote dt {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1;
	padding-bottom: 30px;
}
@media screen and (max-width:740px) {
	.medical-info_quote dt {
		font-size: 2.5rem;
		padding-bottom: 15px;
	}
}
.medical-info_quote dd {
	line-height: 1.8;
}
.medical-info_quote dd strong {
	color: #AC0000;
}
.medical-info_quote dd a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.medical-info_quote dd a.hover {
	text-decoration: none;
}
.medical-info_relation h2 {
	font-size: 3.5rem;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
	padding-bottom: 50px;
}
@media screen and (max-width:740px) {
	.medical-info_relation h2 {
    font-size: 2.5rem;
    padding-bottom: 30px;
	}
}
.medical-info_relation ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.medical-info_relation ul li {
	width: 320px;
	height: 90px;
}
@media screen and (max-width:740px) {
	.medical-info_relation ul li {
		width: 100%;
		height: auto;
		margin-bottom: 20px;
	}
	.medical-info_relation ul li:last-of-type {
		margin-bottom: 0;
	}
}
.medical-info_relation ul li a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	color: var(--white);
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	border: 1px solid var(--keycolor);
  background-color: var(--keycolor);
	padding: 25px 35px 25px 25px;
}
@media screen and (max-width:740px) {
	.medical-info_relation ul li a {
		width: 100%;
		height: auto;
		min-height: 90px;
	}
}
.medical-info_relation ul li a::after {
	display: block;
	position: absolute;
	content: "";
	right: 20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--white);
}
.medical-info_relation ul li a.hover {
	color: var(--keycolor);
	background-color: var(--white); 
}
.medical-info_relation ul li a.hover::after {
	right: 12px;
	border-color: transparent transparent transparent var(--keycolor);
}
.medical-info_learning {
	padding: 40px 0;
  background-color: var(--keycolor);
}
.medical-info_learning div {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.medical-info_learning section {
	width: 496px;
}
@media screen and (max-width:740px) {
	.medical-info_learning section {
		width: 100%;
	}
}
.medical-info_learning section h3 {
	color: var(--white);
	font-size: 3.5rem;
	padding: 20px 0;
}
@media screen and (max-width:740px) {
	.medical-info_learning section h3 {
		font-size: 2.5rem;
		padding: 0 0 15px;
	}
}
.medical-info_learning section p {
	color: var(--white);
	line-height: 1.8;
	padding-bottom: 25px;
}
@media screen and (max-width:740px) {
	.medical-info_learning section p {
		padding-bottom: 15px;
		margin-bottom: 10px;
	}
}
.medical-info_learning figure {
	width: 496px;
	height: 300px;
}
@media screen and (max-width:740px) {
	.medical-info_learning figure {
		width: 100%;
		height: auto;
		margin-bottom: 20px;
	}
}
.medical-info_learning figure img {
	width: 100%;
}
.medical-info_learning a {
	position: absolute;
	bottom: 30px;
	width: 496px;
	border-color: var(--white);
}
@media screen and (max-width:740px) {
	.medical-info_learning a {
		position: relative;
		bottom: inherit;
		width: 100%;
	}
}
.medical-info_catalist {
	background-color: #EAEAEA;
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	.medical-info_catalist {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.medical-info_catalist .medica-linfo_cata {
	margin-bottom: 0;
}
















/* ================================================
	firstaid
================================================== */
#firstaid {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
#firstaid.course {
	padding-top: 0;
}
@media screen and (max-width:740px) {
	#firstaid {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.firstaid-list {
	display: flex;
}
.firstaid-list.oshiro,
.firstaid-list.special {
	margin-bottom: 70px;
}
@media screen and (max-width:740px) {
	.firstaid-list {
		display: inline-block;
	}
	.firstaid-list.oshiro,
	.firstaid-list.special {
		margin-bottom: 40px;
	}
}
.firstaid-list article {
	position: relative;
	width: 320px;
	height: 545px;
	margin: 0 32px 30px 0;
	border: 1px solid #707070;
}
.firstaid-list article:last-of-type {
	margin-right: 0;
}
.firstaid-list.special article {
	height: 585px;
}
@media screen and (max-width:740px) {
	.firstaid-list article {
		position: relative;
		width: 100%;
		height: auto;
		margin-right: 0;
	}
	.firstaid-list.special article {
		height: auto;
	}
}
.firstaid-list article figure {
	position: relative;
}
.firstaid-list article h1 {
	width: 100%;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--black);
	color: var(--white);
	font-weight: bold;
	line-height: 1;
}
.firstaid-list article h2 {
	color: var(--keycolor);
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 1.2;
	padding: 15px 20px;
}
.firstaid-list article h2 strong {
	font-size: 2.5rem;
}
@media screen and (max-width:740px) {
	.firstaid-list article h2 {
		padding: 10px 20px;
	}
}
.firstaid-list article h2 span {
	display: block;
	font-size: 1.7rem;
}
.firstaid-list article p {
	font-size: 1.4rem;
	line-height: 1.4;
	padding: 0 20px 15px;
	min-height: 4em;
}
@media screen and (max-width:740px) {
	.firstaid-list article p {
		height: auto;
	}
}
.firstaid-list article ul {
	padding: 0 20px;
}
@media screen and (max-width:740px) {
	.firstaid-list article ul {
		display: inline-block;
		padding: 0 20px;
	}
}
.firstaid-list article li {
	float: left;
	clear: both;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 1;
	padding: 3px 8px;
	margin-bottom: 5px;
	border: 1px solid #707070;
}
.firstaid-list article .link-blue {
	position: absolute;
	bottom: 20px;
	left: 20px;
	font-size: 1.5rem;
	width: 280px;
	min-height: 45px;
	max-height: 45px;
	margin: 0 auto;
}
@media screen and (max-width:740px) {
	.firstaid-list article .link-blue {
		position: relative;
		bottom: inherit;
		left: inherit;
		margin: 10px auto 20px;
	}
}
.firstaid-list article .link-blue.arrow::after {
	right: 20px;
	border-width: 4px 0 4px 7px;
}
.firstaid-list article .link-blue.arrow.hover::after {
	right: 15px;
}
.firstaid-list .start {
	position: absolute;
	bottom: -12px;
	right: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 1.2;
	font-weight: bold;
	width: 80px;
	height: 80px;
	border-radius: 80px;
	background-color: #FFD800;
}
.firstaid-list .end {
	position: absolute;
	bottom: -12px;
	right: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 1.2;
	font-weight: bold;
	width: 80px;
	height: 80px;
	border-radius: 80px;
	color: var(--white);
	background-color: #676767;
}

.firstaid-note {
	width: 100%;
	/*padding: 30px;*/
	/*color: #0027FF;*/
	line-height: 1.4;
	/*border: 1px solid #0027FF;*/
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.firstaid-note {
		/*padding: 20px;*/
	}
}
.firstaid-note.course {
	margin-bottom: 80px;
}
@media screen and (max-width:740px) {
	.firstaid-note.course {
		margin-bottom: 50px;
	}
}
.firstaid-note p {
	padding-bottom: 6px;
}
.firstaid-note_anno {
	padding-top: 6px;
}
.firstaid-note_anno a {
	color: #0027FF;
	text-decoration: underline;
}
.firstaid-note_anno a.hover {
	text-decoration: none;
}
.firstaid-note li {
	text-indent: -1.5em;
	padding-left: 1.5em;
	padding-bottom: 6px;
}
.firstaid-note_btn {
	width: 500px;
	margin: 0 auto 100px;
}
@media screen and (max-width:740px) {
	.firstaid-note_btn {
		width: 100%;
		margin: 0 auto 70px;
	}
}
.firstaid-note .link-blue {
	height: 70px;
	width: 320px;
	margin: 20px auto 0;
}
@media screen and (max-width:740px) {
	.firstaid-note .link-blue {
		height: 50px;
		width: 100%;
	}
}
.firstaid-online {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.firstaid-online {
		display: block;
		width: 100%;
	}
}
.firstaid-online figcaption {
	width: 580px;
	line-height: 1.7;
}
@media screen and (max-width:740px) {
	.firstaid-online figcaption {
		width: 100%;
	}
}
.firstaid-schedule {
	margin-bottom: 40px;
}
.firstaid-schedule img {
		width: 100%;
}
.firstaid-hold {
	display: flex;
	flex-wrap: wrap;
}
.firstaid-hold li {
	width: 320px;
	height: 70px;
	margin: 0 32px 20px 0;
}
@media screen and (max-width:740px) {
	.firstaid-hold li {
		width: 100%;
		margin: 0 0 15px 0;
	}
	.firstaid-hold li:last-of-type {

		margin: 0;
	}
}
.firstaid-hold li:nth-of-type(3n) {
	margin-right: 0;
}
.firstaid-hold li a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: bold;
	line-height: 1.4;
	padding: 15px 30px 15px 20px;
	background-color: var(--blue);
}
.firstaid-hold li a::after {
	display: block;
	position: absolute;
	content: "";
	right: 20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--keycolor);
}
.firstaid-hold li a.hover {
	color: #fff;
	background-color: var(--keycolor);
}
.firstaid-hold li a.hover::after {
	right: 15px;
	border-color: transparent transparent transparent var(--white);
}
.firstaid-course_main {
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
@media screen and (max-width:740px) {
	.firstaid-course_main {
		margin: -40px 0 40px;
	}
}
.firstaid-course_main img {
  display: block;
  width: 1024px;
  height: 600px;
  object-fit: cover;
}
@media screen and (max-width:740px) {
  .firstaid-course_main img {
    width: 100%;
    height: 228px;
  }
}
.firstaid-course_icon {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 50px;
}
.firstaid-course_icon.detail {
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.firstaid-course_icon {
		margin-bottom: 30px;
	}
	.firstaid-course_icon.detail {
		margin: 20px 0;
	}
}
.firstaid-course_icon li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	min-height: 30px;
	line-height: 1;
	font-size: 1.5rem;
	padding: 6px 1.5em;
	border: 1px solid #707070;
	margin-right: 10px;
}
.firstaid-course_icon li:first-of-type {
	background-color: var(--black);
	color: var(--white);
	font-weight: bold;
	padding: 6px 3em;
}
@media screen and (max-width:740px) {
	.firstaid-course_icon li {
		margin-bottom: 10px;
	}
	.firstaid-course_icon li:first-of-type {
		padding: 6px 1.5em;
	}
}
.firstaid-course_text {
	line-height: 1.7;
	margin-bottom: 40px;
}
.firstaid-course_text a {
	text-decoration: underline;
}
.firstaid-course_text a.hover {
	text-decoration: none;
}
.firstaid-course_text.end {
	color: var(--red);
}
.firstaid-course_flow {
	display: flex;
	justify-content: center;
	margin-bottom: 50px;
}
.firstaid-course_table {
	margin-bottom: 60px;
}
.firstaid-course_table table {
	width: 100%;
}
.firstaid-course_table table a {
	text-decoration: underline;
}
.firstaid-course_table table a.hover {
	text-decoration: none;
}
.firstaid-course_table table th,
.firstaid-course_table table td {
	border: 1px solid #7B7B7B;
	padding:10px;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
.firstaid-course_table table th {
	text-align: center;
	font-weight: 500;
	white-space: nowrap;
	background-color: var(--blue);
	width: 27%;
}
.firstaid-course_table table th:nth-of-type(2) {
	width: 18%;
}
.firstaid-course_table table th:nth-of-type(3) {
	width: 23%;
}
.firstaid-course_table table th:nth-of-type(4) {
	width: 22%;
}
.firstaid-course_table table th:nth-of-type(5) {
	width: 10%;
}
.firstaid-course_table table td:last-of-type {
	text-align: center;
}
.firstaid-course_table.map table th {
	width: 27%;
	font-weight: 500;
}
.firstaid-course_table.map table th:nth-of-type(2) {
	width: 18%;
}
.firstaid-course_table.map table th:nth-of-type(3) {
	width: 28%;
}
.firstaid-course_table.map table th:nth-of-type(4) {
	width: 27%;
}
.firstaid-course_table.end {
	margin-bottom: 0;
}
.firstaid-course_table.end table th {
	background-color: #e6e6e6;
	width: 55%;
}
.firstaid-course_table.end table th:nth-of-type(2) {
	width: 18%;
}
.firstaid-course_table.end table th:nth-of-type(3) {
	width: 27%;
}
.firstaid-course_table.end table td:last-of-type {
	text-align: left;
}
@media screen and (max-width:740px) {
	.firstaid-course_table {
		margin-bottom: 60px;
	}
  .firstaid-course_table table {
    border: 0;
    width:100%;
  }
  .firstaid-course_table table th {
    background-color: #167F92;
    display: block;
  }
 .firstaid-course_table table thead {
	 display: none;
  }
 .firstaid-course_table table tr {
    display: block;
    margin-bottom: 1em;
		border-top: 1px solid #7B7B7B;
		border-bottom: 1px solid #7B7B7B;
  }
 .firstaid-course_table table tr:last-of-type {
    margin-bottom: 0;
  }
	.firstaid-course_table table td,
	.firstaid-course_table table td:nth-of-type(2),
	.firstaid-course_table table td:nth-of-type(3),
	.firstaid-course_table table td:nth-of-type(4),
	.firstaid-course_table table td:last-of-type {
    display: block;
    position: relative;
		width: 100%;
    padding-left: 9em;
		border-top: none;
  }
 .firstaid-course_table table td::before {
    content: attr(data-label);
    position: absolute;
    text-align: left;
    width: 8em;
    height: 100%;
    left: 0;
    display: block;
    top: 0;
    padding: 10px;
    font-weight: bold;
    white-space: nowrap;
    background-color: var(--blue);
    border-right: 1px solid #000;
  }
 .firstaid-course_table table td:last-child {
    border-bottom: none;
  }
	.firstaid-course_table table td:last-of-type {
		text-align: left;
	}
 .firstaid-course_table.end table td::before {
    background-color: #e6e6e6;
  }
}



.firstaid-course_table_non {
	border: 8px solid #EFEFEF;
	font-size: 1.8rem;
	line-height: 1.2;
	padding: 2em;
}
.firstaid-course_end {
	color: var(--red);
	line-height: 1.4;
	margin: -10px 0 20px;
}

.firstaid-course_data {
	line-height: 1.6;
}
.firstaid-course_data dt {
	margin-bottom: 20px;
}
.firstaid-course_data dd {
	font-size: 1.8rem;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	.firstaid-course_data dd {
		margin-bottom: 30px;
	}
}
.firstaid-course_data dd a {
	text-decoration: underline;
}
.firstaid-course_data dd a.hover {
	text-decoration: none;
}
.firstaid-course_data dd:last-of-type {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
}
.firstaid-course_data dd:last-of-type p {
	/*width: 52%;*/
}
.firstaid-course_data dd:last-of-type figure {
	width: 45%;
}
.firstaid-course_data dd:last-of-type figure img {
	width: 100%;
}
@media screen and (max-width:740px) {
	.firstaid-course_data dd:last-of-type p {
		width: 100%;
		margin-bottom: 15px;
	}
	.firstaid-course_data dd:last-of-type figure {
		width: 100%;
	}
}

.firstaid-course_curriculum {
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.firstaid-course_curriculum {
		overflow-y: auto;
	}
}
.firstaid-course_curriculum table {
	width: 100%;
}
@media screen and (max-width:740px) {
	.firstaid-course_curriculum table {
		width: 700px;
	}
}
.firstaid-course_curriculum table a {
	text-decoration: underline;
}
.firstaid-course_curriculum table a.hover {
	text-decoration: none;
}
.firstaid-course_curriculum table th,
.firstaid-course_curriculum table td {
	border: 1px solid #7B7B7B;
	padding:10px;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
.firstaid-course_curriculum table tr:first-of-type  th {
	background-color: var(--blue);
	word-break: keep-all;
	font-weight: 500;
	text-align: center;
	width: 15%;
}
.firstaid-course_curriculum table tr:first-of-type  th:nth-of-type(2) {
	width: 5%;
}
.firstaid-course_curriculum table tr:first-of-type  th:nth-of-type(3) {
	width: 40%;
}
.firstaid-course_curriculum table tr:first-of-type  th:nth-of-type(4) {
	width: 40%;
}
.firstaid-course_curriculum table th {
	white-space: nowrap;
	text-align: center;
}
.firstaid-course_curriculum table td:first-of-type {
	text-align: center;
}
.firstaid-course_curriculum table th {
	background-color: #F0F0F0;
}
@media screen and (max-width:740px) {
	.firstaid-course_curriculum table td {
		word-break: break-word;
	}
	.firstaid-course_curriculum table th {
		white-space: nowrap;
	}
}
.firstaid-course_ban {
	line-height: 1.6;
}
.firstaid-course_ban p {
	margin-bottom: 6px;
}
.firstaid-course_ban p strong {
	font-size: 2.0rem;
}
.firstaid-course_ban ol {
	margin-left: 1.5em;
	list-style: decimal;
	margin-bottom: 50px;
}

.firstaid-course_info table {
	margin-bottom: 30px;
	width: 100%;
}
@media screen and (max-width:740px) {
	.firstaid-course_info table {
		width: 100%;
	}
}
.firstaid-course_info table a {
	text-decoration: underline;
}
.firstaid-course_info table a.hover {
	text-decoration: none;
}
.firstaid-course_info table th,
.firstaid-course_info table td {
	border: 1px solid #7B7B7B;
	padding: 10px 20px;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
@media screen and (max-width:740px) {
	.firstaid-course_info table th,
	.firstaid-course_info table td {
		border: none;
		padding: 10px;
	}
}
.firstaid-course_info table th {
	background-color: var(--blue);
	word-break: keep-all;
	font-weight: 500;
	text-align: center;
	width: 20%;
}
@media screen and (max-width:740px) {
	.firstaid-course_info table th {
		display: block;
		width: 100%;
	}
}
.firstaid-course_info table td {
	width: 80%;
}
@media screen and (max-width:740px) {
	.firstaid-course_info table td {
		display: block;
		width: 100%;
		margin-bottom: 1em;
	}
}
.firstaid-course_info table dl {
	display: flex;
	flex-wrap: wrap;
}
.firstaid-course_info table dl dt {
	font-weight: normal;
	width: 4em;
	padding-bottom: 6px;
}
.firstaid-course_info table dl dd {
	width: calc(100% - 4em);
	padding-bottom: 6px;
}
.firstaid-course_info table li {
	text-indent: -1em;
	padding-left: 1em;
}
.firstaid-course_info table p {
	text-indent: -1em;
	padding-left: 1em;
	padding: 6px 0 6px 1em;
}
.firstaid-course_req {
	height: 70px;
	width: 320px;
	margin: 20px auto 0;
}
@media screen and (max-width:740px) {
	.firstaid-course_req {
		height: 50px;
		width: 100%;
	}
}
.firstaid-course_req_conf {
	text-align: center;
	margin: 20px auto 0;
}
.firstaid-course_form_non {
	border: 8px solid #EFEFEF;
	font-size: 1.8rem;
	line-height: 1.2;
	padding: 2em;
	margin-bottom: 80px;
}
.firstaid-course_plan label {
	display: block;
	font-weight: bold;
	padding-bottom: 20px;
}			
.firstaid-course_plan select {
	height: auto;
	width: 100%;
	overflow: auto;
	padding: 20px 20px 10px;
	border: 1px solid #717171;
	margin-bottom: 40px;
}	
@media screen and (max-width:740px) {
	.firstaid-course_plan select {
		padding: 10px 10px 0px;
		margin-bottom: 20px;
	}	
}	
.firstaid-course_plan select optgroup:not(:last-of-type) {
	padding-bottom: 15px;
}			
.firstaid-course_plan option {
	position: relative;
	padding: 1em 1em 1em 3em;
	background-color: #eee;
	margin: 8px 0;
	border: 1px solid #eee;
	white-space: normal;
}		
@media screen and (max-width:740px) {
	.firstaid-course_plan option {
		padding: 1em 2em;
    white-space: normal;
	}		
}		
.firstaid-course_plan option:checked {
	background: -webkit-linear-gradient(0deg, var(--keycolor), var(--keycolor));
	color: var(--keycolor);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: bold;
	border-color: var(--keycolor);
}			
.firstaid-course_plan option::before {
	content: "";
	position: absolute;
	top: 56%;
	left: 20px;
	width: 22px;
	height: 22px;
	margin-top: -13px;
	background: #FFF;
	border: 1px solid #B2B2B2;
	border-radius: 30px;
}	
@media screen and (max-width:740px) {
	.firstaid-course_plan option::before {
		left: 6px;
	}	
}
.firstaid-course_plan option:checked::after {
	content: "";
	position: absolute;
	box-sizing: border-box;
	display: block;
	left: 22px;
	top: 56%;
	margin-top: -11px;
	width: 18px;
	height: 18px;
	background: var(--keycolor);
	border-radius: 11px;
}			
@media screen and (max-width:740px) {
	.firstaid-course_plan option:checked::after {
		left: 8px;
	}			
}
.firstaid-course_plan input[type='submit'] {
	position: relative;
	color: var(--white);
	background-color: var(--keycolor);
	border: 1px solid var(--keycolor);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.4;
	min-height: 70px;
	width: 420px;
	border-radius: 35px;
	padding: 15px 2em;
	margin: 0 auto;
	background-image: url(../images/ico_button.svg);
	background-repeat: no-repeat;
	background-position: 94% center;
}			
.firstaid-course_plan input[type='submit'].hover {
	color: var(--keycolor);
	background-color: var(--white);
	background-image: url(../images/ico_button_hover.svg);
	background-position: 96% center;
}
@media screen and (max-width:740px) {
	.firstaid-course_plan input[type='submit'] {
		min-height: 50px;
		width: 100%;
		padding: 0;
	}			
}

.firstaid-map_address {
	font-size: 1.8rem;
	line-height: 1.4;
	margin-bottom: 20px;
}
.firstaid-map_iframe {
	width: 100%;
	height: auto;
    min-height: 500px;
    max-height: 1000px;
	margin-bottom: 80px;
}
@media screen and (max-width:740px) {
	.firstaid-map_iframe {
		width: 100%;
		height: 200px;
		margin-bottom: 40px;
	}
}
.firstaid-map_iframe p,
.firstaid-map_iframe iframe {
	width: 100%!important;
	/*height: 100%!important;*/
}
.firstaid-outdoor_explan {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-bottom: 120px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan {
		margin-bottom: 30px;
		flex-wrap: wrap;
	}
}
.firstaid-outdoor_explan div {
	width: 500px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan div {
		width: 100%;
	}
}
.firstaid-outdoor_explan div h1 {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.52;
	margin-bottom: 1em;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan div h1 {
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
}
.firstaid-outdoor_explan div p {
	margin-bottom: 1em;
}
.firstaid-outdoor_explan figure {
	position: relative;
	width: calc(100% - 500px - 90px);
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan figure {
		position: relative;
		width: 100%;
	}
}
.firstaid-outdoor_explan figure img {
	position: absolute;
	left: 60px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan figure img {
		position: relative;
		left: inherit;
		width: 100%;
	}
}
.firstaid-outdoor_explan figure img:nth-of-type(2) {
	left: 0;
	top: 366px;
	width: 400px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan figure img:nth-of-type(2) {
		left: inherit;
		top: inherit;
		width: 100%;
		margin: 10px 0;
	}
}
.firstaid-outdoor_explan figure img:nth-of-type(3) {
	left: 285px;
	top: 530px;
	width: 320px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_explan figure img:nth-of-type(3) {
		left: inherit;
		top: inherit;
		width: 100%;
	}
}
.firstaid-outdoor_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 45px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_list {
		margin-bottom: 40px;
	}
}
.firstaid-outdoor_list > li {
	width: 320px;
	height: 360px;
	padding: 30px;
	line-height: 1.5;
	background-color: #FCF6DA;
	border-radius: 8px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_list > li {
		width: 100%;
		height: auto;
		padding: 20px 25px;
		margin-bottom: 20px;
	}
	.firstaid-outdoor_list > li:last-of-type {
		margin-bottom: 0;
	}
}
.firstaid-outdoor_list > li p {
	color: var(--keycolor);
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_list > li p {
		font-size: 2.3rem;
		margin-bottom: 15px;
	}
}
.firstaid-outdoor_list ul li {
	position: relative;
	padding: 0 0 8px 1.2em;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_list ul li {
		padding-bottom: 6px;
	}
}
.firstaid-outdoor_list  ul li::before {
	content: "";
	position: absolute;
	display: block;
	background-color: var(--keycolor);
	width: 12px;
	height: 12px;
	left: 0;
	top: 6px;
}
.firstaid-outdoor_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_link {
		margin-bottom: 80px;
	}
}
.firstaid-outdoor_link li {
	width: 497px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_link li {
		width: 100%;
		margin-bottom: 20px;
	}
	.firstaid-outdoor_link li:last-of-type {
		margin-bottom: 0;
	}
}
.firstaid-outdoor_link li a {
	width: 100%;
}
.firstaid-outdoor_voice {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
.firstaid-outdoor_voice li {
	width: 497px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_voice li {
		width: 100%;
		margin-bottom: 20px;
	}
}
.firstaid-outdoor_voice li p {
	position: relative;
	width: 390px;
	padding: 20px;
	font-size: 1.5rem;
	line-height: 1.7;
	background-color: var(--blue);
	border-radius: 8px;
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_voice li p {
		width: 76%;
		padding: 15px;
	}
	.firstaid-outdoor_voice li img {
		width: 18%;
	}
}
.firstaid-outdoor_voice li p:before {
	content: "";
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	top: 26px;
	left: -15px;
	background-color: var(--blue);
	border-radius: 40px;
	z-index: -1;
}
.firstaid-outdoor_voice li p:after {
	content: "";
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	top: 13px;
	left: -20px;
	background-color: #fff;
	border-radius: 40px;
	z-index: -1;
	transform: rotate(30deg);
}
@media screen and (max-width:740px) {
	.firstaid-outdoor_voice li p:before {
		width: 25px;
		height: 25px;
		top: 13px;
		left: -12px;
	}
	.firstaid-outdoor_voice li p:after {
		width: 25px;
		height: 25px;
		top: 3px;
		left: -17px;
	}
}
.firstaid-outdoor_voice li p strong {
	color:  var(--keycolor);
	font-size: 1.7rem;
	display: block;
	padding-bottom: 5px;
}
.firstaid-online_fee {
	display: flex;
	flex-wrap: wrap;
	width: 420px;
	margin: -10px 0 50px;
}
@media screen and (max-width:740px) {
	.firstaid-online_fee {
		width: 100%;
		margin: -20px 0 40px;
	}
}
.firstaid-online_fee dt,
.firstaid-online_fee dd {
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 1.6;
}
@media screen and (max-width:740px) {
	.firstaid-online_fee dt,
	.firstaid-online_fee dd {
		font-size: 1.6rem;
	}
	.firstaid-online_fee dd {
		width: 100%;
		padding-left: 2em;
	}
	.firstaid-online_fee dd:first-of-type {
		margin-bottom: 10px;
	}
}
.firstaid-online_month {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.firstaid-online_month {
		margin-bottom: 60px;
	}
}
.firstaid-online_month li {
	width: 232px;
	height: 230px;
}
@media screen and (max-width:740px) {
	.firstaid-online_month li {
		width: 48%;
		height: auto;
	}
	.firstaid-online_month li:first-of-type,
	.firstaid-online_month li:nth-of-type(2) {
		margin-bottom: 20px;
	}
}
.firstaid-online_month li a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 1.8rem;
	font-weight: bold;
	background-color: #F8F8F8;
	box-shadow: 0px 2px 6px 0px rgb(0 0 0 / 16%);
}
@media screen and (max-width:740px) {
	.firstaid-online_month li a {
		font-size: 1.4rem;
	}
}
.firstaid-online_month li a.hover {
	color: var(--keycolor);
	box-shadow: 0px 0px 0px 1px var(--keycolor);
}
.firstaid-online_month li figure {
	overflow: hidden;
}
.firstaid-online_month li a.hover img {
	filter: brightness(120%);
	transform: scale(1.05);
}
.firstaid-online_month li p {
	position: relative;
	width: 100%;
	text-align: center;
	padding-top: 12px;
}
@media screen and (max-width:740px) {
	.firstaid-online_month li p {
		padding: 6px;
	}
}
.firstaid-online_month li p::before {
	position: absolute;
	content: "";
	top: 28px;
	right: 18px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #8E8E8E;
	border-right: 1px solid #8E8E8E;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.firstaid-online_month li a.hover p::before {
	right: 14px;
	border-top-color: var(--keycolor);
	border-right-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.firstaid-online_month li p::before {
		top: 15px;
	}
}
.firstaid-online_info {
	width: 100%;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.firstaid-online_info {
		margin-bottom: 100px;
	}
}
.firstaid-online_info figure {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.firstaid-online_info table {
	width: 760px;
	line-height: 1.6;
}
@media screen and (max-width:740px) {
	.firstaid-online_info table {
		width: 100%;
		margin-bottom: 20px;
	}
}
.firstaid-online_info img {
	width: 232px;;
	height: auto;
}

@media screen and (max-width:740px) {
	.firstaid-online_info img {
		width: auto;
		max-width: 100%;
		margin: auto;
	}
}
.firstaid-online_info table th,
.firstaid-online_info table td {
	padding: 10px 1em;
	border: 1px solid #7B7B7B;
}
.firstaid-online_info table th {
	font-weight: 500;
	background-color: var(--blue);
	width: 234px;
	vertical-align: middle;
}
.firstaid-online_info table tr:last-of-type th,
.firstaid-online_info table tr:nth-last-of-type(2) th {
	width: 117px;
}
.firstaid-online_info table td {
	width: 527px;
	background-color: var(--white);
}
@media screen and (max-width:740px) {
	.firstaid-online_info table th,
	.firstaid-online_info table td {
		padding: 6px;
	}
	.firstaid-online_info table th {
		width: 47%;
	}
	.firstaid-online_info table td {
		width: 52%;
	}
}
.firstaid-online_info table tr:nth-of-type(odd) td {
	background-color: #FCF6DA;
}
.firstaid-online_info table tr:last-of-type td {
	background-color: var(--white);
}
.firstaid-online_info a {
	width: 500px;
	margin: 30px auto 0;
}
@media screen and (max-width:740px) {
	.firstaid-online_info a {
		width: 100%;
	}
}
.firstaid-online_info form {
	margin-top: 20px;
}			
.firstaid-online_info_non {
	border: 8px solid #EFEFEF;
	font-size: 1.8rem;
	line-height: 1.2;
	padding: 1em 2em;
	margin-top: 20px;
}
.firstaid-online_info label {
	display: block;
	font-weight: bold;
	padding-bottom: 20px;
}			
.firstaid-online_info select {
	height: 200px;
	width: 100%;
	overflow: auto;
	padding: 20px 20px 10px;
	border: 1px solid #717171;
	margin-bottom: 40px;
}	
@media screen and (max-width:740px) {
	.firstaid-online_info select {
		padding: 10px 10px 0px;
		margin-bottom: 20px;
        height: 230px;
	}	
}	
.firstaid-online_info select optgroup:not(:last-of-type) {
	padding-bottom: 15px;
}			
.firstaid-online_info option {
	position: relative;
	padding: 1em 1em 1em 3em;
	background-color: #eee;
	margin: 8px 0;
	border: 1px solid #eee;
	white-space: normal;
}		
@media screen and (max-width:740px) {
	.firstaid-online_info option {
		padding: 1em 2em;
    white-space: normal;
	}		
}		
.firstaid-online_info option:checked {
	background: -webkit-linear-gradient(0deg, var(--keycolor), var(--keycolor));
	color: var(--keycolor);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: bold;
	border-color: var(--keycolor);
}			
.firstaid-online_info option::before {
	content: "";
	position: absolute;
	top: 56%;
	left: 20px;
	width: 22px;
	height: 22px;
	margin-top: -13px;
	background: #FFF;
	border: 1px solid #B2B2B2;
	border-radius: 30px;
}	
@media screen and (max-width:740px) {
	.firstaid-online_info option::before {
		left: 6px;
	}	
}
.firstaid-online_info option:checked::after {
	content: "";
	position: absolute;
	box-sizing: border-box;
	display: block;
	left: 22px;
	top: 56%;
	margin-top: -11px;
	width: 18px;
	height: 18px;
	background: var(--keycolor);
	border-radius: 11px;
}			
@media screen and (max-width:740px) {
	.firstaid-online_info option:checked::after {
		left: 8px;
	}			
}
.firstaid-online_info input[type='submit'] {
	position: relative;
	color: var(--white);
	background-color: var(--keycolor);
	border: 1px solid var(--keycolor);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.4;
	min-height: 70px;
	width: 420px;
	border-radius: 35px;
	padding: 15px 2em;
	margin: 0 auto;
	background-image: url(../images/ico_button.svg);
	background-repeat: no-repeat;
	background-position: 94% center;
}	
@media screen and (max-width:740px) {
	.firstaid-online_info input[type='submit'] {
		min-height: 50px;
		width: 100%;
		padding: 0;
	}			
}
.firstaid-online_info input[type='submit'].hover {
	color: var(--keycolor);
	background-color: var(--white);
	background-image: url(../images/ico_button_hover.svg);
	background-position: 96% center;
}
/* ================================================
	tearchers
================================================== */
#tearchers {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
#tearchers .subttl span {
	padding: 5px 0 0 1em;
	font-family: var(--enfont);
}
@media screen and (max-width:740px) {
	#tearchers {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.tearchers_anker {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 70px;
}
@media screen and (max-width:740px) {
	.tearchers_anker {
		display: flex;
		justify-content: space-between;
		margin-bottom: 40px;
	}
}
.tearchers_anker li {
	width: 497px;
	height: 70px;
}
@media screen and (max-width:740px) {
	.tearchers_anker li {
		width: 100%;
		height: 50px;
	}
	.tearchers_anker li:first-of-type {
		margin-bottom: 20px;
	}
}
.tearchers_anker li a {
	width: 100%;
	height: 100%;
}
.tearchers_anker li a::after {
	transform: rotate(90deg);
}
.tearchers_anker li a.arrow.hover::after {
	right: 30px;
	top: 30px;
}
.tearchers_anker li span {
	padding: 3px 0 0 1em;
	font-family: var(--enfont);
}
.tearchers_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.tearchers_list:not(:last-of-type) {
	margin-bottom: 50px;
}
.tearchers_list li {
	width: 496px;
	min-height: 585px;
	padding: 20px;
	font-size: 1.5rem;
	line-height: 1.4;
	border: 1px solid #7B7B7B;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.tearchers_list li {
		width: 100%;
		min-height: inherit;
		margin-bottom: 20px;
	}
}
.tearchers_list li figure {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 30px;
}
.tearchers_list li figure figcaption {
	position: relative;
	padding-left: 30px;
}
@media screen and (max-width:740px) {
	.tearchers_list li figure img {
		width: 80%;
		max-width: 235px;
		margin: auto;
	}
	.tearchers_list li figure figcaption {
		width: 100%;
		padding: 20px 0 0;
	}
}
.tearchers_list li figure .post {
	position: absolute;
	color:var(--keycolor);
	font-size: 1.4rem;
	padding: 5px 8px;
	border: 1px solid var(--keycolor);
}
@media screen and (max-width:740px) {
	.tearchers_list li figure .post {
		position: relative;
		display: inline-block;
	}
}
.tearchers_list li figure .post span {
	padding: 3px 0 0 5px;
	font-family: var(--enfont);
}
.tearchers_list li figure .name {
	font-size: 3.0rem;
	font-weight: 500;
	padding-top: 50px;
	padding-bottom: 10px;
}
@media screen and (max-width:740px) {
	.tearchers_list li figure .name {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}
.tearchers_list li figure .name_en {
	font-family: var(--enfont);
	padding-bottom: 20px;
}
@media screen and (max-width:740px) {
	.tearchers_list li figure .name_en {
		padding-bottom: 10px;
	}
}
.tearchers_list li figure .degree {
	font-family: var(--enfont);
}
.tearchers_list li .info {
	padding-bottom: 1.5em;
}
@media screen and (max-width:740px) {
	.tearchers_list li .info {
		padding-bottom: 1em;
	}
}
.tearchers_list li .info_en{
	font-family: var(--enfont);
	padding: 0;
}
/* ================================================
	clinic
================================================== */
#clinic {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
#clinic.underlayer {
	padding-top: 0;
	padding-bottom: 0;
}
@media screen and (max-width:740px) {
	#clinic {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
#clinic h1 {
	font-size: 3.5rem;
	font-weight: bold;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	#clinic h1 {
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
}
#clinic h2.subttl {
	font-size: 2.3rem;
	font-weight: 500;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	#clinic h2.subttl {
		font-size: 2.0rem;
		margin-bottom: 1em;
	}
}
.clinic-matter {
	padding: 30px 40px 22px;
	background-color: var(--blue);
	border-radius: 8px;
	line-height: 1.4;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-matter {
		padding: 20px 20px 12px;
		border-radius: 8px;
		margin-bottom: 40px;
	}
}
.clinic-matter dt {
	color: var(--keycolor);
	font-size: 2.6rem;
	padding-bottom: 20px;
}
.clinic-matter dd ul {
	column-count: 3;
}
@media screen and (max-width:740px) {
	.clinic-matter dd ul {
		column-count: 1;
	}
}
.clinic-matter dd li {
	position: relative;
	width: 100%;
	padding: 0 0 8px 1.2em;
}
@media screen and (max-width:740px) {
	.clinic-matter dd li {
		padding-bottom: 6px;
	}
}
.clinic-matter dd li::before {
	content: "";
	position: absolute;
	display: block;
	background-color: var(--keycolor);
	width: 12px;
	height: 12px;
	left: 0;
	top: 6px;
}
.clinic-item  {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-item  {
		margin-bottom: 60px;
	}
}
.clinic-item li {
	width: 320px;
	height: 270px;
}
@media screen and (max-width:740px) {
	.clinic-item  li {
		width: 100%;
		height: auto;
	}
	.clinic-item  li:first-of-type,
	.clinic-item  li:nth-of-type(2) {
		margin-bottom: 20px;
	}
}
.clinic-item  li a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 1.8rem;
	font-weight: bold;
	background-color: #F8F8F8;
	box-shadow: 0px 2px 6px 0px rgb(0 0 0 / 16%);
}
.clinic-item  li a.hover {
	color: var(--keycolor);
	box-shadow: 0px 0px 0px 1px var(--keycolor);
}
.clinic-item  li figure {
	overflow: hidden;
}
.clinic-item  li a.hover img {
	filter: brightness(120%);
	transform: scale(1.05);
}
.clinic-item  li p {
	position: relative;
	width: 100%;
	text-align: center;
	padding-top: 17px;
}
@media screen and (max-width:740px) {
	.clinic-item  li p {
		padding: 10px;
	}
}
.clinic-item  li p::before {
	position: absolute;
	content: "";
	top: 33px;
	right: 18px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #8E8E8E;
	border-right: 1px solid #8E8E8E;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.clinic-item  li a.hover p::before {
	right: 14px;
	border-top-color: var(--keycolor);
	border-right-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.clinic-item  li p::before {
		top: 22px;
	}
}
.clinic-choice {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.clinic-choice_box {
	width: 652px;
	padding: 30px;
	border-radius: 10px;
	background-color: var(--keycolor);
}
.clinic-choice_box:last-of-type {
	width: 340px;
	background-color: #308971;
}
@media screen and (max-width:740px) {
	.clinic-choice_box,
	.clinic-choice_box:last-of-type {
		width: 100%;
		padding: 20px 20px 30px;
		margin-bottom: 30px;
	}
	.clinic-choice_box:last-of-type {
		margin-bottom: 0;
	}
}
.clinic-choice_box h3 {
	color: var(--white);
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
	width: 100%;
	margin-bottom: 20px;
}
.clinic-choice_box h4 {
	color: var(--black);
	font-size: 2.3rem;
	font-weight: bold;
	text-align: center;
	width: 100%;
	margin-bottom: 20px;
}
.clinic-choice_box div {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}
.clinic-choice_box:first-of-type div:last-of-type {
	padding: 20px;
	background-color: var(--white);
}
@media screen and (max-width:740px) {
	.clinic-choice_box:first-of-type div:last-of-type {
		padding: 20px 20px 30px;
	}
}
.clinic-choice_box:last-of-type div div {
	padding: 20px;
	margin-top: 30px;
	background-color: var(--white);
}
@media screen and (max-width:740px) {
	.clinic-choice_box:last-of-type div div {
		margin-top: 0;
	}
}
.clinic-choice_box:last-of-type div div p {
	line-height: 1.83;
}
.clinic-choice_box div dl {
	width: 280px;
	padding: 10px;
	background-color: var(--white);
}
@media screen and (max-width:740px) {
	.clinic-choice_box div dl {
		width: 100%;
		padding: 10px 10px 20px;
	}
	.clinic-choice_box div dl:first-of-type {
		margin-bottom: 20px;
	}
}
.clinic-choice_box div dl dt {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	color: var(--keycolor);
	font-size: 2.6rem;
	font-weight: bold;
	height: 70px;
	background-color: var(--blue);
}
.clinic-choice_box div:last-of-type dl dt {
	color: #308971;
	background-color: #E2F0E4;
}
.clinic-choice_box div dl ul {
	padding: 10px 5px 0;
}
.clinic-choice_box div dl li {
	position: relative;
	padding: 0 0 10px 1.2em;
	line-height: 1.5;
}
.clinic-choice_box div dl li::before {
	content: "";
	position: absolute;
	display: block;
	background-color: var(--keycolor);
	width: 12px;
	height: 12px;
	left: 0;
	top: 6px;
}
.clinic-choice_box div:last-of-type dl li::before {
	background-color: #308971;
}
.clinic-choice_box div > ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.clinic-choice_box div > ul li a {
	width: 265px;
}
@media screen and (max-width:740px) {
	.clinic-choice_box div > ul li {
		width: 100%;
	}
	.clinic-choice_box div > ul li:first-of-type {
		margin-bottom: 20px;
	}
	.clinic-choice_box div > ul li a {
		width: 100%;
	}
}
.clinic-choice_box_anno {
	width: 100%;
	margin: 1em 0 3em; 
	color: var(--white);
}
@media screen and (max-width:740px) {
	.clinic-choice_box_anno {
		margin: 1em 0 2em; 
	}
}
.clinic-choice_box_anno li {
	color: var(--white);
	text-indent: -1.8em;
	padding-left: 1.8em;
	line-height: 1.67;
}
.clinic-choice_arrow {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 10px 154px 10px 309px;
}
@media screen and (max-width:740px) {
	.clinic-choice_arrow {
		padding: 10px 30%;
	}
	.clinic-choice_arrow img {
		width: auto;
	}
}
.clinic-reserve {
	background-color: #EAEAEA;
	border-radius: 10px;
	padding: 35px;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-reserve {
		padding: 35px 20px 25px;
		margin-bottom: 50px;
	}
}
.clinic-reserve dt {
	color: var(--keycolor);
	font-size: 2.2rem;
	line-height: 1.3;
	text-align: center;
	padding-bottom: 25px;
}
@media screen and (max-width:740px) {
	.clinic-reserve dt {
		font-size: 2.0rem;
		padding-bottom: 20px;
	}
}
.clinic-reserve dt br {
	display: none;
}
@media screen and (max-width:740px) {
	.clinic-reserve dt br {
		display: inline-block;
	}
}
.clinic-reserve dd a {
	width: 497px;
	margin: 0 auto;
}
@media screen and (max-width:740px) {
	.clinic-reserve dd a {
		width: 100%;
	}
}
.clinic-reserve_flow {
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-reserve_flow {
		margin-bottom: 50px;
	}
}
.clinic-patient {}
.clinic-patient li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 40px;
}
.clinic-patient li:last-of-type {
	margin-bottom: 0;
}
@media screen and (max-width:740px) {
	.clinic-patient li img {
		width: 17%;
	}
}
.clinic-patient li dl {
	position: relative;
	width: calc(100% - 105px);
	background-color: var(--blue);
	border-radius: 10px;
	padding: 15px 30px;
	line-height: 1.8;
}
@media screen and (max-width:740px) {
	.clinic-patient li dl {
		width: 76%;
		padding: 15px 20px;
		line-height: 1.6;
	}
}
.clinic-patient li dl::before {
	content: "";
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	top: 26px;
	left: -15px;
	background-color: var(--blue);
	border-radius: 40px;
	z-index: -1;
}
@media screen and (max-width:740px) {
	.clinic-patient li dl::before {
		width: 25px;
    height: 25px;
    top: 13px;
    left: -12px;
	}
}
.clinic-patient li dl::after {
	content: "";
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	top: 13px;
	left: -20px;
	background-color: #fff;
	border-radius: 40px;
	z-index: -1;
	transform: rotate(30deg);
}
@media screen and (max-width:740px) {
	.clinic-patient li dl::after {
    width: 25px;
    height: 25px;
    top: 3px;
    left: -17px;
	}
}
.clinic-patient li dt {
	font-size: 1.5rem;
	border-bottom: 1px solid #959595;
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.clinic-patient li dt span {
	display: block;
	color: var(--keycolor);
	font-size: 1.7rem;
	font-weight: bold;
}
@media screen and (max-width:740px) {
	.clinic-patient li dt span {
		padding-bottom: 5px;
	}
}
.clinic-patient li p {
	width: calc(100% - 105px);
	border-radius: 10px;
	padding: 15px 30px 15px 60px;
	margin: 10px 0 0 105px;
	line-height: 1.8;
	background: #FCF6DA url("../../clinic/images/clinic_patient_arrow.svg") no-repeat 30px 23px;
}
@media screen and (max-width:740px) {
	.clinic-patient li p {
		width: 76%;
		padding: 15px 20px 15px 40px;
		line-height: 1.6;
		margin-left: 24%;
		background-position: 18px 20px;
	}
}
.clinic-exam_explan {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	.clinic-exam_explan {
		margin-bottom: 30px;
	}
}
.clinic-exam_explan div {
	width: 582px;
}
@media screen and (max-width:740px) {
	.clinic-exam_explan div {
		width: 100%;
	}
}
.clinic-exam_explan div h1 {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.52;
	margin-bottom: 1em;
}
@media screen and (max-width:740px) {
	.clinic-exam_explan div h1 {
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
}
.clinic-exam_explan div p {
	margin-bottom: 1em;
}
.clinic-exam_explan div p a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.clinic-exam_explan div p a.hover {
	text-decoration: none;
}
.clinic-exam_explan figure {
	position: relative;
}
@media screen and (max-width:740px) {
	.clinic-exam_explan figure {
		position: relative;
		width: 100%;
	}
}
.clinic-exam_explan > p a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.clinic-exam_explan > p a.hover {
	text-decoration: none;
}

.clinic-exam_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	.clinic-exam_list {
		margin-bottom: 20px;
	}
}
.clinic-exam_list > li {
	width: 496px;
	min-height: 410px;
	padding: 30px;
	line-height: 1.5;
	background-color: var(--blue);
	border-radius: 8px;
}
.clinic-exam_list > li:last-of-type {
	background-color: #FCF6DA;
}
@media screen and (max-width:740px) {
	.clinic-exam_list > li {
		width: 100%;
		height: auto;
		min-height: inherit;
		padding: 20px 25px;
		margin-bottom: 20px;
	}
	.clinic-exam_list > li:last-of-type {
		margin-bottom: 0;
	}
}
.clinic-exam_list > li p {
	color: var(--keycolor);
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.clinic-exam_list > li p {
		font-size: 2.3rem;
		margin-bottom: 15px;
	}
}
.clinic-exam_list ul li {
	position: relative;
	padding: 0 0 8px 1.2em;
}
@media screen and (max-width:740px) {
	.clinic-exam_list ul li {
		padding-bottom: 6px;
	}
}
.clinic-exam_list ul li::before {
	content: "";
	position: absolute;
	display: block;
	background-color: var(--keycolor);
	width: 12px;
	height: 12px;
	left: 0;
	top: 6px;
}
.clinic-exam_list.graf {
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-exam_list.graf {
		margin-bottom: 50px;
	}
}

.clinic-exam_list.graf > li {
	background-color: #FCF6DA;
}
.clinic-exam_list.graf > li:last-of-type {
	padding: 0;
	background-color: transparent;
}
.clinic-exam_list.graf > li:last-of-type img {
	width: 100%;
}
.clinic-exam_list.graf > li:last-of-type p {
	color: var(--black);
	font-size: 1.5rem;
	font-weight: normal;
	text-indent: -1em;
	padding: 10px 0 0 1em;
	margin: 0
}
.clinic-checkup_bmjopen {
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 10px;
	line-height: 1.67;
}
.clinic-checkup_photo {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 80px;
}
@media screen and (max-width:740px) {
	.clinic-checkup_photo {
		margin: 60px 0 0;
	}
}
.clinic-checkup_photo figure {
    display: flex;
    flex-direction: column;
    align-items: center;
}
@media screen and (max-width:740px) {
    .clinic-checkup_photo figure {
        width: 75%;
        margin: 0 auto 30px;
    }
}
.clinic-checkup_photo figure img {
    width: auto;
    height: 205px;
}
@media screen and (max-width:740px) {
    .clinic-checkup_photo figure img {
        width: 100%;
        height: auto;
    }
}
.clinic-exam_appl {
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-exam_appl {
		margin-bottom: 80px;
	}
}
.clinic-exam_appl ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.clinic-exam_appl ul li {
	width: 497px;
}
@media screen and (max-width:740px) {
	.clinic-exam_appl ul li {
		width: 100%;
		margin-bottom: 20px;
	}
	.clinic-exam_appl ul li:last-of-type {
		margin-bottom: 0;
	}
}
.clinic-exam_appl ul li a {
	width: 100%;
}
.clinic-exam_appl p {
	text-align: center;
	padding-bottom: 35px;
}
@media screen and (max-width:740px) {
	.clinic-exam_appl p {
		padding-bottom: 20px;
	}
}
.clinic-exam_appl .detail {
	display: flex;
	align-items: center;
	color: var(--textlinkcolor);
	text-decoration: underline;
	margin-top: 10px;
}
.clinic-exam_appl .detail.hover {
	text-decoration: none;
}
.clinic-exam_appl .detail img {
	width: inherit;
	margin: 3px 0 0 5px;
}
.clinic-checkup_put {
	width: 100%;
	overflow: auto;
}
.clinic-checkup_put table {
	width: 100%;
}
@media screen and (max-width:740px) {
	.clinic-checkup_put table {
		width: 600px;
	}
}
.clinic-checkup_put table th,
.clinic-checkup_put table td {
	border: 1px solid #7B7B7B;
	padding: 10px 1em;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
@media screen and (max-width:740px) {
	.clinic-checkup_put table th,
	.clinic-checkup_put table td {
		padding: 8px;
	}
}
.clinic-checkup_put table th {
	text-align: center;
	color: var(--keycolor);
	font-weight: 500;
	white-space: nowrap;
	background-color: var(--blue);
}
.clinic-checkup_put table tbody th {
	width: 10%;
	vertical-align: top;
	background-color: #F0F0F0;
	text-align: left;
}
.clinic-checkup_put table tbody td {
	width: 40%;
}
.clinic-checkup_put table tbody td:last-of-type,
.clinic-checkup_put table tbody td:nth-last-of-type(2) {
	text-align: center;
	width: 25%;
}
.clinic-checkup_tabletext {
	line-height: 1.5;
	margin: 20px 0 50px;
}
.clinic-checkup_tabletext li:nth-of-type(2) {
	text-indent: -1em;
	padding-left: 1em;
}
.clinic-checkup_tabletext li.link {
	padding-top: 10px;
}
.clinic-checkup_tabletext li.link a {
	color: var(--textlinkcolor);
	text-decoration: underline;
	margin-right: 1em;
}
@media screen and (max-width:740px) {
	.clinic-checkup_tabletext li.link a {
		display: block;
		margin-right: 0;
	}
}
.clinic-checkup_tabletext li.link a img {
	width: inherit;
	margin: 3px 0 0 5px;
}
.clinic-checkup_tabletext dl {
	display: flex;
	flex-wrap: wrap;
}
.clinic-checkup_tabletext dt {
	font-weight: normal;
	width: 4.5em;
}
.clinic-checkup_tabletext dd {
	width: calc(100% - 4.5em);
}
.clinic-checkup_tabletext dt:last-of-type {
	font-weight: normal;
	width: 7em;
}
.clinic-checkup_tabletext dd:last-of-type {
	width: calc(100% - 7em);
}
.clinic-checkup_test {
	width: 100%;
}
.clinic-checkup_test table {
	width: 100%;
}
.clinic-checkup_test table th,
.clinic-checkup_test table td {
	border: 1px solid #7B7B7B;
	padding: 10px 1em;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
@media screen and (max-width:740px) {
	.clinic-checkup_test table th,
	.clinic-checkup_test table td {
		padding: 8px;
	}
}
.clinic-checkup_test table th {
	text-align: center;
	color: var(--keycolor);
	font-weight: 500;
	background-color: var(--blue);
}
.clinic-checkup_test table tbody th {
	vertical-align: top;
	background-color: #F0F0F0;
	text-align: left;
	width: 33%;
}
@media screen and (max-width:740px) {
	.clinic-checkup_test table tbody th {
		width: 40%;
	}
}
.clinic-checkup_test table tbody td {
	width: 67%;
}
@media screen and (max-width:740px) {
	.clinic-checkup_test table tbody td {
		width: 60%;
	}
}
.clinic-checkup_option {
	margin-bottom: 1em;
}
.clinic-checkup_info {
	width: 100%;
	margin-bottom: 40px;
}
.clinic-checkup_info table {
	width: 100%;
}
.clinic-checkup_info table a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.clinic-checkup_info table a.hover {
	text-decoration: none;
}
.clinic-checkup_info table a svg {
	fill: var(--textlinkcolor);
	margin-left: 3px;
}
.clinic-checkup_info table th,
.clinic-checkup_info table td {
	border: 1px solid #7B7B7B;
	padding: 10px 1em;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
@media screen and (max-width:740px) {
	.clinic-checkup_info table th,
	.clinic-checkup_info table td {
		padding: 8px;
	}
}
.clinic-checkup_info table th {
	vertical-align: top;
	text-align: left;
	color: var(--keycolor);
	font-weight: 500;
	white-space: nowrap;
	background-color: var(--blue);
	width: 20%;
}
.clinic-checkup_info table td {
	width: 80%;
}
.clinic-link {
	display: flex;
	background-color: #F7F7F7;
	width: 100%;
	height: 170px;
}
@media screen and (max-width:740px) {
	.clinic-link {
		height: auto;
		padding: 40px 0;
	}
}
.clinic-link ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;;
}
.clinic-link ul li {
	width: 235px;
}
@media screen and (max-width:740px) {
	.clinic-link ul li {
		width: 100%;
		margin-bottom: 20px;
	}
	.clinic-link ul li:last-of-type {
		margin-bottom: 0;
	}
}
.clinic-link ul li a {
	width: 100%;
}
.clinic-link ul li .link-blue.arrow::after {
	right: 20px;
}
.clinic-link ul li .link-blue.arrow.hover::after {
	right: 15px;
}
.clinic-access {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-access {
		margin-bottom: 80px;
	}
}
.clinic-access div {
	width: 420px;
}
.clinic-access table {
	width: 100%;
}
.clinic-access table th {
	font-weight: normal;
	white-space: nowrap;
}
.clinic-access table td strong {
	display: block;
	color: #AC0000;
}
.clinic-access p {
	font-size: 1.3rem;
	margin-bottom: 12px;
}
.clinic-access iframe {
	width: 584px;
	height: 358px;
}
@media screen and (max-width:740px) {
	.clinic-access iframe {
		width: 100%;
		height: 200px;
		margin-top: 20px;
	}
}
.clinic-access ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 60px;
}
@media screen and (max-width:740px) {
	.clinic-access ul {
		margin-top: 30px;
	}
}
.clinic-access ul li {
	width: 496px;
}
@media screen and (max-width:740px) {
	.clinic-access ul li:first-of-type {
		margin-bottom: 20px;
	}
}
.clinic-access ul li a {
	width: 100%;
}
.clinic-access_remote {
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-access_remote {
		margin-bottom: 80px;
	}
}
.clinic-access_remote p {
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	.clinic-access_remote p {
		margin-bottom: 30px;
	}
}
.clinic-access_remote a {
	width: 496px;
	margin: 0 auto;
}
@media screen and (max-width:740px) {
	.clinic-access_remote a {
		width: 100%;
	}
}
.clinic-advice_explan {
	line-height: 1.6;
	text-indent: -1em;
	padding-left: 1em;
}
.clinic-remote_text {
	margin-bottom: 80px;
}
.clinic-remote_text:last-of-type {
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.clinic-remote_text {
		margin-bottom: 40px;
	}
	.clinic-remote_text:last-of-type {
		margin-bottom: 60px;
	}
}
.clinic-remote_text h2 {
	font-size: 3.5rem;
	font-weight: bold;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.clinic-remote_text h2 {
		font-size: 2.4rem;
		margin-bottom: 1em;
	}
}
.clinic-remote_text a {
	width: 496px;
	margin: 50px auto 0;
}
@media screen and (max-width:740px) {
	.clinic-remote_text a {
		width: 100%;
		margin: 30px auto 0;
	}
	.clinic-remote_text a.link-blue.arrow::after {
    right: 15px;
	}
	.clinic-remote_text a.link-blue.arrow.hover::after {
    right: 10px;
	}
}
.clinic-exam_list.remote {
	margin-bottom: 70px;
}
@media screen and (max-width:740px) {
	.clinic-exam_list.remote {
		margin-bottom: 40px;
	}
}
.clinic-exam_list.remote > li {
	width: 100%;
	min-height: inherit;
	padding: 30px 30px 20px;
}
.clinic-exam_list.remote > li ul {
	width: 100%;
	column-count: 2;
}
@media screen and (max-width:740px) {
	.clinic-exam_list.remote > li ul {
		column-count: 1;
	}
}
.clinic-exam_list.remote > li ul li:last-of-type {
	text-align: right;
	padding: 0 2em 0 0;
}
@media screen and (max-width:740px) {
	.clinic-exam_list.remote > li ul li:last-of-type {
		padding: 0;
	}
}
.clinic-exam_list.remote > li ul li:last-of-type::before {
	content: none;
}
.clinic-remote_flow {
	text-align: center;
	margin-bottom: 120px;
}
@media screen and (max-width:740px) {
	.clinic-remote_flow {
		text-align: center;
		margin-bottom: 80px;
	}
}
/* ================================================
	products
================================================== */
#products {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	#products {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.products-info {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}
.products-info figcaption {
	width: 570px;
}
@media screen and (max-width:740px) {
	.products-info figcaption {
		width: 100%;
	}
}
.products-info h2 {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 1em;
}
@media screen and (max-width:740px) {
	.products-info h2 {
		font-size: 2.4rem;
	}
}
.products-info img {
	margin-right: 100px;
}
@media screen and (max-width:740px) {
	.products-info img {
		width: inherit;
		margin: 20px auto 0;
	}
}
.products-catalog {
	width: 497px;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.products-catalog {
		width: 100%;
		margin-bottom: 60px;
	}
}
.products-item {
	margin-bottom: 120px;
}
.products-item:last-of-type {
	margin-bottom: 0;
}
@media screen and (max-width:740px) {
	.products-item {
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
        margin-bottom: 10px;
	}
	.products-item:last-of-type {
		margin-bottom: 0;
    }
	.products-item.open {
		margin-bottom: 60px;
	}
    .products-item.open:last-of-type {
		margin-bottom: 0;
	}
	.products-item .subttl {
		position: relative;
		width: calc(100% + 40px);
		padding: 18px 1em;
		margin: 0 -20px 0;
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
	}
	.products-item.open .subttl {
		margin-bottom: 20px;
	}
	.products-item .subttl::before,
	.products-item .subttl::after {
		position: absolute;
		content: "";
		display: block;
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
		background: #fff;
		right: 10px;
		top: 50%;
		width: 18px;
		height: 3px;
		transform: translate(-50%, -50%);
	}
	/* そのうち1本を縦にする */
	.products-item .subttl::before {
		transform: translate(-50%, -50%) rotate(90deg);
	}
	/* プラスアイコンクリック後、マイナスにする */
	.products-item.open .subttl::before {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	.products-switch {
		display: none;
	}
}
.products-item .maker_name {
	color: var(--keycolor);
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.2;
	border-bottom: 2px solid var(--keycolor);
	padding-bottom: 10px;
	margin-bottom: 20px;
	width: 100%;
}
@media screen and (max-width:740px) {
	.products-item .maker_name {
		font-size: 2.0rem;
		margin-bottom: 10px;
	}
	.products-item .maker_name:not(:first-of-type) {
		margin-top: 50px;
	}
}
.products-item .maker_expl {
	line-height: 1.7;
	margin-bottom: 30px;
}
.products-item .maker_expl span {
	font-size: 1.3rem;
}
.products-item .maker_expl a {
	text-decoration: underline;
}
.products-item .maker_expl a.hover {
	text-decoration: none;
}
.products-item_box {
	width: 100%;
	padding: 25px;
	border: 4px solid #D6E4EA;
	margin-bottom: 50px;
}
.products-item_box:last-of-type {
	margin-bottom: 0;
}
@media screen and (max-width:740px) {
	.products-item_box {
		padding: 15px;
		margin-bottom: 20px;
	}
}
.products-item_box .name {
	color: var(--keycolor);
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.2;
	width: 470px;
	border-bottom: 2px solid var(--keycolor);
	padding-bottom: 10px;
	margin-bottom: 10px;
}
@media screen and (max-width:740px) {
	.products-item_box .name {
		position: relative;
		width: 100%;
		font-size: 2.0rem;
		border-bottom: none;
		padding: 0 35px 0 0;
		margin-bottom: 0;
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
	}
	.products-item_info.open .name {
		position: relative;
		width: 100%;
		font-size: 2.0rem;
		border-bottom: 2px solid var(--keycolor);
		padding-bottom: 5px;
		margin-bottom: 10px;
	}
	.products-item_box .name::before,
	.products-item_box .name::after {
		position: absolute;
		content: "";
		display: block;
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
		background: var(--keycolor);;
		right: 0;
		top: 50%;
		width: 18px;
		height: 3px;
		transform: translate(-50%, -50%);
	}
	/* そのうち1本を縦にする */
	.products-item_box .name::before {
		transform: translate(-50%, -50%) rotate(90deg);
	}
	/* プラスアイコンクリック後、マイナスにする */
	.products-item_info.open .name::before {
		transform: translate(-50%, -50%) rotate(0deg);
	}
}





.products-item_box p {
	line-height: 1.7;
	margin-bottom: 30px;
	width: 470px;
}
@media screen and (max-width:740px) {
	.products-item_box p {
		width: 100%;
		margin-bottom: 15px;
	}
}

.products-item_box span {
	display: inline-block;
	color: var(--white);
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
	background-color: #717171;
	padding: 8px 18px;
	margin: 0 10px 30px 0;
}
.products-item_box .ok {
	background-color: #CE3608;
}
.products-item_box .rental {
	background-color: #108336;
}
@media screen and (max-width:740px) {
	.products-item_box span {
		font-size: 1.5rem;
		padding: 6px 14px;
		margin-bottom: 10px;
	}
}
.products-item_box table {
	width: 470px;
}
@media screen and (max-width:740px) {
	.products-item_box table {
		width: 100%;
	}
}

.products-item_box table th,
.products-item_box table td {
	border: 1px solid #7B7B7B;
	padding: 10px;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
.products-item_box table th {
	text-align: center;
	color: var(--keycolor);
	font-weight: 500;
	background-color: var(--blue);
	width: 80px;
}
.products-item_box table td {
	width: 390px;
	font-size: 1.5rem;
}
@media screen and (max-width:740px) {
	.products-item_box table th,
	.products-item_box table td {
		display: block;
		width: 100%;
	}
}
.products-item_box table td li {
	position: relative;
	padding: 0 0  5px 1.2em;
}
.products-item_box table td li::before {
	content: "";
	position: absolute;
	display: block;
	background-color: var(--keycolor);
	width: 15px;
	height: 15px;
	border-radius: 15px;
	left: 0;
	top: 4px;
}
.products-item_box table td li:last-of-type {
	padding-bottom: 0;
}
.products-item_box figure {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 440px;
	height: auto;
	overflow: hidden;
	margin-top: -50px;
}
@media screen and (max-width:740px) {
	.products-item_box figure {
		width: 100%;
		height: auto;
		overflow: auto;
		margin-top: 20px;
	}
}
.products-item_box figure img {
	height: auto;
	width: 100%;
}
.products-item_box a {
	width: 496px;
	margin: 30px auto 0;
}
@media screen and (max-width:740px) {
	.products-item_box a {
		width: 100%;
	}
}

.products-item_box .databox {
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (max-width:740px) {
	.products-item_box .databox {
		display: none;
	}
}
.goods-detail {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.goods-detail {
		margin-bottom: 60px;
	}
}
.goods-detail_info {
	order: 2;
	width: 480px;
}
@media screen and (max-width:740px) {
	.goods-detail_info {
		order: 1;
		width: 100%;
		margin-bottom: 25px;
	}
}
.goods-detail_info h1 {
	color: var(--keycolor);
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.goods-detail_info h1 {
		font-size: 2.6rem;
		margin-bottom: 20px;
	}
}
.goods-detail_info .anno {
	line-height: 1.4;
	margin-bottom: 1em;
}
.goods-detail_info .price {
	color: #D53232;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	border-bottom: 1px solid #C1C1C1;
	padding-bottom: 15px;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.goods-detail_info .price {
		padding-bottom: 10px;
		margin-bottom: 20px;
	}
}
.goods-detail_info .price strong {
	font-size: 2.8rem;
}
.goods-detail_info .version {
	line-height: 1.7;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.goods-detail_info .version {
		margin-bottom: 20px;
	}
}
.goods-detail_info .table {
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.goods-detail_info .table {
		overflow: auto;
	}
}
.goods-detail_info .table table {
	width: 100%;
	font-size: 1.5rem;
}
@media screen and (max-width:740px) {
	.goods-detail_info .table table {
		width: inherit;
	}
}


.goods-detail_info .table table th,
.goods-detail_info .table table td {
	border: 1px solid #7B7B7B;
	padding: 10px 6px;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
	text-align: center;
}
.goods-detail_info .table table thead th {
	background-color: var(--blue);
	word-break: keep-all;
	font-weight: 500;
	text-align: center;
}
.goods-detail_info .table table tbody th {
	background-color: #F0F0F0;
}
.goods-detail_info .table table tbody td.price {
	color: #D53232;
	font-weight: bold;
}
.goods-detail_info .table table tbody td.spec {
    text-align: left;
    padding-left: 1rem;
}
.goods-detail_info .suppl {
	line-height: 1.4;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	.goods-detail_info .suppl {
		margin-bottom: 30px;
	}
}
.goods-detail_info .suppl li strong {
	color: #D53232;
}
.goods-detail_info input[type='submit'].goods-detail_btn {
	width: 480px;
	margin-bottom: 25px;
	background-color: var(--keycolor);
	border: 1px solid var(--keycolor);
	font-size: 1.7rem;
	border-radius: 35px;
	padding: inherit;
	background-image: url(../images/ico_button.svg);
	background-repeat: no-repeat;
	background-position: 94% center;
  text-align: center;
}
@media screen and (max-width:740px) {
	.goods-detail_info input[type='submit'].goods-detail_btn {
		width: 100%;
	}
}
.goods-detail_info input[type='submit'].goods-detail_btn.link-blue.hover {
	color: var(--keycolor);
	background-color: var(--white);
	background-image: url(../images/ico_button_hover.svg);
	background-position: 96% center;
}
.goods-detail_gallery {
	order: 1;
	width: 460px;
}
@media screen and (max-width:740px) {
	.goods-detail_gallery{
		order: 2;
		width: 100%;
	}
}
#goods-detail_gallery_slider {
	width: 100%;
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {	
	#goods-detail_gallery_slider {
		margin-bottom: 5px;
	}
}
#goods-detail_gallery_slider .slick-slide {
	width: 460px;
	height: 460px;
	overflow: hidden;
}
@media screen and (max-width:740px) {	
	#goods-detail_gallery_slider .slick-slide {
		width: 100%;
		height: auto;
	}
}
#goods-detail_gallery_slider img {
	width: 100%;
}
#goods-detail_gallery_thumbs .slick-slide {
	width: 100px!important;
	height: 100px!important;
	overflow: hidden;
	cursor: pointer;
}
@media screen and (max-width:740px) {	
	#goods-detail_gallery_thumbs .slick-slide {
		width: 22.75%!important;
		height: auto;
	}
}		
#goods-detail_gallery_thumbs .slick-slide:not(:last-of-type) {
	margin-right: 20px;
}
@media screen and (max-width:740px) {	
	#goods-detail_gallery_thumbs .slick-slide:not(:last-of-type) {
		margin-right: 3%;
	}
}
#goods-detail_gallery_thumbs img {
	width: 100%;
	filter: brightness(70%);
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
#goods-detail_gallery_thumbs .slick-current img{
	filter: brightness(120%);
	transform: scale(1.05);
}
#goods-detail_gallery_thumbs .slick-prev,
#goods-detail_gallery_thumbs .slick-next {
	display: none!important;
}
.goods-detail_youtube {
	width: 100%;
	height: auto;
	position: relative;
	padding: calc(315 / 560 * 100%) 0 0;
	margin-top: 50px;
}
.goods-detail_youtube div {
    width: 100%;
    height: auto;
    position: relative;
    padding: calc(315 / 560 * 100%) 0 0;
    margin-top: 20px;
}
.goods-detail_youtube div:first-child {
    margin-top: 50px;
}
.goods-detail_youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.goods-detail_data {
	line-height: 1.7;
	margin-bottom: 60px;
}
@media screen and (max-width:740px) {
	.goods-detail_data {
		margin-bottom: 30px;
	}
}
.goods-detail_data_table {}
.goods-detail_data_table table {
	width: 100%;
	font-size: 1.5rem;
}
.goods-detail_data_table table th,
.goods-detail_data_table table td {
	border: 1px solid #7B7B7B;
	padding: 10px 1em;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
.goods-detail_data_table table th {
	background-color: var(--blue);
	word-break: keep-all;
	color: var(--keycolor);
	font-weight: bold;
	text-align: center;
	width: 150px;
}
.goods-detail_data_table table .cell01 {
	background-color: #FCF6DA;
	color: #9D6331;
}
.goods-detail_data_table table td {
	width: calc(100% - 150px);
}
.goods-detail_data_table table td a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.goods-detail_data_table table td a.hover {
	text-decoration: none;
}
.goods-detail_data_table table td .mb10 {
	margin-bottom: 10px;
}
.goods-detail_data_table table td ol li,
.goods-detail_data_table table td ul li {
	text-indent: -1em;
	padding: 0 0 4px 1em;
}
.goods-detail_data_table table td ul li:last-of-type,
.goods-detail_data_table table td ol li:last-of-type {
	padding-bottom: 0;
}
@media screen and (max-width:740px) {
	.goods-detail_data_table table th {
		display: block;
		width: 100%;
		text-align: left;
	}
	.goods-detail_data_table table td {
		padding: 1em;
		display: block;
		width: 100%;
	}
}
/* ================================================
	law
================================================== */
#law {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	#law {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
#law p {
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	#law p {
		margin-bottom: 40px;
	}
}
#law .text {
	margin-bottom: 20px;
}
#law .itemization {
	line-height: 1.6;
	padding-left: 1em;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	#law .itemization {
		margin-bottom: 40px;
	}
}
#law .itemization li {
	text-indent: -1em;
	padding: 0 0 8px 1em;
}
#law .itemization li:last-of-type {
	padding-bottom: 0;
}
#law .bullet {
	padding-left: 2.5em;
	margin-bottom: 50px;
}
#law .bullet.m20 {
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	#law .bullet {
		margin-bottom: 40px;
	}
}
#law .bullet li {
	list-style-type: decimal;
	padding-bottom: 8px;
}
#law .bullet li:last-of-type {
	padding-bottom: 0;
}
.enactment-revision {
	text-align: right;
	line-height: 1.8;
}
#law .low-act_text {
	line-height: 1.75;
	margin-bottom: 30px;
}
#law .low-act_text a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
#law .low-act_text a.hover {
	text-decoration: none;
}
.low-table:not(:last-of-type) {
	margin-bottom: 80px;
}
.low-table table {
	width: 100%;
	font-size: 1.5rem;
}
.low-table table a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.low-table table a.hover {
	text-decoration: none;
}
.low-table table th,
.low-table table td {
	border: 1px solid #7B7B7B;
	padding: 10px 1em;
	line-height: 1.45;
	font-weight: normal;
	vertical-align: middle;
}
.low-table table th {
	background-color: var(--blue);
	word-break: keep-all;
	color: var(--keycolor);
	font-weight: bold;
	text-align: center;
	width: 200px;
}
.low-table table td {
	width: calc(100% - 200px);
}
@media screen and (max-width:740px) {
	.low-table table th {
		display: block;
		width: 100%;
		text-align: left;
	}	
	.low-table table td {
		padding: 1em;
		display: block;
		width: 100%;
	}
}
.low-table table .person {
	display: flex;
	flex-wrap: wrap;
}
.low-table table .person dt {
	font-weight: normal;
	width: 4em;
}
@media screen and (max-width:740px) {
	.low-table table .person dt {
		font-weight: bold;
		width: 100%;
	}
}
.low-table table .person dd {
	width: calc(100% - 4em);
}
@media screen and (max-width:740px) {
	.low-table table .person dd {
		width: 100%;
	}
}
#law .low-table table p {
	font-weight: bold;
	margin-bottom: 10px;
}
.low-table table .payment {
	padding: 0 0 2em 2em;
}
@media screen and (max-width:740px) {
	.low-table table .payment {
		padding: 0 0 2em 10px;
	}
}
.low-table table .payment:last-of-type {
	padding-bottom: 0;
}
.low-table table .payment dd {
	padding: 0 0 1em 1em;
}
@media screen and (max-width:740px) {
	.low-table table .payment dd {
		padding: 0 0 1em 10px;
	}
}
.low-table table .payment dd:last-of-type {
	padding-bottom: 0;
}
.low-table table .postage dd {
	padding: 0 0 1em 1em;
}
.low-table table .postage dd:last-of-type {
	padding-bottom: 0;
}
.low-table table li {
	text-indent: -1em;
	padding: 0 0 4px 1em;
}
.low-table table li:last-of-type {
	padding-bottom: 0;
}
/* ================================================
	information
================================================== */
#information {
	padding-top: 90px;
	padding-bottom: var(--mainlast);
}
@media screen and (max-width:740px) {
	#information {
		padding-top: 40px;
		padding-bottom: var(--mainlast_sp);
	}
}
.information-cata {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 40px;
}
@media screen and (max-width:740px) {
	.information-cata {
		justify-content: space-between;
		margin-bottom: 30px;
	}
}
.information-cata li {
	width: 100px;
	height: 40px;
	margin-right: 10px;
}
@media screen and (max-width:740px) {
	.information-cata li {
		width: 32%;
		margin-right: 0;
	}
}
.information-cata li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-weight: bold;
	color: var(--keycolor);
	border: 1px solid var(--keycolor);
	background-color: var(--white);
	border-radius: 40px;
}
.information-cata li a.hover,
.information-cata li a.current {
	color: var(--white);
	background-color: var(--keycolor);
}
.information-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	border-top: 1px dotted var(--black);
}
.information-list li {
	width: 100%;
	border-bottom: 1px dotted var(--black);
}
.information-list li a {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 20px 20px;
	line-height: 1.5;
}
@media screen and (max-width:740px) {
	.information-list li a {
		padding: 23px 2px;
	}
}
.information-list li time {
	width: 100px;
}
@media screen and (max-width:740px) {
	.information-list li time {
		width: 90px;
	}
}
.information-list li span {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	line-height: 1;
	width: 82px;
	height: 23px;
	border: 1px solid var(--black);
	margin-right: 30px;
}
.information-list li p {
	width: calc(100% - 100px - 112px);
}
@media screen and (max-width:740px) {
	.information-list li p {
		width: 100%;
		padding-top: 8px;
	}
}

.information-list li a.hover p {
	color: var(--keycolor);
}
.sns-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-top: 50px;
}
@media screen and (max-width:740px) {
	.sns-list {
		margin-top: 30px;
	}
}
.sns-list li {
	margin: 0 15px;
}
.sns-list li a.hover img {
	filter: saturate(0%) blur(0.5px);
}
.news {}
.news-cata {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100px;
	height: 40px;
	font-size: 1.5rem;
	font-weight: bold;
	color: var(--white);
	background-color: var(--keycolor);
	border-radius: 40px;
	margin-right: 30px;
}
@media screen and (max-width:740px) {
	.news-cata {
		margin-right: 15px;
	}
}
.news-time {
	display: inline-flex;
	align-items: center;
	font-size: 1.8rem;
	font-weight: bold;
	color: var(--keycolor);
}
.news-ttl {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 35px 0;
}
@media screen and (max-width:740px) {
	.news-ttl {
		font-size: 2.4rem;
		padding: 30px 0;
	}
}
.news-detail {
	padding: 40px 0 26px;
	margin-bottom: 80px;
	border-top: 1px solid #333333;
	border-bottom: 1px solid #333333;
}
@media screen and (max-width:740px) {
	.news-detail {
		padding: 30px 0 16px;
		margin-bottom: 40px;
	}
}
.news-detail img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.news-detail a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.news-detail a.hover {
	text-decoration: none;
}
.news-detail h2 {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	padding: 14px 1em;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	color: var(--keycolor);
	border: 5px solid #ABD9EB;
}
@media screen and (max-width:740px) {
	.news-detail h2 {
		font-size: 2.0rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.news-detail h3 {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	padding: 14px 35px;
	margin-bottom: 35px;
	display: flex;
	align-items: center;
	color: var(--white);
  background-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.news-detail h3 {
		font-size: 1.8rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.news-detail h4 {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	padding: 11px 15px;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
  background-color: #D7EEF7;
	border-left: 10px solid var(--keycolor);
}
@media screen and (max-width:740px) {
	.news-detail h4 {
		font-size: 1.6rem;
		padding: 12px 1em;
		margin-bottom: 20px;
	}
}
.news-detail h5 {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	margin-bottom: 15px;
}
@media screen and (max-width:740px) {
	.news-detail h5 {
		font-size: 1.5rem;
	}
}
.news-detail h6 {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	width: 100%;
	margin-bottom: 15px;
}
@media screen and (max-width:740px) {
	.news-detail h6 {
		font-size: 1.6rem;
	}
}
.news-detail p {
	padding-bottom: 20px;
}
.news-detail .paragraphIntro {
	border: 1px solid #C6C6C6;
	border-radius: 8px;
	padding: 20px 25px;
	margin-bottom: 40px;
}
.news-detail .paragraphIntro p,
.news-detail .paragraphIntro ol,
.news-detail .paragraphIntro ul {
	padding-bottom: 0;
	margin-bottom: 0;
}
.news-detail blockquote {
	border-top: 1px solid #BEBEBE;
	border-bottom: 1px solid #BEBEBE;
	line-height: 1.67;
	padding: 23px 0;
	margin: 0 0 50px;
}
@media screen and (max-width:740px) {
	.news-detail blockquote {
		padding: 15px 0;
		margin: 0 0 30px;
	}
}
.news-detail blockquote p,
.news-detail blockquote ol,
.news-detail blockquote ul {
	padding-bottom: 0;
	margin-bottom: 0;
}
.news-detail .mt-be-columns {
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.news-detail .mt-be-columns {
		flex-wrap: wrap;
	}
}
.news-detail .mt-be-columns .mt-be-column {
	width: 50%;
}
@media screen and (max-width:740px) {
	.news-detail .mt-be-columns .mt-be-column {
		width: 100%;
	}
}
.news-detail pre {
	font-size: 1.4rem;
	width: 100%;
	white-space: pre-wrap;
	border: 1px solid #C6C6C6;
	padding: 20px 25px;
	margin-bottom: 40px;
}
.news-detail pre p,
.news-detail pre ol,
.news-detail pre ul {
	padding-bottom: 0;
	margin-bottom: 0;
}
.news-detail ol {
	margin-bottom: 50px;
	list-style-type: decimal;
	margin-left: 25px;
}
.news-detail ol li {
	line-height: 1.4;
	padding-bottom: 8px;
	word-break: break-word;
	overflow-wrap: break-word;
	list-style-position: outside;
}
.news-detail ul {
	margin: 0 0 40px 6px;
	list-style-type: disc;
}
.news-detail ul li {
  margin-left: 1em;
	line-height: 1.4;
	padding-bottom: 8px;
	word-break: break-word;
	overflow-wrap: break-word;
	list-style-position: outside;
}
.news-detail .topics {
	background-color: #F7F7F7;
	border: 1px solid #C6C6C6;
	padding: 20px 30px;
	font-size: 1.4rem;
	margin-bottom: 50px;
}
.news-detail .topics h5 {
	font-size: 1.6rem;
	font-weight: normal;
	padding-bottom: 0;
	margin-bottom: 0;
}
.news-detail .topics p {
	padding-bottom: 0;
	margin-bottom: 0;
}
/* ================================================
	login
================================================== */
#login h2 {
	color: var(--keycolor);
	font-size: 3.4rem;
	font-weight: bold;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	#login h2 {
		color: var(--keycolor);
		font-size: 2.6rem;
		text-align: center;
		margin-bottom: 30px;
	}
}
#login form dl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	font-size: 1.8rem;
	width: 100%;
	margin: 0;
	padding: 0;
}
#login form dl dt {
	float: none;
	font-weight: normal;
	width: 320px;
}
@media screen and (max-width:740px) {
	#login form dl dt {
		width: 100%;
	}
}
#login form dl dd {
	display: table-cell;
	width: calc(100% - 320px);
	padding: 15px 0;
}
@media screen and (max-width:740px) {
	#login form dl dd {
		width: 100%;
		padding: 5px 0 10px;
	}
}
#login form input[type="text"],
#login form input[type="email"],
#login form input[type="password"] {
	width: 400px;
	border-radius: 0;
	padding: 1em;
	background-color: #fff;
	border: 1px solid #B2B2B2;
}
@media screen and (max-width:740px) {
	#login form input[type="text"],
	#login form input[type="email"],
	#login form input[type="password"] {
		width: 100%;
		height: 50px;
	}
}
#login form .submit {
	width: 480px;
	height: 70px;
	margin: 45px auto 100px;
}
@media screen and (max-width:740px) {
	#login form .submit {
		width: 100%;
		height: 50px;
		margin: 30px auto 60px;
	}
}
#login form input[type="submit"] {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	text-align: center;
	background-color: var(--keycolor);
	border: 1px solid var(--keycolor);
	border-radius: 35px;
	background-image: url(../images/ico_button.svg);
	background-repeat: no-repeat;
	background-position: 94% center;
}
#login form input[type="submit"].hover {
	color: var(--keycolor);
	background-color: #fff;
	background-image: url(../images/ico_button_hover.svg);
	background-position: 96% center;
}
.login_forgot {
	text-align: center;
	margin: -80px 0 50px;
}
@media screen and (max-width:740px) {
	.login_forgot {
		margin: -40px 0 40px;
	}
}
.login_forgot a {
	color: var(--textlinkcolor);
	text-decoration: underline;
}
.login_forgot a.hover {
	text-decoration: none;
}
.login_new_register {
	background-color: #EBEBEB;
	padding: 50px;
	text-align: center;
}
@media screen and (max-width:740px) {
	.login_new_register {
		padding: 20px 15px;
		text-align: left;
	}
}
.login_new_register p {
	font-size: 2.2rem;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	.login_new_register p {
		font-size: 1.6rem;
		line-height: 1.5;
		margin-bottom: 20px;
	}
}

.login_new_register a {
	width: 480px;
	margin: 0 auto;
}
@media screen and (max-width:740px) {
	.login_new_register a {
		width: 100%;
	}
}
/* ================================================
	registration
================================================== */
#registration h2 {
	color: var(--keycolor);
	font-size: 3.4rem;
	font-weight: bold;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	#registration h2 {
		color: var(--keycolor);
		font-size: 2.6rem;
		text-align: center;
		margin-bottom: 30px;
	}
}
.registration_note {
	color: var(--red);
	font-size: 2.8rem;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
	padding: 10px;
	margin-bottom: 20px;
	border: 5px solid var(--red);
}
@media screen and (max-width:740px) {
	.registration_note {
		font-size: 2.0rem;
		padding: 10px;
		margin-bottom: 20px;
	}
}
.registration_note_text {
	font-size: 1.8rem;
	text-align: center;
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	.registration_note_text {
		font-size: 1.6rem;
		text-align: left;
		margin-bottom: 30px;
	}
}
.registration_note_text strong {
	color: var(--red);
}
.registration_conf {
	border: 5px solid var(--black);
}
.registration_conf h3 {
	color: var(--white);
	font-size: 2.8rem;
	font-weight: bold;
	height: 72px;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--black);
}
@media screen and (max-width:740px) {
	.registration_conf h3 {
		font-size: 2.0rem;
		height: auto;
		width: 100%;
		padding: 6px 0;
	}
}
.registration_conf_note {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	padding: 30px 30px 20px;
}
@media screen and (max-width:740px) {
	.registration_conf_note {
		font-size: 1.6rem;
		line-height: 1.7;
		text-align: left;
		padding: 15px 10px;
	}
}
.registration_conf ol {
	padding: 0 35px 10px;
}
@media screen and (max-width:740px) {
	.registration_conf ol {
		padding: 0 10px 10px;
	}
}
.registration_conf li p:first-of-type {
	font-size: 2.8rem;
	font-weight: bold;
	text-indent: -1em;
	padding-left: 1em;
}
@media screen and (max-width:740px) {
	.registration_conf li p:first-of-type {
		font-size: 2.0rem;
		line-height: 1.5;
	}
}
.registration_conf li p:last-of-type {
	font-size: 1.5rem;
	line-height: 1.7;
	padding: 0 30px 25px;
}
@media screen and (max-width:740px) {
	.registration_conf li p:last-of-type {
		padding: 0 20px 20px;
	}
}
/* ================================================
	mypage
================================================== */
#mypage h2 {
	margin-bottom: 0;
}
#mypage ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 30px 20px;
	background-color: #E8E8E8;
	margin-bottom: 80px;
}
@media screen and (max-width:740px) {
	#mypage ul {
		padding: 20px;
		margin-bottom: 60px;
	}
}
#mypage ul li {
	width: 235px;
	height: 70px;
}
@media screen and (max-width:740px) {
	#mypage ul li {
		width: 100%;
		height: 50px;
		margin-bottom: 15px;
	}
	#mypage ul li:last-of-type {
		margin-bottom: 0;
	}
}
#mypage ul li a {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	color: var(--white);
	font-size: 1.7rem;
	font-weight: bold;
	background-color: #6E99AA;
	border: 1px solid #6E99AA;
}
#mypage ul li a.hover {
	color: var(--keycolor);
	background-color: var(--white);
}
#mypage ul li a::after {
	display: block;
	position: absolute;
	content: "";
	right: 8px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--white);
}
#mypage ul li a.hover::after {
	right: 5px;
	border-color: transparent transparent transparent var(--keycolor);
}
#mypage h3 {
	color: var(--keycolor);
	font-size: 3.4rem;
	font-weight: bold;
	margin-bottom: 25px;
}
@media screen and (max-width:740px) {
	#mypage h3 {
		color: var(--keycolor);
		font-size: 2.6rem;
		text-align: center;
		margin-bottom: 15px;
	}
}
.mypage_joining {
	margin-bottom: 80px;
}
.mypage_joining table {
	width: 100%;
}
.mypage_joining table th,
.mypage_joining table td {
	border: 1px solid #7B7B7B;
	padding: 14px 1em;
	font-size: 1.5rem;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
.mypage_joining table th {
	color: var(--keycolor);
	font-weight: bold;
	white-space: nowrap;
	background-color: var(--blue);
}
.mypage_joining table td {
	width: 40%;
}
.mypage_joining table td:nth-of-type(2) {
	width: 18%;
}
.mypage_joining table td:nth-of-type(3) {
	width: 22%;
}
.mypage_joining table td:last-of-type {
	width: 20%;
	text-align: center;
}
.mypage_joining table td:last-of-type span {
	display: inline-block;
	color: var(--red);
	font-size: 1.1rem;
	font-weight: 500;
	padding-bottom: 3px;
}
.mypage_joining table td:last-of-type input[type="submit"],
.mypage_joining table td:last-of-type a {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 172px;
	height: 42px;
	color: var(--white);
	font-weight: bold;
	background-color: #6E99AA;
	border: 1px solid #6E99AA;
	margin: 0 auto;
}
.mypage_joining table td:last-of-type a {
	margin: 10px auto 0;
}
.mypage_joining table td:last-of-type a img {
	margin: 3px 0 0 3px;
}
.mypage_joining table td:last-of-type input[type="submit"].hover,
.mypage_joining table td:last-of-type a.hover {
	color: var(--keycolor);
	background-color: var(--white);
}
@media screen and (max-width:740px) {
	.mypage_joining {
		margin-bottom: 60px;
	}
  .mypage_joining table {
    border: 0;
    width:100%;
  }
  .mypage_joining table th {
    background-color: #167F92;
    display: block;
  }
 .mypage_joining table thead {
	 display: none;
  }
 .mypage_joining table tr {
    display: block;
    margin-bottom: 1em;
		border-top: 1px solid #7B7B7B;
		border-bottom: 1px solid #7B7B7B;
  }
 .mypage_joining table tr:last-of-type {
    margin-bottom: 0;
  }
	.mypage_joining table td,
	.mypage_joining table td:nth-of-type(2),
	.mypage_joining table td:nth-of-type(3),
	.mypage_joining table td:last-of-type {
    display: block;
    position: relative;
		width: 100%;
    padding-left: 9em;
		border-top: none;
  }
 .mypage_joining table td::before {
    content: attr(data-label);
    position: absolute;
    text-align: left;
    width: 8em;
    height: 100%;
    left: 0;
    display: block;
    top: 0;
    padding: 14px 0.8em;
    color: var(--keycolor);
    font-weight: bold;
    white-space: nowrap;
    background-color: var(--blue);
    border-right: 1px solid #000;
  }
 .mypage_joining table td:last-child {
    border-bottom: none;
  }
	.mypage_joining table td:last-of-type input[type="submit"],
	.mypage_joining table td:last-of-type a {
		width: 100%;
		height: auto;
		padding: 10px;
		font-size: 1.5rem;
	}
	.mypage_joining table td:last-of-type a img {
		width: auto;
	}
}
.mypage_attendance table {
	width: 100%;
}
.mypage_attendance table th,
.mypage_attendance table td {
	border: 1px solid #7B7B7B;
	padding: 14px 1em;
	font-size: 1.5rem;
	line-height: 1.4;
	font-weight: normal;
	vertical-align: middle;
}
.mypage_attendance table th {
	color: var(--keycolor);
	font-weight: bold;
	white-space: nowrap;
	background-color: var(--blue);
}
.mypage_attendance table td {
	width: 82%;
}
.mypage_attendance table td:last-of-type {
	width: 18%;
}
@media screen and (max-width:740px) {
  .mypage_attendance table th {
    background-color: #167F92;
    display: block;
  }
 .mypage_attendance table thead {
	 display: none;
  }
 .mypage_attendance table tr {
    display: block;
    margin-bottom: 1em;
		border-top: 1px solid #7B7B7B;
		border-bottom: 1px solid #7B7B7B;
  }
 .mypage_attendance table tr:last-of-type {
    margin-bottom: 0;
  }
	.mypage_attendance table td,
	.mypage_attendance table td:last-of-type {
    display: block;
    position: relative;
		 width: 100%;
    padding-left: 8em;
		border-top: none;
  }
 .mypage_attendance table td::before {
    content: attr(data-label);
    position: absolute;
    text-align: left;
    width: 7em;
    height: 100%;
    left: 0;
    display: block;
    top: 0;
    padding: 14px 1em;
    color: var(--keycolor);
    font-weight: bold;
    white-space: nowrap;
    background-color: var(--blue);
    border-right: 1px solid #000;
  }
 .mypage_attendance table td:last-child {
    border-bottom: none;
  }
}
/* ================================================
	TOP
================================================== */
#top_main {
	height: auto;
	padding-bottom: 100px;
	overflow: hidden;
}
@media screen and (max-width:740px) {
	#top_main {
		padding-bottom: 50px;
	}
}
#top_main #top_slider {
	width: 100%;
	height: calc(100vh - 180px);
}
@media screen and (max-width:740px) {
	#top_main #top_slider {
		height: calc(100vh - 200px);
	}
}
@media (orientation: landscape) and (max-width:740px) {
	#top_main #top_slider {
		height: 100vh;
	}
}
#top_main #top_slider [class^="top_slider_img"] {
	height: calc(100vh - 180px);
  background-size: cover;
  background-position: center bottom ;
	background-repeat: no-repeat;
}
@media screen and (max-width:740px) {
	#top_main #top_slider [class^="top_slider_img"] {
		height: calc(100vh - 200px);
	}
}
@media (orientation: landscape) and (max-width:740px) {
	#top_main #top_slider [class^="top_slider_img"] {
		height: 100vh;
	}
}
#top_main #top_slider .top_slider_img01 {
	background-image: url("../images/top_main01.jpg");
}
#top_main #top_slider .top_slider_img02 {
	background-image: url("../images/top_main02.jpg");
}
#top_main #top_slider .top_slider_img03 {
	background-image: url("../images/top_main03.jpg");
}
@media screen and (max-width:740px) {
	#top_main #top_slider .top_slider_img01 {
	  background-position: 39% bottom;
	}
	#top_main #top_slider .top_slider_img02 {
	  background-position: 70% bottom;
	}
}
#top_main #top_slider.slick-initialized {
  opacity: 1;
}
#top_main .slick-slide {
	height: calc(100vh - 180px);
	margin: 0;
}
@media screen and (max-width:740px) {
	#top_main .slick-slide {
		height: calc(100vh - 200px);
	}
}
@media (orientation: landscape) and (max-width:740px) {
	#top_main .slick-slide {
		height: 100vh;
	}
}
#top_main .slick-list {
	height: 100%;
}
#top_main .slick-dots {
	position: relative;
	z-index: 3;
	text-align:center;
	margin-top: 30px;
}
@media screen and (max-width:740px) {
	#top_main .slick-dots {
		margin-top: 20px;
	}
}
#top_main .slick-dots li {
	display:inline-block;
	margin: 0 8px;
}
#top_main .slick-dots button {
	color: transparent;
	outline: none;
	width: 45px;
	height: 2px;
	display:block;
	background: #D3D3D3;
}
#top_main .slick-dots .slick-active button {
	background: var(--keycolor);
}
#top_main .top_copy {
	position: absolute;
	top: 20%;
	width: 396px;
	height: 260px;
	padding: 40px 35px;
	background: transparent;
	backdrop-filter: blur(8px) brightness(120%);
	background-color: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width:740px) {
	#top_main .top_copy {
		top: 15%;
		width: auto;
		height: auto;
		padding: 20px;
	}
}
@media (orientation: landscape) and (max-width:740px) {
	#top_main .top_copy {
		top: 20%;
	}
}

#top_main .top_copy h1 {
	font-size: 3.6rem;
	font-weight: 900;
	line-height: 1.4;
}
@media screen and (max-width:740px) {
	#top_main .top_copy h1 {
		font-size: 2.4rem;
	}
}
#top_main .top_copy p {
	font-family: var(--enfont);
	font-size: 1.8rem;
	font-weight: 700;
	padding-top: 10px;
}
@media screen and (max-width:740px) {
#top_main .top_copy p:last-of-type {
		font-size: 1.6rem;
		padding-top: 10px;
	}
}
/* 拡大率調整 */
@keyframes fadezoom {
  0% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
  }
}
/* ズームアニメーション */
.animation {
  animation: fadezoom 20s 0.1s forwards;
	transform-origin: bottom;
}


.top_info_pic {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border: 1px solid #707070;
	padding: 11px 40px;
	min-height: 60px;
	margin-bottom: 100px;
}
@media screen and (max-width:740px) {
	.top_info_pic {
		flex-wrap: wrap;
		padding: 10px 20px;
		min-height: 60px;
		margin: 0 20px 50px;
		width: calc(100% - 40px);
		min-width: calc(100% - 40px);
	}
}
.top_info_pic p {
	font-family: var(--enfont);
	font-size: 1.8rem;
	font-weight: bold;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-right: 40px;
	margin-right: 40px;
	border-right: 1px solid #707070;
}
@media screen and (max-width:740px) {
	.top_info_pic p {
		width: 100%;
		padding-right: 0;
		margin: 0 0 6px;
		border-right: none;
		justify-content: center;
	}
}
.top_info_pic dl {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	font-size: 1.5rem;
	line-height: 1.4;
}
.top_info_pic dl dt {
	font-weight: normal;
	width: 17%;
}
@media screen and (max-width:740px) {
	.top_info_pic dl dt {
		width: 100%;
		padding-bottom: 6px;
	}
}
.top_info_pic dl dd {
	font-weight: normal;
	width: 83%;
}
@media screen and (max-width:740px) {
	.top_info_pic dl dd {
		width: 100%;
	}
}

.top_info_pic dl dd a {
	position: relative;
	display: flex;
	width: 100%;
	padding-right: 25px;
}
.top_info_pic dl dd a.hover {
	color: var(--keycolor);
}
.top_info_pic dl dd a::before {
	position: absolute;
	content: "";
	width: 25px;
	height: 25px;
	border: 1px solid var(--keycolor);
	border-radius: 25px;
	background-color: var(--keycolor);
	right: -10px;
	top: calc(50% - 12px);
}
.top_info_pic dl dd a.hover::before {
	background-color: var(--white);
}
.top_info_pic dl dd a::after {
	position: absolute;
	content: "";
	right: -3px;
	top: calc(50% - 5px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent var(--white);
}
.top_info_pic dl dd a.hover::after {
	border-color: transparent transparent transparent var(--keycolor);
}
.top_ttl {
	color: #ABD9EB;
	font-family: var(--enfont);
	font-size: 6.0rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 14px;
}
@media screen and (max-width:740px) {
	.top_ttl {
		font-size: 3.6rem;
		margin-bottom: 14px;
	}
}
.top_subttl {
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	.top_subttl {
		font-size: 2.5rem;
		margin-bottom: 20px;
	}
}
.top_mission {
	overflow: hidden;
	position: relative;
	display: flex;
	justify-content: space-between;
	height: 1072px;
	margin-bottom: 130px;
}
@media screen and (max-width:740px) {
	.top_mission {
		height: auto;
		margin-bottom: 60px;
	}
}
.top_mission .warp {
	position: relative;
}
.top_mission .top_mission_text {
	width: calc(100% - 600px);
	padding-top: 185px;
}
@media screen and (max-width:740px) {
	.top_mission .top_mission_text {
		width: 100%;
		padding-top: 0;
		margin-bottom: 40px;
	}
}
.top_mission .top_ttl {
	margin-bottom: 50px;
}
@media screen and (max-width:740px) {
	.top_mission .top_ttl {
		margin-bottom: 0;
	}
}
.top_mission p:last-of-type {
	font-size: 1.8rem;
	margin-bottom: 2em;
}
@media screen and (max-width:740px) {
	.top_mission p:last-of-type {
		margin-bottom: 1em;
	}
}
.top_mission ul {
	width: 720px;
	position: absolute;
	right: -210px;
	top: 0;
}
@media screen and (max-width:740px) {
	.top_mission ul {
		width: calc(100% + 40px);
		margin: 0 -20px;
		position: relative;
		right: inherit;
		top: inherit;
	}
}
.top_mission ul li {
	position: absolute;
}
@media screen and (max-width:740px) {
	.top_mission ul li {
		position: relative;
	}
}
.top_mission ul li:first-of-type {
	left: 75px;
	z-index: 3;
	width: 650px;
}
@media screen and (max-width:740px) {
	.top_mission ul li:first-of-type {
		left: 30px;
		z-index: 3;
		width: calc(100% - 30px);
		max-width: 100%;
	}
}
.top_mission ul li:nth-of-type(2) {
	top: 637px;
	left: 0;
	z-index: 2;
	width: 440px;
}
@media screen and (max-width:740px) {
	.top_mission ul li:nth-of-type(2) {
		top: -32px;
		left: 0;
		width: 70%;
	}
}
.top_mission ul li:nth-of-type(3) {
	top: 812px;
	left: 370px;
	z-index: 1;
	width: 260px;
}
@media screen and (max-width:740px) {
	.top_mission ul li:nth-of-type(3) {
		top: -52px;
		left:  calc(100% - 56%);
		width: 56%;
	}
}
.top_activity {
	padding: 115px 0 240px;
	background-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	.top_activity {
		padding: 70px 0 1px;
	}
}
.top_activity .top_ttl {
	text-align: center;
}
.top_activity .top_subttl {
	color: var(--white);
	text-align: center;
	margin-bottom: 110px;
}
@media screen and (max-width:740px) {
	.top_activity .top_subttl {
		margin-bottom: 70px;
	}
}
.top_activity_img {
	display: block;
	height: 530px;
	width: 100%;
	margin-bottom: 190px;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (max-width:740px) {
	.top_activity_img {
		height: 340px;
		margin-bottom: 0;
		padding-top: calc(100% - 25px);
	}
}
.top_activity_img.activity01 {
	background-image: url("../images/top_activity01.jpg");
}
.top_activity_img.activity02 {
	background-image: url("../images/top_activity02.jpg");
    background-position: right;
}
@media screen and (max-width:740px) {
    .top_activity_img.activity02 {
        background-image: url("../images/top_activity02_sp.jpg");
    }
}
.top_activity_img.activity03 {
	background-image: url("../images/top_activity03.jpg");
	background-position: center center;
	margin-bottom: 0;
}
.top_activity_our {
	position: absolute;
	width: 420px;
	padding: 25px 40px 40px;
	background-color: var(--white);
	margin-top: -470px;
}
.top_activity_our.activity03 {
	margin-top: -300px;
}
@media screen and (max-width:740px) {
	.top_activity .warp {
		padding: 0;
	}
	.top_activity_our,
	.top_activity_our.activity03 {
		position: relative;
		width: calc(100% - 20px);
		padding: 25px 25px 30px;
		margin: -30px 0 80px;
	}
}
.top_activity_our dt {
	font-size: 3.2rem;
	line-height: 1;
	padding-bottom: 25px;
}
@media screen and (max-width:740px) {
	.top_activity_our dt {
		font-size: 2.2rem;
	}
}
.top_activity_our dt span {
	font-family: var(--enfont);
	color: var(--keycolor);
	font-size: 6.0rem;
	line-height: 1;
	display: block;
	padding-bottom: 8px;
}
@media screen and (max-width:740px) {
	.top_activity_our dt span {
		font-size: 5.0rem;
	}
}
.top_activity_our dd p {
	font-size: 1.8rem;
	line-height: 1.8;
	padding-bottom: 25px;
}
@media screen and (max-width:740px) {
	.top_activity_our dd p {
		font-size: 1.5rem;
		line-height: 1.6;
		padding-bottom: 15px;
	}
}
.top_activity_our dd a {
	width: 100%;
	height: 60px;
}
@media screen and (max-width:740px) {
	.top_activity_our dd a {
		height: 50px;
	}
}
.top_find {
	padding: 150px 0 140px;
}
@media screen and (max-width:740px) {
	.top_find {
		padding: 60px 0 60px;
	}
}
.top_find .top_ttl {
	text-align: center;
}
.top_find .top_subttl {
	text-align: center;
	margin-bottom: 80px;
}
@media screen and (max-width:740px) {
	.top_find .top_subttl {
		margin-bottom: 50px;
	}
}
.top_find_box {
	overflow: hidden;
	height: 580px;
	margin-bottom: 70px;
}
@media screen and (max-width:740px) {
	.top_find_box {
		height: auto;
		margin-bottom: 60px;
	}
}
.top_find_box .warp {
	position: relative;
	display: flex;
	justify-content: space-between;
	height: 100%;
}
@media screen and (max-width:740px) {
	.top_find_box .warp {
		flex-wrap: wrap;
		width: 100%;
	}
}

.top_find_box_text {
	position: relative;
	width: calc(100% - 700px);
}
@media screen and (max-width:740px) {
	.top_find_box_text {
		width: 100%;
		padding-top: 0;
		margin-bottom: 40px;
		order: 2;
	}
}
.top_find_box_text .copy {
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.4;
	padding-bottom: 35px;
}
@media screen and (max-width:740px) {
	.top_find_box_text .copy {
		font-size: 2.5rem;
		padding: 30px 0 25px;
	}
	.top_find_box_text .copy br:not(:first-of-type) {
		display: none;
	}
}
.top_find_box_text .text {
	font-size: 1.8rem;
}
@media screen and (max-width:740px) {
	.top_find_box_text .text {
		font-size: 1.5rem;
		border-bottom: 1px solid #D1D1D1;
		padding-bottom: 1em;
		margin-bottom: 1em;
	}
}
.top_find_box_text span {
	position: absolute;
	left: 0;
	bottom: 0;
	font-size: 1.8rem;
}
@media screen and (max-width:740px) {
	.top_find_box_text span {
		position: relative;
		left: inherit;
		bottom: inherit;
		font-size: 1.5rem;
	}
}
.top_find_box figure {
	width: 850px;
	position: absolute;
	right: -230px;
	top: 0;
}

@media screen and (max-width:740px) {
	.top_find_box figure {
		width: calc(100% + 40px);
		margin: 0 -20px;
		position: relative;
		right: inherit;
		top: inherit;
		order: 1;
	}
}
.top_find_course {
	color: var(--white);
	font-size: 2.2rem;
	font-weight: bold;
	height: 50px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--keycolor);
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.top_find_course {
		font-size: 1.6rem;
	}
}
.top_find_course_box {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 24px;
	border: 6px solid #ABD9EB;
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	.top_find_course_box {
		flex-wrap: wrap;
		padding: 15px 15px 25px;
		border-width: 4px;
		margin-bottom: 20px;
	}
}
.top_find_course_box:last-of-type {
	margin-bottom: 0;
}
.top_find_course_box figure {
	position: relative;
	width: 300px;
	margin-right: 25px;
}
@media screen and (max-width:740px) {
	.top_find_course_box figure {
		width: 100%;
		margin: 0 0 25px;
	}
}
.top_find_course_box figure img {
	width: 100%;
}
.top_find_course_box figure div {
	position: absolute;
	top: -18px;
	left: -18px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 1.2;
	font-weight: bold;
	width: 80px;
	height: 80px;
	border-radius: 80px;
	background-color: #ABD9EB;
}
@media screen and (max-width:740px) {
	.top_find_course_box figure div {
		top: -8px;
		left: -8px;
	}
}
.top_find_course_box figure div.start {
	background-color: #FFD800;
}
.top_find_course_box figure div.end {
	background-color: #676767;
}
.top_find_course_box div {
	position: relative;
	width: 642px;
	line-height: 1.4;
}
.top_find_course_box ul {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
@media screen and (max-width:740px) {
	.top_find_course_box ul {
		margin-bottom: 15px;
	}
}
.top_find_course_box ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	font-size: 1.5rem;
	font-weight: bold;
	height: 30px;
	padding: 0 1em;
	background-color: var(--black);
	margin-right: 1em;
}
@media screen and (max-width:740px) {
	.top_find_course_box ul li {
		font-size: 1.5rem;
		height: auto;
		padding: 4px 10px;
		margin-right: 10px;
	}
}
.top_find_course_box ul li.start {
	background-color: #9B0000;
}
.top_find_course_box ul li.end {
	background-color: #676767;
}
.top_find_course_box .name {
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 10px;
}
@media screen and (max-width:740px) {
	.top_find_course_box .name {
		font-size: 1.6rem;
		margin-bottom: 15px;
	}
}
.top_find_course_box .info {
	display: flex;
	flex-wrap: wrap;
}
.top_find_course_box .info dt {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
	font-weight: 500;
	width: 80px;
	height: 20px;
	border: 1px solid var(--black);
	margin: 2px 20px 10px 0;
}
@media screen and (max-width:740px) {
	.top_find_course_box .info dt {
		width: 100%;
		margin: 0 0 10px 0;
	}
}
.top_find_course_box .info dd {
	display: flex;
	align-items: center;
	font-size: 1.6rem;
	font-weight: 500;
	width: calc(100% - 100px);
	margin-bottom: 10px;
}
@media screen and (max-width:740px) {
	.top_find_course_box .info dd {
		font-size: 1.5rem;
		width: 100%;
		margin-bottom: 20px;
	}
}
.top_find_course_box a {
	position: absolute;
	bottom: 0;
	width: 240px;
	height: 45px;
	min-height: 45px;
	margin-top: 10px;
}
@media screen and (max-width:740px) {
	.top_find_course_box a {
		position: relative;
		bottom: 0;
		width: 100%;
		height: 50px;
		min-height: 50px;
	}
}
.top_find_btn {
	margin: 50px auto 135px;
}
@media screen and (max-width:740px) {
	.top_find_btn {
		margin: 40px auto 50px;
	}
}
.top_find_outdoor {
	overflow: hidden;
	height: 700px;
}
@media screen and (max-width:740px) {
	.top_find_outdoor {
		height: auto;
	}
}
.top_find_outdoor .warp {
	position: relative;
	display: flex;
	justify-content: space-between;
	height: 100%;
}
@media screen and (max-width:740px) {
	.top_find_outdoor .warp {
		flex-wrap: wrap;
		width: 100%;
	}
}
.top_find_outdoor_text {
	position: relative;
	margin-left: calc(100% - 420px);
	width: 420px;
	padding-top: 85px;
}
@media screen and (max-width:740px) {
	.top_find_outdoor_text {
		width: 100%;
		padding-top: 0;
		margin: 0 0 40px;
	}
}
.top_find_outdoor_text .copy {
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.4;
	padding-bottom: 35px;
}
@media screen and (max-width:740px) {
	.top_find_outdoor_text .copy {
		font-size: 2.5rem;
		padding: 30px 0 25px;
	}
	.top_find_outdoor_text .copy br:not(:first-of-type) {
		display: none;
	}
}
.top_find_outdoor_text .text {
	font-size: 1.8rem;
	margin-bottom: 40px
}
@media screen and (max-width:740px) {
	.top_find_outdoor_text .text {
		font-size: 1.5rem;
	}
}
.top_find_outdoor ul {
	width: 720px;
	position: absolute;
	left: -230px;
	top: 0;
}
@media screen and (max-width:740px) {
	.top_find_outdoor ul {
		width: calc(100% + 40px);
		margin: 0 -20px;
		position: relative;
		left: inherit;
		top: inherit;
	}
}
.top_info {
	position: relative;
	padding: 150px 0 135px;
	background-color: #F7F8F8;
}
@media screen and (max-width:740px) {
	.top_info {
		padding: 50px 0;
	}
}
.top_info .warp {
	position: relative;
}
.top_info .top_ttl {
	text-align: center;
}
.top_info .top_subttl {
	text-align: center;
	margin-bottom: 50px;
}
.top_info_btn {
	margin: 50px auto 0;
}
@media screen and (max-width:740px) {
	.top_info_btn {
		margin: 40px auto 0;
	}
}
.top_info .sns-list {
	position: absolute;
	right: 0;
	bottom: 0;
}
@media screen and (max-width:740px) {
	.top_info .sns-list {
		position: relative;
		right: inherit;
		bottom: inherit;
		margin-top: 20px;
	}
}
#sitelink  {
	padding: 75px 0 80px;
}
@media screen and (max-width:740px) {
	#sitelink  {
		padding: 40px 0;
	}
}
#sitelink dl dt {
	position: relative;
	color: var(--keycolor);
	font-size: 1.9rem;
	font-weight: 500;
	line-height: 1;
	padding-left: 1em;
	margin-bottom: 15px;
}
#sitelink dl dt::before {
	content: "";
	position: absolute;
	left: 0;
	top: 10px;
	display: block;
	width: 10px;
	height: 3px;
	background-color: var(--keycolor);
}
@media screen and (max-width:740px) {
	#sitelink dl dt {
		margin-bottom: 10px;
	}
}
#sitelink .relation {
	margin-bottom: 40px;
}
#sitelink .relation ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
#sitelink .relation li {
	width: 320px;
	height: 146px;
}
@media screen and (max-width:740px) {
	#sitelink .relation li {
		width: 100%;
		margin-bottom: 10px;
	}
	#sitelink .relation li:last-of-type {
		margin-bottom: 0;
	}
}
#sitelink .relation li a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	padding: 15px;
	text-align: center;
	border: 1px solid #C7C7C7;
}
#sitelink .relation li a img {
	display: block;
	width: auto;
	margin: 0 auto;
}
#sitelink .relation li a span {
	position: absolute;
	left: 0;
	bottom: 6px;
	width: 100%;
}
#sitelink .relation li a svg {
	position: absolute;
	right: 15px;
	bottom: 15px;
}
#sitelink .relation li a.hover {
	border-color: var(--keycolor); 
	color: var(--keycolor); 
}
#sitelink .relation li a.hover img {
	filter: brightness(120%);
}
#sitelink .relation li a.hover svg {
	fill: var(--keycolor);
}
#sitelink .institution {
	/*column-count: 2;*/
	margin-bottom: 20px;
    height: 338px;
    display: flex;
    flex-direction: column;
    align-content: space-between;
    flex-wrap: wrap;
}
@media screen and (max-width:740px) {
	#sitelink .institution {
		/*column-count: 1;*/
		margin-bottom: 0;
        flex-wrap: nowrap;
        height: auto;
	}
}
#sitelink .institution dl {
	width: 48%;
	line-height: 1.8;
	margin-bottom: 30px;
}
@media screen and (max-width:740px) {
	#sitelink .institution dl {
        width: 100%;
		line-height: 1.4;
		margin-bottom: 25px;
	}
	#sitelink .institution dl li {
		margin-bottom: 8px;
	}
}
#sitelink .institution dl svg {
	margin-left: 6px;
}
#sitelink .institution dl a.hover {
	color: var(--keycolor); 
}
#sitelink .institution dl a.hover svg {
	fill: var(--keycolor);
}
#sitelink .suppliers ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
#sitelink .suppliers ul::after {
    content: "";
    display: block;
    width: 232px;
}
#sitelink .suppliers ul::before {
    content: "";
    display: block;
    width: 232px;
    order: 1;
}
@media screen and (max-width:740px) {
    #sitelink .suppliers ul::after {
        width: 0;
    }
    #sitelink .suppliers ul::before {
        width: 0;
    }
}
#sitelink .suppliers li {
	width: 232px;
	height: auto;
	margin-bottom: 20px;
}
@media screen and (max-width:740px) {
	#sitelink .suppliers li {
		width: 48%;
		margin-bottom: 10px;
	}
}
#sitelink .suppliers li a {
	display: block;
	width: 100%;
	height: 100%;
}
#sitelink .suppliers li a.hover img {
	filter: brightness(120%);
}

/* ================================================
	YOUTUBE埋め込み
================================================== */

.youtube {
  background-color: #ffffff;
  padding: 0 0 50px;
}

@media screen and (max-width: 480px) {
  .youtube {
    padding: 0 0 40px;
  }
}
.youtubeIframe {
  position: relative;
  padding-bottom: 56.5%;
  height: 0;
  overflow: hidden;
}
.youtubeIframe::after {
    content: "";
    display: block;
}
.youtubeIframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* ================================================
	商品紹介 商品説明エリア
================================================== */
.goods-detail_data p {
    margin-bottom: 2rem;
}
.goods-detail_data .mt-be-columns {
    width: 100%;
    margin: 40px 0 0;
    display: flex;
    justify-content: space-evenly;
}
@media screen and (max-width: 480px) {
    .goods-detail_data .mt-be-columns {
        flex-direction: column;
    }
}
.mt-be-column p {
    margin: 0 10px 20px;
}
.goods-detail_data_table {
    margin-bottom: 20px;
}
.goods-detail_data_table:last-child {
    margin-bottom: 0;
}
.goods-detail_data_table a {
    color: #317f9d;
    text-decoration: underline;
}
.goods-detail_data_table a:hover {
    text-decoration: none;
}

/* ================================================
	外来予約フォーム
================================================== */
.caution {
    border: solid 5px #eee;
    padding: 15px 25px;
    margin-bottom: 70px;
}
@media screen and (max-width: 480px) {
    .caution {
        margin-bottom: 30px;
    }
}
.caution a {
    font-weight: 600;
    color: #317f9d;
    text-decoration: underline;
}
.caution a:hover {
    text-decoration: none;
}

/* ================================================
	山岳医療救助機構情報　テーブル
================================================== */
#medical-info th, #medical-info td {
    border: solid 1px #ccc;
    padding: 10px;
}
#medical-info table {
    margin-bottom: 40px;
}
article#medical-info th {
    background: #f3f3f3;
}
article#medical-info td {
    background: #fff;
}

/* ================================================
	商品情報 輸入元　テーブル
================================================== */
.Importer table {
    width: 100%;
}
.Importer table th {
    border: 1px solid #7B7B7B;
    vertical-align: middle;
    text-align: center;
    width: 150px;
    background: #f2f2f2;
}
@media screen and (max-width: 740px) {
    .Importer table th{
        display: block;
        width: 100%;
        text-align: left;
        padding: 1rem;
    }
}
.Importer table td {
    border: 1px solid #7B7B7B;
    padding: 15px;
}
@media screen and (max-width: 740px) {
    .Importer table td {
        padding: 1em;
        display: block;
        width: 100%;
    }
}
.Importer a {
    color: rgb(49, 127, 157);
    text-decoration: underline;
}
.Importer a:hover {
    text-decoration: none;
}
/* ================================================
	外来予約フォーム
================================================== */
#clinic .caution {
    border: solid 5px #eee;
    padding: 15px 25px;
    margin-bottom: 70px;
}
@media screen and (max-width: 480px) {
    #clinic .caution {
        margin-bottom: 30px;
    }
}
#clinic .caution a {
    font-weight: 600;
    color: #317f9d;
    text-decoration: underline;
}
#clinic .caution a:hover {
    text-decoration: none;
}
/* ================================================
	商品紹介　アンカーリンク
================================================== */
.catLink {
    height: 60px;
    margin-bottom: 50px;
}
@media screen and (max-width: 480px) {
    .catLink {
        display: none;
    }
}
.catLink ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.catLink ul li {
    width: 24%;
    height: 40px;
}
.catLink ul li a {
    width: 100%;
    height: 60px;
    font-size: 2rem;
    font-weight: 600;
    color: #317f9d;
    border: solid 2px #317f9d;
    display: flex;
    justify-content: center;
    align-items: center;
}
.catLink ul li a:hover {
    color: #fff;
    background: #317f9d;
}
/* ================================================
	フォーム完了画面
================================================== */
.form-thanks-title {
    position: relative;
    font-size: 2.6rem!important;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    padding-bottom: 20px;
    margin: 30px 0 30px;
    border-bottom: 1px solid #B1B1B1;
}
.form-thanks-comment {
    font-size: 1.8rem;
    padding: 15px 0;
    margin-bottom: 100px;
}
/* ================================================
	お知らせ テーブル
================================================== */
#information table th, #information table td {
    padding: 1rem;
    border: solid 1px #ccc;
}
#information table th {
    background: #e2ecf0;
}
/* ================================================
	ログインアラート 
================================================== */
.registrationAlert {
    width: 100%;
    text-align: center;
    padding: 150px;
    font-size: 2rem;
}
.registrationAlert a {
    font-weight: 600;
    color: #317f9d;
    text-decoration: underline;
}
.registrationAlert a:hover {
    text-decoration: none;
    color: #6fb1ca;
}
/* ================================================
	新規会員登録用メール重複 
================================================== */
div#confirmation {
    margin-bottom: 10rem;
}
/* ================================================
	NOT FOUND 
================================================== */
.notfound {
    padding: 80px 0;
    text-align: center;
}
@media screen and (max-width: 480px) {
    .notfound {
        padding: 80px 20px;
    }
}
.notfound br.sp {
    display: none;
}
@media screen and (max-width: 480px) {
    .notfound br.sp {
        display: inline-block;
    }
}
.notfound h2 {
    font-size: 3rem;
    font-weight: 600;
    color: #317f9d;
    margin-bottom: 50px;
}
.notfound p {
    line-height: 2.5;
    margin-bottom: 50px;
}
.notfound p a {
    color: #317f9d;
    font-weight: 600;
}
.notfound .link-blue {
    margin: 0 auto;
}
/* ================================================
	既存会員向け注意喚起 
================================================== */
p.member-caution {
    margin: 20px 0 50px;
    font-size: 2rem;
}
@media screen and (max-width: 480px) {
    p.member-caution {
        font-size: 1.6rem;
    }
}
p.member-caution a {
    font-weight: 600;
    color: #317f9d;
    text-decoration: underline;
}
p.member-caution a:hover {
    text-decoration: none;
	color: #0027ff;
}
.news-detail a.link-blue {
    color: #fff;
    text-decoration: none;
    margin: 30px auto 80px;
}
.news-detail a.link-blue:hover {
    color: #317f9d;
}
/* ================================================
	マイページ追記 
================================================== */
.status-comment {
    font-size: 1.3rem;
    text-align: left;
    margin: 10px 0 0;
}
/* ================================================
	注意喚起 
================================================== */
.caution.red {
    color: #f00;
    font-size: 2rem;
    font-weight: 600;
    border-color: #f00;
}
.sticky {
    position: absolute;
    display: block;
    padding: 5px;
    font-size: 1.1rem;
    font-weight: 600;
    background: #f00;
    color: #fff;
    top: 220px;
    left: 5px;
}

#information .news .sp {
    display: none;
}
@media screen and (max-width: 480px) {
    #information .news .pc {
        display: none;
    }
    #information .news .sp {
        display: inline-block;
    }
}
#information .news .news-detail p {
    margin-bottom: 1.5rem;
}

/* ================================================
	協力ブランド
================================================== */
.cooperationBrand {
    margin-bottom: 40px;
}
.cooperationBrand ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.cooperationBrand ul::before {
    content: "";
    display: block;
    width: 232px;
    height: 0;
    order: 1;
}
.cooperationBrand ul::after {
    content: "";
    display: block;
    width: 232px;
    height: 0;
}
.cooperationBrand li {
    width: 232px;
    height: 88px;
}
@media screen and (max-width: 740px) {
    .cooperationBrand li {
        width: 48%;
        height: 60px;
        margin-bottom: 10px;
    }
}
.cooperationBrand li a {
    width: 100%;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 740px) {
    .cooperationBrand li a {
        height: 60px;
    }
}
.cooperationBrand li a svg.logo {
    display: block;
    width: auto;
    margin: 0 auto;
}
@media screen and (max-width: 740px) {
    .cooperationBrand li a svg.logo {
        height: 70%;
    }
}
.cooperationBrand li a.hover svg.logo {
	filter: brightness(120%);
}

/* ================================================
	商品紹介
================================================== */
dl.flex_2column {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
dl.flex_2column dt {
    width: 80px;
}dl.flex_2column dd {
    width: calc(100% - 100px);
}
dl.flex_2column dd strong {
    color: #D53232;
}
.goods-detail_youtube p {
    line-height: 1.5;
    margin: 10px 0 30px;
}
.goods-detail_youtube p:last-child {
    margin: 10px 0 0;
}

/* ================================================
	2023.07.19 追記
================================================== */
p.form-thanks-comment strong {
    color: #f00;
}
.clinic-exam_call {
    margin-bottom: 2rem;
}
.clinic-exam_call p {
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
    color: #317f9e;
    margin-bottom: 2.5rem;
}
@media screen and (max-width: 740px) {
    .clinic-exam_call p {
        text-align: left;
        font-size: 1.8rem;
        line-height: 2.4rem;
    }
}
.clinic-exam_call ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
@media screen and (max-width: 740px) {
    .clinic-exam_call ul {
        flex-direction: column;
    }
}
.clinic-exam_call li {
    width: 497px;
}
@media screen and (max-width: 740px) {
    .clinic-exam_call li {
        margin-bottom: 1.5rem;
        width: 100%;
    }
}
.clinic-exam_call a.tel {
    display: flex;
    border: solid 1px #666;
    border-radius: 10px;
    padding: 10px;
    flex-direction: column;
    align-items: center;
    line-height: 1.5;
}
.clinic-exam_call a.tel span.telnumber {
    font-size: 2.5rem;
    font-weight: 600;
    color: #317f9e;
}

/* ================================================
	2023.09.07 追記
================================================== */
h3.member-intro {
    font-size: 3rem;
    font-weight: 600;
    color: #327f9e;
    line-height: 1.5;
    margin-bottom: 3rem;
}
p.member-paragraph {
    margin-bottom: 2rem;
}
p.member-paragraph strong {
    font-size: 2.5rem;
    line-height: 1.5;
    display: inline-block;
    margin-bottom: 50px;
}
.member-benefit {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin: 50px 0;
    justify-content: space-between;
    flex-wrap: wrap;
}
.member-benefit img {
    width: 49%;
    height: auto;
    margin-bottom: 2rem;
    padding: 15px;
    border: solid 1px #d6d6d6;
}
@media screen and (max-width: 740px){
    h3.member-intro {
        font-size: 2rem;
        margin-bottom: 20px;
    }
    p.member-paragraph strong {
        font-size: 1.8rem;
        margin-bottom: 20px;
    }
    .member-benefit img {
        padding: 10px;
        margin-bottom: 10px;
    }
}

/* ================================================
	2023.09.12 追記
================================================== */
.introMember {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 50px;
}
.introMember figure, .introMember div {
    width: 50%;
}
.introMember figure img {
    width: 100%;
    height: auto;
}
.introMember p {
    margin: 0 0 30px 40px;
}
p.member-paragraph .sp {
    display: none;
}
.meritMenber {
    margin-bottom: 50px;
}
.meritMenber ul {
    width: 100%;
    background: #f3f3f3;
    padding: 2rem;
}
.meritMenber ul li {
    font-size: 1.8rem;
    font-weight: 600;
}
.meritMenber ul li::before {
    content: "- ";
    padding: 1rem;
}
@media screen and (max-width: 740px){
    .introMember {
        flex-direction: column;
        margin-bottom: 0;
    }
    .introMember figure, .introMember div {
        width: 100%;
    }
    .introMember figure {
        margin-bottom: 20px;
    }
    .introMember p {
        margin: 0 0 30px 0;
    }
    p.member-paragraph .sp {
        display: inline;
    }
    .meritMenber ul li {
        font-size: 1.5rem;
        line-height: 1.8rem;
        padding-left: 1rem;
        margin-bottom: 1rem;
    }
    .meritMenber ul li:last-child {
        margin-bottom: 0;
    }
    .meritMenber ul li::before {
        padding: 0 0.5rem 0;
        margin-left: -2rem;
    }
}
#message section.outline {
    margin: 100px 0 0;
    display: flex;
    flex-direction: column;
}
#message section tr {
    border-bottom: solid 1px #d8dadc;
}
#message section th,#message section td {
    padding: 2.5rem 3rem;
}
#message section td li {
    margin-bottom: 1.5rem;
}
#message section td li:last-child {
    margin-bottom: 0;
}
#message section .subttl {
    margin-bottom: 0;
}
@media screen and (max-width: 740px){
    #message section tr {
        display: flex;
        flex-direction: column;
    }
    #message section th {
        padding: 1.5rem 1.5rem 0;
    }
    #message section td {
        padding: 0.5rem 1.5rem 2rem;
    }
}
.top-member {
    width: 100%;
    padding: 80px 0;
    color: #fff;
    background: #327f9e;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.top-member strong {
    font-size: 2.8rem;
    margin-bottom: 20px;
}
.top-member p {
    margin-bottom: 25px;
}
.top-member .link-white:hover {
    border: 1px solid var(--white);
}
@media screen and (max-width: 740px){
    .top-member {
        padding: 50px 20px;
    }
    .top-member strong {
        font-size: 2rem;
    }
}
.firstaid-list figure img {
    width: 100%;
    height: 218px;
    object-fit: cover;
}
.goods-detail_info a {
    font-weight: 600;
    text-decoration: underline;
    color: #327f9e;
}
.goods-detail_info a:hover {
    text-decoration: none;
}

/* ================================================
	2024.01.12 追記
================================================== */
.suppl ul {
    margin-top: 0.5em;
}
.suppl ul li {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 0.3em;
}

/* ================================================
	2024.03.29 追記
================================================== */
.soldout {
    font-size: 1.8rem;
    color: #ce3508;
    padding: 5px;
    border: solid 2px #ce3508;
}
/* ================================================
	2024.07.03 追記
================================================== */
@media screen and (max-width: 740px){
  .top_activity_our.mb40 {
    margin: -30px 0 40px;
  }
}
.tagArea {
  max-width: 1024px;
  margin: 0 auto 50px;
}
.tagArea h3 {
  font-size: 2.2rem;
  font-weight: 600;
  color: #20809e;
  margin-bottom: 20px;
}
@media screen and (max-width: 740px){
  .tagArea h3 {
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
}
.tagArea h3.tagAreaTop {
  text-align: center;
  font-size: 2.5rem;
  color: #fff;
  margin-bottom: 30px;
}
.tagList {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
}
@media screen and (max-width: 740px){
  .tagList {
    width: 100%;
    margin: 0 auto 40px;
  }
  .tagList.tagTop {
    width: 95%;
    margin: 0 auto 20px;
  }
}
.tagList li {
  width: 24%;
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 15px;
}
.tagList::before{
  content:"";
  display: block;
  width:24%;
  order:1;
}
.tagList::after{
  content:"";
  display: block;
  width:24%;
}
@media screen and (max-width: 740px){
  .tagList li {
    width: 49%;
    font-size: 1.3rem;
    margin-bottom: 5px;
  }
}
.tagList li a {
  width: 100%;
  padding: 5px 0;
  color: #20809e;
  background: #fff;
  border: solid 1px #20809e;
  border-radius: 30px;
  display: flex;
  justify-content: center;
}
.tagList li a:hover {
  color: #fff;
  background: #20809e;
  border: solid 1px #fff;
}
.tagList.tagTop li a {
  color: #fff;
  background: #20809e;
  border: solid 1px #fff;
  animation-name: fadeIn;
}
.tagList.tagTop li a:hover {
  color: #20809e;
  background: #fff;
  border: solid 1px #20809e;
}
.tagList.tagTop li.hidden {
  opacity: 0;
  height: 0;
  margin: 0;
  display: none;
}
.button.more {
  margin: 0 auto;
  display: flex;
  height: 40px;
  padding: 10px 60px;
  background: #20809e;
  border: solid 1px #fff;
  border-radius: 25px;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
}
.button.more:hover {
  color: #20809e;
  background: #fff;
}
@media screen and (max-width: 740px){
  .button.more {
    font-size: 1.4rem;
    height: 30px;
    padding: 5px 30px;
  }
  .button.more:hover {
    color: #fff;
    background: #20809e;
  }
}
.accordion {
  margin: 3em auto;
  max-width: 100%;
}
.toggle {
  display: none;
}
.option {
  position: relative;
  margin-bottom: 1em;
}
.title,
.content {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
}
.title {
  background: #00819f;
  border: solid 1px #00819f;
  border-radius: 30px;
  padding: 1rem;
  color: #fff;
  font-weight: bold;
  margin-bottom: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.title::after,
.title::before {
  content: "";
  position: absolute;
  right: 3rem;
  top: 1.8rem;
  width: 2px;
  height: 1.5rem;
  background-color: #fff;
  transition: all 0.3s;
}
.title::after {
  transform: rotate(90deg);
}
.content {
  max-height: 0;
  overflow: hidden;
}
.content p {
  margin: 0;
  padding: 0.5em 1em 1em;
  font-size: 0.9em;
  line-height: 1.5;
}
.toggle:checked + .title + .content {
  max-height: 500px;
  transition: all 1.5s;
}
.toggle:checked + .title::before {
  transform: rotate(90deg) !important;
}
.maplink {
    color: #0076ea;
    font-weight: 600;
}
.advance_btn {
    width: 500px;
    margin: 0 auto 50px;
}
@media screen and (max-width: 740px){
  .advance_btn {
    width: 100%;
    margin: 0 auto 30px;
  }
}
.course .topics {
  border: 1px solid #7B7B7B;
  padding: 15px 30px;
  margin-bottom: 60px;
}
@media screen and (max-width: 740px){
  .course .topics {
    padding: 15px 20px;
  }
}
.attention {
  display: block;
  padding-top: 1rem;
  color: red;
}
.youtubeshort {
  height: 560px !important;
}
.goods-detail_youtube iframe.youtubeshort {
    position: relative;
    margin-bottom: 50px;
}
.goods-detail_youtube iframe.youtubeshort:first-child {
    margin-top: -250px;
}
@media screen and (max-width: 740px){
  .goods-detail_youtube iframe.youtubeshort:first-child {
    margin-top: -200px;
  }
}
.goods-detail_youtube iframe.youtubeshort:last-child {
    margin-bottom: 0;
}
a.cart_btn {
  position: relative;
  width: 100%;
  color: #fff;
  text-decoration: none;
  padding-left: 70px;
  margin-bottom: 25px;
}
a.cart_btn::before {
  content: "";
  position: absolute;
  width: 25px;
  height: 25px;
  margin-right: 230px;
  background: url("../images/icon_cart.svg") no-repeat;
  transition: 0.5s;
}
a.cart_btn:hover::before {
  margin-right: 210px;
  background: url("../images/icon_cart_hover.svg") no-repeat;
}

del.c_del_2 {
  background-image: linear-gradient(transparent 0.5em, #e70000 0, #e70000 calc(0.5em + 1px), transparent 0, transparent calc(0.5em + 3px), #e70000 0, #e70000 calc(0.5em + 4px), transparent 0);
  text-decoration: none;
  padding: 0 2px;
}

.lead-sentence {
  margin-bottom: 1.5em;
}
.btn-container {
  margin: 0 auto 100px;
}
@media screen and (max-width: 740px){
  .btn-container {
    margin: 0 auto 70px;
  }
}
.btn-container .firstaid-note_btn {
  margin: 0 auto 30px;
}
@media screen and (max-width: 740px){
  .btn-container .firstaid-note_btn {
    margin: 0 auto 15px;
  }
}
.btn-container .firstaid-note_btn:last-child {
  margin: 0 auto;
}