/**!
 * rev. 2023-06-08
 * copyright © 2023
 */

@charset "UTF-8";

*, *::before, *::after {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}

@font-face {
	font-family: YuGothicM;
	src: local("Yu Gothic Medium");
}

@font-face {
	font-family: icons;
	font-style: normal;
	font-weight: normal;
	src: url("../font/icons.eot");
	src: url("../font/icons.eot?#iefix") format("embedded-opentype"),
		url("../font/icons.woff") format("woff"),
		url("../font/icons.ttf") format("truetype");
}

.c-footer {
	text-align: center;
	position: relative;
}

.c-footer__inner {
		padding: 32px 20px;
	}

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

.c-footer__inner {
			padding: 24px 5.33333vw 28px
	}
		}

.c-footer__logo {
		margin: 0 auto 20px;
	}

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

.c-footer__logo {
			width: 356px
	}
		}

.c-footer__logo a {
			-webkit-transition: 300ms ease-in-out opacity;
			transition: 300ms ease-in-out opacity;
		}

.c-footer__logo a:hover {
				opacity: 0.6;
			}

.c-footer__copyright {
		display: block;
		letter-spacing: 0.05em;
		margin: 0;
		font-size: 0.8125em;
	}

.c-footer__pagetop {
		position: fixed;
		inset: auto 36px 36px auto;
		margin: 0;
		z-index: 8;
	}

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

.c-footer__pagetop {
			inset: auto 5.33333vw 20px auto
	}
		}

.c-footer__pagetop a {
			color: #fff;
			background: linear-gradient(150deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
			border-radius: 50%;
			padding: 1.8em 1em 1em 1em;
			text-decoration: none;
			width: 76px;
			height: 76px;
			line-height: 1.2;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			position: relative;
			font-family: 'Barlow', sans-serif;
			font-weight: bold;
			letter-spacing: 0.05em;
			-webkit-transition: 300ms ease-in-out opacity;
			transition: 300ms ease-in-out opacity;
		}

.c-footer__pagetop a::before {
				border-top: 2px solid #fff;
				border-right: 2px solid #fff;
				content: "";
				width: 8px;
				height: 8px;
				display: block;
				position: absolute;
				inset: 14px auto auto auto;
				-webkit-transform: rotate(-45deg);
				        transform: rotate(-45deg);
			}

.c-footer__pagetop a:hover {
				opacity: 0.6;
			}

.c-footer__pagetop-absolute {
			position: absolute;
			inset: 0 36px auto auto;
			-webkit-transform: translateY(-80%);
			        transform: translateY(-80%);
		}

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

.c-footer__pagetop-absolute {
				inset: 0 5.33333vw auto auto
		}
			}

.c-footer__contact {
		background: linear-gradient(120deg, #0a78ff, #00c7e1);
		padding: 40px 20px;
		margin: 0 auto;
		text-align: center;
	}

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

.c-footer__contact {
			padding: 40px 5.33333vw 52px
	}
		}

.c-footer__contact-inner {
			color: #fff;
			margin: 0 auto;
			text-align: center;
			position: relative;
			padding: 0 30px;
		}

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

.c-footer__contact-inner {
				max-width: 1000px;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex
		}
			}

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

.c-footer__contact-inner::before {
					background: #fff;
					width: 1px;
					height: 72%;
					inset: 0;
					margin: auto;
					content: "";
					position: absolute
			}
				}

.c-footer__contact-inner a {
				color: #fff;
				text-decoration: none;
				-webkit-transition: 300ms ease-in-out opacity;
				transition: 300ms ease-in-out opacity;
			}

.c-footer__contact-inner a:hover {
					opacity: 0.6;
				}

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

.c-footer__contact-patient, .c-footer__contact-medical {
				padding: 0 60px;
				width: 50%
		}
			}

.c-footer__contact-patient h3, .c-footer__contact-medical h3 {
				font-weight: normal;
				position: relative;
				font-size: 1.25em;
				letter-spacing: 0.05em;
			}

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

.c-footer__contact-patient h3, .c-footer__contact-medical h3 {
					font-size: 1.0625em;
					margin: 0 auto 1em
			}
				}

.c-footer__contact-patient h3::before, .c-footer__contact-patient h3::after, .c-footer__contact-medical h3::before, .c-footer__contact-medical h3::after {
					content: "・";
					display: inline-block;
				}

.c-footer__contact-patient h3::before, .c-footer__contact-medical h3::before {
					margin-right: 0.8em;
				}

.c-footer__contact-patient h3::after, .c-footer__contact-medical h3::after {
					margin-left: 0.8em;
				}

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

.c-footer__contact-patient h3 {
					margin: 0 auto 52px
			}
				}

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

.c-footer__contact-medical {
				margin-top: 24px
		}
			}

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

.c-footer__contact-medical h3 {
					margin: 0 auto 28px
			}
				}

.c-footer__contact h2 {
			display: inline-block;
			margin: 0 0 1em;
			letter-spacing: 0.05em;
			padding: 0.2em 2em;
			position: relative;
			z-index: 1;
			color: #0a629a;
			font-weight: normal;
		}

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

.c-footer__contact h2 {
				padding: 0.52em 5.33333vw;
				min-width: 74.66667vw;
				font-size: 1.3125em;
				line-height: 1.4
		}
			}

.c-footer__contact h2::before {
				-webkit-transform: skewX(10deg);
				        transform: skewX(10deg);
				content: "";
				position: absolute;
				inset: 0;
				z-index: -1;
				background: #fff;
			}

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

.c-footer__contact h2 span {
					display: block
			}
				}

.c-footer__contact-tel {
			font-size: 2.6875em;
			color: #fff;
			letter-spacing: .05em;
			line-height: 1;
			margin: 0;
			display: -webkit-inline-box;
			display: -ms-inline-flexbox;
			display: inline-flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			position: relative;
		}

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

.c-footer__contact-tel {
				padding-left: 50px
		}
			}

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

.c-footer__contact-tel {
				font-size: 2.125em;
				letter-spacing: .03em;
				padding-left: 40px
		}
			}

.c-footer__contact-tel span {
				font-size: 0.51163em;
				position: absolute;
				inset: auto auto auto 0;
				margin: auto 0;
				letter-spacing: 0;
			}

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

.c-footer__contact-tel span {
					font-size: 0.5em
			}
				}

.c-footer__contact-tel a {
				display: inline-block;
				position: relative;
			}

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

.c-footer__contact-tel a {
					text-decoration: underline
			}
				}

.c-footer__contact-time {
			color: #fff;
			display: inline-block;
			font-size: 1.0625em;
			margin: 0;
			letter-spacing: 0.06em;
		}

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

.c-footer__contact-time {
				margin-left: 50px
		}
			}

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

.c-footer__contact-time {
				font-size: 0.8125em;
				margin-left: 40px
		}
			}

.c-footer__contact-time + .c-footer__contact-tel {
				margin-top: 5px;
			}

.c-footer__contact-notice {
			font-size: 0.6875em;
			letter-spacing: 0.05em;
			margin: 0;
			position: relative;
			padding-left: 1.3em;
			text-indent: -1.3em;
		}

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

.c-footer__contact-notice {
				margin-left: 50px
		}
			}

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

.c-footer__contact-notice {
				font-size: 0.75em;
				margin-left: 40px;
				text-align: left
		}
			}

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

.c-footer__contact-notice {
				margin-left: 50px
		}
			}

.c-footer__contact-notice::before {
				content: "※";
				inset: 0 auto auto 0;
			}

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

.c-footer__contact-notice br {
					display: none
			}
				}

.c-footer__contact-link {
			font-size: 0.875em;
			text-align: right;
			margin: 0.6em 0 0;
			letter-spacing: 0.05em;
		}

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

.c-footer__contact-link {
				margin-left: 56px
		}
			}

.c-footer__contact-link a {
				border: 1px solid #fff;
				text-align: center;
				display: block;
				width: 100%;
				padding: 0.4em 1em;
				-webkit-transition: 300ms ease-in-out opacity;
				transition: 300ms ease-in-out opacity;
			}

.c-footer__contact-link a:hover {
					opacity: 0.6;
				}

.c-footer__contact-link a span {
					background: url("/davinci/img/icon-new-window.svg") right center no-repeat;
					background-size: 13px auto;
					padding-right: calc(1em + 13px);
				}

.c-header {
	padding: 0;
	width: 100%;
	z-index: 10;
	position: relative;
}

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

.c-header {
		background: url("/davinci/img/bg-hero.jpg") no-repeat 50% 0;
		background-size: cover
}
	}

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

.c-header__logo {
			margin: 0 0 0 13px;
			padding-top: 13px;
			width: 280px
	}
		}

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

.c-header__logo {
			width: 172px;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			margin: 0 0 0 15px;
			height: 100%
	}
		}

.c-header__logo a {
			-webkit-transition: 300ms ease-in-out opacity;
			transition: 300ms ease-in-out opacity;
		}

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

.c-header__logo a {
				line-height: 1
		}
			}

.c-header__logo a:hover {
				opacity: 0.6;
			}

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

.c-header__inner {
			background: #fff;
			width: 100%;
			height: 62px;
			position: fixed;
			top: 0;
			left: 0;
			z-index: 10
	}
		}

.c-header__contact {
		position: absolute;
		background: #fff;
		border-radius: 0 0 10px 10px;
		inset: 0 30px auto auto;
		margin: 0;
		-webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .16);
		        box-shadow: 0 3px 6px 0 rgba(0, 0, 0, .16);
	}

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

