/* ベースクラス
========================================*/
body {
	animation: loading 1s;
}

@keyframes loading {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

html {
	-webkit-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
	color: #222222;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif, "Crimson Text", Oswald;
	font-size: 1.0rem;
	font-weight: 400;
	line-height: 1.875;
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}

body {
	line-height: 1.6;
	min-width: 1080px;
}

a {
	outline: none;
	text-decoration: none;
	color: #005A6A;
}

a img {
	-webkit-transition: all .23s ease-out;
	transition: all .23s ease-out;
}

a:hover {
	text-decoration: none;
	color: #34C3AF;
	transition: all .23s ease-out;
}

sup {
	font-size: 80%;
	vertical-align: baseline;
	position: relative;
	top: -0.5ex;
	margin-right: 2px;
}

/* 共通クラス
========================================*/

.is-sp {
	display: none !important;
}

.is-pc {
	display: block !important;
}

/* メインコンテンツ
========================================*/

.iconsize {
	width: 12px;
	height: 12px;
}

.iconsize2 {
	width: 16px;
	height: 16px;
}

.iconsize3 {
	width: auto;
	height: 18px;
}

.iconsize4 {
	width: auto;
	height: 24px;
}

@media screen and (max-width: 768px) {
	.iconsize3 {
		width: auto;
		height: 12px;
	}

	.iconsize4 {
		width: auto;
		height: 13px;
	}
}

.inner-container {
	width: 1080px;
	margin: 0 auto;
}

.content p {
	font-size: 18px;
	font-weight: 400;
	line-height: 2.111;
}

.search-button {
	background-color: #0062A0;
	color: #fff;
	width: 300px;
	border-radius: 35px;
	display: block;
	position: absolute;
	right: 16px;
	top: 16px;
	z-index: 9999;
}

.search-button a {
	display: block;
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	padding: 1em;
}

.search-button p {
	display: block;
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	padding: 1em;
}

.btn06 {
	position: relative;
	text-decoration: none;
	display: inline-block;
	background: #0062A0;
	color: #fff;
	padding: 10px;
	border-radius: 35px;
	text-align: left;
	outline: none;
	transition: ease .2s;
}

.btn06:hover {
	background: #005A6A;
}

/*hoverした際の移動*/

.btnarrow1:hover::after {
	right: 14px;
}

.search-button-lower {
	color: #fff;
	width: 500px;
	border-radius: 50px;
	display: block;
	position: fixed;
	bottom: 24px;
	right: 130px;
}

.search-button-lower a {
	display: block;
	color: #fff;
	font-weight: 600;
	font-size: 24px;
	line-height: 1.0;
	padding: 16.25px 0 16.25px 68px;
}

.search-button-lower a .btn-small {
	font-size: 14px;
}

.search-button-lower a .btn-small img {
	width: 18px;
	height: 18px;
	position: relative;
	top: 1.5px;
}

.btn07 {
	position: relative;
	text-decoration: none;
	display: inline-block;
	background: #0062A0;
	color: #fff;
	padding: 10px;
	border-radius: 50px;
	text-align: left;
	outline: none;
	transition: ease .2s;
	box-shadow: 6px 6px 6px 0px rgb(0 0 0);
	border: 4px solid #fff;

}

.btn07:hover {
	background: #005A6A;
}

/* 矢印が右に移動 */
.btnarrow1::after {
	content: url(../images/arrow02.svg);
	position: absolute;
	top: 50%;
	right: 20px;
	width: 40px;
	height: 40px;
	-webkit-transform: translateY(-50%);
	/* Safari用 */
	transform: translateY(-50%);
	transition: all .3s;
}

/*hoverした際の移動*/
.btnarrow1:hover::after {
	right: 18px;
}

.key-visual {
	background: url(../images/mv.jpg) no-repeat 0 0;
	width: 100%;
	background-size: cover;
}

@media screen and (max-width: 768px) {
	.key-visual {
		background: url(../images/sp/mv_sp.jpg) no-repeat 0 0;
		width: 100%;
		background-size: cover;
	}
}


.key-visual-inner {
	width: 100%;
	margin: 0 auto;
}

.doctor-section {
	background-color: #F0F0F0;
	width: 100%;
	padding: 64px 0;
	margin: 0 auto;
}

.doctor-comment {
	width: 940px;
	padding: 28px;
	margin: 0 auto;
	background-color: #fff;
	position: relative;
}

.paren-l {
	background: url(../images/paren-l.svg);
	width: 64px;
	height: 64px;
	position: absolute;
	left: 0;
	top: 0;
}

.paren-r {
	background: url(../images/paren-r.svg);
	width: 64px;
	height: 64px;
	position: absolute;
	right: 0;
	bottom: 0;
}

.doctor-comment h4 {
	font-size: 24px;
	font-weight: 600;
	color: #34C3AF;
}

.doctor-comment p {
	font-size: 16px;
}

.doctor-section-field {
	display: flex;
}

.doc-image p {
	font-size: 14px;
	line-height: 1.428;
}

.doc-image {
	width: 280px;
}

.doc-pic {
	width: 160px;
	margin: 0 auto;
}

.doc-pic img {
	width: 160px;
	;
}

.doc-text {
	margin-right: 24px;
	width: 636px;
}

.doc-text p {
	font-size: 18px;
	line-height: 2.1111;
}

.small {
	font-size: 18px;
}

.section-title {
	width: 1080px;
	margin: 0 auto;
}

.section-title h2 {
	font-size: 36px;
	font-weight: 600;
	color: #34C3AF;
	text-align: center;
	margin-bottom: 32px;
}

.section-title h2 {
	position: relative;
	font-weight: 600;
	text-align: center;
}

.section-title h2::before,
.section-title h2::after {
	position: absolute;
	top: 0.8rem;
	height: 38px;
	content: '';
}

.section-title h2::before {
	border-left: solid 4px;
	left: 0;
	transform: rotate(-20deg);
}

.section-title h2::after {
	border-right: solid 4px;
	right: 0;
	transform: rotate(20deg);
}

.anchor-navi-field {
	width: 1080px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.anchor-btn {
	background-color: #fff;
	border: 4px solid #34C3AF;
	border-radius: 4px;
	width: 100%;
	margin: 0 0.5%;
	position: relative;
	display: block;
}

.anchor-btn a {
	padding: 32px 16px;
	height: 138px;
	display: block;
}

.anchor-btn p {
	font-size: 24px;
	font-weight: 600;
	color: #222222;
	line-height: 1.475;
	margin-top: 16px;
}

.anchor-navi {
	padding: 64px 0 32px;
}

.btnarrow2::after {
	content: '';
	/*絶対配置で矢印の位置を決める*/
	position: absolute;
	top: 22%;
	right: 20px;
	/*矢印の形状*/
	width: 20px;
	height: 20px;
	border-top: 3px solid #34C3AF;
	border-right: 3px solid #34C3AF;
	transform: rotate(45deg);
	/*アニメーションの指定*/
	transition: all .3s;
}

/*hoverした際の移動*/
.btnarrow2:hover::after {
	right: 14px;
}

.anchor-btn:hover {
	opacity: 100%;
	background-color: #CFECEF;
	border: 4px solid #34C3AF;
	transition: all .3s;
}

/* section01 */
.section01 {
	padding: 32px 0 24px;
}

.reinbow_bar {
	background: url(../images/rainbow-bar.png);
	width: 32px;
	margin-right: 24px;
	background-position: top;
	background-size: cover;
}

.title-block {
	display: flex;
}

.title-block a {
	text-decoration: underline;
}


.title-content {
	width: 100%;
}

.title-content h3 {
	font-size: 24px;
	font-weight: 600;
	margin-left: 16px;
}

.title-content h2 {
	font-size: 32px;
	font-weight: 600;
	margin-bottom: 16px;
}

.number-catch {
	display: flex;
	margin-bottom: 8px;
}

.coution-text p {
	margin-top: 16px;
	font-size: 14px;
	line-height: 1.714;
}

.coution-text a {
	text-decoration: underline;
}

/* section02 */
.section02 {
	padding: 48px 0;
}

.figure02 {
	margin: 48px auto 0;
}

.figure-box {
	text-align: center;
	margin-bottom: 12px;
}

.figure-box-secondry-child {
	margin: 0 6px;
}

.figure03-box {
	width: 100%;
}

.figure-part h4 {
	font-size: 24px;
	line-height: 1.415;
	font-weight: 600;
	color: #005A6A;
	text-align: center;
	margin: 36px 0 24px;
}

.figure-part p {
	margin-bottom: 24px;
}

.figure04-box {
	width: 680px;
	margin: 24px auto 0;
}

.notice {
	width: 900px;
	margin: 32px auto 0;
	padding: 32px;
	border: 1px solid #34C3AF;
	border-radius: 4px;
	display: flex;
	box-sizing: border-box;
}

.notice.block {
	display: block;
}

.notice.block sup {
	font-size: 14px;
	top: -9px;
}

.notice.block .coution-text p {
	margin-top: 16px;
  font-size: 14px;
  line-height: 1.714;
}

.notice img {
	margin-left: -16px;
}

.notice.block img {
	margin-left: 0;
}

.notice p {
	font-size: 24px;
	font-weight: 600;
	line-height: 1.5;
}

.notice-small {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.25;
	margin-top: 8px;
}

.notice-link a {
	font-size: 18px;
	text-decoration: underline;
}

/* section03 */
.section03 {
	padding: 48px 0 24px;
}

.table-box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 6px;
}

.table-box p {
	font-size: 18px;
	line-height: 1.415;
}

.head-01 {
	background-color: #34C3AF;
	color: #fff;
	padding: 16px;
	width: 164px;
	text-align: center;
}

.head-02 {
	background-color: #CFECEF;
	padding: 16px;
	width: 256px;
	text-align: center;
}

.head-03 {
	background-color: #FAF8E4;
	padding: 16px;
	width: 256px;
	text-align: center;
}

.table-part {
	margin-top: 32px;
}

.table-part h3 {
	font-size: 24px;
	line-height: 1.415;
	font-weight: 600;
	color: #005A6A;
	text-align: center;
	margin: 36px 0 24px;
}

.table-text {
	flex-grow: 1;
}

.figure05 {
	margin: 24px 0;
	padding-bottom: 24px;
}

/* section04 */
.section04 {
	padding: 48px 0;
}

.head-04 {
	background-color: #34C3AF;
	color: #fff;
	padding: 8px;
	margin-right: 8px;
	width: 202px;
	text-align: left;
}

.head-05 {
	background-color: #FAF8E4;
	padding: 8px;
	width: 840px;
	text-align: left;
}

.figure08-box {
	margin: 48px auto;
	text-align: center;
}

.figure10 {
	width: 780px;
	margin: 48px auto 0;
}

.figure10-child img {
	width: 780px;
}

/* section05 */
.section05 {
	padding: 48px 0;
}

.rtn-btn a {
	position: fixed;
	right: 20px;
	bottom: 24px;
	width: 90px;
	height: 90px;
	border-radius: 45px;
	box-shadow: 6px 6px 6px 0px rgb(0 0 0);
}

/* フッター
========================================*/

.foot {
	border-top: 4px solid #222222;
}

.footer-inner {
	width: 1080px;
	margin: 34px auto 0;
}

.footer-content {
	display: flex;
	justify-content: space-between;
}

.agreement {
	font-size: 12px;
	line-height: 1.415;
	margin: 24px 0;
}

.agreement a {
	color: #222222;
	border-left: 1px solid #222;
	border-right: 1px solid #222;
	padding: 0 16px;
}

.footer-logo {
	float: left;
	width: 228px;
	height: auto;
}

.footer-copy {
	font-size: 12px;
	line-height: 1.415;
}

.approval-data {
	font-size: 12px;
	line-height: 1.415;
	margin: 24px 0;
}

.mt24 {
	margin-top: 32px;
}

/* レスポンシブ
========================================*/

@media screen and (max-width: 768px) {
	body {
		min-width: initial;
	}

	.is-sp {
		display: block !important;
	}

	.is-pc {
		display: none !important;
	}

	.iconsize2 {
		width: 13px;
		height: 13px;
	}

	.content p {
		font-size: 16px;
		font-weight: 400;
		line-height: 2.111;
	}

	.coution-text p {
		margin-top: 16px;
		font-size: 14px;
		line-height: 1.714;
	}

	.section-title h2 {
		font-size: 24px;
		line-height: 1.415;
		margin-bottom: 16px;
		padding: 0 16px;
	}

	.section-title h2::before,
	.section-title h2::after {
		position: absolute;
		top: 0;
		height: 100px;
		content: '';
	}

	.main {
		min-width: 100%;
		width: 100%;
	}

	.inner-container {
		width: 90%;
		padding: 0;
	}

	.doctor-section {
		padding: 32px 0;
	}

	.doctor-comment {
		width: 82%;
		padding: 1em;
		margin: 0 auto;
		background-color: #fff;
		position: relative;
	}

	.doctor-comment h4 {
		font-size: 18px;
		margin-bottom: 8px;
	}

	.doctor-section-field {
		display: block;
	}

	.doc-image {
		width: 100%;
		margin-top: 24px;
	}

	.doc-pic {
		width: 50%;
		margin: 0 auto;
	}

	.doc-pic img {
		width: 100%;
	}

	.doc-text {
		margin-left: 0;
		width: 100%;
	}

	.doc-image {
		text-align: center;
	}

	.doc-image p {
		font-size: 14px;
		line-height: 1.428;
	}

	.doc-image h3 {
		font-size: 22px;
		margin-top: 8px;
	}

	.doc-text h3 {
		font-size: 24px;
		margin: 0 0 8px;
	}

	.small {
		font-size: 14px;
	}

	.section-title {
		width: 82%;
		margin: 0 auto;
		padding: 0 16px;
	}

	/*
	.anchor-navi-field {
		width: 90%;
		padding: 0;
		display: block;
	}

	.anchor-btn {
		margin: 10px 0;
		width: 98.5%;
	}

	.anchor-btn {
		margin: 0 0 8px;
	}

	.anchor-btn a {
		padding: 16px;
		height: auto;
		display: block;
	}

    .anchor-btn p {
        font-size: 20px;
        font-weight: 600;
        margin-top: 8px;
        line-height: 1;
    }

	.anchor-navi {
		width: 100%;
		padding: 32px 0;
	}
		*/

	.anchor-navi-field {
		width: 90%;
		padding: 0;
		display: block;
	}

	.anchor-btn {
		margin: 10px 0;
		width: 100%;
	}

	.anchor-btn {
		margin: 0 0 8px;
	}

	.anchor-btn a {
		padding: 10px 0 4px 10px;
		height: auto;
		display: block;
	}

	.anchor-btn p {
		font-size: 18px;
		font-weight: 600;
		margin-top: 0;
		margin-left: 8px;
		line-height: 1.0;
		display: inline-block;
		vertical-align: 15px;
	}

	.btnarrow2::after {
		top: 31%;
	}

	.anchor-navi {
		width: 100%;
		padding: 32px 0 0;
	}

	.wid90 {
		width: 90% !important;
	}

	.wid100 {
		width: 100% !important;
	}

	.title-content {
		width: 100%;
	}

	.title-content h3 {
		font-size: 16px;
		line-height: 2.5;
		font-weight: 600;
		margin-left: 16px;
	}

	.title-content h2 {
		font-size: 20px;
		font-weight: 600;
		margin-bottom: 16px;
	}

	.reinbow_bar {
		background: url(../images/rainbow-bar.png);
		width: 3%;
		margin-right: 3%;
		background-position: top;
		background-size: cover;
	}

	.title-block {
		display: flex;
		padding: 32px 0 0;
	}

	.notice {
		width: 100%;
		margin: 32px auto 0;
		padding: 16px;
		display: flex;
	}

	.notice.block {
		display: block;
	}

	.notice.block sup {
		font-size: 14px;
		top: -0.5ex;
	}

	.notice.block .coution-text p {
		margin-top: 16px;
		font-size: 14px;
		line-height: 1.714;
	}

	.notice img {
		margin-left: -16px;
	}

	.notice.block img {
		margin-left: 0;
	}


	.notice p {
		font-size: 18px;
		line-height: 1.415;
		font-weight: 600;
	}

	.notice-small {
		font-size: 15px;
	}

	.table-part {
		margin-top: 24px;
	}

	.figure-part h4 {
		font-size: 18px;
		color: #005A6A;
		text-align: left;
		margin: 24px 0 16px;
	}

	.table-part h3 {
		font-size: 18px;
		line-height: 1.415;
		text-align: left;
		margin: 24px 0 16px;
	}

	.figure01 {
		width: 100%;
		margin: 24px auto 0;
	}

	.figure02 {
		margin: 24px auto 0;
	}

	.figure03-box img {
		width: 100%;
	}

	.figure-box {
		width: 100%;
		height: auto;
		margin: 0;
	}

	.figure-box img {
		display: flex;
		justify-content: space-between;
		height: auto;
		width: 100%;
		margin-bottom: 0;
	}

	.figure-box-secondry {
		width: 100%;
		height: auto;
	}

	.figure-box-secondry img {
		display: flex;
		justify-content: space-between;
		height: auto;
		width: 100%;
		margin-bottom: 0;
	}

	.figure04-box {
		width: 100%;
		margin: 24px auto 0;
	}

	.figure04-box img {
		width: 100%;
	}

	.figure05 {
		margin: 24px 0 0;
	}

	.figure08-box {
		margin: 24px auto;
	}

	.figure08-box img {
		width: 84%;
	}

	.figure10 {
		width: 100%;
		margin: 24px auto 0;
	}

	.figure10-child {
		width: 100%;
	}

	.footer-inner {
		width: 100%;
		margin: 34px auto 0;
	}

	.footer-content {
		display: grid;
		justify-content: space-between;
	}

	.foot {
		padding: 0 16px;
		margin-bottom: 88px;
	}

	.search-button-lower {
		width: 64%;
		border-radius: 50px;
		bottom: 16px;
		right: 72px;
	}

	.search-button-lower a {
		display: block;
		color: #fff;
		font-weight: 600;
		line-height: 1;
		font-size: 14px;
		padding: 9px 0 9px 45px;
	}

	.search-button-lower a .btn-small {
		font-size: 11px;
	}

	.search-button-lower a .btn-small img {
		width: 14px;
		height: 14px;
		position: relative;
		top: 1px;
	}

	.btn07 {
		padding: 10px;
		border-radius: 50px;
		border: 2px solid #fff;
	}

	.btn07:hover {
		background: #005A6A;
	}

	.rtn-btn a {
		position: fixed;
		right: 16px;
		bottom: 16px;
		width: 50px;
		height: 50px;
	}

	.rtn-btn img {
		width: 52px;
		height: 52px;
	}

	.search-button {
		width: 220px;
		border-radius: 35px;
		right: 16px;
		top: 16px;
		z-index: 9999;
	}

	.search-button a {
		font-size: 14px;
		line-height: 1.0;
	}

	.search-button p {
		font-size: 14px;
		line-height: 1.0;
	}

	.btn06 {
		/*矢印の基点とするためrelativeを指定*/
		position: relative;
		/*ボタンの形状*/
		text-decoration: none;
		display: inline-block;
		color: #fff;
		padding: 20px 0 20px 16px;
		text-align: left;
		outline: none;
		/*アニメーションの指定*/
		transition: ease .2s;
	}

	.btn06:hover {
		background: #005A6A;
	}

	.btnarrow1::after {
		content: url(../images/arrow02_sp.svg);
		position: absolute;
		top: 50%;
		right: 12px;
		width: 30px;
		height: 30px;
		-webkit-transform: translateY(-50%);
		/* Safari用 */
		transform: translateY(-50%);
		transition: all .3s;
	}

	/*hoverした際の移動*/
	.btnarrow1:hover::after {
		right: 10px;
	}

	.head-01 {
		width: 16%;
		margin: 0;
		border: 1px solid #fff;
	}

	.head-02 {
		width: 28%;
		margin: 0;
		border: 1px solid #fff;
	}

	.head-03 {
		width: 28%;
		margin: 0;
		border: 1px solid #fff;
	}

	.head-04 {
		width: 30%;
		margin: 0;
		border: 1px solid #fff;
	}

	.head-05 {
		width: 70%;
		margin: 0;
		border: 1px solid #fff;
	}

	.table-box {
		margin: 0;
	}

	.table-box p {
		font-size: 14px;
		line-height: 1.415;
		text-align: left;
	}

	.coution-text p {
		word-break: break-all;
	}

	.mt24 {
		margin-top: 24px;
	}

	.mt16 {
		margin-top: 16px;
	}

	.section06 {
		padding: 0 0 32px;
	}
}

/* 240906add */
.mt20minus {
	margin-top: -20px;
}

.center-align {
	text-align: center;
}

.title-middle {
	padding: 8px;
	background-color: #34C3AF;
	border-radius: 4px;
	color: #fff;
	margin: 48px 0 32px;
	font-size: 24px;
	font-weight: 600;
	text-align: center;
}

.title-middle2 {
	padding: 8px;
	background-color: #34C3AF;
	border-radius: 4px;
	color: #fff;
	margin: 0 0 20px;
	font-size: 24px;
	font-weight: 600;
	text-align: center;
}

.border {
	border: #000 2px solid;
}

@media screen and (max-width: 768px) {

	.mt20minus {
		margin-top: -8px;
	}

	.center-align {
		text-align: left;
	}

	.center-align p {
		line-height: 1.5;
	}


	.title-middle {
		padding: 4px;
		border-radius: 4px;
		margin: 32px 0 16px;
		font-size: 18px;
	}

	.title-middle2 {
		border-radius: 4px;
		box-sizing: border-box;
		font-size: 6.15384vw;
		height: 12.82051vw;
		margin: 0 0 5.1282vw;
		padding: 1.4vw;
	}

	.section02 {
		padding: 0 0 32px;
	}

	.section04 {
		padding: 0 0 32px;
	}

	.section05 {
		padding: 0 0 48px;
	}
}

/* 241122add */

.key-visual {
	background: none;
	padding-top: 60px;
}

.key-visual-under-area {
	background-color: #EFF5F4;
	padding: 0 0 48px;
	position: relative;
	margin: 0;
}

/*
.key-visual-under-area::after{
	width: 0;
	height: 0;
	border-left: 70px solid transparent;
	border-right: 70px solid transparent;
	border-top: 50px solid #EFF5F4; 
	display: block;
	position: absolute;
	content: "";
	left: 50%; 
	transform: translateX(-50%); 
	bottom: -50px;
}*/

.key-visual-under-area-inner {
	width: 1080px;
	margin: 0 auto;
}

.key-visual-under-area-inner ul {
	margin-top: 18px;
	display: flex;
	justify-content: space-between;
}

.key-visual-under-area-inner ul li {
	justify-content: space-between;
	width: 48%;
	display: flex;
}

.key-visual-under-area-inner ul li figure {
	width: 59%;
}

.key-visual-under-area-inner ul li figure img {
	width: 100%;
}

.key-visual-under-area-inner ul li div {
	flex-direction: column;
	display: flex;
	margin-left: 16px;
	width: 45%;
}

.key-visual-under-area-inner ul li div p {
	font-weight: 600;
	line-height: inherit;
}

.key-visual-under-area-inner ul li img {
	vertical-align: top;
}

.key-visual-under-area-inner .btn {
	margin-top: auto;
}

.key-visual-under-area-inner .btn a {
	background-color: #34C3AE;
	border-radius: 50px;
	color: #fff;
	font-size: 16px;
	padding: 14px 20px;
	margin-top: auto;
	font-weight: 600;
	display: block;
	position: relative;
}

.key-visual-under-area-inner .btn a:hover,
.key-visual-under-area-inner .btn a:active {
	background-color: #005A6A;
}

.key-visual-under-area-inner .btn a::after {
	content: '';
	position: absolute;
	top: 39%;
	right: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

.key-visual-under-area-inner .btn a:hover::after {
	right: 14px;
}

.key-visual-under-area-text {
	font-size: 18px;
	line-height: 2.1;
}

.green_bar {
	background-color: #34C3AE;
	width: 10px;
	margin-right: 24px;
}

.head-04 {
	display: flex;
	padding: 12px;
	align-items: center;
}

.head-05 {
	padding: 12px;
}

.background-wrapper {
	background-color: #EFF5F4;
}

.section01 {
	padding: 32px 0 60px;
}

.section02 {
	padding: 64px 0 40px;
}

.section03 {
	padding: 64px 0 40px;
}

.section04 {
	padding: 64px 0;
}

.section05 {
	padding: 64px 0 128px;
}

.figure10 {
	width: auto;
}

.figure11 {
	width: auto;
	margin: 0 auto;
}

.figure11 img {
	display: block;
	margin: 0 auto;
}

.nav-pc {
	position: fixed;
	margin: 0 auto;
	justify-content: center;
	width: 100%;
	background-color: #fff;
	padding: 0;
	font-size: 14px;
	color: #222222;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	z-index: 100;
	height: 60px;
	display: flex;
	align-items: center;
}

.nav-pc ul {
	display: flex;
	margin: 0 auto;
	justify-content: center;

}

.nav-pc ul a {
	color: #222222;
	margin: 0 24px 0 8px;
}

.nav-pc ul li {
	display: flex;
	align-items: center;
	position: relative;
	margin-right: 16px;
}

.nav-pc ul li::after {
	content: '';
	position: absolute;
	top: 35%;
	right: 10px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #34C3AF;
	border-right: 1px solid #34C3AF;
	transform: rotate(45deg);
	transition: all .3s;
}

.nav-pc ul img {
	width: 24px;
	height: auto;
}

.anchor-btn {
	border: 2px solid #34C3AF;
	border-radius: 4px;
}

.anchor-btn:hover {
	border: 2px solid #34C3AF;
	border-radius: 4px;
}

#start-btn {
	right: 20px;
}

.hamburger-menu {
	display: none;
}

.lower-content-wrapper {
	background-color: #EFF5F4;
	padding: 48px 0 64px;
}

.lower-content {
	width: 840px;
	margin: 0 auto;
}

.lower-content p {
	font-size: 18px;
	font-weight: 400;
	line-height: 2.111;
}

.lower-content p.lower-title {
	font-size: 32px;
	line-height: 1.5;
	font-weight: 600;
	text-align: center;
}

.img-container {
	margin: 48px 0;
}

.img-container img {
	max-width: 100%;
}

.video-content {
	width: 840px;
	padding: 32px 0;
	margin: 32px auto;
	text-align: center;
}

.video-content p {
	font-size: 18px;
	font-weight: 600;
}

.video_container_flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
}

