@charset "utf-8";

.hero h1 div span {
transform: translateX(-50%);
}

h2 {
border-left: 4px solid #26a3de;
font-weight: bold;
padding-left: 6px;
}
h2 span {
display: block;
color: #aaa;
font-size: 0.8em;
}

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

#main > section:nth-last-child(1) {
padding-bottom: 0;
}
#main > section p:nth-last-child(1) {
padding-bottom: 0;
}

#greeting h3 {
display: table;
margin: 0 auto;
color: #26a3de;
font-weight: bold;
}
#greeting .box > div img {
border-radius: 8px;
}

.dr img {
display: block;
width: 80%;
margin: 0 auto;
border-radius: 8px;
}
.dr h3 {
text-align: center;
}
.dr ul, #plan ul {
list-style-type: square;
padding-left: 20px;
}
.dr	li:nth-last-child(1) {
padding-bottom: 0;
}
#greeting table, #about table, #reception table, #flow table, .riha #price .box > div, .riha #price .box table {
width: 100%;
max-width: 400px;
margin: 0 auto;
}
#greeting table td, #about table td, #reception table td, #flow table td, .riha #price .box table td, #improve table th, #improve table td {
border: 1px solid #ccc;
vertical-align: middle;
}
#greeting table, #about table {
margin-top: 10px;
}
#reception table td {
text-align: center;
}
#reception table tr:nth-child(1) td, #improve table th {
background: #E3F2FF;
}
#reception p, #flow p {
display: table;
margin: 0 auto;
}
#reception p span {
display: block;
color: #26a3de;
}
#mynumber ol {
list-style-type: decimal;
padding-left: 30px;
}
#mynumber img {
display: block;
width: 80%;
max-width: 400px;
}

.care h3:before, .riha #intro h3:before, #improve h3:before {
content: "■";
color: #26a3de;
}
.riha #about .box div:nth-last-child(1) {
padding-bottom: 0;
}
.riha #about h4, .riha #price .box h4 {
padding-bottom: 10px;
}
.riha #about h4:before, .riha #price .box h4:before {
content: "●";
color: #26a3de;
}
.riha #intro .box p span {
display: block;
padding-bottom: 10px;
}
.riha #intro .box img {
border-radius: 8px;
}
.riha #price .box > div:nth-last-child(1), #improve .box > div:nth-last-child(1) {
padding-bottom: 0;
}

#aboutus img, #cooperation img {
display: block;
max-width: 960px;
margin: 0 auto;
}
#kaigo img {
display: block;
max-width: 640px;
margin: 0 auto;
}
#improve table {
width: 100%;
}
#access iframe {
width: 100%;
}

@media (max-width: 560px){
h2 {
font-size: 1.8rem;
margin-bottom: 12px;
}

#header .page-nav {
display: none;
}
.hero {
margin-top: 10px;
}
.hero h1 div {
font-size: 2rem;
left: 10px;
bottom: 10px;
transform: translateX(50%);
}

#main > section {
padding-bottom: 60px;
}
#main > section p, #main > section li {
font-size: 1.4rem;
line-height: 180%;
}
#main > section p {
padding-bottom: 16px;
}
#main > section li {
padding-bottom: 8px;
}

#greeting table td,#about table td, #reception table td, #flow table td, .riha #price .box table td, #improve table th, #improve table td {
font-size: 1.4rem;
}


#greeting h3 {
font-size: 1.6rem;
padding-bottom: 20px;
}
#greeting .box > div div {
padding-bottom: 20px;
}

.dr > div, .care .box > div {
margin-bottom: 30px;
}
.dr > div:nth-last-child(1), .care .box > div:nth-last-child(1) {
margin-bottom: 0;
}
.dr img {
margin-bottom: 6px;
}
.dr h3 {
font-size: 1.6rem;
padding-bottom: 16px;
}
.dr h4, .care h3, .riha #intro h3, #improve h3 {
font-size: 1.5rem;
margin-bottom: 12px;
}
#mynumber ol {
padding-bottom: 16px;
}
#mynumber img {
margin: 0 auto;
}