.c-header__contact {
			display: none
	}
		}

.c-header__contact a {
			background: url("/davinci/img/icon-tel-blue.svg") left 1.8em center no-repeat;
			color: #0a629a;
			background-size: 28px auto;
			text-decoration: none;
			letter-spacing: 0.01em;
			font-size: 0.6875em;
			font-weight: bold;
			text-align: center;
			line-height: 1.5;
			padding: 1.8em 1.8em 2.2em calc(1.8em + 36px);
			display: block;
			position: relative;
			-webkit-transition: 300ms opacity ease-in-out;
			transition: 300ms opacity ease-in-out;
		}

.c-header__contact a::after {
				border-top: 2px solid #0a629a;
				border-right: 2px solid #0a629a;
				content: "";
				width: 8px;
				height: 8px;
				display: block;
				position: absolute;
				bottom: 14px;
				left: 50%;
				-webkit-transform: translateX(-50%) rotate(135deg);
				        transform: translateX(-50%) rotate(135deg);
			}

.c-header__contact a:hover {
				opacity: 0.6;
			}

.c-header__contact a span {
				font-size: 1.63636em;
				display: block;
				letter-spacing: 0.03em;
			}

.c-hero {
	padding: 20px 20px 0;
	text-align: center;
	position: relative;
}

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

.c-hero {
		min-height: 600px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center
}
	}

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

.c-hero {
		margin-top: 62px;
		background: url('/davinci/img/bg-hero-sp.jpg');
		background-size: cover;
		padding: 0
}
	}

.c-hero__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		inset: 0;
	}

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

.c-hero__inner {
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-box-pack: start;
			    -ms-flex-pack: start;
			        justify-content: flex-start;
			width: 1180px
	}
		}

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

.c-hero__inner {
			-webkit-box-orient: vertical;
			-webkit-box-direction: normal;
			    -ms-flex-direction: column;
			        flex-direction: column;
			padding-top: 48px
	}
		}

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

.c-hero__img {
			padding-top: 24px;
			width: 329px
	}
		}

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

.c-hero__img {
			-webkit-box-ordinal-group: 3;
			    -ms-flex-order: 2;
			        order: 2;
			width: 49.86667vw;
			margin-left: 10.66667vw;
			margin-top: -12px
	}
		}

.c-hero__text {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

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

.c-hero__text {
			margin-left: -44px;
			width: 608px;
			-webkit-box-ordinal-group: 2;
			    -ms-flex-order: 1;
			        order: 1
	}
		}

.c-hero__text-01 {
			margin: 0 auto;
			text-align: center;
		}

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

.c-hero__text-01 {
				width: 570px
		}
			}

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

.c-hero__text-01 {
				width: 95.2vw
		}
			}

.c-hero__text-02 {
			margin: -10px auto 0;
			text-align: center;
		}

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

.c-hero__text-02 {
				width: 652px
		}
			}

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

.c-hero__text-02 {
				width: 99.46667vw;
				max-width: 100%;
				margin-top: -20px
		}
			}

.c-nav-global {
	width: 100%;
	color: #333;
	font-size: 1em;
}

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

.c-nav-global {
		background: linear-gradient(105deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6)
}
	}

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

.c-nav-global__fixed {
			position: fixed;
			inset: 0 0 auto;
			z-index: 10
	}
		}

.c-nav-global__btn {
		width: 80px;
		height: 62px;
		padding-top: 0;
		text-align: center;
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 10;
		border: none;
		background: none;
		color: #0a629a;
		font-size: 0.75em;
	}

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

.c-nav-global__btn {
			display: none
	}
		}

.c-nav-global__btn-textopen, .c-nav-global__btn-textclose {
			margin-top: 2px;
			display: inline-block;
		}

body.c-nav-global__open .c-nav-global__btn-textopen {
				display: none;
			}

.c-nav-global__btn-textclose {
			display: none;
		}

body.c-nav-global__open .c-nav-global__btn-textclose {
				display: block;
			}

.c-nav-global__btn-line {
			width: 36px;
			height: 27px;
			margin: 0;
			display: inline-block;
			position: relative;
		}

.c-nav-global__btn-line span {
				background: #0a629a;
				width: 100%;
				height: 2px;
				-webkit-transition: 400ms;
				transition: 400ms;
				position: absolute;
				left: 0;
			}

.c-nav-global__btn-line span:nth-child(1) {
				top: 4px;
			}

body.c-nav-global__open .c-nav-global__btn-line span:nth-child(1) {
					-webkit-transform: translateY(13px) rotate(-45deg);
					        transform: translateY(13px) rotate(-45deg);
				}

.c-nav-global__btn-line span:nth-child(2) {
				top: 15px;
			}

body.c-nav-global__open .c-nav-global__btn-line span:nth-child(2) {
					opacity: 0;
				}

.c-nav-global__btn-line span:nth-child(3) {
				bottom: 0;
			}

body.c-nav-global__open .c-nav-global__btn-line span:nth-child(3) {
					-webkit-transform: translateY(-8px) rotate(45deg);
					        transform: translateY(-8px) rotate(45deg);
				}

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

.c-nav-global__container {
			width: 1000px;
			margin: 0 auto;
			padding: 0
	}
		}

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

.c-nav-global__container {
			background: linear-gradient(150deg, #0a78ff, #00dce1);
			width: 100%;
			height: 100%;
			padding: 50px 0 0;
			position: fixed;
			top: 62px;
			right: -100%;
			z-index: 100;
			overflow: auto;
			-webkit-transition: 300ms ease-in;
			transition: 300ms ease-in
	}
		}

body.c-nav-global__open .c-nav-global__container {
			right: 0;
		}

.c-nav-global__list {
		list-style: none;
		margin: 0;
		padding: 0;
	}

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

.c-nav-global__list {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center
	}
		}

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

.c-nav-global__list {
			margin: 0 26.66667vw
	}
		}

.c-nav-global__list li {
			border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		}

.c-nav-global__list a {
			padding: 16px 32px 32px;
			color: #fff;
			text-align: center;
			text-decoration: none;
			display: block;
			position: relative;
			-webkit-transition: 300ms;
			transition: 300ms;
			font-weight: bold;
			font-size: 1.125em;
		}

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

.c-nav-global__list a {
				padding: 12px 10px 32px;
				font-size: 0.875em
		}
			}

.c-nav-global__list a::after {
				border-top: 2px solid #fff;
				border-right: 2px solid #fff;
				content: "";
				width: 8px;
				height: 8px;
				display: block;
				position: absolute;
				bottom: 20px;
				left: 50%;
				-webkit-transform: translateX(-50%) rotate(135deg);
				        transform: translateX(-50%) rotate(135deg);
			}

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

.c-nav-global__list a::after {
					bottom: 16px
			}
				}

.c-nav-global__list a:hover {
				background: #0a629a;
			}

.c-nav-global__info {
		background: rgba(255, 255, 255, 0.9);
		color: #0a629a;
		text-align: center;
		padding: 30px 5.33333vw 110px;
	}

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

.c-nav-global__info {
			display: none
	}
		}

.c-nav-global__info-patient, .c-nav-global__info-medical {
			padding: 0 11.73333vw;
		}

.c-nav-global__info-patient h3, .c-nav-global__info-medical h3 {
				font-weight: normal;
				position: relative;
				font-size: 0.875em;
				margin: 0 auto 0.8em;
			}

.c-nav-global__info-patient h3::before, .c-nav-global__info-patient h3::after, .c-nav-global__info-medical h3::before, .c-nav-global__info-medical h3::after {
					content: "・";
					display: inline-block;
				}

.c-nav-global__info-patient h3::before, .c-nav-global__info-medical h3::before {
					margin-right: 0.8em;
				}

.c-nav-global__info-patient h3::after, .c-nav-global__info-medical h3::after {
					margin-left: 0.8em;
				}

.c-nav-global__info-medical {
			margin-top: 20px;
		}

.c-nav-global__info h2 {
			display: inline-block;
			margin: 0 0 1em;
			letter-spacing: 0.05em;
			padding: 0.2em 2em;
			position: relative;
			z-index: 1;
			color: #fff;
			font-weight: normal;
			font-size: 0.9375em;
		}

.c-nav-global__info h2::before {
				-webkit-transform: skewX(10deg);
				        transform: skewX(10deg);
				content: "";
				position: absolute;
				inset: 0;
				z-index: -1;
				background: linear-gradient(-80deg, #00dce1, #0792f7 35%, #0a78ff);
			}

.c-nav-global__info h2 span {
				display: block;
			}

.c-nav-global__info-tel {
			font-size: 1.875em;
			letter-spacing: .05em;
			line-height: 1;
			margin: 0;
			display: -webkit-inline-box;
			display: -ms-inline-flexbox;
			display: inline-flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			position: relative;
			padding-left: 36px;
		}

.c-nav-global__info-tel span {
				font-size: 0.53333em;
				position: absolute;
				inset: auto auto auto 0;
				margin: auto 0;
			}

.c-nav-global__info-tel a {
				color: #0a629a;
				display: inline-block;
				position: relative;
				text-decoration: underline;
			}

.c-nav-global__info-time {
			color: #0a629a;
			display: inline-block;
			font-size: 0.75em;
			margin: 0;
			letter-spacing: 0.06em;
			margin-left: 36px;
		}

.c-nav-global__info-time + .c-nav-global__info-tel {
				margin-top: 10px;
			}

.c-nav-global__info-notice {
			font-size: 0.6875em;
			letter-spacing: 0.05em;
			margin: 0 0 0 calc(36px + 1em);
			text-align: left;
			position: relative;
			padding-left: 1.3em;
			text-indent: -1.3em;
		}

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

.c-nav-global__info-notice {
				margin-left: 50px
		}
			}

