@charset "utf-8";


/************************************
header
************************************/
@media screen and (min-width: 1200px) {
	header {
		margin-bottom: 30px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	header {
		margin-bottom: calc(30vw / var(--tablet));
	}
}

@media screen and (max-width: 767px) {
	header {
		margin-bottom: calc(30vw / var(--sp));
	}
}


/************************************
#menu
************************************/
@media screen and (min-width: 1200px) {
	#menu {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		box-sizing: border-box;
		border: 2px solid #ed687c;
		border-radius: calc(60px / 2);
		width: 1000px;
		height: 60px;
		padding: 0 8px;
		margin: 0 auto 55px;
	}
	
	#menu ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: center;
		flex-grow: 1;
	}
	
	#menu ul li a {
		position: relative;
	}
	
	#menu ul li a::after {
		position: absolute;
		display: block;
		content: "▼";
		color: #ed687c;
		font-size: 10px;
		line-height: 1em;
		font-weight: 400;
		text-align: center;
		bottom: -14px;
		left: 50%;
		transform: translateX(-50%);
	}
	
	#menu ul li a p {
		color: #4e4e4e;
		font-size: 18px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
	}
	
	#menu .entry {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ed687c;
		border-radius: calc(43px / 2);
		width: 180px;
		height: 43px;
	}
	
	#menu .entry::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/recruit/entry.svg") no-repeat;
		background-size: 100% 100%;
		width: 16px;
		height: 10px;
		top: 50%;
		left: 18px;
		transform: translateY(-50%);
	}
	
	#menu .entry p {
		color: #ffffff;
		font-size: 18px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-left: 20px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	#menu {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		box-sizing: border-box;
		border: calc(2vw / var(--tablet)) solid #ed687c;
		border-radius: calc((60vw / 2) / var(--tablet));
		width: calc(1000vw / var(--tablet));
		height: calc(60vw / var(--tablet));
		padding: 0 calc(8vw / var(--tablet));
		margin: 0 auto calc(55vw / var(--tablet));
	}
	
	#menu ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: center;
		flex-grow: 1;
	}
	
	#menu ul li a {
		position: relative;
	}
	
	#menu ul li a::after {
		position: absolute;
		display: block;
		content: "▼";
		color: #ed687c;
		font-size: calc(10vw / var(--tablet));
		line-height: 1em;
		font-weight: 400;
		text-align: center;
		bottom: calc(-14vw / var(--tablet));
		left: 50%;
		transform: translateX(-50%);
	}
	
	#menu ul li a p {
		color: #4e4e4e;
		font-size: calc(18vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
	}
	
	#menu .entry {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ed687c;
		border-radius: calc((43vw / 2) / var(--tablet));
		width: calc(180vw / var(--tablet));
		height: calc(43vw / var(--tablet));
	}
	
	#menu .entry::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/recruit/entry.svg") no-repeat;
		background-size: 100% 100%;
		width: calc(16vw / var(--tablet));
		height: calc(10vw / var(--tablet));
		top: 50%;
		left: calc(18vw / var(--tablet));
		transform: translateY(-50%);
	}
	
	#menu .entry p {
		color: #ffffff;
		font-size: calc(18vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-left: calc(20vw / var(--tablet));
	}
}

@media screen and (max-width: 767px) {
	#menu {
		box-sizing: border-box;
		border: calc(2vw / var(--sp)) solid #ed687c;
		border-radius: calc((20vw / 2) / var(--sp));
		width: calc(340vw / var(--sp));
		padding: 0 calc(20vw / var(--sp)) calc(20vw / var(--sp));
		margin: 0 auto calc(100vw / var(--sp));
	}
	
	#menu ul {
		width: 100%;
		margin-bottom: calc(20vw / var(--sp));
	}
	
	#menu ul li {
		border-bottom: calc(1vw / var(--sp)) solid #e6e6e6;
		width: 100%;
	}
	
	#menu ul li a {
		position: relative;
		display: block;
		width: 100%;
		padding: calc(10vw / var(--sp)) 0;
	}
	
	#menu ul li a::after {
		position: absolute;
		display: block;
		content: "▼";
		color: #ed687c;
		font-size: calc(10vw / var(--sp));
		line-height: 1em;
		font-weight: 400;
		text-align: center;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
	}
	
	#menu ul li a p {
		color: #4e4e4e;
		font-size: calc(18vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
	}
	
	#menu .entry {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ed687c;
		border-radius: calc((43vw / 2) / var(--sp));
		width: 100%;
		height: calc(43vw / var(--sp));
	}
	
	#menu .entry::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/recruit/entry.svg") no-repeat;
		background-size: 100% 100%;
		width: calc(16vw / var(--sp));
		height: calc(10vw / var(--sp));
		top: 50%;
		left: calc(78vw / var(--sp));
		transform: translateY(-50%);
	}
	
	#menu .entry p {
		color: #ffffff;
		font-size: calc(18vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
	}
}