.video-container {
	width: 274px;
}

.video-container_title {
	font-size: 18px;
	font-weight: 500;
	margin-top: 20px;
	text-align: center;
}

.video-container_movie {
	aspect-ratio: 16/9;
	background-color: #B7B7B7;
	position: relative;
	width: 100%;
}

.video-container_movie::before {
	content: "Coming Soon";
	color: #ffffff;
	display: block;
	font-size: 18px;
	font-weight: 700;
	position: absolute;
	top: 50%;
	left: 50%;
  transform: translate(-50%, -50%);
}

.video-container_movie iframe {
	height: 100%;
	width: 100%;
}

.lower-bottom-content {
	width: 708px;
	margin: 0 auto;
}

.lower-bottom-content ul {
	margin-top: 64px;
	display: flex;
	justify-content: space-between;
}

.lower-bottom-content ul li {
	justify-content: space-between;
	width: 47%;
}

.lower-bottom-content ul li img {
	width: 100%;
}

.lower-bottom-content ul li div {
	flex-direction: column;
	display: flex;
	width: 100%;
	font-weight: 600;
}

.lower-bottom-content .btn a {
	background-color: #34C3AE;
	border-radius: 50px;
	color: #fff;
	font-size: 18px;
	padding: 14px 32px;
	font-weight: 600;
	display: block;
	position: relative;
	margin-top: 16px;
}