.c-nav-global__info-notice::before {
				content: "※";
				inset: 0 auto auto 0;
			}

.c-nav-global__info-link {
			font-size: 0.875em;
			text-align: right;
			margin: 0.8em 0 0;
		}

.c-nav-global__info-link a {
				border: 1px solid #0a629a;
				text-align: center;
				display: block;
				width: 100%;
				padding: 0.36em 1em;
				color: #0a629a;
				text-decoration: none;
			}

.c-nav-global__info-link a span {
					background: url("/davinci/img/icon-new-window-blue.svg") right center no-repeat;
					background-size: 13px auto;
					padding-right: calc(1em + 13px);
				}

.c-page-home {
	color: #333;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, sans-serif, sans-serif;
	line-height: 1.7;
	-webkit-font-feature-settings: 'palt';
	        font-feature-settings: 'palt';
	margin: 0;
	padding: 0;
	position: relative;
	width: 100%;
}

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

.c-page-home {
		min-width: 1140px
}
	}

.c-page-home h2 {
		text-align: center;
	}

.c-page-home img {
		width: 100%;
		height: auto;
	}

.c-page-home section p {
		letter-spacing: 0.03em;
	}

/* 英語・下線スタイル見出し */

.c-page-home__feature-title, .c-page-home__disease-title, .c-page-home__regime-title, .c-page-home__faq-title {
			position: relative;
			padding: 0.8em 20px 0.2em;
			margin: 0 auto 2em;
			font-size: 1.875em;
			letter-spacing: 0.05em;
			font-weight: 500;
		}

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

.c-page-home__feature-title, .c-page-home__disease-title, .c-page-home__regime-title, .c-page-home__faq-title {
				padding: 1em 5.33333vw 0.4em;
				margin: 0 auto 1.25em;
				font-size: 1.625em
		}
			}

.c-page-home__feature-title::before, .c-page-home__feature-title::after, .c-page-home__disease-title::before, .c-page-home__disease-title::after, .c-page-home__regime-title::before, .c-page-home__regime-title::after, .c-page-home__faq-title::before, .c-page-home__faq-title::after {
				position: absolute;
				margin: 0 auto;
			}

.c-page-home__feature-title::before, .c-page-home__disease-title::before, .c-page-home__regime-title::before, .c-page-home__faq-title::before {
				font-size: 0.4em;
				inset: auto 0;
				-webkit-transform: translateY(-100%);
				        transform: translateY(-100%);
				text-align: center;
				color: #0a629a;
				letter-spacing: 0;
			}

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

.c-page-home__feature-title::before, .c-page-home__disease-title::before, .c-page-home__regime-title::before, .c-page-home__faq-title::before {
					font-size: 0.46154em
			}
				}

.c-page-home__feature-title::after, .c-page-home__disease-title::after, .c-page-home__regime-title::after, .c-page-home__faq-title::after {
				content: '';
				background: -webkit-gradient(linear, left top, left bottom, from(#2194f7), color-stop(35%, #0c7ae8), color-stop(80%, #1474d3), to(#0085e6));
				background: linear-gradient(180deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
				width: 100px;
				height: 4px;
				-webkit-transform: translateY(100%);
				        transform: translateY(100%);
				inset: auto 0 0;
			}

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

.c-page-home__feature-title::after, .c-page-home__disease-title::after, .c-page-home__regime-title::after, .c-page-home__faq-title::after {
					width: 26.66667vw
			}
				}

/* 平行四辺形見出し */

.c-page-home__feature-machine, .c-page-home__merit {
		text-align: center;
	}

.c-page-home__feature-machine-title, .c-page-home__merit-title {
			color: #fff;
			font-size: 1.875em;
			z-index: 1;
			display: inline-block;
			margin: -50% auto 1.2em;
			text-align: center;
			position: relative;
			padding: 0.4em 100px;
			letter-spacing: 0.05em;
			font-weight: 500;
		}

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

.c-page-home__feature-machine-title, .c-page-home__merit-title {
				padding: 0.5em 13.33333vw;
				display: inline-block;
				font-size: 1.5625em
		}
			}

.c-page-home__feature-machine-title::before, .c-page-home__merit-title::before {
				content: '';
				position: absolute;
				inset: 0;
				z-index: -1;
				background: linear-gradient(-110deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
			}

.c-page-home__feature-machine-title span, .c-page-home__merit-title span {
				font-size: 0.83333em;
			}

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

.c-page-home__feature-machine-title span, .c-page-home__merit-title span {
					font-size: 0.76em
			}
				}

.c-page-home__feature-machine-title em, .c-page-home__merit-title em {
				font-size: 1.76667em;
				font-style: normal;
				line-height: 1;
				font-family: 'Barlow', sans-serif;
				font-weight: normal;
				margin: 0 0.05em;
			}

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

.c-page-home__feature-machine-title em, .c-page-home__merit-title em {
					font-size: 1.68em
			}
				}

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

.c-page-home__feature-machine-title br, .c-page-home__merit-title br {
					display: none
			}
				}

.c-page-home__feature {
		padding: 72px 0 0;
		position: relative;
	}

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

.c-page-home__feature {
			padding: 40px 0 0
	}
		}

.c-page-home__feature::before {
			position: absolute;
			content: '';
			z-index: -1;
		}

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

.c-page-home__feature::before {
				background: url('/davinci/img/object-01.png') no-repeat;
				inset: -32px 0 auto auto;
				background-size: cover;
				width: 399px;
				height: 216px
		}
			}

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

.c-page-home__feature::before {
				background: url('/davinci/img/object-01-sp.png') no-repeat;
				inset: 0 0 auto auto;
				background-size: cover;
				width: 192px;
				height: 87px
		}
			}

.c-page-home__feature-title::before {
				content: 'FEATURE';
			}

.c-page-home__feature-intro {
			margin: 0 auto;
			max-width: 1000px;
			padding: 0 0 160px;
			position: relative;
		}

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

.c-page-home__feature-intro {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex
		}
			}

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

.c-page-home__feature-intro {
				padding: 0 5.33333vw 108px
		}
			}

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

.c-page-home__feature-intro::before {
					content: '';
					position: absolute;
					z-index: -1;
					background: url('/davinci/img/object-02-sp.png') no-repeat;
					background-size: 100% auto;
					width: 136px;
					height: 80px;
					inset: auto 0 8px auto
			}
				}

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

.c-page-home__feature-img {
				width: 410px;
				position: relative
		}
			}

.c-page-home__feature-img::before {
				content: '';
				position: absolute;
				z-index: -1;
			}

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

.c-page-home__feature-img::before {
					background: url('/davinci/img/object-02.png') no-repeat;
					background-size: 100% auto;
					width: 374px;
					height: 167px;
					inset: auto auto -60px -166px
			}
				}

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

.c-page-home__feature-text {
				width: calc(100% - 410px);
				padding-left: 40px;
				line-height: 1.8
		}
			}

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

.c-page-home__feature-text {
				font-size: 0.9375em;
				line-height: 2;
				margin-top: 10px
		}
			}

.c-page-home__feature-text p {
				margin: 0 0 1em;
			}

.c-page-home__feature-text-lead {
				color: #093b5a;
				font-size: 1.25em;
			}

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

.c-page-home__feature-text-lead {
					font-size: 1.26667em;
					line-height: 1.7
			}
				}

.c-page-home__feature-machine {
			padding: 0 0 100px;
			position: relative;
		}

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

.c-page-home__feature-machine {
				padding: 0 0 36px
		}
			}

.c-page-home__feature-machine::before {
				background: linear-gradient(150deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
				opacity: 0.27;
				width: 100%;
				height: 100%;
				inset: 0;
				margin: auto;
				position: absolute;
				content: '';
				z-index: -1;
			}

.c-page-home__feature-machine::after {
				content: '';
				position: absolute;
				z-index: -1;
			}

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

.c-page-home__feature-machine::after {
					background: url('/davinci/img/object-03.png') no-repeat;
					background-size: cover;
					width: 469px;
					height: 321px;
					inset: -128px 0 auto auto
			}
				}

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

.c-page-home__feature-machine::after {
					background: url('/davinci/img/object-03-sp.png') no-repeat;
					background-size: cover;
					width: 170px;
					height: 101px;
					inset: -6px auto auto 0
			}
				}

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

.c-page-home__feature-machine-title {
					padding: 0.42em 9.6vw;
					line-height: 1.2
			}
				}

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

.c-page-home__feature-machine-title::before {
						-webkit-transform: skewX(20deg);
						        transform: skewX(20deg)
				}
					}

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

.c-page-home__feature-machine-title::before {
						-webkit-transform: skewX(10deg);
						        transform: skewX(10deg)
				}
					}

.c-page-home__feature-machine-wrapper-01, .c-page-home__feature-machine-wrapper-02, .c-page-home__feature-machine-wrapper-03 {
					position: relative;
					width: 100%;
				}

.c-page-home__feature-machine-wrapper-01::before, .c-page-home__feature-machine-wrapper-01::after {
						position: absolute;
						content: '';
					}

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

.c-page-home__feature-machine-wrapper-01::before {
							background: url('/davinci/img/object-04.png') right center no-repeat;
							background-size: cover;
							width: 295px;
							height: 167px;
							inset: auto 0 -88px auto
					}
						}

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

