body {
	font-family: "";
}

.u-desktop {
	display: none;
}

/* リキッドレイアウト対応 */

html {
	font-size: 16px;
}

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

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core root defaults */

html {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	line-height: 1.5;
	min-height: 100vh;
	text-rendering: optimizeLegibility;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	max-width: 100%;
	width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
	margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Blur images when they have no alt attribute */

img:not([alt]) {
	filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

input[type=checkbox],
input[type=radio] {
	display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

select::-ms-expand {
	display: none;
}

/* ホバー */

a {
	-webkit-text-decoration: none;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

.about {
	margin-top: -1%;
}

.about2 {
	margin-top: 12.8%;
}

.about3 {
	margin-top: 13%;
}

.background {
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: -1;
}

.background__bg {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
}

.background__logo {
	display: none;
	position: fixed;
	right: calc(12% + 640px + 10%);
	top: 50%;
	transform: translateY(-50%);
	width: 30%;
}

.contact {
	margin-top: -40%;
}

.contact__inner {
	position: relative;
}

.contact__anchor {
	left: 51%;
	position: absolute;
	top: 44vw;
	transform: translateX(-50%);
	width: 73vw;
}

.contact2 {
	margin-top: 12.8%;
}

.contact2__inner {
	position: relative;
}

.contact2__anchor {
	left: 51%;
	position: absolute;
	top: 45vw;
	transform: translateX(-50%);
	width: 73vw;
}

.expert {
	margin-top: 12.8%;
}

.flow {
	margin-top: 12.8%;
}

.hero {
	margin-top: 22%;
}

.interest {
	margin-top: -35%;
}

.nurse {
	margin-top: 12.8%;
}

.nurse__inner {
	position: relative;
}

.nurse__anchor {
	left: 51%;
	position: absolute;
	top: 81%;
	transform: translateX(-50%);
	width: 65%;
}

.online__text {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 8.5vw;
	width: 58vw;
}

.online__anchor {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2vw;
	position: relative;
	width: 84vw;
}

.online__anchor img {
	width: 100%;
}

.range {
	margin-left: auto;
	margin-right: auto;
	padding-left: 4.2vw;
	padding-right: 4.2vw;
	width: 100%;
}

.range-narrow {
	padding-left: 32px;
	padding-right: 32px;
}

main {
	background-color: #fff;
	box-shadow: 0px 0px 6px rgba(239, 238, 238, 0.5215686275);
	margin-left: auto;
	margin-right: auto;
}

.voice {
	margin-top: -30%;
}

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

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

html {
	font-size: 1.4545454545vw;
}

}

@media (min-width: 1100px) {

html {
	font-size: 16px;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}


/*# sourceMappingURL=style.css.map */

body {
	background-image: linear-gradient(to bottom, #f1e9fa 0%, #e9eefc 100%);
	background-attachment: fixed;
}

main,
footer {
	max-width: 640px;
	margin-inline: auto;
	box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px;
	background: #fff;
}

section {
	position: relative;
}

header {
	position: fixed;
	top: 22px;
	left: 22px;
	z-index: 99;
}

a {
	transition: 0.3s;
}

a:hover {
	opacity: .5;
}

header a {
	display: block;
	width: 40%;
}

.hero {
	margin-top: unset;
}

.online__text {
	width: 85%;
	margin-top: 15%;
}

.online__anchor {
	width: 78%;
	margin-top: 3%;
}

.contact__anchor,
.contact2__anchor {
	top: 69%;
	width: 70%;
}

.range {
	padding-left: 6%;
	padding-right: 6%;
}