/************************************
#about
************************************/
@media screen and (min-width: 1200px) {
	#about {
		width: 1000px;
		margin: 0 auto 100px;
	}
	
	#about h2 {
		color: #595641;
		font-size: 32px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: 40px;
	}
	
	#about .wrapper {
		background: #f2f6fa;
		border-radius: 20px;
		width: 100%;
		padding: 50px 0;
	}
	
	#about .wrapper h3 {
		color: #00489d;
		font-size: 24px;
		line-height: 34px;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: 40px;
	}
	
	#about .wrapper .departments {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 627px;
		height: 92px;
		margin: 0 auto 40px;
	}
	
	#about .wrapper .departments li {
		display: table;
		border-radius: calc(92px / 2);
		width: 92px;
		height: 92px;
	}
	
	#about .wrapper .departments li.departments_01 {
		background: #5db6e7;
	}
	
	#about .wrapper .departments li.departments_02 {
		background: #f09ba5;
	}
	
	#about .wrapper .departments li p {
		display: table-cell;
		vertical-align: middle;
		color: #ffffff;
		font-size: 18px;
		line-height: 22px;
		font-weight: 600;
		text-align: center;
	}
	
	#about .wrapper .text {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 892px;
		margin: 0 auto;
	}
	
	#about .wrapper .text .photo {
		width: 300px;
	}
	
	#about .wrapper .text .photo img {
		border-radius: 20px;
		width: 100%;
		margin-bottom: 20px;
	}
	
	#about .wrapper .text .photo img:last-of-type {
		margin-bottom: 10px;
	}
	
	#about .wrapper .text .photo small {
		display: block;
		color: #4e4e4e;
		font-size: 10px;
		line-height: 1em;
		font-weight: 400;
		text-align: left;
	}
	
	#about .wrapper .text p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: justify;
		width: 562px;
	}
	
	#about .wrapper .text p span {
		font-weight: 600;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	#about {
		width: calc(1000vw / var(--tablet));
		margin: 0 auto calc(100vw / var(--tablet));
	}
	
	#about h2 {
		color: #595641;
		font-size: calc(32vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(40vw / var(--tablet));
	}
	
	#about .wrapper {
		background: #f2f6fa;
		border-radius: calc(20vw / var(--tablet));
		width: 100%;
		padding: calc(50vw / var(--tablet)) 0;
	}
	
	#about .wrapper h3 {
		color: #00489d;
		font-size: calc(24vw / var(--tablet));
		line-height: calc(34vw / var(--tablet));
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(40vw / var(--tablet));
	}
	
	#about .wrapper .departments {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: calc(627vw / var(--tablet));
		height: calc(92vw / var(--tablet));
		margin: 0 auto calc(40vw / var(--tablet));
	}
	
	#about .wrapper .departments li {
		display: table;
		border-radius: calc((92vw / 2) / var(--tablet));
		width: calc(92vw / var(--tablet));
		height: calc(92vw / var(--tablet));
	}
	
	#about .wrapper .departments li.departments_01 {
		background: #5db6e7;
	}
	
	#about .wrapper .departments li.departments_02 {
		background: #f09ba5;
	}
	
	#about .wrapper .departments li p {
		display: table-cell;
		vertical-align: middle;
		color: #ffffff;
		font-size: calc(18vw / var(--tablet));
		line-height: calc(22vw / var(--tablet));
		font-weight: 600;
		text-align: center;
	}
	
	#about .wrapper .text {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: calc(892vw / var(--tablet));
		margin: 0 auto;
	}
	
	#about .wrapper .text .photo {
		width: calc(300vw / var(--tablet));
	}
	
	#about .wrapper .text .photo img {
		border-radius: calc(20vw / var(--tablet));
		width: 100%;
		margin-bottom: calc(20vw / var(--tablet));
	}
	
	#about .wrapper .text .photo img:last-of-type {
		margin-bottom: calc(10vw / var(--tablet));
	}
	
	#about .wrapper .text .photo small {
		display: block;
		color: #4e4e4e;
		font-size: calc(10vw / var(--tablet));
		line-height: 1em;
		font-weight: 400;
		text-align: left;
	}
	
	#about .wrapper .text p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: justify;
		width: calc(562vw / var(--tablet));
	}
	
	#about .wrapper .text p span {
		font-weight: 600;
	}
}

@media screen and (max-width: 767px) {
	#about {
		width: 100%;
		margin-bottom: calc(100vw / var(--sp));
	}
	
	#about h2 {
		color: #595641;
		font-size: calc(32vw / var(--sp));
		line-height: calc(42vw / var(--sp));
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(50vw / var(--tablet));
	}
	
	#about .wrapper {
		background: #f2f6fa;
		width: 100%;
		padding: calc(50vw / var(--sp)) 0;
	}
	
	#about .wrapper h3 {
		color: #00489d;
		font-size: calc(24vw / var(--sp));
		line-height: calc(34vw / var(--sp));
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(40vw / var(--sp));
	}
	
	#about .wrapper .departments {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-content: space-between;
		width: calc(306vw / var(--sp));
		height: calc(202vw / var(--sp));
		margin: 0 auto calc(40vw / var(--sp));
	}
	
	#about .wrapper .departments li {
		display: table;
		border-radius: calc((92vw / 2) / var(--sp));
		width: calc(92vw / var(--sp));
		height: calc(92vw / var(--sp));
	}
	
	#about .wrapper .departments li.departments_01 {
		background: #5db6e7;
	}
	
	#about .wrapper .departments li.departments_02 {
		background: #f09ba5;
	}
	
	#about .wrapper .departments li p {
		display: table-cell;
		vertical-align: middle;
		color: #ffffff;
		font-size: calc(18vw / var(--sp));
		line-height: calc(22vw / var(--sp));
		font-weight: 600;
		text-align: center;
	}
	
	#about .wrapper .text {
		width: calc(340vw / var(--sp));
		margin: 0 auto;
	}
	
	#about .wrapper .text .photo {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 100%;
		margin-bottom: calc(30vw / var(--sp));
	}
	
	#about .wrapper .text .photo img {
		border-radius: calc(11vw / var(--sp));
		width: calc(165vw / var(--sp));
		margin-bottom: calc(14vw / var(--sp));
	}
	
	#about .wrapper .text .photo small {
		display: block;
		color: #4e4e4e;
		font-size: calc(10vw / var(--sp));
		line-height: 1em;
		font-weight: 400;
		text-align: left;
	}
	
	#about .wrapper .text p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: justify;
		width: 100%;
	}
	
	#about .wrapper .text p span {
		font-weight: 600;
	}
}