.c-page-home__feature-machine-wrapper-01::before {
							background: url('/davinci/img/object-04-sp.png') right center no-repeat;
							background-size: cover;
							width: 220px;
							height: 9px;
							inset: -20px 0 auto auto
					}
						}

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

.c-page-home__feature-machine-wrapper-01::after {
							background: url('/davinci/img/object-05.png') left center no-repeat;
							background-size: cover;
							width: 159px;
							height: 96px;
							inset: auto auto -72px 0
					}
						}

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

.c-page-home__feature-machine-wrapper-01::after {
							background: url('/davinci/img/object-05-sp.png') left center no-repeat;
							background-size: cover;
							width: 166px;
							height: 99px;
							inset: auto 0 -46px auto
					}
						}

.c-page-home__feature-machine-wrapper-02::before, .c-page-home__feature-machine-wrapper-02::after {
						position: absolute;
						content: '';
					}

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

.c-page-home__feature-machine-wrapper-02::before {
							background: url('/davinci/img/object-06.png') right center no-repeat;
							background-size: cover;
							width: 438px;
							height: 260px;
							inset: auto auto -48px calc(50% - 54px)
					}
						}

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

.c-page-home__feature-machine-wrapper-02::before {
							background: url('/davinci/img/object-06-sp.png') right center no-repeat;
							background-size: cover;
							width: 162px;
							height: 96px;
							inset: 46px auto auto 0
					}
						}

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

.c-page-home__feature-machine-wrapper-02::after {
							background: url('/davinci/img/object-07.png') left center no-repeat;
							background-size: cover;
							width: 563px;
							height: 128px;
							inset: auto auto -156px 0
					}
						}

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

.c-page-home__feature-machine-wrapper-02::after {
							background: url('/davinci/img/object-07-sp.png') left center no-repeat;
							background-size: cover;
							width: 208px;
							height: 161px;
							inset: auto 0 -88px auto
					}
						}

.c-page-home__feature-machine-wrapper-03::before, .c-page-home__feature-machine-wrapper-03::after {
						position: absolute;
						content: '';
					}

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

.c-page-home__feature-machine-wrapper-03::before {
							background: url('/davinci/img/object-08.png') right center no-repeat;
							background-size: cover;
							width: 419px;
							height: 234px;
							inset: auto auto -120px 0
					}
						}

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

.c-page-home__feature-machine-wrapper-03::before {
							background: url('/davinci/img/object-08-sp.png') right center no-repeat;
							background-size: cover;
							width: 146px;
							height: 88px;
							inset: auto auto 112px 0
					}
						}

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

.c-page-home__feature-machine-wrapper-03::after {
							background: url('/davinci/img/object-09-sp.png') right center no-repeat;
							background-size: cover;
							width: 224px;
							height: 13px;
							inset: auto 0 -26px auto
					}
						}

.c-page-home__feature-machine-01, .c-page-home__feature-machine-02, .c-page-home__feature-machine-03 {
				margin: 0 auto;
				max-width: 1000px;
				text-align: left;
				z-index: 5;
				position: relative;
				min-height: 500px;
			}

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

.c-page-home__feature-machine-01, .c-page-home__feature-machine-02, .c-page-home__feature-machine-03 {
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					padding: 0 72px 0 150px
			}
				}

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

.c-page-home__feature-machine-01, .c-page-home__feature-machine-02, .c-page-home__feature-machine-03 {
					background: #fff;
					padding: 20px 5.33333vw 0;
					margin: 0 5.33333vw;
					-webkit-box-shadow: 0 3px 6px 0 rgba(19, 46, 196, 0.1);
					        box-shadow: 0 3px 6px 0 rgba(19, 46, 196, 0.1)
			}
				}

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

.c-page-home__feature-machine-01::before, .c-page-home__feature-machine-02::before, .c-page-home__feature-machine-03::before {
						background: #fff;
						content: '';
						position: absolute;
						inset: 0;
						z-index: -1;
						-webkit-transform: skewX(10deg);
						        transform: skewX(10deg)
				}
					}

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

.c-page-home__feature-machine-01::after, .c-page-home__feature-machine-02::after, .c-page-home__feature-machine-03::after {
						background: -webkit-gradient(linear, left top, left bottom, from(#2194f7), color-stop(35%, #0c7ae8), color-stop(80%, #1474d3), to(#0085e6));
						background: linear-gradient(180deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
						content: '';
						position: absolute;
						inset: 10px -10px -10px 10px;
						z-index: -2;
						-webkit-transform: skewX(10deg);
						        transform: skewX(10deg)
				}
					}

.c-page-home__feature-machine-01 {
				margin: 12px auto 60px;
			}

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

.c-page-home__feature-machine-01 {
					margin: 0 5.33333vw 30px;
					background: url("/davinci/img/text-machine-01-sp.png") bottom 92px center no-repeat #fff;
					background-size: 100% auto
			}
				}

.c-page-home__feature-machine-01 h4 span:last-child::after {
							content: 'Patient Cart';
						}

.c-page-home__feature-machine-01 h4 span:first-child::after {
							height: 58%;
						}

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

.c-page-home__feature-machine-01 h4 span:first-child::after {
								height: 60%
						}
							}

.c-page-home__feature-machine-02 {
				margin-bottom: 60px;
			}

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

.c-page-home__feature-machine-02 {
					margin-bottom: 30px;
					background: url("/davinci/img/text-machine-02-sp.png") bottom 86px center no-repeat #fff;
					background-size: 100% auto
			}
				}

.c-page-home__feature-machine-02::before, .c-page-home__feature-machine-02::after {
					-webkit-transform: skewX(-10deg);
					        transform: skewX(-10deg);
				}

.c-page-home__feature-machine-02 h4 span:last-child::after {
							content: 'Vision Cart';
						}

.c-page-home__feature-machine-02 h4 span:first-child::after {
							height: 58%;
						}

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

.c-page-home__feature-machine-02 h4 span:first-child::after {
								height: 60%
						}
							}

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

.c-page-home__feature-machine-03 {
					background: url("/davinci/img/text-machine-03-sp.png") bottom 64px center no-repeat #fff;
					background-size: 100% auto
			}
				}

.c-page-home__feature-machine-03 h4 span:last-child::after {
							content: 'Surgeon Console';
						}

.c-page-home__feature-machine-03 h4 span:first-child::after {
							height: 58%;
						}

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

.c-page-home__feature-machine-03 h4 span:first-child::after {
								height: 72%
						}
							}

.c-page-home__feature-machine-bg {
				position: absolute;
				inset: auto 0 0;
			}

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

.c-page-home__feature-machine-bg::after {
						background: url('/davinci/img/text-machine-01.png') no-repeat;
						background-size: cover;
						position: absolute;
						content: '';
						width: 574px;
						height: 254px;
						z-index: 2
				}

						div.c-page-home__feature-machine-01 .c-page-home__feature-machine-bg::after {
							background: url('/davinci/img/text-machine-01.png') no-repeat;
							background-size: cover;
							inset: auto auto 0 calc(50% - 36px);
						}

						div.c-page-home__feature-machine-02 .c-page-home__feature-machine-bg::after {
							background: url('/davinci/img/text-machine-02.png') no-repeat;
							background-size: cover;
							inset: auto auto 0 calc(50% - 46px);
						}

						div.c-page-home__feature-machine-03 .c-page-home__feature-machine-bg::after {
							background: url('/davinci/img/text-machine-03.png') no-repeat;
							background-size: cover;
							inset: auto auto 0 calc(50% - 32px);
						}
					}

.c-page-home__feature-machine-text {
				position: relative;
			}

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

.c-page-home__feature-machine-text {
					padding: 72px 0 40px;
					width: calc(100% - 350px)
			}

					div.c-page-home__feature-machine-02 .c-page-home__feature-machine-text {
						padding: 72px 0 40px 60px;
						width: calc(100% - 290px);
					}
				}

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

.c-page-home__feature-machine-text {
					font-size: 0.9375em
			}
				}

.c-page-home__feature-machine-text p {
					margin: 0 0 20px;
					line-height: 1.8;
				}

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

.c-page-home__feature-machine-thumb {
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-pack: justify;
					    -ms-flex-pack: justify;
					        justify-content: space-between;
					z-index: 5;
					position: relative
			}

					div.c-page-home__feature-machine-02 .c-page-home__feature-machine-thumb {
						-webkit-box-pack: start;
						    -ms-flex-pack: start;
						        justify-content: flex-start;
					}
				}

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

.c-page-home__feature-machine-thumb {
					text-align: center
			}
				}

.c-page-home__feature-machine-thumb button {
					background-color: #fff;
					border: none;
					cursor: pointer;
					padding: 0;
					-webkit-appearance: none;
					   -moz-appearance: none;
					        appearance: none;
					position: relative;
				}

.c-page-home__feature-machine-thumb button:hover img {
							opacity: 1;
						}

.c-page-home__feature-machine-thumb button::after {
						background: url("/davinci/img/icon-movie-play.svg") center center no-repeat;
						position: absolute;
						inset: 0;
						margin: auto;
						content: "";
					}

.c-page-home__feature-machine-thumb button img {
						opacity: 0.7;
						-webkit-transition: 300ms ease-in-out opacity;
						transition: 300ms ease-in-out opacity;
						vertical-align: bottom;
					}

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

.c-page-home__feature-machine-thumb img {
						width: 196px
				}
					}

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

.c-page-home__feature-machine-thumb img {
						width: 52.26667vw
				}
					}

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