.riha #about .box div, .riha #intro .box > div div:nth-child(1) {
padding-bottom: 20px;
}

#access iframe {
height: 50vh;
}
}

@media (min-width: 561px){
.page-nav {
background: #e3f7ff;
}
.page-nav ul li a {
color: #26a3de;
}

.hero h1 div {
transform: translateY(50%);
}

#greeting .box > div {
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
#greeting .box > div div {
width: 68%;
}
#greeting .box > div img {
width: 28%;
height: 100%;
}
.dr {
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.dr > div {
width: 48%;
}
.dr > div:nth-child(n+3) {
margin-bottom: 0;
}
.dr img {
margin-bottom: 10px;
}
.dr h3 {
font-size: 18px;
font-size: 1.8rem;
padding-bottom: 20px;
}
.dr	li time {
display: block;
}

.riha #about .box div {
padding-bottom: 30px;
}
.riha #intro .box > div {
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.riha #intro .box > div div {
width: 48%;
}

#access iframe {
height: 400px;
}
}

@media (min-width:561px) and (max-width:1023px){
h2 {
font-size: 2rem;
margin-bottom: 16px;
}
#header .page-nav .box {
padding: 4px 0;
}
.page-nav ul {
width: 100%;
display: flex;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
}
.page-nav ul li {
padding-left: 20px;
}

.hero {
margin-top: 60px;
}
.hero h1 div {
font-size: 2.4rem;
bottom: 0;
}

#main > section {
padding-bottom: 80px;
}
#main > section p {
padding-bottom: 20px;
}

#greeting h3 {
font-size: 1.8rem;
padding-bottom: 30px;
}
.dr > div, .care .box > div {
margin-bottom: 40px;
}
.dr img {
max-width: 140px;
}
.dr h4, .care h3, .riha #intro h3, #improve h3 {
font-size: 1.8rem;
margin-bottom: 16px;
}
.dr	li {
padding-bottom: 8px;
}
#mynumber ol {
padding-bottom: 20px;
}
}

@media (max-width: 1023px){
#reception table, #flow table {
margin-bottom: 10px;
}
#greeting table td,#about table td,#reception table td, #flow table td, .riha #price .box table td, #improve table th, #improve table td {
padding: 3px 6px;
}

.riha #price .box > div, #improve .box > div {
padding-bottom: 20px;
}
}

@media (min-width: 1024px){
h2 {
font-size: 24px;
font-size: 2.4rem;
margin-bottom: 20px;
}

#header .page-nav .box {
padding: 5px 0;
}
.page-nav ul {
width: 100%;
display: flex;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
}
.page-nav ul li {
padding-left: 30px;
}
.page-nav ul li a {
color: #26a3de;
}

.hero {
margin-top: 180px;
}
.hero h1 div {
font-size: 28px;
font-size: 2.8rem;
bottom: 0;
}

#main > section {
padding-bottom: 100px;
}
#main > section p {
padding-bottom: 30px;
}

#greeting h3 {
font-size: 20px;
font-size: 2rem;
padding-bottom: 40px;
}
.dr > div, .care .box > div {
margin-bottom: 50px;
}
.dr img {
max-width: 240px;
}
.dr h4, .care h3, .riha #intro h3, #improve h3 {
font-size: 20px;
font-size: 2rem;
margin-bottom: 20px;
}
.dr	li {
padding-bottom: 10px;
}

#reception table, #flow table {
margin-bottom: 20px;
}
#mynumber ol {
padding-bottom: 30px;
}

#greeting table td,#about table td,#reception table td, #flow table td, .riha #price .box table td, #improve table th, #improve table td {
padding: 4px 8px;
}

.riha #price .box > div, #improve .box > div {
padding-bottom: 30px;
}
}