/************************************
#job_benefits
************************************/
@media screen and (min-width: 1200px) {
	#job_benefits {
		width: 1000px;
		margin: 0 auto 100px;
	}
	
	#job_benefits h2 {
		color: #595641;
		font-size: 32px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: 40px;
	}
	
	#job_benefits .wrapper {
		background: #f5f5f4;
		border-radius: 20px;
		width: 100%;
		padding: 50px 0;
	}
	
	#job_benefits .wrapper .job, #job_benefits .wrapper .benefits, #job_benefits .wrapper .preferred {
		width: 894px;
		margin: 0 auto 50px;
	}
	
	#job_benefits .wrapper .job h3, #job_benefits .wrapper .benefits h3, #job_benefits .wrapper .preferred h3, #job_benefits .wrapper .appeal h3 {
		font-size: 24px;
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: 30px;
	}
	
	#job_benefits .wrapper .job.office h3, #job_benefits .wrapper .benefits h3, #job_benefits .wrapper .preferred h3, #job_benefits .wrapper .appeal h3 {
		color: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse h3 {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about {
		box-sizing: border-box;
		background: #ffffff;
		border-radius: 10px;
		width: 100%;
		padding: 25px 0 50px;
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .job .job_about table {
		width: 854px;
		margin: 0 auto 30px;
	}
	
	#job_benefits .wrapper .job .job_about table tr {
		display: flex;
		flex-wrap: wrap;
		border-bottom: 1px solid #acacac;
		width: 100%;
		padding: 20px 0;
	}
	
	#job_benefits .wrapper .job .job_about table tr th {
		flex-grow: 1;
		box-sizing: border-box;
		padding-left: 20px;
	}
	
	#job_benefits .wrapper .job .job_about table tr th h4 {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: left;
	}
	
	#job_benefits .wrapper .job .job_about table tr td {
		width: 680px;
	}
	
	#job_benefits .wrapper .job .job_about table tr td .fulltime {
		margin-bottom: 10px;
	}
	
	#job_benefits .wrapper .job .job_about table tr td p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: left;
	}
	
	#job_benefits .wrapper .job .job_about table tr td p span {
		font-weight: 600;
	}
	
	#job_benefits .wrapper .job .job_about table tr td ul {
		box-sizing: border-box;
		padding-left: 50px;
	}
	
	#job_benefits .wrapper .job .job_about table tr td ul li {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: left;
		list-style: disc;
	}
	
	#job_benefits .wrapper .job .job_about table tr td small {
		display: block;
		color: #3c3c3c;
		font-size: 13px;
		line-height: 23px;
		font-weight: 400;
		text-align: left;
		margin-top: 10px;
	}
	
	#job_benefits .wrapper .job .job_about .support {
		font-size: 16px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-bottom: 50px;
	}
	
	#job_benefits .wrapper .job.office .job_about .support {
		color: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse .job_about .support {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about .entry {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: calc(43px / 2);
		width: 340px;
		height: 43px;
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .job.office .job_about .entry {
		background: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse .job_about .entry {
		background: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about .entry::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/recruit/entry.svg") no-repeat;
		background-size: 100% 100%;
		width: 16px;
		height: 10px;
		top: 50%;
		left: 18px;
		transform: translateY(-50%);
	}
	
	#job_benefits .wrapper .job .job_about .entry p {
		color: #ffffff;
		font-size: 18px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
	}
	
	#job_benefits .wrapper .benefits .benefits_about {
		box-sizing: border-box;
		background: #ffffff;
		border-radius: 10px;
		width: 100%;
		padding: 25px 0;
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul {
		display: flex;
		flex-wrap: wrap;
		width: 854px;
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li {
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		width: 50%;
		height: 60px;
		border-bottom: 1px solid #acacac;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li:nth-last-child(1), #job_benefits .wrapper .benefits .benefits_about ul li:nth-last-child(2):nth-child(2n+1) {
		border-bottom: none;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li:nth-child(odd) {
		border-right: 1px solid #acacac;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: center;
	}
	
	#job_benefits .wrapper .preferred .preferred_about {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		width: 100%;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul {
		display: flex;
		flex-direction: column;
		gap: 30px 0;
		background: #ffffff;
		border-radius: 20px;
		width: 414px;
		padding: 55px 0;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li {
		width: 100%;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li p {
		font-size: 16px;
		line-height: 1em;
		font-weight: 400;
		text-align: center;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li:nth-child(odd) p {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li:nth-child(even) p {
		color: #00489d;
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text {
		width: 436px;
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: justify;
		margin-bottom: 10px;
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text img {
		border-radius: 8px;
		width: 200px;
	}
	
	#job_benefits .wrapper .appeal {
		width: 894px;
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .appeal ol {
		display: flex;
		flex-direction: column;
		gap: 10px 0;
		width: 100%;
	}
	
	#job_benefits .wrapper .appeal ol li {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 0 20px;
		box-sizing: border-box;
		background: #ffffff;
		width: 100%;
		min-height: 147px;
		padding: 5px;
	}
	
	#job_benefits .wrapper .appeal ol li h4 {
		box-sizing: border-box;
		font-size: 20px;
		line-height: 26px;
		font-weight: 600;
		text-align: center;
		width: 390px;
		padding-top: 15px;
	}
	
	#job_benefits .wrapper .appeal ol li:nth-child(odd) h4 {
		background: #fef6f7;
		color: #ed687c;
	}
	
	#job_benefits .wrapper .appeal ol li:nth-child(even) h4 {
		background: #f0f4f9;
		color: #00489d;
	}
	
	#job_benefits .wrapper .appeal ol li h4 span {
		font-size: 30px;
	}
	
	#job_benefits .wrapper .appeal ol li p {
		align-content: center;
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: justify;
		width: 460px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	#job_benefits {
		width: calc(1000vw / var(--tablet));
		margin: 0 auto calc(100vw / var(--tablet));
	}
	
	#job_benefits h2 {
		color: #595641;
		font-size: calc(32vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(40vw / var(--tablet));
	}
	
	#job_benefits .wrapper {
		background: #f5f5f4;
		border-radius: calc(20vw / var(--tablet));
		width: 100%;
		padding: calc(50vw / var(--tablet)) 0;
	}
	
	#job_benefits .wrapper .job, #job_benefits .wrapper .benefits, #job_benefits .wrapper .preferred {
		width: calc(894vw / var(--tablet));
		margin: 0 auto calc(50vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job h3, #job_benefits .wrapper .benefits h3, #job_benefits .wrapper .preferred h3, #job_benefits .wrapper .appeal h3 {
		font-size: calc(24vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: calc(30vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job.office h3, #job_benefits .wrapper .benefits h3, #job_benefits .wrapper .preferred h3, #job_benefits .wrapper .appeal h3 {
		color: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse h3 {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about {
		box-sizing: border-box;
		background: #ffffff;
		border-radius: calc(10vw / var(--tablet));
		width: 100%;
		padding: calc(25vw / var(--tablet)) 0 calc(50vw / var(--tablet));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .job .job_about table {
		width: calc(854vw / var(--tablet));
		margin: 0 auto calc(30vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job .job_about table tr {
		display: flex;
		flex-wrap: wrap;
		border-bottom: calc(1vw / var(--tablet)) solid #acacac;
		width: 100%;
		padding: calc(20vw / var(--tablet)) 0;
	}
	
	#job_benefits .wrapper .job .job_about table tr th {
		flex-grow: 1;
		box-sizing: border-box;
		padding-left: calc(20vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job .job_about table tr th h4 {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: left;
	}
	
	#job_benefits .wrapper .job .job_about table tr td {
		width: calc(680vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job .job_about table tr td .fulltime {
		margin-bottom: calc(10vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job .job_about table tr td p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: left;
	}
	
	#job_benefits .wrapper .job .job_about table tr td p span {
		font-weight: 600;
	}
	
	#job_benefits .wrapper .job .job_about table tr td ul {
		box-sizing: border-box;
		padding-left: calc(50vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job .job_about table tr td ul li {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: left;
		list-style: disc;
	}
	
	#job_benefits .wrapper .job .job_about table tr td small {
		display: block;
		color: #3c3c3c;
		font-size: calc(13vw / var(--tablet));
		line-height: calc(23vw / var(--tablet));
		font-weight: 400;
		text-align: left;
		margin-top: calc(10vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job .job_about .support {
		font-size: calc(16vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-bottom: calc(50vw / var(--tablet));
	}
	
	#job_benefits .wrapper .job.office .job_about .support {
		color: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse .job_about .support {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about .entry {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: calc((43vw / 2) / var(--tablet));
		width: calc(340vw / var(--tablet));
		height: calc(43vw / var(--tablet));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .job.office .job_about .entry {
		background: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse .job_about .entry {
		background: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about .entry::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/recruit/entry.svg") no-repeat;
		background-size: 100% 100%;
		width: calc(16vw / var(--tablet));
		height: calc(10vw / var(--tablet));
		top: 50%;
		left: calc(18vw / var(--tablet));
		transform: translateY(-50%);
	}
	
	#job_benefits .wrapper .job .job_about .entry p {
		color: #ffffff;
		font-size: calc(18vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
	}
	
	#job_benefits .wrapper .benefits .benefits_about {
		box-sizing: border-box;
		background: #ffffff;
		border-radius: calc(10vw / var(--tablet));
		width: 100%;
		padding: calc(25vw / var(--tablet)) 0;
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul {
		display: flex;
		flex-wrap: wrap;
		width: calc(854vw / var(--tablet));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li {
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		width: 50%;
		height: calc(60vw / var(--tablet));
		border-bottom: calc(1vw / var(--tablet)) solid #acacac;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li:nth-last-child(1), #job_benefits .wrapper .benefits .benefits_about ul li:nth-last-child(2):nth-child(2n+1) {
		border-bottom: none;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li:nth-child(odd) {
		border-right: calc(1vw / var(--tablet)) solid #acacac;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: center;
	}
	
	#job_benefits .wrapper .preferred .preferred_about {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		width: 100%;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul {
		display: flex;
		flex-direction: column;
		gap: calc(30vw / var(--tablet)) 0;
		background: #ffffff;
		border-radius: calc(20vw / var(--tablet));
		width: calc(414vw / var(--tablet));
		padding: calc(55vw / var(--tablet)) 0;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li {
		width: 100%;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li p {
		font-size: calc(16vw / var(--tablet));
		line-height: 1em;
		font-weight: 400;
		text-align: center;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li:nth-child(odd) p {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li:nth-child(even) p {
		color: #00489d;
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text {
		width: calc(436vw / var(--tablet));
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: justify;
		margin-bottom: calc(10vw / var(--tablet));
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text img {
		border-radius: calc(8vw / var(--tablet));
		width: calc(200vw / var(--tablet));
	}
	
	#job_benefits .wrapper .appeal {
		width: calc(894vw / var(--tablet));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .appeal ol {
		display: flex;
		flex-direction: column;
		gap: calc(10vw / var(--tablet)) 0;
		width: 100%;
	}
	
	#job_benefits .wrapper .appeal ol li {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 0 calc(20vw / var(--tablet));
		box-sizing: border-box;
		background: #ffffff;
		width: 100%;
		min-height: calc(147vw / var(--tablet));
		padding: calc(5vw / var(--tablet));
	}
	
	#job_benefits .wrapper .appeal ol li h4 {
		box-sizing: border-box;
		font-size: calc(20vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 600;
		text-align: center;
		width: calc(390vw / var(--tablet));
		padding-top: calc(15vw / var(--tablet));
	}
	
	#job_benefits .wrapper .appeal ol li:nth-child(odd) h4 {
		background: #fef6f7;
		color: #ed687c;
	}
	
	#job_benefits .wrapper .appeal ol li:nth-child(even) h4 {
		background: #f0f4f9;
		color: #00489d;
	}
	
	#job_benefits .wrapper .appeal ol li h4 span {
		font-size: calc(30vw / var(--tablet));
	}
	
	#job_benefits .wrapper .appeal ol li p {
		align-content: center;
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: justify;
		width: calc(460vw / var(--tablet));
	}
}

@media screen and (max-width: 767px) {
	#job_benefits {
		width: 100%;
		margin-bottom: calc(100vw / var(--sp));
	}
	
	#job_benefits h2 {
		color: #595641;
		font-size: calc(32vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(40vw / var(--sp));
	}
	
	#job_benefits .wrapper {
		background: #ffffff;
		width: 100%;
	}
	
	#job_benefits .wrapper .job, #job_benefits .wrapper .benefits, #job_benefits .wrapper .preferred {
		width: 100%;
		margin-bottom: calc(50vw / var(--sp));
	}
	
	#job_benefits .wrapper .job h3, #job_benefits .wrapper .benefits h3, #job_benefits .wrapper .preferred h3, #job_benefits .wrapper .appeal h3 {
		font-size: calc(24vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: calc(340vw / var(--sp));
		margin: 0 auto calc(30vw / var(--sp));
	}
	
	#job_benefits .wrapper .job.office h3, #job_benefits .wrapper .benefits h3, #job_benefits .wrapper .preferred h3, #job_benefits .wrapper .appeal h3 {
		color: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse h3 {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about {
		width: calc(340vw / var(--sp));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .job .job_about table {
		width: 100%;
		margin-bottom: calc(30vw / var(--sp));
	}
	
	#job_benefits .wrapper .job .job_about table tr {
		display: flex;
		flex-wrap: wrap;
		border-bottom: calc(1vw / var(--sp)) solid #acacac;
		width: 100%;
		padding: calc(20vw / var(--sp)) 0;
	}
	
	#job_benefits .wrapper .job .job_about table tr:first-child {
		border-top: calc(1vw / var(--sp)) solid #acacac;
	}
	
	#job_benefits .wrapper .job .job_about table tr th {
		flex-grow: 1;
	}
	
	#job_benefits .wrapper .job .job_about table tr th h4 {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: left;
	}
	
	#job_benefits .wrapper .job .job_about table tr td {
		width: calc(240vw / var(--sp));
	}
	
	#job_benefits .wrapper .job .job_about table tr td .fulltime {
		margin-bottom: calc(10vw / var(--sp));
	}
	
	#job_benefits .wrapper .job .job_about table tr td p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: left;
	}
	
	#job_benefits .wrapper .job .job_about table tr td p span {
		font-weight: 600;
	}
	
	#job_benefits .wrapper .job .job_about table tr td ul {
		box-sizing: border-box;
		padding-left: calc(16vw / var(--sp));
	}
	
	#job_benefits .wrapper .job .job_about table tr td ul li {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: left;
		list-style: disc;
	}
	
	#job_benefits .wrapper .job .job_about table tr td small {
		display: block;
		color: #3c3c3c;
		font-size: calc(13vw / var(--sp));
		line-height: calc(23vw / var(--sp));
		font-weight: 400;
		text-align: justify;
		margin-top: calc(10vw / var(--sp));
	}
	
	#job_benefits .wrapper .job .job_about .support {
		font-size: calc(16vw / var(--sp));
		line-height: calc(23vw / var(--sp));
		font-weight: 600;
		text-align: center;
		margin-bottom: calc(30vw / var(--sp));
	}
	
	#job_benefits .wrapper .job.office .job_about .support {
		color: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse .job_about .support {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about .entry {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: calc((43vw / 2) / var(--sp));
		width: 100%;
		height: calc(43vw / var(--sp));
	}
	
	#job_benefits .wrapper .job.office .job_about .entry {
		background: #00489d;
	}
	
	#job_benefits .wrapper .job.nurse .job_about .entry {
		background: #ed687c;
	}
	
	#job_benefits .wrapper .job .job_about .entry::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/recruit/entry.svg") no-repeat;
		background-size: 100% 100%;
		width: calc(16vw / var(--sp));
		height: calc(10vw / var(--sp));
		top: 50%;
		left: calc(18vw / var(--sp));
		transform: translateY(-50%);
	}
	
	#job_benefits .wrapper .job .job_about .entry p {
		color: #ffffff;
		font-size: calc(18vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
	}
	
	#job_benefits .wrapper .benefits .benefits_about {
		position: relative;
		overflow-x: scroll;
		scrollbar-width: none;
		width: 100%;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul {
		display: flex;
		flex-wrap: wrap;
		width: calc(854vw / var(--sp));
		padding: 0 calc(24vw / var(--sp));
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li {
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		width: 50%;
		height: calc(60vw / var(--sp));
		border-bottom: calc(1vw / var(--sp)) solid #acacac;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li:nth-last-child(1), #job_benefits .wrapper .benefits .benefits_about ul li:nth-last-child(2):nth-child(2n+1) {
		border-bottom: none;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li:nth-child(odd) {
		border-right: calc(1vw / var(--sp)) solid #acacac;
	}
	
	#job_benefits .wrapper .benefits .benefits_about ul li p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: center;
	}
	
	#job_benefits .wrapper .benefits .benefits_about .scroll-hint-icon {
		position: absolute;
		box-sizing: border-box;
		background: rgba(87, 87, 87, 0.85);
		width: calc(130vw / var(--sp));
		height: calc(90vw / var(--sp));
		border-radius: calc(20vw / var(--sp));
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		padding: calc(6vw / var(--sp)) 0 0 0;
	}
	
	.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
		opacity: 1;
	}
	
	#job_benefits .wrapper .benefits .benefits_about .scroll-hint-icon::before {
		width: calc(44vw / var(--sp));
		height: calc(44vw / var(--sp));
		margin-top: calc(14vw / var(--sp));
	}
	
	#job_benefits .wrapper .benefits .benefits_about .scroll-hint-icon::after {
		position: absolute;
		background-size: 100%;
		width: calc(44vw / var(--sp));
		height: calc(15vw / var(--sp));
		left: 44.5%;
	}
	
	#job_benefits .wrapper .benefits .benefits_about .scroll-hint-text {
		font-size: calc(12vw / var(--sp));
		font-weight: 600;
		line-height: 1em;
		margin-top: calc(6vw / var(--sp));
	}
	
	#job_benefits .wrapper .preferred .preferred_about {
		width: 100%;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul {
		display: flex;
		flex-direction: column;
		gap: calc(30vw / var(--sp)) 0;
		width: 100%;
		margin-bottom: calc(40vw / var(--sp));
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li {
		width: 100%;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li p {
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: center;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li:nth-child(odd) p {
		color: #ed687c;
	}
	
	#job_benefits .wrapper .preferred .preferred_about ul li:nth-child(even) p {
		color: #00489d;
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text {
		width: calc(340vw / var(--sp));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: justify;
		margin-bottom: calc(30vw / var(--sp));
	}
	
	#job_benefits .wrapper .preferred .preferred_about .text img {
		border-radius: calc(8vw / var(--sp));
		width: calc(200vw / var(--sp));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .appeal {
		width: calc(340vw / var(--sp));
		margin: 0 auto;
	}
	
	#job_benefits .wrapper .appeal ol {
		display: flex;
		flex-direction: column;
		gap: calc(30vw / var(--sp)) 0;
		width: 100%;
	}
	
	#job_benefits .wrapper .appeal ol li {
		background: #ffffff;
		width: 100%;
	}
	
	#job_benefits .wrapper .appeal ol li h4 {
		box-sizing: border-box;
		font-size: calc(20vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 600;
		text-align: center;
		width: 100%;
		height: calc(137vw / var(--sp));
		padding-top: calc(15vw / var(--sp));
	}
	
	#job_benefits .wrapper .appeal ol li:nth-child(odd) h4 {
		background: #fef6f7;
		color: #ed687c;
	}
	
	#job_benefits .wrapper .appeal ol li:nth-child(even) h4 {
		background: #f0f4f9;
		color: #00489d;
	}
	
	#job_benefits .wrapper .appeal ol li h4 span {
		font-size: calc(30vw / var(--sp));
	}
	
	#job_benefits .wrapper .appeal ol li p {
		align-content: center;
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: justify;
		width: calc(300vw / var(--sp));
		padding: calc(20vw / var(--sp)) 0;
		margin: 0 auto;
	}
}