.c-page-home__feature-machine-img {
					position: relative;
					width: 350px;
					z-index: 3
			}

					div.c-page-home__feature-machine-02 .c-page-home__feature-machine-img {
						width: 290px;
						margin: 0 auto;
					}
				}

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

.c-page-home__feature-machine-img picture {
						width: 320px;
						margin: 0 auto;
						position: absolute;
						inset: 0 0 0 auto;
						text-align: center
				}

						div.c-page-home__feature-machine-01 .c-page-home__feature-machine-img picture {
							inset: 0 8px 0 auto;
						}

						div.c-page-home__feature-machine-02 .c-page-home__feature-machine-img picture {
							inset: 0 8px 0 auto;
						}

						div.c-page-home__feature-machine-03 .c-page-home__feature-machine-img picture {
							inset: auto 8px -2px auto;
						}
					}

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

.c-page-home__feature-machine-img picture {
						display: block;
						width: 62.93333vw;
						margin: 0 auto
				}
					}

.c-page-home__feature-machine-img picture img {
						z-index: 4;
						position: relative;
					}

.c-page-home__feature-machine h4 {
				font-size: 1.25em;
				margin: 0 0 36px;
				position: relative;
				line-height: 1.3;
			}

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

.c-page-home__feature-machine h4 {
					margin: 20px 0 36px
			}
				}

.c-page-home__feature-machine h4 span:first-child {
						font-size: 2.65em;
						font-weight: normal;
						color: #0a629a;
						border: 3px solid #b2d2e8;
						border-radius: 50%;
						margin: auto 0;
						width: 116px;
						height: 116px;
						text-align: center;
						padding: 0.5em 0.5em 0.5em 0.75em;
						position: absolute;
						display: -webkit-box;
						display: -ms-flexbox;
						display: flex;
						-webkit-box-align: center;
						    -ms-flex-align: center;
						        align-items: center;
						-webkit-box-pack: center;
						    -ms-flex-pack: center;
						        justify-content: center;
						z-index: -1;
						inset: 0 0 -5px -104px;
						font-family: 'Barlow', sans-serif;
					}

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

.c-page-home__feature-machine h4 span:first-child {
							inset: 0 0 0 -8px;
							width: 96px;
							height: 96px;
							font-size: 2.5em;
							padding: 0.5em 0.5em 0.5em 0.6em
					}
						}

.c-page-home__feature-machine h4 span:first-child::after {
							background: #fff;
							width: 20px;
							inset: 0 -5px 0 auto;
							margin: auto 0;
							content: "";
							position: absolute;
						}

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

.c-page-home__feature-machine h4 span:first-child::after {
								z-index: -1
						}
							}

.c-page-home__feature-machine h4 span:last-child {
						font-size: 1.4em;
						padding: 0.2em 0 1.5em;
						letter-spacing: 0.03em;
					}

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

.c-page-home__feature-machine h4 span:last-child {
							font-size: 1.2em;
							margin-left: 80px;
							padding: 0;
							display: inline-block
					}
						}

.c-page-home__feature-machine h4 span:last-child::after {
							display: block;
							color: #0a629a;
							font-size: 0.46429em;
							font-weight: normal;
							margin: 0.2em 0 0 0.2em;
							letter-spacing: 0;
						}

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

.c-page-home__feature-machine h4 span:last-child::after {
								font-size: 0.45833em;
								margin: 0 0 0 0.5em
						}
							}

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

.c-page-home__feature-machine h4 span:last-child br {
								display: none
						}
							}

.c-page-home__disease {
		padding: 80px 20px 148px;
		position: relative;
	}

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

.c-page-home__disease {
			padding: 32px 5.33333vw 100px
	}
		}

.c-page-home__disease::before, .c-page-home__disease::after {
			position: absolute;
			content: '';
			z-index: 3;
		}

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

.c-page-home__disease::before {
				background: url('/davinci/img/object-10-sp.png') right center no-repeat;
				background-size: cover;
				width: 192px;
				height: 58px;
				inset: 0 0 auto auto
		}
			}

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

.c-page-home__disease::after {
				background: url('/davinci/img/object-09.png') right center no-repeat;
				background-size: cover;
				width: 336px;
				height: 223px;
				inset: auto 0 -80px auto
		}
			}

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

.c-page-home__disease::after {
				background: url('/davinci/img/object-11-sp.png') right center no-repeat;
				background-size: cover;
				width: 107px;
				height: 79px;
				inset: auto 0 26px auto
		}
			}

.c-page-home__disease-title::before {
				content: 'DISEASE';
			}

.c-page-home__disease-inner {
			margin: 0 auto;
			max-width: 1000px;
		}

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

.c-page-home__disease-inner {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex
		}
			}

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

.c-page-home__disease-img {
				width: 500px
		}
			}

.c-page-home__disease-img picture {
				display: block;
			}

.c-page-home__disease-img picture + picture {
					margin-top: 10px;
				}

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

.c-page-home__disease-text {
				width: calc(100% - 500px);
				padding-left: 32px
		}
			}

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

.c-page-home__disease-text {
				font-size: 0.9375em;
				line-height: 2;
				margin-top: 10px
		}
			}

.c-page-home__disease-text p {
				margin: 0 0 1em;
			}

.c-page-home__merit {
		position: relative;
	}

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

.c-page-home__merit {
			padding: 120px 0 88px;
			margin-top: -120px
	}
		}

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

.c-page-home__merit {
			padding: 60px 0 40px;
			margin-top: -60px;
			z-index: 3
	}
		}

.c-page-home__merit::before {
			background: linear-gradient(135deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
			opacity: 0.27;
			width: 100%;
			margin: auto;
			position: absolute;
			content: '';
			z-index: -1;
		}

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

.c-page-home__merit::before {
				height: calc(100% - 120px);
				inset: 120px 0 auto
		}
			}

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

.c-page-home__merit::before {
				height: calc(100% - 60px);
				inset: 60px 0 auto
		}
			}

.c-page-home__merit::after {
			position: absolute;
			content: '';
		}

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

.c-page-home__merit::after {
				background: url('/davinci/img/object-10.png') right center no-repeat;
				background-size: cover;
				width: 532px;
				height: 309px;
				inset: 0 0 auto auto
		}
			}

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

.c-page-home__merit::after {
				background: url('/davinci/img/object-12-sp.png') right center no-repeat;
				background-size: cover;
				width: 341px;
				height: 215px;
				inset: 0 0 auto auto
		}
			}

.c-page-home__merit-title {
			padding: 0.58em 100px;
		}

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

.c-page-home__merit-title {
				padding: 0.4em 13.33333vw;
				min-width: 74.13333vw;
				line-height: 1.4
		}
			}

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

.c-page-home__merit-title::before {
					-webkit-transform: skewX(-20deg);
					        transform: skewX(-20deg)
			}
				}

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

.c-page-home__merit-title::before {
					-webkit-transform: skewX(-10deg);
					        transform: skewX(-10deg)
			}
				}

.c-page-home__merit-wrapper-01 {
				position: relative;
				width: 100%;
			}

.c-page-home__merit-wrapper-01::before, .c-page-home__merit-wrapper-01::after {
					position: absolute;
					content: '';
				}

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

.c-page-home__merit-wrapper-01::before {
						background: url('/davinci/img/object-11.png') left center no-repeat;
						background-size: cover;
						width: 438px;
						height: 260px;
						inset: -24px auto auto 0;
						z-index: -1
				}
					}

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

.c-page-home__merit-wrapper-01::after {
						background: url('/davinci/img/object-12.png') right center no-repeat;
						background-size: cover;
						width: 442px;
						height: 74px;
						inset: auto 0 -94px auto;
						z-index: -1
				}
					}

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

.c-page-home__merit-wrapper-01::after {
						background: url('/davinci/img/object-13-sp.png') right center no-repeat;
						background-size: cover;
						width: 239px;
						height: 9px;
						inset: auto 0 -20px auto;
						z-index: -1
				}
					}

.c-page-home__merit-bg {
			position: absolute;
			inset: auto 0 0;
		}

.c-page-home__merit-bg::before, .c-page-home__merit-bg::after {
				position: absolute;
				content: '';
			}

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

.c-page-home__merit-bg::before {
					background: url('/davinci/img/object-13.png') right center no-repeat;
					background-size: cover;
					width: 463px;
					height: 267px;
					inset: auto auto 0 0;
					z-index: -1
			}
				}

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

.c-page-home__merit-bg::before {
					background: url('/davinci/img/object-14-sp.png') right center no-repeat;
					background-size: cover;
					width: 356px;
					height: 205px;
					inset: auto auto 0 0;
					z-index: -1
			}
				}

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

.c-page-home__merit-bg::after {
					background: url('/davinci/img/object-14.png') right center no-repeat;
					background-size: cover;
					width: 394px;
					height: 260px;
					inset: auto 0 -70px auto;
					z-index: -1
			}
				}

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

.c-page-home__merit-bg::after {
			}
				}

.c-page-home__merit-01, .c-page-home__merit-02 {
			background: #fff;
			margin: 0 auto;
			max-width: 1000px;
			text-align: left;
			padding: 28px 60px 40px;
			-webkit-box-shadow: 0 3px 6px 0 rgba(19, 46, 196, 0.1);
			        box-shadow: 0 3px 6px 0 rgba(19, 46, 196, 0.1);
			position: relative;
			z-index: 2;
		}

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

.c-page-home__merit-01, .c-page-home__merit-02 {
				padding: 20px 5.33333vw 40px;
				margin: 0 5.33333vw
		}
			}

