@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}

html {
	scroll-behavior: smooth;
}

body{
	font-size: 21px;
	line-height:1.9;
	font-family: "IBM Plex Sans JP", Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
	font-weight: 400;
	-webkit-text-size-adjust:100%;
	overflow-x: hidden;
	color: #000;
	background: #fff;
	text-align: center;
}

a { color: #000;text-decoration: underline;}
a:hover, .active{ text-decoration: underline;
}
a:active, a:focus,input:active, input:focus{ outline:0;}
a:not([class]) { text-decoration-skip-ink: auto }
li { list-style: none;}

.soon {
	font-family: "Rubik", sans-serif;
	font-weight: 600;
	font-size: 2em;
	color:#80D8D9;
}

/* 各ブロック 共通
------------------------------------------------------------*/

@media only screen and (max-width: 768px){
	.spOnly {display: block;}
	.pcOnly {display: none;}
}
@media only screen and (min-width: 769px){
	.spOnly {display: none;}
	.pcOnly {display: block;}
}

img{
	width: 100%;
	height: auto;
}

section{clear:both;}

iframe {
	width: 100%;
	height:20vh;
	margin-top:30px;
}

.flex{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		align-items: center;
}
.flex li {
	padding:10px 17px;
}

.flex-all{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 20px;
}
.flex-all li img {
	margin-top: 20px;
}

section h2 {
	margin-bottom: 50px;
}

.textL {
	text-align: left;
}
.textR {
	text-align: right;
}
.textC {
	text-align: center;
}

.p0 { padding:0 !important;}
.mb0 { margin-bottom:0 !important; }
.mt0 { margin-top:0; }
.mtb50 { margin:50px 0;}
.pr100 { padding-right: 100px;}
.pr60 { padding-right: 60px !important;}
.plr60 { padding-left: 60px; padding-right: 60px; }

main,
.inner {
	/* width: 1000px; */
	margin: 0 auto;
}
section {
	padding: 0 15px 30px 15px;
}
header {
	text-align: center;
	margin: 0 auto 5vw;
}
header h1 {
	color: #fff;
	font-size: 1.6em;
	font-weight: 600;
	letter-spacing: 3px;
	line-height: 1;
	padding: 6vw 0 5vw;
	background-color: #00B1B4;
}
header div img {
	width: 160px;
	margin: 10px auto;
}
#intro {
	color: #00B1B4;
}
#intro h2 {
	font-size: 1.6em;
	font-weight: 300;
}
#intro h2 img {
	width: 44vw;
	height: auto;
	display: inline;
	margin-left: .5em;
	vertical-align: top;
}
#intro h3 {
	position: relative;
	line-height: 0;
	margin-bottom: 1.5em;
}
#intro h3 span {
	position: relative;
	z-index: 11;
	background: #fff;
}
#intro h3:before {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 6px #fff;
	left: 0;
	bottom: -2px;
	width: 20em;
	z-index: 10;
}
#intro h3:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 2px #00B1B4;
	right: 0;
	bottom: 0;
	width: 60%;
	z-index: 10;
}
.youtube {
	aspect-ratio: 16 / 9;
	margin: 40px auto 60px;
}
.youtube iframe {
	width: 100%;
	height: 100%;
}
.button {
	background: #00B1B4;
	border-radius: 140px;
	margin: 1em 2em;
}
.button a {
	display: block;
	background: url(../img/button-arrow.png) no-repeat 95% center;
	background-size:1.4em;
	color: #fff;
	text-decoration: none;
	font-size: 1.4em;
	line-height: 1.3;
	padding: 1em 0 0.8em;
}
#medical_areas h3 {
	margin-bottom: 40px;
	font-size: 2em;
}
#issues h3 {
	font-size: 2.8em;
	line-height: 1.2;
	margin: .8em .8em .5em;
	color: #00B1B4;
}
.issue-box {
	margin-top: 30px;
	margin-bottom: 50px;
	border: 10px solid #80D8D9;
	position: relative;
	display: inline-block;
	max-width: 100%;
}
.issue-box p {
	font-size: 1.2em;
	line-height: 1.6;
	margin-bottom: 1.5em;
}
.issue-box:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 46%;
	margin-left: -15px;
	border: 35px solid transparent;
	border-top: 35px solid #80D8D9;
}
.border-top {
	border-top: 5px solid #80D8D9;
}
ol.issue {
	background: #80D8D9;
	padding-left: 0;
	margin-top:20px;
}
ol.issue li {
	padding: 50px 0;
}
ol.issue li h2 {
	color: #000;
	font-size: 1.8em;
	margin: 0 0 40px;
}
ol.issue li h4 {
	color: #000;
	/* font-size: 1.6em; */
	font-size: 1.6em;
	margin: 0 0 .4em;
}
ol.issue li p img {
	/* padding-left:60px;
	padding-right:60px; */
	margin-bottom: 10px;
	width: 85%;
}
_::-webkit-full-page-media,
_:future,
:root ol.issue li p img {
	padding-left: 0;
	padding-right: 0;
	width: 80%;
	margin: 0 auto 10px;
}
ol.issue p.textL {
	font-size: 1.3em;
	line-height: 1.6;
	margin: 0 60px .4em;
}
.text-wht {
	color: #fff;
	line-height: 1;
}
.text-grn {
	color: #00B1B4;
}
.text-catch {
	color: #fff;
	line-height: 1;
	display: flex;
	align-content: center;
	align-items: anchor-center;
	justify-content: center;
	margin: 0 1em;
}
.border-b-w10 {
	border-bottom: 10px solid #fff;
}
.border-b-w5 {
	border-bottom: 5px solid #fff;
}
.style1 {
	font-size: 2.8em;
	font-weight: 500;
	letter-spacing: .1em;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	padding: 10px 0 0px;
	margin-top: 0;
	line-height: 1.2;
	margin-right: 20px;
}
.style2 {
	font-family: "Rubik", sans-serif;
	font-size: 7em;
	font-weight: 500;
}
.style3 {
	font-family: "Rubik", sans-serif;
	font-size: 3em;
	padding-top: 40px;
}
.style4 {
	font-size: 4.5em;
	font-weight: 500;
}
.style5 {
	font-size: 3em;
	font-weight: 500;
	margin-top: .3em;
}
.style6 {
	background: url(../img/12_natori-abukuma-area.png) no-repeat top right;
	background-size: 22vw;
}
.circle-illust {
	width: 28%;
}
.icon-bed {
	width: 40%;
}
.icon-emp {
	width: 30%;
}
.bed img {
	display: inline;
	width: 8vw;
	height: auto;
	margin: 0 4px;
}
.sobh {
	background: url(../img/06_shortage-of-beds-hospital.png) no-repeat;
	background-position: 100% 90%;
	background-size: 65%;
}
.convalescent-beds {
	width: 70%;
}
.convalescent-beds img {
	visibility: hidden;
	height: 50px;
}
#solution2 h3 {
	font-size: 2.8em;
	margin: 0 0 .5em;
}
#solution2 ol.issue li h4 {
	line-height: 0;
	display: flex;
	align-items: center;
}
ol.issue li h4 span {
	font-size: 20px;
	line-height: 30px;
	height: 34px;
}
span.purpose {
	padding: 0 0.4em;
	border: 2px solid #000;
}
span.num {
	width: 30px;
	text-align: center;
	background: #000;
	color: #80D8D9;
	font-family: "Rubik", sans-serif;
	margin-right: 10px;
	padding: 0.1em 0;
}
.large {
	font-size: 1.4em;
	line-height: 1.4;
}
.small {
	font-size: .8em;
	line-height: 2.5;
	font-weight: 500;
}
.bold {
	font-weight: 500;
}
.arrow-b-g {
	position: relative;
	/* padding: 0.6em; */
	margin-bottom: 2em;
}
.arrow-b-g:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 49%;
	border: 30px solid transparent;
	border-top: 30px solid #80D8D9;
	width: 0;
	height: 0;
}
.arrow-b {
	position: relative;
	/* padding: 0.6em; */
	margin-bottom: 3em;
}
.arrow-b:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 49%;
	border: 30px solid transparent;
	border-top: 30px solid #000;
	width: 0;
	height: 0;
}