/************************************
#message
************************************/
@media screen and (min-width: 1200px) {
	#message {
		width: 1000px;
		margin: 0 auto 100px;
	}
	
	#message h2 {
		color: #595641;
		font-size: 32px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: 40px;
	}
	
	#message .wrapper {
		position: relative;
		overflow: hidden;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		box-sizing: border-box;
		background: #f2f6fa;
		border-radius: 20px;
		width: 100%;
		padding: 50px 50px 50px 40px;
	}
	
	#message .wrapper::before {
		position: absolute;
		display: block;
		content: "";
		background: rgba(0, 72, 157, 0.05);
		width: 296px;
		height: 219px;
		clip-path: polygon(0 100%,0 0,100% 0);
		top: 0;
		left: 0;
	}
	
	#message .wrapper::after {
		position: absolute;
		display: block;
		content: "";
		background: rgba(0, 72, 157, 0.1);
		width: 485px;
		height: 314px;
		clip-path: polygon(0 100%,0 0,100% 100%);
		bottom: 0;
		left: 0;
	}
	
	#message .wrapper .doctor {
		width: 164px;
		z-index: 1;
	}
	
	#message .wrapper .doctor img {
		border-radius: calc(144px / 2);
		width: 144px;
		margin: 0 auto 10px;
	}
	
	#message .wrapper .doctor p {
		color: #00489d;
		font-size: 16px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-bottom: 10px;
	}
	
	#message .wrapper .doctor h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		background: #ffffff;
		border-radius: calc(164px / 2);
		width: 100%;
		height: 56px;
	}
	
	#message .wrapper .doctor h3 ruby {
		color: #00489d;
		font-size: 24px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
	}
	
	#message .wrapper .doctor h3 ruby rt {
		font-size: 14px;
		font-weight: 400;
	}
	
	#message .wrapper>p {
		box-sizing: border-box;
		background: #ffffff;
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 400;
		text-align: justify;
		border-radius: 20px;
		width: 702px;
		padding: 30px;
		z-index: 1;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	#message {
		width: calc(1000vw / var(--tablet));
		margin: 0 auto calc(100vw / var(--tablet));
	}
	
	#message h2 {
		color: #595641;
		font-size: calc(32vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(40vw / var(--tablet));
	}
	
	#message .wrapper {
		position: relative;
		overflow: hidden;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		box-sizing: border-box;
		background: #f2f6fa;
		border-radius: calc(20vw / var(--tablet));
		width: 100%;
		padding: calc(50vw / var(--tablet)) calc(50vw / var(--tablet)) calc(50vw / var(--tablet)) calc(40vw / var(--tablet));
	}
	
	#message .wrapper::before {
		position: absolute;
		display: block;
		content: "";
		background: rgba(0, 72, 157, 0.05);
		width: calc(296vw / var(--tablet));
		height: calc(219vw / var(--tablet));
		clip-path: polygon(0 100%,0 0,100% 0);
		top: 0;
		left: 0;
	}
	
	#message .wrapper::after {
		position: absolute;
		display: block;
		content: "";
		background: rgba(0, 72, 157, 0.1);
		width: calc(485vw / var(--tablet));
		height: calc(314vw / var(--tablet));
		clip-path: polygon(0 100%,0 0,100% 100%);
		bottom: 0;
		left: 0;
	}
	
	#message .wrapper .doctor {
		width: calc(164vw / var(--tablet));
		z-index: 1;
	}
	
	#message .wrapper .doctor img {
		border-radius: calc((144vw / 2) / var(--tablet));
		width: calc(144vw / var(--tablet));
		margin: 0 auto calc(10vw / var(--tablet));
	}
	
	#message .wrapper .doctor p {
		color: #00489d;
		font-size: calc(16vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-bottom: calc(10vw / var(--tablet));
	}
	
	#message .wrapper .doctor h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		background: #ffffff;
		border-radius: calc((164vw / 2) / var(--tablet));
		width: 100%;
		height: calc(56vw / var(--tablet));
	}
	
	#message .wrapper .doctor h3 ruby {
		color: #00489d;
		font-size: calc(24vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
	}
	
	#message .wrapper .doctor h3 ruby rt {
		font-size: calc(14vw / var(--tablet));
		font-weight: 400;
	}
	
	#message .wrapper>p {
		box-sizing: border-box;
		background: #ffffff;
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 400;
		text-align: justify;
		border-radius: calc(20vw / var(--tablet));
		width: calc(702vw / var(--tablet));
		padding: calc(30vw / var(--tablet));
		z-index: 1;
	}
}