.c-page-home__merit-01 h3, .c-page-home__merit-02 h3 {
				font-size: 1.5em;
				position: relative;
				padding: 0 0 0.5em 108px;
				margin: 0 auto 52px;
				font-weight: normal;
			}

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

.c-page-home__merit-01 h3, .c-page-home__merit-02 h3 {
					font-size: 1.4375em;
					padding: 0 0 0.5em 92px;
					line-height: 1.5;
					margin: 0 auto 32px;
					min-height: 85px;
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-align: end;
					    -ms-flex-align: end;
					        align-items: flex-end
			}
				}

.c-page-home__merit-01 h3::after, .c-page-home__merit-02 h3::after {
					content: '';
					position: absolute;
					background: linear-gradient(-80deg, #00dce1, #0792f7 35%, #0a78ff);
					width: 100%;
					height: 4px;
					inset: auto 0 0;
					margin: 0 auto;
				}

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

.c-page-home__merit-01 h3::after, .c-page-home__merit-02 h3::after {
						width: calc(100% - 40px);
						inset: auto 0 0 auto
				}
					}

.c-page-home__merit-01 h3 > span, .c-page-home__merit-02 h3 > span {
					color: #fff;
					background: linear-gradient(150deg, #2194f7, #0c7ae8 35%, #1474d3 80%, #0085e6);
					height: 114px;
					width: 114px;
					border-radius: 50%;
					padding: 1em 1em 0.4em;
					position: absolute;
					inset: auto auto -18px -20px;
					z-index: 1;
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-align: center;
					    -ms-flex-align: center;
					        align-items: center;
					-webkit-box-pack: center;
					    -ms-flex-pack: center;
					        justify-content: center;
					-webkit-box-orient: vertical;
					-webkit-box-direction: normal;
					    -ms-flex-direction: column;
					        flex-direction: column;
					line-height: 1.2;
				}

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

.c-page-home__merit-01 h3 > span, .c-page-home__merit-02 h3 > span {
						width: 85px;
						height: 85px;
						padding: 1em 1em 0.8em;
						inset: auto auto -4px 0
				}
					}

.c-page-home__merit-01 h3 > span > span:first-child, .c-page-home__merit-02 h3 > span > span:first-child {
							font-size: 0.54167em;
							font-weight: normal;
						}

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

.c-page-home__merit-01 h3 > span > span:first-child, .c-page-home__merit-02 h3 > span > span:first-child {
								font-size: 0.43478em
						}
							}

.c-page-home__merit-01 h3 > span > span:last-child, .c-page-home__merit-02 h3 > span > span:last-child {
							font-size: 2.20833em;
							padding-left: 0.25em;
							font-family: 'Barlow', sans-serif;
							margin-top: -5px;
						}

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

.c-page-home__merit-01 h3 > span > span:last-child, .c-page-home__merit-02 h3 > span > span:last-child {
								font-size: 1.82609em;
								padding-left: 0.1em
						}
							}

.c-page-home__merit-01 h4, .c-page-home__merit-02 h4 {
				color: #0a629a;
				font-size: 1.4375em;
				margin: 0 0 0.5em;
				letter-spacing: 0.03em;
				font-weight: 500;
			}

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

.c-page-home__merit-01 h4, .c-page-home__merit-02 h4 {
					font-size: 1.3125em;
					margin: 0 0 0.2em
			}
				}

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

.c-page-home__merit-01-inner, .c-page-home__merit-02-inner {
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex
			}
				}

.c-page-home__merit-01-inner:not(:last-child), .c-page-home__merit-02-inner:not(:last-child) {
					margin-bottom: 70px;
				}

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

.c-page-home__merit-01-inner:not(:last-child), .c-page-home__merit-02-inner:not(:last-child) {
						margin-bottom: 36px
				}
					}

.c-page-home__merit-01 {
			margin: 12px auto 70px;
		}

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

.c-page-home__merit-01 {
				margin: 0 5.33333vw 30px
		}
			}

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

.c-page-home__merit-01-img {
					text-align: center;
					width: 373px
			}
				}

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

.c-page-home__merit-01-img img {
						width: 320px
				}
					}

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

.c-page-home__merit-01-text {
					width: calc(100% - 373px);
					padding-left: 40px
			}
				}

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

.c-page-home__merit-01-text {
					margin-top: 10px;
					font-size: 0.9375em;
					line-height: 2
			}
				}

.c-page-home__merit-01-text p {
					margin: 0;
				}

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

.c-page-home__merit-02-img {
					text-align: center;
					width: 373px
			}
				}

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

.c-page-home__merit-02-text {
					width: calc(100% - 373px);
					padding-left: 48px
			}
				}

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

.c-page-home__merit-02-text {
					margin-top: 10px;
					font-size: 0.9375em;
					line-height: 2
			}
				}

.c-page-home__merit-02-text p {
					margin: 0;
				}

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

.c-page-home__merit-02-inner:last-child img {
							width: 320px
					}
						}

.c-page-home__regime {
		padding: 80px 20px;
		position: relative;
	}

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

.c-page-home__regime {
			padding: 40px 5.33333vw 44px
	}
		}

.c-page-home__regime::before {
			position: absolute;
			content: '';
			z-index: 1;
		}

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

.c-page-home__regime::before {
				background: url('/davinci/img/object-15.png') left bottom no-repeat;
				background-size: cover;
				width: 422px;
				height: 355px;
				inset: auto 0 -230px auto
		}
			}

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

.c-page-home__regime::before {
				background: url('/davinci/img/object-15-sp.png') left bottom no-repeat;
				background-size: cover;
				width: 134px;
				height: 98px;
				inset: auto 0 -78px auto
		}
			}

.c-page-home__regime-title::before {
				content: 'TREATMENT REGIME';
			}

.c-page-home__regime-inner {
			margin: 0 auto;
			max-width: 1000px;
		}

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

.c-page-home__regime-inner {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex
		}
			}

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

.c-page-home__regime-img {
				width: 410px
		}
			}

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

.c-page-home__regime-text {
				width: calc(100% - 410px);
				padding-left: 40px
		}
			}

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

.c-page-home__regime-text {
				margin-top: 15px;
				font-size: 0.9375em;
				line-height: 2
		}
			}

.c-page-home__regime-text p {
				margin: 0 0 1em;
			}

.c-page-home__regime-text-lead {
				color: #093b5a;
				font-size: 1.25em;
			}

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

.c-page-home__regime-text-lead {
					font-size: 1.26667em;
					line-height: 1.7
			}
				}

.c-page-home__faq {
		position: relative;
	}

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

.c-page-home__faq {
			padding: 130px 20px 88px;
			margin-top: -80px
	}
		}

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

.c-page-home__faq {
			padding: 40px 5.33333vw
	}
		}

.c-page-home__faq::before {
			background: -webkit-gradient(linear, left top, left bottom, from(#e5f3ff), color-stop(35%, #d6e1eb), color-stop(80%, #d1e1f0), to(#d9e3ea));
			background: linear-gradient(#e5f3ff, #d6e1eb 35%, #d1e1f0 80%, #d9e3ea);
			opacity: 0.27;
			width: 100%;
			margin: auto;
			position: absolute;
			content: '';
			z-index: -1;
		}

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

.c-page-home__faq::before {
				height: calc(100% - 80px);
				inset: 80px 0 0
		}
			}

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

.c-page-home__faq::before {
				height: 100%;
				inset: 0
		}
			}

.c-page-home__faq::after {
			content: '';
			z-index: -1;
		}

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

.c-page-home__faq::after {
				background: url('/davinci/img/object-17.png') no-repeat;
				background-size: cover;
				width: 456px;
				height: 49px;
				inset: auto 0 0 auto;
				position: absolute
		}
			}

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

.c-page-home__faq::after {
				background: url('/davinci/img/object-17-sp.png') no-repeat;
				background-size: cover;
				width: 152px;
				height: 9px;
				inset: auto 0 16px auto;
				position: absolute
		}
			}

.c-page-home__faq a {
			color: #0a629a;
			background: url("/davinci/img/icon-new-window-blue.svg") right center no-repeat;
			background-size: 13px auto;
			padding-right: calc(0.6em + 13px);
			margin-top: 0.5em;
			display: inline-block;
		}

.c-page-home__faq a:hover {
				text-decoration: none;
			}

.c-page-home__faq-title {
			margin: 0 auto 1.2em;
		}

.c-page-home__faq-title::before {
				content: 'QUESTION';
			}

.c-page-home__faq-inner {
			background: #fff;
			margin: 0 auto;
			max-width: 1000px;
			padding: 36px 40px;
		}

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

.c-page-home__faq-inner {
				padding: 20px 5.33333vw
		}
			}

.c-page-home__faq-inner dl {
				margin: 0;
				padding: 0;
			}

.c-page-home__faq-inner dl dt, .c-page-home__faq-inner dl dd {
					padding-left: 64px;
				}

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

.c-page-home__faq-inner dl dt, .c-page-home__faq-inner dl dd {
						padding-left: 60px
				}
					}

.c-page-home__faq-inner dl dt {
					font-weight: 500;
					position: relative;
					font-size: 1.25em;
				}

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

.c-page-home__faq-inner dl dt {
						font-size: 1.125em
				}
					}

.c-page-home__faq-inner dl dt:not(:first-child) {
						margin-top: 1.5em;
					}

.c-page-home__faq-inner dl dt::before {
						background: url('/davinci/img/icon-q.png');
						background-size: cover;
						width: 48px;
						height: 48px;
						position: absolute;
						inset: -0.4em auto auto 0;
						content: '';
					}

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