/* Q&A */

#qanda h2 {
	font-size: 1.6em;
	color: #00B1B4;
	margin: 30px auto 0;
	display: inline-flex;
	align-items: center;
	letter-spacing: 0.05em;
	font-weight: 500;
	line-height: 1;
}
#qanda h2 span {
	font-family: "Rubik", sans-serif;
	font-size: 3em;
	font-weight: 500;
	letter-spacing: -0.05em;
}
#qanda h2 small {
	font-size: 1.6em;
	letter-spacing: -0.05em;
}
#qanda h3 {
	font-size: 1.1em;
	font-weight: 500;
	text-align: left;
	color: #00B1B4;
	margin:1em 0 .5em;
}
.qa-7 {
	margin-bottom: 5px;
	border: none;
	border-radius: 5px;
	background-color: #E5F7F7;
	text-align: left;
	display: block;
}
.qa-7 summary {
	display: flex;
	text-align: justify;
	justify-content: space-between;
	align-items: center;
	position: relative;
	padding: 1em 1em 1em 4.5em;
	color: #000000;
	font-weight: 500;
	line-height: 1.4;
	cursor: pointer;
	/* font-size: .8em; */
}
.qa-7 summary strong {
	color: #00B1B4;
	font-family: "Rubik", sans-serif;
	font-size: 1.6em;
	font-weight: 500;
	margin-right: 0.5em;
	position: absolute;
	display: inline-block;
	left: 0.5em;
}
.qa-7 summary::before,
.qa-7 p::before {
	position: absolute;
	left: 1em;
	font-weight: 600;
	font-size: 1.3em;
}
.qa-7 summary::before {
	color: #75bbff;
}
.qa-7 summary::after {
	font-family: "Material Symbols Outlined";
	content: "\e145";
	font-weight: 300;
	font-size: 2em;
	margin-left: .5em;
	transition: transform .5s;
}
.qa-7[open] summary::after {
	transform: rotate(225deg);
}
.icon-plus {
	color: var(--icon-color);
	width: 24px;
	height: 24px;
	position: relative;
}
.icon-plus:before,
.icon-plus:after {
	content: "";
	position: absolute;
	top: 12px;
	width: 24px;
	height: var(--icon-width);
	background-color: currentColor;
}
.icon-plus:after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.qa-7 p {
	font-size: .9em;
	line-height: 1.8;
	position: relative;
	transform: translateY(-10px);
	opacity: 0;
	margin: 0;
	padding: 1em 1em 1.5em 4.5em;
	color: #000;
	transition: transform .5s, opacity .5s;
	background: #fff;
	text-align: justify;
}
.qa-7[open] p {
	transform: none;
	opacity: 1;
}
.qa-7 p::before {
	color: #808080;
	line-height: 1.2;
	content: "A";
	font-family: "Rubik", sans-serif;
	font-size: 1.6em;
	font-weight: 600;
}
.qa-7 small {
	text-indent: -1em;
	margin: 1em 0 0 1em;
	display: inline-block;
}
.qa-7 div {
	padding-left:5em;
	background: #fff;
	margin-bottom:1.5em;
}
.qa-7 div table {
	line-height: 1.4;
}
.qa-7 div table caption {
	font-size:0.75em;
}
.qa-7 div th {
	background:#E5F7F7;
}
.qa-7 div th,.qa-7 div td {
	text-align: center;
	border:1px solid #ddd;
	padding:0.5em 1em;
	font-weight: 400;
	font-size:0.75em;
}
#outro {
	margin-bottom: 60px;
}
#outro p {
	font-size: 1.6em;
	line-height: 1.6;
}
footer h2 {
	position: relative;
	line-height: 0;
	margin-bottom: 1.5em;
	font-size: 1em;
}
footer h2 span {
	position: relative;
	z-index: 11;
	background: #fff;
}
footer h2:before {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 6px #fff;
	left: 0;
	bottom: -2px;
	width: 4.6em;
	z-index: 10;
}
footer h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 2px #000;
	right: 0;
	bottom: 0;
	width: 84vw;
	z-index: 9;
}
footer dl {
	text-align: left;
	font-size: .8em;
	margin: 0 auto;
}
footer dl dt,
footer dl dd,
footer dl ul,
footer dl li {
	padding: 0 !important;
	margin: 0;
	line-height: 1.6;
}
footer .yborder {
	width: 2px;
	height: 5em;
	border-right: 2px solid #000;
}
#pagetop {
	background: #00B1B4;
	padding-bottom: 20px;
}
.pagetop {
	padding: 10px 10px 20px 0;
	padding-bottom: 20px;
	font-size: .8em;
	background: #fff;
}
.pagetop a {
	text-decoration: none;
	color: #00B1B4;
	font-family: "Rubik", sans-serif;
}
/* .copy { font-size:.6em;} */