@media screen and (max-width: 767px) {
	#message {
		width: 100%;
		margin-bottom: calc(80vw / var(--sp));
	}
	
	#message h2 {
		color: #595641;
		font-size: calc(32vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(50vw / var(--sp));
	}
	
	#message .wrapper {
		position: relative;
		overflow: hidden;
		background: #f2f6fa;
		border-radius: calc(20vw / var(--sp));
		width: calc(340vw / var(--sp));
		padding: calc(20vw / var(--sp)) 0 calc(30vw / var(--sp));
		margin: 0 auto;
	}
	
	#message .wrapper::before {
		position: absolute;
		display: block;
		content: "";
		background: rgba(0, 72, 157, 0.05);
		width: calc(223vw / var(--sp));
		height: calc(300vw / var(--sp));
		clip-path: polygon(100% 100%,0 0,100% 0);
		top: 0;
		right: 0;
	}
	
	#message .wrapper::after {
		position: absolute;
		display: block;
		content: "";
		background: rgba(0, 72, 157, 0.1);
		width: calc(320vw / var(--sp));
		height: calc(494vw / var(--sp));
		clip-path: polygon(100% 0,0 0,0 100%);
		top: 0;
		left: 0;
	}
	
	#message .wrapper .doctor {
		position: relative;
		width: calc(164vw / var(--sp));
		margin: 0 auto calc(20vw / var(--sp));
		z-index: 1;
	}
	
	#message .wrapper .doctor img {
		border-radius: calc((144vw / 2) / var(--sp));
		width: calc(144vw / var(--sp));
		margin: 0 auto calc(10vw / var(--sp));
	}
	
	#message .wrapper .doctor p {
		color: #00489d;
		font-size: calc(16vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		margin-bottom: calc(10vw / var(--sp));
	}
	
	#message .wrapper .doctor h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		background: #ffffff;
		border-radius: calc((164vw / 2) / var(--sp));
		width: 100%;
		height: calc(56vw / var(--sp));
	}
	
	#message .wrapper .doctor h3 ruby {
		color: #00489d;
		font-size: calc(24vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
	}
	
	#message .wrapper .doctor h3 ruby rt {
		font-size: calc(14vw / var(--sp));
		font-weight: 400;
	}
	
	#message .wrapper>p {
		position: relative;
		box-sizing: border-box;
		background: #ffffff;
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 400;
		text-align: justify;
		border-radius: calc(20vw / var(--sp));
		width: calc(300vw / var(--sp));
		padding: calc(20vw / var(--sp));
		margin: 0 auto;
		z-index: 1;
	}
}


