section{position: relative;margin: 120px 0;}

.top_title {
width: 100%;
height: auto;
display: block;
white-space: nowrap;
}
.top_title p{
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
font-size: 144px;
letter-spacing: 0.01em;
color: #fafafa;
z-index: 0;
line-height: 1em;
display: block;
}
h2 {
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
text-align: center;
font-size: 30px;
font-weight: 700;
margin: 30px 0;
}
p{line-height: 2em;}

.beginning-part {
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
width: 100%;
padding: 0 5%;
margin-bottom: 75px;
}
.beginning-part h2,.beginning-part p{text-align: center;}

.about__textbox{
width: 100%;
height: auto;
display: flex;
flex-wrap: wrap;
position: relative;
background-position: center;
background-size: cover;
background-repeat: no-repeat;
}

.about__textbox p{
width: 50%;
backdrop-filter: blur(12px);
background-color: rgba(255, 255, 255, 0.3);
}

#philosophy .about__textbox p, #activities .about__textbox strong{
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
font-size: 16px;
}
#philosophy .top_title p{text-align: right;font-size: 10vw;}
@media only screen and (min-width: 1380px) {
#philosophy .top_title p {font-size: 144px;}
}

#philosophy .about__textbox{background-image: url(../images/about/philosophy__back.png);}
#philosophy .about__textbox p{padding: 170px 60px;}

#activities .about__textbox{justify-content:flex-end;background-image: url(../images/about/activities__back.png);}
#activities .about__textbox p{padding: 120px 60px;}
#activities .news-list--wrap-parent {
width: 90%;
max-width: 970px;
margin: 45px auto;
}
#activities .btn {
margin: 0 auto;
display: block;
width: 300px;
}

#access table {
width: 90%;
max-width: 740px;
margin: 0 auto;
}
#access table tr{border-bottom: 1px solid #000;}
#access table th{
width: 30%;
text-align: left;
padding: 30px 0 30px 30px;
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
}
#access table td{
width: 70%;
text-align: left;
padding: 30px 0 30px 30px;
}
.access__station{
width: 90%;
max-width: 740px;
margin: 45px auto;
}
.access__station span {
display: block;
font-size: 18px;
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
font-weight: 700;
}

#message{
width: 90%;
max-width: 840px;
margin: 0 auto;
padding-bottom: 150px;
}
#message .top_title p{text-align: center;}
.message__textbox img {
width: 100%;
height: auto;
display: block;
margin-bottom: 10px;
}
.message__profile{
width: 100%;
height: auto;
display: flex;
flex-wrap: wrap;
margin-top: 40px;
}
.message__profile_name{
width: 100%;
font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
margin-bottom: 10px;
}
.message__profile_name h3{
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", serif;
font-size: 32px;
letter-spacing: 0.01em;
}
.message__profile_name h3 span{
font-family: "Noto Sans CJK JP","Noto Sans", sans-serif;
font-size: 14px;
letter-spacing: inherit;
color: #0071BB;
display: inline-block;
margin-left: 10px;
}
.message__profile_txt{
width: calc(100% - 206px);
padding-right: 30px;
font-size: 14px;
}
.message__profile_img{width: 206px;height: auto;}
.message__profile_img img{width: 100%;height: auto;display: block;}

@media only screen and (max-width: 950px) {
section {margin: 80px 0;}
.top_title p {font-size: 16.5vw;}
.message__profile {justify-content: center;
gap: 10px;
flex-direction: column;
align-items: center;}
.message__profile_name{
order: 2;
margin-bottom: 0;
width: auto;
}
.message__profile_txt{
order:3;
width: 100%;
padding-right: 0;
}
.beginning-part h2{line-height: 1.8em;}
.message__profile_img{order:1;}
}

@media only screen and (max-width: 768px) {
#access table tr {
border-bottom: 1px solid #000;
display: flex;
flex-direction: column;
}
#access table th,#access table td {width: 100%;padding: 10px;}
#activities .about__textbox {background-size: contain;background-image: url(../images/about/activities__back--sp.jpg);}
#philosophy .about__textbox{
background-position: top;
background-size: contain;
background-image: url(../images/about/philosophy__back--sp.jpg);
}
#philosophy .about__textbox p, #activities .about__textbox p{font-size: 14px;}
h2 {font-size: 18px;}
.about__textbox{padding-top: 300px;}
.about__textbox p{width: 100%;}
#activities .about__textbox{background-position: top;}
#philosophy .about__textbox p,#activities .about__textbox p {padding:5%;}
}

@media only screen and (max-width: 450px) {
.about__textbox {padding-top: 240px;}
}