.c-page-home__faq-inner dl dt::before {
							inset: -0.48em auto auto 0
					}
						}

.c-page-home__faq-inner dl dd {
					margin: 2em 0 0;
				}

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

.c-page-home__faq-inner dl dd {
						padding-left: 0;
						font-size: 0.9375em;
						line-height: 2;
						margin: 1.5em 0 0
				}
					}

.c-page-home__faq-inner dl dd:not(:last-child) {
						padding-bottom: 2em;
						border-bottom: 1px solid #0a629a;
					}

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

.c-page-home__faq-inner dl dd:not(:last-child) {
							padding-bottom: 1.5em
					}
						}

.c-page-home__faq-object-01 {
				position: absolute;
				width: 100%;
				inset: auto 0 0;
			}

.c-page-home__faq-object-01::before {
					position: absolute;
					content: '';
					z-index: -1;
				}

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

.c-page-home__faq-object-01::before {
						background: url('/davinci/img/object-16.png') left center no-repeat;
						background-size: cover;
						width: 336px;
						height: 199px;
						inset: auto auto 0 0
				}
					}

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

.c-page-home__faq-object-01::before {
						background: url('/davinci/img/object-16-sp.png') left center no-repeat;
						background-size: cover;
						width: 133px;
						height: 82px;
						inset: auto auto 10px 0
				}
					}

.c-modal {
	position: fixed;
	display: none;
	width: 100%;
	height: 100%;
	inset: 0;
	z-index: 100;
	-webkit-backdrop-filter: blur(4px);
	        backdrop-filter: blur(4px);
}

.c-modal[aria-hidden='false'] {
		-webkit-animation: fadeIn 300ms cubic-bezier(0, 0, 0.2, 1);
		        animation: fadeIn 300ms cubic-bezier(0, 0, 0.2, 1);
	}

.c-modal[aria-hidden='true'] {
		-webkit-animation: fadeOut 300ms cubic-bezier(0, 0, 0.2, 1);
		        animation: fadeOut 300ms cubic-bezier(0, 0, 0.2, 1);
	}

.c-modal.is-open {
		display: block;
	}

.c-modal__overlay {
		display: -ms-grid;
		display: grid;
		justify-items: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.7);
		-webkit-transition: -webkit-transform 300ms cubic-bezier(0, 0, 0.2, 1);
		transition: -webkit-transform 300ms cubic-bezier(0, 0, 0.2, 1);
		transition: transform 300ms cubic-bezier(0, 0, 0.2, 1);
		transition: transform 300ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 300ms cubic-bezier(0, 0, 0.2, 1);
	}

.c-modal__content {
		width: 100%;
		max-width: 800px;
	}

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

.c-modal__content {
			padding: 0 20px
	}
		}

.c-modal__content iframe {
			display: block;

			/* stylelint-disable-next-line */
			aspect-ratio: 16 / 9;
			width: 100%;
		}

.c-modal__youtube-link {
		position: relative;
		display: block;
		width: 100%;
		max-width: 280px;
		color: #333;
		margin: 32px auto 0;
		padding: 12px 24px;
		text-align: center;
		text-decoration: none;
		-webkit-box-shadow: rgba(100, 100, 111, 0.2) 0 7px 29px 0;
		        box-shadow: rgba(100, 100, 111, 0.2) 0 7px 29px 0;
		font-weight: bold;
		background: #fff;
		border: 2px solid #fff;
		-webkit-transition: background 300ms cubic-bezier(0, 0, 0.2, 1), color 300ms cubic-bezier(0, 0, 0.2, 1);
		transition: background 300ms cubic-bezier(0, 0, 0.2, 1), color 300ms cubic-bezier(0, 0, 0.2, 1);
	}

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

.c-modal__youtube-link {
			max-width: 280px
	}
		}

.c-modal__youtube-link::after {
			content: '';
			display: block;
			position: absolute;
			top: 50%;
			right: 12px;
			background: url('/davinci/img/icon-external.png') no-repeat;
			width: 19px;
			height: 19px;
			background-size: 18px auto;
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
		}

.c-modal__youtube-link:hover {
			color: #fff;
			background: rgba(0, 0, 0, 0.7);
		}

.c-modal__youtube-link:hover::after {
				background: url('/davinci/img/icon-external-w.png') no-repeat;
				background-size: cover;
			}

.c-modal header {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
		margin-bottom: 16px;
	}

.c-modal header button[data-micromodal-close] {
			position: relative;
			background-color: transparent;
			border: none;
			cursor: pointer;
			outline: none;
			padding: 0;
			width: 25px;
			height: 25px;
			-webkit-appearance: none;
			   -moz-appearance: none;
			        appearance: none;
			-webkit-transition: -webkit-transform 300ms cubic-bezier(0, 0, 0.2, 1);
			transition: -webkit-transform 300ms cubic-bezier(0, 0, 0.2, 1);
			transition: transform 300ms cubic-bezier(0, 0, 0.2, 1);
			transition: transform 300ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 300ms cubic-bezier(0, 0, 0.2, 1);
		}

.c-modal header button[data-micromodal-close]:hover {
				-webkit-transform: scale(1.1);
				        transform: scale(1.1);
			}

.c-modal header button[data-micromodal-close] span {
				position: absolute;
				display: inline-block;
				top: 50%;
				left: 0;
				width: 30px;
				height: 2px;
				background: #fff;
				-webkit-transform: rotate(45deg);
				        transform: rotate(45deg);
				-webkit-transform-origin: center;
				        transform-origin: center;
			}

.c-modal header button[data-micromodal-close] span:last-child {
					-webkit-transform: rotate(-45deg);
					        transform: rotate(-45deg);
				}

@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@-webkit-keyframes fadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