.lower-bottom-content .btn a:hover,
.lower-bottom-content .btn a:active {
	background-color: #005A6A;
}

.lower-bottom-content .grayout .btn a {
	background-color: #707070;
	pointer-events: none;
}

.lower-bottom-content .img_wrapper {
	margin-bottom: 10px;
}

.lower-bottom-content .grayout .img_wrapper {
	position: relative;
	line-height: 0;
}

.lower-bottom-content .grayout .img_wrapper::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #747474;
	mix-blend-mode: multiply;
	pointer-events: none;
	/* 画像をクリック可能にしたい場合 */
}

.lower-bottom-content .btn a::after {
	content: '';
	position: absolute;
	top: 40%;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

.lower-bottom-content .btn a:hover::after {
	right: 14px;
}

.back-to-top a {
	background-color: #34C3AE;
	border-radius: 50px;
	width: 360px;
	color: #fff;
	font-size: 18px;
	padding: 26px 32px;
	font-weight: 600;
	display: block;
	position: relative;
	margin: 32px auto 0;
	text-align: center;
}

.back-to-top a:hover {
	background-color: #005A6A;
}

.back-to-top a::after {
	content: '';
	position: absolute;
	top: 40%;
	right: 28px;
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

.back-to-top a:hover::after {
	right: 18px;
}

.box-4 {
	display: flex;
	justify-content: space-between;
}

.box-4 li {
	width: 24%;
	background-color: #AFEAE1;
	padding: 18px;
	box-sizing: border-box;
	border-radius: 4px;
}

.box-4 li p {
	line-height: 1.75;
	font-size: 16px;
	margin-bottom: 0;
}

.box-4 li p.box-4-title {
	font-size: 18px;
	color: #005A6A;
	margin-bottom: 8px;
	font-weight: 600;
}

.doctor-section {
	background-color: #EFF5F4;
}

@media screen and (max-width: 768px) {
	.key-visual {
		padding-top: 40px;
	}

	.key-visual-under-area {
		padding: 0 16px 34px;
	}

	.key-visual-under-area-inner {
		width: 100%;
	}

	.key-visual-under-area-text {
		font-size: 16px;
		line-height: 2;
	}

	.key-visual-underlist-wrapper {
		overflow-x: auto;
		/* 横スクロールを許可 */
		width: 100%;
		margin-top: 24px;
	}

	.key-visual-underlist-wrapper ul {
		min-width: 586px;
		width: 100%;
		margin: 0;
	}

	.key-visual-under-area-inner ul li {
		flex-direction: column;
	}

	.key-visual-under-area-inner ul li figure {
		height: 106px;
		overflow: hidden;
		margin-bottom: 12px;
		margin-bottom: 12px;
	}

	.key-visual-under-area-inner ul li img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.key-visual-under-area-inner ul li div {
		margin: 0;
		font-size: 16px;
	}

	.key-visual-under-area-inner .btn a {
		margin-top: 12px;
	}

	.anchor-btn {
		border: 1px solid #34C3AF;
	}

	.anchor-btn:hover {
		border: 1px solid #34C3AF;
	}

	.anchor-navi-field {
		margin-top: 16px;
	}

	.figure01 .coution-text {
		text-align: left;
		margin-top: 0;
	}

	.figure07 img {
		width: 100%;
	}

	.figure11 img {
		width: 100%;
	}

	.section-title h2::before,
	.section-title h2::after {
		height: 100%;
	}

	.section01 {
		padding: 0 0 40px;
	}

	.section02 {
		padding: 18px 0;
	}

	.section03 {
		padding: 18px 0 0;
	}

	.section04 {
		padding: 18px 0 32px;
	}

	.section05 {
		padding: 18px 0 32px;
	}

	.number-catch img {
		width: 40px;
		height: auto;
	}

	.table-box {
		display: block;
		width: 100%;
	}

	.head-04 {
		width: 100%;
		box-sizing: border-box;
		margin-bottom: 4px;
	}

	.head-04 p {
		font-size: 16px;
	}

	.head-05 {
		width: 100%;
		box-sizing: border-box;
		margin-bottom: 8px;

	}

	.head-05 p {
		font-size: 16px;
	}

	.figure01 h4 {
		margin-bottom: 8px;
	}

	.nav-pc {
		display: none;
	}

	.hamburger-menu {
		position: relative;
		display: block;
	}

	.doctor-comment h4 {
		font-size: 24px;
	}

	.lower-bottom-content .btn a {
		padding: 16px 24px;
	}

	.lower-content p {
		font-size: 16px;
		line-height: 2;
	}

	.hamburger-container {
		position: fixed;
		display: flex;
		align-items: center;
		z-index: 1000;
		width: 100%;
		background-color: #fff;
		cursor: pointer;
		height: 40px;
		box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	}

	.menu-label {
		font-size: 14px;
		margin-right: 10px;
		color: #333;
		transition: color 0.3s;
		position: fixed;
		top: 8px;
		right: 36px;
		z-index: 1000;
	}


	.hamburger-icon {
		position: fixed;
		top: 10px;
		right: 10px;
		/* 右上に配置 */
		width: 24px;
		height: 24px;
		cursor: pointer;
		z-index: 1000;
	}

	.hamburger-icon span {
		display: block;
		height: 2px;
		background: #707070;
		margin-bottom: 8px;
		transition: 0.3s;
		transform-origin: center;
		/* 回転の基準を中央に設定 */
	}

	.hamburger-icon span:last-child {
		margin-bottom: 0;
	}

	/* メニュー */
	.slide-menu {
		position: fixed;
		top: 0;
		right: -100%;
		/* 初期状態で画面外（右側）に配置 */
		width: 80%;
		height: 100%;
		background: #fff;
		box-shadow: -2px 0 5px rgba(0, 0, 0, 0.2);
		/* 影を左側に設定 */
		transition: 0.3s;
		z-index: 999;
		display: flex;
		/* フレックスボックスで中央配置 */
		justify-content: center;
		/* 水平方向に中央配置 */
		align-items: center;
		/* 垂直方向に中央配置 */
	}

	.slide-menu ul {
		list-style: none;
		padding: 20px;
		margin: 0;
	}

	.slide-menu ul li {
		margin-bottom: 20px;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	.slide-menu ul li img {
		width: 24px;
		justify-content: center;
		margin: 0 auto 4px;
	}

	.slide-menu ul li a {
		text-decoration: none;
		color: #333;
		font-size: 14px;
		justify-content: center;
		margin: 0 auto 4px;
		display: flex;
		flex-direction: column;
	}

	/* 開いた状態 */
	.hamburger-icon.open span:nth-child(1) {
		transform: rotate(45deg) translate(6px, 6px);
		/* 第1ラインを斜め右下に回転 */
	}

	.hamburger-icon.open span:nth-child(2) {
		opacity: 0;
	}

	.hamburger-icon.open span:nth-child(3) {
		transform: rotate(-45deg) translate(7px, -8px);
		/* 第3ラインを斜め右上に回転 */
	}

	.slide-menu.open {
		right: 0;
		/* 右側からスライドイン */
	}

	.lower-content p.lower-title {
		font-size: 20px;
		text-align: left;
		line-height: 1.6;
	}

	.lower-content-wrapper {
		width: 100%;
		box-sizing: border-box;
		padding: 36px 5% 48px;
	}

	.lower-bottom-content {
		width: 100%;
	}

	.lower-bottom-content ul {
		flex-direction: column;
	}

	.lower-bottom-content ul li {
		width: 100%;
		margin-bottom: 24px;
		font-size: 18px;
	}

	.back-to-top a {
		width: 100%;
		box-sizing: border-box;
		margin: 32px auto 0;
		text-align: left;
		padding: 16px;
	}

	.video_container_flex {
		display: grid;
		justify-content: initial;
		row-gap: 5.1282vw;
	}

	.video-container {
		width: 100%;
	}

	.video-container_title {
		font-size: 4.61538vw;
		margin-top: 3vw;
	}

	.video-container_movie {
		margin-top: 2.5641vw;
	}

	.video-container_movie::before {
		font-size: 4.61538vw;
	}

	.img-container {
		margin: 24px 0;
	}

	.box-4 {
		flex-direction: column;
	}

	.box-4 li {
		width: 100%;
		margin-bottom: 8px;
		background-color: #EFF5F4;
	}

	.key-visual-under-area::after {
		border-left: 35px solid transparent;
		border-right: 35px solid transparent;
		border-top: 24px solid #EFF5F4;
		bottom: -24px;
	}

	.key-visual-under-area-inner ul li figure {
		width: 100%;
	}

	.key-visual-under-area-inner ul li div {
		width: 100%;
	}

	#start-btn {
		right: 16px;
	}
}

@media screen and (min-width: 769px) and (max-width: 1080px) {
	body {
		min-width: 100%;
	}

	.section-title h2 {
		font-size: 30px;
		padding: 0 20px;
	}

	.anchor-navi {
		padding-left: 40px;
		padding-right: 40px;
		box-sizing: border-box;
	}

	.figure10 {
		width: 100%;
	}

	.anchor-navi-field {
		width: 100%;
	}

	.key-visual {
		box-sizing: border-box;
	}

	.key-visual img {
		max-width: 100%;
	}

	.inner-container {
		width: 100%;
		padding-left: 40px;
		padding-right: 40px;
		box-sizing: border-box;
	}

	.inner-container img {
		max-width: 100%;
	}

	.notice {
		width: 100%;
		box-sizing: border-box;
	}

	.doctor-comment {
		width: calc(100% - 80px);
		box-sizing: border-box;
	}

	.key-visual-under-area-inner {
		width: 100%;
		box-sizing: border-box;
	}

	.section-title {
		width: 100%;
		box-sizing: border-box;
	}

	.footer-inner {
		width: 100%;
		box-sizing: border-box;
	}

	.key-visual-under-area-inner {
		width: calc(100% - 80px);
		margin: 0 auto;
		box-sizing: border-box;
	}

	.key-visual-under-area-inner ul li {
		flex-direction: column;
		box-sizing: border-box;
	}

	.key-visual-under-area-inner ul li img {
		width: 100%;
		margin-bottom: 24px;
	}

	.key-visual-under-area-inner ul li figure {
		width: 100%;
	}

	.key-visual-under-area-inner ul li div {
		width: 100%;
	}

	.key-visual-under-area-inner .btn {
		margin-top: 24px;
	}

	.key-visual-under-area-inner ul li div {
		margin-left: 0;
	}

	.footer-inner {
		width: calc(100% - 80px);
		box-sizing: border-box;
	}

	.footer-copy {
		padding-left: 16px;
	}
}

/*1203 add*/
.lower-content p.leadtext {
	font-weight: 500;
}

.lower-content p.interviewee {
	font-size: 20px;
	font-weight: 600;
}

.prof {
	background-color: #fff;
	padding: 16px;
	margin: 32px 0;
	border-radius: 4px;
}

.lower-content p.small-title {
	font-size: 20px;
	line-height: 1.5;
	font-weight: 600;
	margin: 24px 0;
	border-bottom: 1px solid #222222;
	padding-bottom: 8px;
}

.intro p {
	padding: 16px;
	margin: 32px 0 0;
	text-align: center;
	font-weight: 500;
	line-height: inherit;
	border-top: 1px solid #222222;
	border-bottom: 1px solid #222222;
}


@media screen and (max-width: 768px) {
	.lower-content p.small-title {
		font-size: 18px;
		margin: 16px 0;
	}

	.lower-content p.interviewee {
		font-size: 16px;
		font-weight: 600;
		margin: 0 0 8px;
	}

	.intro {
		margin: 24px 0 0;
		text-align: left;
	}
}

@media screen and (max-width: 840px) {
	.lower-content {
		width: 100%;
		box-sizing: border-box;
	}

	.lower-content-wrapper {
		width: 100%;
		box-sizing: border-box;
		padding: 36px 5% 48px;
	}
}

/* 250711 add */
@media screen and (max-width: 840px) {

	.video-content {
		width: 90%;
		padding: 32px 0;
		margin: 32px auto;
		text-align: left;
	}

	.video-content p {
		font-size: 16px;
	}
}

.weight-bold {
	font-weight: 600;
}

.btnarrow1::before {
	content: url(../images/icon_clinic.svg);
	position: absolute;
	top: 50%;
	left: 20px;
	width: 40px;
	height: 40px;
	-webkit-transform: translateY(-50%);
	/* Safari用 */
	transform: translateY(-50%);
	transition: all .3s;
}

@media screen and (max-width: 768px) {
	.btnarrow1::before {
		content: url(../images/icon_clinic_sp.svg);
		position: absolute;
		top: 50%;
		left: 10px;
		width: 30px;
		height: 30px;
		-webkit-transform: translateY(-50%);
		/* Safari用 */
		transform: translateY(-50%);
		transition: all .3s;
	}
}