/************************************
#entry
************************************/
@media screen and (min-width: 1200px) {
	#entry {
		background: #f5f5f4;
		width: 100%;
		padding: 50px 0;
	}
	
	#entry h2 {
		color: #595641;
		font-size: 32px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: 50px;
	}
	
	#entry .contact {
		display: flex;
		flex-wrap: wrap;
		width: 1000px;
		margin: 0 auto 50px;
	}
	
	#entry .contact .icon {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ed687c;
		border-radius: calc(100px / 2);
		width: 100px;
		height: 100px;
		margin: 40px auto 0;
	}
	
	#entry .contact .icon img {
		width: 48px;
		height: 30px;
	}
	
	#entry .contact .text {
		width: 816px;
	}
	
	#entry .contact .text h3 {
		color: #ed687c;
		font-size: 20px;
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: 20px;
	}
	
	#entry .contact .text>p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: 20px;
	}
	
	#entry .contact .text .addressee {
		width: 100%;
	}
	
	#entry .contact .text .addressee .address {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		border-bottom: 1px solid #acacac;
		padding-bottom: 10px;
		margin-bottom: 15px;
	}
	
	#entry .contact .text .addressee p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: 15px;
	}
	
	#entry .contact .text .addressee .deadline {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ffffff;
		color: #00489d;
		font-size: 20px;
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		border-radius: calc(50px / 2);
		width: 100%;
		height: 50px;
	}
	
	#entry .doctor {
		background: #ffffff;
		border-radius: 20px;
		width: 1000px;
		padding: 50px 0;
		margin: 0 auto;
	}
	
	#entry .doctor>p {
		color: #3c3c3c;
		font-size: 16px;
		line-height: 26px;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: 20px;
	}
	
	#entry .doctor ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 540px;
		margin: 0 auto;
	}
	
	#entry .doctor ul li {
		display: flex;
		flex-wrap: wrap;
		gap: 0 10px;
	}
	
	#entry .doctor ul li img {
		border-radius: calc(144px / 2);
		width: 144px;
	}
	
	#entry .doctor ul li .text {
		padding-top: 40px;
	}
	
	#entry .doctor ul li .text .position {
		color: #3c3c3c;
		font-size: 14px;
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		margin-bottom: 15px;
	}
	
	#entry .doctor ul li .text .kana {
		color: #3c3c3c;
		font-size: 14px;
		line-height: 1em;
		font-weight: 400;
		text-align: left;
		margin-bottom: 10px;
	}
	
	#entry .doctor ul li .text h3 {
		color: #3c3c3c;
		font-size: 18px;
		line-height: 1em;
		font-weight: 600;
		text-align: left;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	#entry {
		background: #f5f5f4;
		width: 100%;
		padding: calc(50vw / var(--tablet)) 0;
	}
	
	#entry h2 {
		color: #595641;
		font-size: calc(32vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(50vw / var(--tablet));
	}
	
	#entry .contact {
		display: flex;
		flex-wrap: wrap;
		width: calc(1000vw / var(--tablet));
		margin: 0 auto calc(50vw / var(--tablet));
	}
	
	#entry .contact .icon {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ed687c;
		border-radius: calc((100vw / 2) / var(--tablet));
		width: calc(100vw / var(--tablet));
		height: calc(100vw / var(--tablet));
		margin: calc(40vw / var(--tablet)) auto 0;
	}
	
	#entry .contact .icon img {
		width: calc(48vw / var(--tablet));
		height: calc(30vw / var(--tablet));
	}
	
	#entry .contact .text {
		width: calc(816vw / var(--tablet));
	}
	
	#entry .contact .text h3 {
		color: #ed687c;
		font-size: calc(20vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: calc(20vw / var(--tablet));
	}
	
	#entry .contact .text>p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: calc(20vw / var(--tablet));
	}
	
	#entry .contact .text .addressee {
		width: 100%;
	}
	
	#entry .contact .text .addressee .address {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		border-bottom: calc(1vw / var(--tablet)) solid #acacac;
		padding-bottom: calc(10vw / var(--tablet));
		margin-bottom: calc(15vw / var(--tablet));
	}
	
	#entry .contact .text .addressee p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: calc(15vw / var(--tablet));
	}
	
	#entry .contact .text .addressee .deadline {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ffffff;
		color: #00489d;
		font-size: calc(20vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		border-radius: calc((50vw / 2) / var(--tablet));
		width: 100%;
		height: calc(50vw / var(--tablet));
	}
	
	#entry .doctor {
		background: #ffffff;
		border-radius: calc(20vw / var(--tablet));
		width: calc(1000vw / var(--tablet));
		padding: calc(50vw / var(--tablet)) 0;
		margin: 0 auto;
	}
	
	#entry .doctor>p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--tablet));
		line-height: calc(26vw / var(--tablet));
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(20vw / var(--tablet));
	}
	
	#entry .doctor ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: calc(540vw / var(--tablet));
		margin: 0 auto;
	}
	
	#entry .doctor ul li {
		display: flex;
		flex-wrap: wrap;
		gap: 0 calc(10vw / var(--tablet));
	}
	
	#entry .doctor ul li img {
		border-radius: calc((144vw / 2) / var(--tablet));
		width: calc(144vw / var(--tablet));
	}
	
	#entry .doctor ul li .text {
		padding-top: calc(40vw / var(--tablet));
	}
	
	#entry .doctor ul li .text .position {
		color: #3c3c3c;
		font-size: calc(14vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		margin-bottom: calc(15vw / var(--tablet));
	}
	
	#entry .doctor ul li .text .kana {
		color: #3c3c3c;
		font-size: calc(14vw / var(--tablet));
		line-height: 1em;
		font-weight: 400;
		text-align: left;
		margin-bottom: calc(10vw / var(--tablet));
	}
	
	#entry .doctor ul li .text h3 {
		color: #3c3c3c;
		font-size: calc(18vw / var(--tablet));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
	}
}