/* RESPONSIVE -----------------------------*/

@media only screen and (max-width: 767px) {
	body { font-size: 18px; }
	header div img {width: 130px;margin: 10px auto 0;}
	header h1 { line-height: 1.3; letter-spacing: 0; }
	#intro h2 { font-size: 1.3em; margin-bottom: 30px; }
	.youtube { margin: 20px auto 30px; }
	#medical_areas h3 { margin-bottom: 3vw; }
	iframe { margin-top: 5vw; }

	.mtb50 { margin: 3vw 0; }
	.pt30 { padding-top: 3vw; }
	.pr100 { padding-right: 3vw; }
	.pr60 { padding-right: 3vw !important; }
	.plr60 { padding-left: 3vw; padding-right: 3vw; }
	.style1, .style5 { font-size: 2em; }
	.style2 { font-size: 5em; line-height: 1.3; }
	.style3 { font-size: 2em; padding-top: 19px; }
	.style4 { font-size: 2em; }
	.style6 { background: url(../img/12_natori-abukuma-area.png) no-repeat top right; background-size: 40vw; }
	.arrow-b:after { left: 45%; border: 20px solid transparent; border-top: 20px solid #000; }
	.large { font-size: 1.1em; line-height: 1.3; }
	.text-catch { display: block; }
	section { padding: 0 5vw 5vw 5vw; }
	#intro h2 img { width: 86vw; }
	/* ol.issue { margin: 20px 0;} */
	ol.issue li { padding: 20px 0; }
	#issues h3 { font-size: 1.6em; margin: 5vw auto 3vw; }
	ol.issue li h4 { font-size: 1.3em; margin:10px 0 0 10px;}
	.issue-box { margin:20px 0; border: 8px solid #80D8D9;}
	.issue-box p { font-size: 1em; padding: 0 5vw 0; text-align: justify;}
	ol.issue p.textL { font-size: 1em; margin: 3vw 5vw; }
	.issue-box p br,#solution2 ol li:first-child p br,ol.issue p.textL p br { display: none; }
	ol.issue li h4 { font-size: 1.2em; line-height: 1.4; }

	.text-catch { margin-top: 8vw; }
	.convalescent-beds { width: 110%; height: 16vw; position: relative; left: 0; }
	.circle-illust, .icon-bed, .icon-emp { width: 70%; margin: 0 auto 10px; padding: 0; }
	.bed img { width: 12vw; }
	.sobh { background: url(../img/06_shortage-of-beds-hospital.png) no-repeat; background-position: bottom center; background-size: 85%; margin-bottom:20px; }
	ol.issue li p img { margin-bottom: 0; width: 90%;}
	ol.issue li h4 span { font-size: 16px; line-height: 30px;height: 30px;}

	.arrow-b-g:after {left: 44%; border: 24px solid transparent;
		    border-top: 24px solid #80D8D9;	}

	#medical_areas h3 { font-size: 1.4em; }

	#qanda { padding-top: 20px; }
	#qanda h2 { font-size: 1.2em; display: block; line-height: 1; margin-bottom: 5vw; }
	.qa-7 summary { font-size: 0.9em; }
	.qa-7 summary br { display: none; }
	.qa-7 p { padding:1em 1em 1.5em 3em;}
	.qa-7 p::before {	left: .5em; }
	.qa-7 .small { line-height: 1.3;}
	.qa-7 div { padding-left: 3.5em;}
	.arrow-b {margin-bottom:2em;}
	.large.bold { margin:0 1em;}

	#outro p { font-size: 1.1em; }
	.flex { display: block; }
	.yborder { display: none; }
	footer .inner { padding: 0 5vw; }
	.button { border-radius: 50px; margin: 0 0 20px; }
	.button a { background: url(../img/button-arrow.png) no-repeat 95% center; background-size: 1.8em; font-size: 1em; line-height: 1.3; padding: 1em 2em 0.8em 0; }
	.circle-illust img { width: 80%; margin: 0 auto; }
	footer { font-size: 1em; }
	footer dl { margin: 0 0 1em 1em; }
	footer dd ul{ margin-left: 1em;}

	.dli-arrow-up { margin: 10px 20px 0 auto; }


	.qa-7 div { overflow: auto;}
	.qa-7 div table::after { color:#666;content:"※横にスクロールできます";font-size:.7em; white-space: nowrap;}
	.qa-7 div table { border-collapse: collapse;}
	.qa-7 div th,.qa-7 div td {
  text-align: left;border: 1px solid #CCC;padding: .2em .5em; white-space: nowrap;}

}

@media only screen and (min-width: 768px) and (max-width:999px) {
	.mtb50 { margin: 5vw 0; }
	.pt30 { padding-top: 5vw; }
	.pr100 { padding-right: 5vw; }
	.pr60 { padding-right: 5vw !important; }
	.plr60 { padding-left: 5vw; padding-right: 5vw; }
	#intro h2 img { width: 86vw; }
	.style1, .style5 { font-size: 2em; }
	.style2 { font-size: 6em; }
	.style3 { font-size: 2em; padding-top: 19px; }
	.style4 { font-size: 3em; }
	.style6 { background: url(../img/12_natori-abukuma-area.png) no-repeat top right; background-size: 36vw; }
	#issues h3 { font-size: 2em; }
	ol.issue li h4 { font-size: 1.4em; }
	.bed img { width: 6vw; }
	ol.issue li { padding: 40px 0; }
	ol.issue li p img { width: 80%; }
	ol.issue p.textL { margin: 2vw 5vw; }
	.issue-box p { padding: 0 5vw; }
	.arrow-b:after { left: 45%; }
	.button a { font-size: 1em; background: url(../img/button-arrow.png) no-repeat 95% center; background-size: 1.2em; }
	.text-catch { display: none;}
	#outro p { font-size: 1.3em; }
	footer .inner { padding: 0 5vw; }
	footer h1:after { width: 84vw; }
	#pagetop { padding-bottom: 10px; }
}

@media only screen and (min-width: 1000px) {
	.spOnly {display: none;}
	.pcOnly {display: block;}

	main, .inner { width: 80%; margin: 0 auto;}
	header { text-align: center; margin: 0 auto 70px; }
	header div img { width: 180px; height: auto; margin: 20px auto 10px; }
	header h1 { padding: 40px 0 30px; }
	#intro h2 img { width: 600px; }
	.bed img { width: 58px; }
	#solution2 h3 { font-size: 2.2em;}
	.qa-7 summary { font-size: 1em; }
	footer { font-size: 1.2em; margin-bottom:50px;}
	footer .inner { padding: 30px 0 0; }
	footer h2:after { width: 90%; }
}

@media only screen and (min-width: 1200px) {
	.spOnly {display: none;}
	.pcOnly {display: block;}

	main, .inner { width: 70%; margin: 0 auto;}
	#intro h2 { font-size: 1.4em; }
	#intro h2 img { width: 480px; }
	.style6 { background: url(../img/12_natori-abukuma-area.png) no-repeat top right; background-size: 14vw; }
	#intro h3:after { width: 60%; }

}

@media only screen and (min-width: 1400px) {
	.spOnly {display: none;}
	.pcOnly {display: block;}

	main, .inner { width: 900px; margin: 0 auto;}
	#intro h2 img { width: 580px; }
	.style6 { background: url(../img/12_natori-abukuma-area.png) no-repeat top right; background-size: 300px; }
	#intro h3 { font-size: 1.1em;}
	#intro h3:after { width: 60%; }

}


.dli-arrow-up {
  display:block;
  vertical-align: middle;
  color: #00B1B4;
  line-height: 1;
  position: relative;
  width: 0.2em;
  height: 2em;
  background: currentColor;
	margin: 10px auto;
}

.dli-arrow-up::before {
  content: '';
  width: 1.3em;
  height: 1.3em;
  border: 0.25em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(-45deg);
  transform-origin: top right;
  position: absolute;
  top: -0.05em;
  right: 50%;
  box-sizing: border-box;
}

@media print {
	.no-print {
		display: none;
	}
}