@keyframes fadeOut {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

/*
======================================
	TAVI
	2019.6.05
	last 2019.08.21

	[1]Hero
	[2]Container Size
	[3]Title
	[4]Column
	[5]Color Box
	[6]Movie
	[7]Daido
	[8]Tavi
	[9]Merit
	[10]System
	[11]Faq
	[12]Contact
======================================
*/

/*
-------------------------
	[1]Hero
-------------------------
*/

/*
-------------------------
	[2]Container Size
-------------------------
*/

.container-490, .container-600, .container-670, .container-690, .container-760, .container-820 {
	margin-left: auto;
	margin-right: auto;
}

.container-490 {
	width: 490px;
}

.container-600 {
	width: 600px;
}

.container-670 {
	width: 670px;
}

.container-690 {
	width: 690px;
}

.container-760 {
	width: 760px;
}

.container-820 {
	width: 820px;
}

@media screen and (max-width: 767px) {
	.container-490, .container-600, .container-670, .container-690, .container-760, .container-820 {
		width: 100%;
	}

	.container-490, .container-600, .container-670 {
		padding-left: 15px;
		padding-right: 15px;
	}

	.container-690, .container-760 {
		padding-left: 25px;
		padding-right: 25px;
	}
}

/*
-------------------------
	[3]Title
-------------------------
*/

.title-h2, .title-h2-white {
	font-size: 4.2rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: center;
	position: relative;
	z-index: 0;
}

.title-h2::before, .title-h2-white::before {
	content: '';
	width: 118px;
	height: 118px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	z-index: -1;
}

.title-h2 {
	color: #019ae9;
}

.title-h2::before {
	background: url('/tavi/img/bg-title-h2.png') no-repeat 0 0;
	background-size: contain;
}

.title-h2-white {
	color: #fff;
}

.title-h2-white::before {
	background: url('/tavi/img/bg-title-h2-white.png') no-repeat 0 0;
	background-size: contain;
}

.title-h3 {
	font-size: 2.2rem;
	font-weight: 500;
	color: #02376d;
	line-height: 1.6;
	text-align: center;
}

.title-h4 {
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: center;
	position: relative;
}

.title-h4 span {
	font-size: 3.2rem;
	color: #019ae9;
}

.title-h4::after {
	background: -webkit-gradient(linear, left top, right top, from(#019ae9), to(#10c8a3));
	background: linear-gradient(to right, #019ae9 0%, #10c8a3 100%);
	content: '';
	width: 100%;
	height: 2px;
	display: block;
	position: absolute;
	bottom: -15px;
	left: 0;
}

.title-bg-blue {
	background: #019ae9;
	border-radius: 20px;
	font-size: 2rem;
	font-weight: 500;
	color: #fff;
	text-align: center;
}

.title-bg-blue span {
	background: #fff;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	margin-right: 20px;
	font-size: 1.6rem;
	color: #029ce6;
	display: inline-block;
}

.title-yellow {
	font-size: 2.4rem;
	font-weight: 500;
	color: #fff71b;
}

.title-blue {
	font-size: 1.8rem;
	font-weight: 500;
	color: #019ae9;
}

.title-black {
	font-size: 1.8rem;
	font-weight: 500;
}

.title-white {
	font-size: 2rem;
	font-weight: 500;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.title-h2, .title-h2-white {
		font-size: 2.6rem;
	}

	.title-h2::before, .title-h2-white::before {
		width: 86px;
		height: 86px;
	}

	.title-h3 {
		font-size: 2rem;
		text-align: left;
	}

	.title-h4 {
		font-size: 1.8rem;
	}

	.title-h4 span {
		font-size: 2rem;
	}

	.title-h4::after {
		bottom: -10px;
	}

	.title-bg-blue {
		border-radius: 18px;
		font-size: 1.8rem;
	}

	.title-bg-blue span {
		margin-right: 10px;
	}

	.title-yellow {
		font-size: 2rem;
	}

	.title-blue {
		font-size: 1.6rem;
	}

	.title-black {
		font-size: 1.6rem;
	}

	.title-white {
		font-size: 1.5rem;
	}
}

/*
-------------------------
	[4]Column
-------------------------
*/

.column-2-01, .column-2-02, .column-2-03, .column-2-04, .column-2-05 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.column-2-01-left {
	width: 530px;
}

.column-2-01-left p:nth-child(n + 1) {
	margin-top: 25px;
}

.column-2-01-right {
	width: 180px;
}

.column-2-02-left {
	width: 298px;
}

.column-2-02-right {
	width: 400px;
}

.column-2-03-left {
	width: 385px;
}

.column-2-03-right {
	width: 405px;
}

.column-2-04 > * {
	width: 355px;
	margin-bottom: 10px;
}

.column-2-04 figcaption {
	font-size: 2rem;
	font-weight: 500;
	color: #019ae9;
}

.column-2-04 .note {
	width: 100%;
	font-size: 1.2rem;
	text-align: right;
}

.column-2-05-left {
	width: 180px;
}

.column-2-05-right {
	width: 470px;
}

@media screen and (max-width: 767px) {
	.column-2-01, .column-2-03, .column-2-04 {
		display: block;
	}

	.column-2-01-left, .column-2-01-right, .column-2-02-left, .column-2-02-right, .column-2-03-left, .column-2-03-right, .column-2-04 > *, .column-2-05-left, .column-2-05-right {
		width: 100%;
	}

	.column-2-01-left p:nth-child(n + 1), .column-2-01-right {
		margin-top: 5.33333vw;
	}

	.column-2-02-left {
		width: 100%;
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
	}

	.column-2-02-right {
		width: 100%;
		margin-bottom: 5.33333vw;
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}

	.column-2-04 > * {
		margin-bottom: 0;
	}

	.column-2-04 > *:not(:first-child) {
		margin-top: 30px;
	}

	.column-2-04 figcaption {
		font-size: 1.8rem;
	}

	.column-2-04 .note {
		margin-top: 2px;
	}

	.column-2-05-left img {
		width: 40vw;
		margin: 0 auto 10px;
		display: block;
	}
}

/*
-------------------------
	[5]Color Box
-------------------------
*/

.bg-gray-box {
	background: #f7f7f7;
	border-radius: 10px;
	width: 100%;
	padding: 35px 30px;
}

.bg-gray-box img {
	margin: 0 auto;
	display: block;
}

.bg-white-box {
	background: #fff;
	border-radius: 10px;
	padding: 35px 35px;
}

@media screen and (max-width: 767px) {
	.bg-gray-box, .bg-white-box {
		padding: 20px 15px;
	}
}

/*
-------------------------
	[6]Movie
-------------------------
*/

.movie-container {
	padding: 38px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.movie-container .movie-box {
	width: 355px;
}

.movie-container .text-box {
	width: 300px;
}

.movie-container .text-box dt, .movie-container .text-box dd {
	padding-left: 5px;
}

.movie-container .title-blue {
	border-bottom: 1px solid #dfdfdf;
	margin-bottom: 10px;
	font-size: 2.4rem;
}

.movie-contents {
	width: 100%;
	padding-top: 56.25%;
	position: relative;
}

.movie-contents iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

@media screen and (max-width: 767px) {
	.movie-container {
		padding: 20px 15px;
	}

	.movie-container .movie-box, .movie-container .text-box {
		width: 100%;
	}

	.movie-container .text-box {
		margin-top: 10px;
	}

	.movie-container .title-blue {
		font-size: 2rem;
	}
}

/*
-------------------------
	[7]Daido
-------------------------
*/

.c-daido .column-2-01-right img {
	width: 157px;
}

.c-daido .bg-gray-box img {
	width: 578px;
}

@media screen and (max-width: 767px) {
	.c-daido .column-2-01-right img {
		margin: 2.66667vw auto 0;
		display: block;
	}

	.c-daido .bg-gray-box img {
		width: 100%;
	}
}

/*
-------------------------
	[8]Tavi
-------------------------
*/

.c-tavi-pict01 {
	width: 261px;
}

.c-tavi-pict02 {
	width: 621px;
}

.c-tavi-pict03 {
	width: 463px;
}

@media screen and (max-width: 767px) {
	.c-tavi-pict01 {
		width: 55.73333vw;
	}

	.c-tavi-pict02, .c-tavi-pict03 {
		width: 100%;
	}
}

/*
-------------------------
	[9]Merit
-------------------------
*/

.c-merit dd {
	color: #fff;
}

@media screen and (max-width: 767px) {
	.c-merit dt {
		text-align: center;
	}
}

/*
-------------------------
	[10]System
-------------------------
*/

.c-system .column-2-04 figure {
	margin-bottom: 10px;
}

/*
-------------------------
	[11]Faq
-------------------------
*/

.c-faq-list li {
	background: #fff;
	border-radius: 10px;
	padding: 30px 28px;
}

.c-faq-list li:not(:first-child) {
	margin-top: 20px;
}

.c-faq-list dt, .c-faq-list dd {
	padding-left: 50px;
	position: relative;
}

.c-faq-list dt::before, .c-faq-list dd::before {
	border-radius: 50%;
	width: 32px;
	height: 32px;
	font-size: 1.8rem;
	font-weight: 500;
	color: #fff;
	line-height: 32px;
	text-align: center;
	display: block;
	position: absolute;
	top: 3px;
	left: 0;
}

.c-faq-list dt {
	margin-bottom: 10px;
	font-size: 2rem;
	font-weight: 500;
	color: #019ae9;
	line-height: 1.6;
}

.c-faq-list dt::before {
	background: #019ae9;
	content: 'Q';
}

.c-faq-list dd::before {
	background: #10c8a4;
	content: 'A';
}

.c-faq-list .note-text, .c-faq-list .note-link {
	font-size: 1.3rem;
}

.c-faq-list .note-text {
	margin-top: 10px;
}

.c-faq-list .note-link {
	margin-bottom: 10px;
	text-indent: 1em;
}

.c-faq-list .note-link a {
	text-decoration: underline;
}

@media screen and (min-width: 768px) {
	.c-faq-list .note-link a:hover {
		text-decoration: none;
	}
}

@media screen and (max-width: 767px) {
	.c-faq-list li {
		padding: 20px 15px;
	}

	.c-faq-list li:not(:first-child) {
		margin-top: 4vw;
	}

	.c-faq-list dt, .c-faq-list dd {
		padding-left: 40px;
	}

	.c-faq-list dt::before, .c-faq-list dd::before {
		width: 28px;
		height: 28px;
		font-size: 1.6rem;
		line-height: 28px;
		top: 1px;
	}

	.c-faq-list dt {
		font-size: 1.8rem;
	}

	.c-faq-list .note-text, .c-faq-list .note-link {
		font-size: 1.2rem;
	}
}

/*
-------------------------
	[12]Contact
-------------------------
*/

.c-contact {
	text-align: center;
	position: relative;
}

.c-contact .title-yellow {
	border-bottom: 1px solid #fff;
	width: 850px;
	margin: 0 auto 30px;
	padding-bottom: 10px;
}

.c-contact-tel {
	width: 400px;
	margin-left: auto;
	margin-right: auto;
}

.c-contact-tel .tel {
	margin-bottom: 20px;
	padding-left: 58px;
	font-size: 4.4rem;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: left;
	position: relative;
}

.c-contact-tel .tel::before {
	background: url('/tavi/img/icon/icon-tel.svg') no-repeat 0 0;
	background-size: contain;
	content: '';
	width: 31px;
	height: 41px;
	display: block;
	position: absolute;
	top: 50%;
	left: 13px;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.c-contact-tel .time {
	background: #fff;
	border-radius: 16px;
	font-size: 1.7rem;
	color: #00a8db;
}

.c-contact-mail a .mail {
	border: 2px solid #fff;
	border-radius: 10px;
	height: 77px;
	padding-top: 17px;
	-webkit-transition: 300ms;
	transition: 300ms;
}

.c-contact-mail a .mail img {
	width: 318px;
}

.c-contact-mail .note-text {
	margin-top: 5px;
	font-size: 1.4rem;
	color: #fff;
}

@media screen and (min-width: 768px) {
	.c-contact-mail a:hover .mail {
		background: #019ae9;
	}
}

@media screen and (max-width: 767px) {
	.c-contact {
		padding-left: 25px;
		padding-right: 25px;
	}

	.c-contact .title-yellow {
		width: 100%;
		padding-bottom: 20px;
		font-size: 2.4rem;
		line-height: 1.4;
	}

	.c-contact .title-white {
		margin-bottom: 15px;
	}

	.c-contact-tel {
		width: 100%;
	}

	.c-contact-tel .tel {
		padding-left: 27px;
		font-size: 3rem;
		letter-spacing: 0.01em;
		text-align: center;
		white-space: nowrap;
	}

	.c-contact-tel .tel a {
		color: #fff;
	}

	.c-contact-tel .tel::before {
		width: 27px;
		height: 35px;
		left: calc(50% - 115px);
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
	}

	.c-contact-tel .time {
		border-radius: 14px;
		max-width: 275px;
		margin: 10px auto 0;
		font-size: 1.4rem;
	}

	.c-contact-mail a .mail {
		max-width: 325px;
		height: 96px;
		margin: 0 auto;
		padding-top: 13px;
	}

	.c-contact-mail a .mail img {
		width: 261px;
	}
}

/*
 下記よりコンポーネントファイル追加OK
*/