@media screen and (max-width: 767px) {
	#entry {
		background: #f5f5f4;
		width: 100%;
		padding: calc(50vw / var(--sp)) 0;
	}
	
	#entry h2 {
		color: #595641;
		font-size: calc(32vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(20vw / var(--sp));
	}
	
	#entry .contact {
		width: calc(340vw / var(--sp));
		margin: 0 auto calc(50vw / var(--sp));
	}
	
	#entry .contact .icon {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ed687c;
		border-radius: calc((100vw / 2) / var(--sp));
		width: calc(100vw / var(--sp));
		height: calc(100vw / var(--sp));
		margin: 0 auto calc(25vw / var(--sp));
	}
	
	#entry .contact .icon img {
		width: calc(48vw / var(--sp));
		height: calc(30vw / var(--sp));
	}
	
	#entry .contact .text {
		width: 100%;
	}
	
	#entry .contact .text h3 {
		color: #ed687c;
		font-size: calc(20vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 600;
		text-align: center;
		width: 100%;
		margin-bottom: calc(20vw / var(--sp));
	}
	
	#entry .contact .text>p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 600;
		text-align: justify;
		width: 100%;
		margin-bottom: calc(20vw / var(--sp));
	}
	
	#entry .contact .text .addressee {
		width: 100%;
	}
	
	#entry .contact .text .addressee .address {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		width: 100%;
		border-bottom: calc(1vw / var(--sp)) solid #acacac;
		padding-bottom: calc(10vw / var(--sp));
		margin-bottom: calc(15vw / var(--sp));
	}
	
	#entry .contact .text .addressee p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 600;
		text-align: left;
		width: 100%;
		margin-bottom: calc(20vw / var(--sp));
	}
	
	#entry .contact .text .addressee .deadline {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #ffffff;
		color: #00489d;
		font-size: calc(20vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 600;
		text-align: center;
		border-radius: calc((78vw / 2) / var(--sp));
		width: 100%;
		height: calc(78vw / var(--sp));
	}
	
	#entry .doctor {
		background: #ffffff;
		border-radius: calc(20vw / var(--sp));
		width: calc(340vw / var(--sp));
		padding: calc(30vw / var(--sp)) 0 calc(50vw / var(--sp));
		margin: 0 auto;
	}
	
	#entry .doctor>p {
		color: #3c3c3c;
		font-size: calc(16vw / var(--sp));
		line-height: calc(26vw / var(--sp));
		font-weight: 600;
		text-align: left;
		width: calc(260vw / var(--sp));
		margin: 0 auto calc(25vw / var(--sp));
	}
	
	#entry .doctor ul {
		display: flex;
		flex-direction: column;
		box-sizing: border-box;
		gap: calc(20vw / var(--sp)) 0;
		width: 100%;
		padding-left: calc(45vw / var(--sp));
		margin: 0 auto;
	}
	
	#entry .doctor ul li {
		display: flex;
		flex-wrap: wrap;
		gap: 0 calc(10vw / var(--sp));
	}
	
	#entry .doctor ul li img {
		border-radius: calc((144vw / 2) / var(--sp));
		width: calc(144vw / var(--sp));
	}
	
	#entry .doctor ul li .text {
		padding-top: calc(40vw / var(--sp));
	}
	
	#entry .doctor ul li .text .position {
		color: #3c3c3c;
		font-size: calc(14vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
		margin-bottom: calc(15vw / var(--sp));
	}
	
	#entry .doctor ul li .text .kana {
		color: #3c3c3c;
		font-size: calc(14vw / var(--sp));
		line-height: 1em;
		font-weight: 400;
		text-align: left;
		margin-bottom: calc(10vw / var(--sp));
	}
	
	#entry .doctor ul li .text h3 {
		color: #3c3c3c;
		font-size: calc(18vw / var(--sp));
		line-height: 1em;
		font-weight: 600;
		text-align: left;
	}
}