a.btn {
font-size: 14px;
padding: 20px 40px;
}
@media (orientation: portrait) {
header {
height: 60px;
padding: 0 10px;
}
header div.flex {
position: relative;
padding: 5px;
}
header div.flex div.ttl.flex a {
margin: auto 0;
}
header div.flex div.ttl.flex picture.slogan {
width: auto;
}
header div.flex nav {
position: absolute;
top: 0;
right: 0;
background: #fff;
width: 40vw;
height: inherit;
padding: 50px 0;
left: 105%;
transition: 0.2s;
}
header div.flex nav ul {
flex-direction: column;
height: 100%;
padding: 0;
gap: 20px;
}
header div.flex nav ul li {
font-size: 12px;
margin: auto;
height: inherit;
}
header div.flex nav ul li a span {
font-size: 8px;
}
header div.flex nav ul li.current::after {
bottom: -8px;
}
header div.flex nav.open {
left: 61%;
}
header div.flex .menu_btn {
display: block;
position: absolute;
top: 16px;
right: 10px;
width: 30px;
height: 30px;
transition: all 0.5s;
cursor: pointer;
z-index: 10;
}
header div.flex .menu_btn span {
display: block;
position: absolute;
left: 0;
width: 30px;
height: 2px;
background-color: var(--maincolor1);
border-radius: 4px;
transition: all 0.5s;
}
header div.flex .menu_btn span:first-child {
top: 4px;
}
header div.flex .menu_btn span:nth-child(2) {
top: 14px;
}
header div.flex .menu_btn span:last-child {
bottom: 4px;
}
header div.flex .menu_btn.open span:first-child {
transform: translateY(10px) rotate(-315deg);
}
header div.flex .menu_btn.open span:nth-child(2) {
opacity: 0;
}
header div.flex .menu_btn.open span:last-child {
transform: translateY(-10px) rotate(315deg);
}
main section#fv {
height: calc(70vh - 60px);
margin-top: 60px;
background-position: 35% 0;
}
main section#info {
padding: 50px 0;
}
main section#info h2 {
font-size: 20px;
}
main section#info dl {
width: 90%;
margin-top: 20px;
font-size: 14px;
}
main section#anniv {
padding: 30px 0;
}
main section#anniv img {
width: 15%;
}
main section#anniv p {
font-size: 12px;
margin-top: 10px;
}
main section#about {
padding: 50px 5%;
overflow: hidden;
}
main section#about::after {
width: 70%;
background-position: 5vw 0;
top: 20%;
}
main section#about h2 div {
font-size: 70px;
padding-bottom: 10px;
}
main section#about h2 div span.jcihibiki {
text-shadow: 6px 6px 0 var(--subcolor);
}
main section#about div.txt {
padding-top: 20px;
width: 60%;
}
main section#about div.txt p {
font-size: 13px;
}
main section#about div.txt div.btn {
margin-top: 50px;
}
main section#activities {
padding-top: 50px;
}
main section#activities h2 {
font-size: 70px;
}
main section#activities h2 span {
font-size: 20px;
}
main section#activities ul {
margin-top: 30px;
width: 80%;
gap: 30px;
padding: 0;
}
main section#activities ul li a figure img {
min-height: 150px;
height: 12vh;
}
main section#activities ul li a figure figcaption h3 {
font-size: 14px;
}
main section#activities ul li a figure figcaption div.time {
font-size: 12px;
}
main section#activities div.btn {
margin-top: 30px;
}
main section#activities div.corner-bg {
top: 100px;
height: 95%;
}
main section#sns {
margin-top: 150px;
}
main section#sns div.flex {
margin: auto;
}
main section#sns div.flex h2 {
font-size: 50px;
}
main section#sns div.flex h2 span {
font-size: 12px;
line-height: 1.5;
top: 60px;
left: 80px;
}
main section#sns div.flex ul.flex {
gap: 5%;
justify-content: space-between;
padding: 0;
width: 60%;
}
main section#sns div.flex ul.flex li {
font-size: 12px;
width: 15%;
}
main section#entry {
padding: 50px 0;
background-position: 20% 0;
}
main section#entry div.txt h2 {
font-size: 26px;
}
main section#entry div.txt p {
font-size: 14px;
width: 90%;
margin: auto;
margin-top: 20px;
}
main section#entry div.btn {
margin-top: 30px;
}
main.sub {
margin-top: 39px;
}
main.sub h1.sub {
height: 14vh;
}
main.sub h1.sub div.ttl {
font-size: 18px;
margin-bottom: 2vw;
}
main.sub h1.sub div.ttl span::before {
width: 50px;
margin-bottom: 6px;
}
main.sub h1.sub div.ttl img {
height: 7vw;
}
main.sub h2.heading {
font-size: 26px;
}
main.sub h2.heading::after {
width: 100px;
}
main.sub h3.heading {
font-size: 20px;
}
main.sub section {
padding: 50px 5%;
}
main.sub section#detail {
background-size: 70%;
background-position: right -20% top 7%;
}
main.sub section#detail div.ttl {
font-size: 4vw;
}
main.sub section#detail div.ttl span {
margin-right: 2%;
padding: 5px;
}
main.sub section#detail div.txt {
margin-top: 30px;
font-size: 14px;
}
main.sub section#detail div.wrap {
padding-top: 30px;
}
main.sub section#detail div.wrap dl {
margin-top: 20px;
font-size: 14px;
}
main.sub section#detail div.wrap dl div.flex {
margin-bottom: 20px;
}
main.sub section#detail div.wrap dl div.flex dt {
font-weight: bold;
min-width: 10em;
}
main.sub section#detail div.wrap div.president {
margin-top: 20px;
flex-wrap: wrap;
justify-content: flex-start;
gap: 0px 10%;
}
main.sub section#detail div.wrap div.president ul {
padding: 0;
line-height: 2;
font-size: 14px;
}
main.sub section#message p.slogan, main.sub section#members p.slogan {
font-size: 3.5vw;
margin-top: 30px;
}
main.sub section#message div.wrap, main.sub section#members div.wrap {
margin-top: 50px;
}
main.sub section#message div.wrap p, main.sub section#members div.wrap p {
margin-top: 10px;
font-size: 14px;
}
main.sub section#message div.wrap div.flex, main.sub section#members div.wrap div.flex {
gap: 30px;
}
main.sub section#message div.wrap div.flex div.txt, main.sub section#members div.wrap div.flex div.txt {
width: 70%;
}
main.sub section#message div.wrap div.flex div.portlait, main.sub section#members div.wrap div.flex div.portlait {
width: 30%;
}
main.sub section#message div.wrap div.flex div.portlait figure figcaption, main.sub section#members div.wrap div.flex div.portlait figure figcaption {
margin-top: 10px;
margin-bottom: 20px;
}
main.sub section#message div.wrap div.flex div.portlait figure figcaption div.position, main.sub section#members div.wrap div.flex div.portlait figure figcaption div.position {
font-size: 16px;
}
main.sub section#message div.wrap div.flex div.portlait figure figcaption div.name, main.sub section#members div.wrap div.flex div.portlait figure figcaption div.name {
font-size: 20px;
}
main.sub section#message div.wrap.member_list, main.sub section#members div.wrap.member_list {
padding: 30px;
margin-bottom: 50px;
}
main.sub section#message div.wrap.member_list ul, main.sub section#members div.wrap.member_list ul {
gap: 20px 2%;
}
main.sub section#message div.wrap.member_list ul::after, main.sub section#members div.wrap.member_list ul::after {
content: "";
display: block;
width: 46%;
}
main.sub section#message div.wrap.member_list ul li, main.sub section#members div.wrap.member_list ul li {
width: 100%;
}
main.sub section#message div.wrap.member_list ul li a figure figcaption,
main.sub section#message div.wrap.member_list ul li div figure figcaption, main.sub section#members div.wrap.member_list ul li a figure figcaption,
main.sub section#members div.wrap.member_list ul li div figure figcaption {
margin-top: 10px;
}
main.sub section#message div.wrap.member_list ul li a figure figcaption div.position,
main.sub section#message div.wrap.member_list ul li div figure figcaption div.position, main.sub section#members div.wrap.member_list ul li a figure figcaption div.position,
main.sub section#members div.wrap.member_list ul li div figure figcaption div.position {
font-size: 1.5vw;
}
main.sub section#message div.wrap.member_list ul li a figure figcaption div.name,
main.sub section#message div.wrap.member_list ul li div figure figcaption div.name, main.sub section#members div.wrap.member_list ul li a figure figcaption div.name,
main.sub section#members div.wrap.member_list ul li div figure figcaption div.name {
font-size: 2vw;
}
main.sub section#message div.wrap.member, main.sub section#members div.wrap.member {
padding-top: 50px;
margin-top: 0px;
}
main.sub section#message {
padding-bottom: 100px;
}
main.sub section#guide div.intro p {
font-size: 16px;
}
main.sub section#guide div.intro p b {
font-size: 2.8vw;
margin-top: 30px;
line-height: 1.5;
}
main.sub section#guide div.intro p b span {
margin-top: 2vw;
}
main.sub section#guide div.wrap {
margin-top: 20vw;
}
main.sub section#guide div.wrap h2 {
margin-bottom: 6vw;
}
main.sub section#guide div.wrap h2::before {
left: -5vw;
top: -40px;
width: 100px;
height: 100px;
}
main.sub section#guide div.wrap h2 img {
height: 7vw;
}
main.sub section#guide div.wrap h2 span {
font-size: 2vw;
margin-top: 1vw;
}
main.sub section#guide div.wrap p {
margin-bottom: 3vw;
font-size: 14px;
line-height: 2;
}
main.sub section#guide div.wrap div.txt,
main.sub section#guide div.wrap dl {
margin-top: 4vw;
}
main.sub section#guide div.wrap div.txt dt,
main.sub section#guide div.wrap dl dt {
font-size: 16px;
}
main.sub section#guide div.wrap div.txt dd,
main.sub section#guide div.wrap dl dd {
margin-bottom: 5vw;
margin-top: 10px;
font-size: 14px;
line-height: 2;
}
main.sub section#guide div.wrap dl div.flex {
margin-top: 20px;
}
main.sub section#guide div.wrap dl div.flex dt {
margin-right: 5vw;
font-size: 3.5vw;
line-height: 1;
}
main.sub section#guide div.wrap dl div.flex dd {
font-size: 3.5vw;
line-height: 1;
}
main.sub section#guide div.wrap:first-child h2::before {
left: -6vw;
}
main.sub section#guide div.wrap:nth-child(odd)::after {
width: 120vw;
height: 120%;
top: -10%;
left: -20vw;
}
main.sub section#guide div.wrap div {
margin-bottom: 100px;
}
main.sub section#guide div.wrap div::after {
border-width: 20px 40px 0 40px;
left: 7vw;
}
main.sub section#guide div.wrap.contact {
margin-top: 20vw;
}
main.sub section#guide div.wrap.contact p {
font-size: 3vw;
}
main.sub section#guide div.wrap.contact div.btn {
margin-top: 5vw;
}
main.sub section#link ul, main.sub section#document ul {
padding: 0;
}
main.sub section#link ul li a, main.sub section#document ul li a {
font-size: 14px;
}
main.sub section#policy h2 {
font-size: 16px;
}
main.sub section#policy h3 {
color: var(--fontcolor);
font-size: 14px;
}
main.sub section#policy p {
font-size: 13px;
margin-bottom: 30px;
}
main.sub section#newsletter div.container div.flex {
gap: 40px 20px;
margin-top: 20px;
flex-direction: column;
}
main.sub section#newsletter div.container div.flex div.img {
width: 100%;
flex-direction: row;
}
main.sub section#newsletter div.container div.flex div.img img {
width: 48%;
}
main.sub section#newsletter div.container div.flex div.info {
margin: auto;
width: 50%;
}
main.sub section#newsletter div.container div.flex div.info div.btn {
margin-top: 50px;
text-align: center;
}
main.sub section#report {
flex-direction: column;
}
main.sub section#report.article {
flex-direction: column;
}
main.sub section#report.article > div.flex {
flex-direction: column;
}
main.sub section#report.article div.breadcrumb-container {
padding-left: 0 !important;
margin-top: 1rem !important;
margin-bottom: 1rem;
}
main.sub section#report div.article {
width: 100%;
}
main.sub section#report div.article article h2.heading {
font-size: 24px;
}
main.sub section#report div.article article img {
width: 80%;
margin: auto;
margin-bottom: 30px;
}
main.sub section#report div.article article p {
font-size: 14px;
}
main.sub section#report div.article article div.flex {
gap: 40px 20px;
margin-top: 20px;
flex-direction: column;
}
main.sub section#report div.article article div.flex div.img {
width: 100%;
flex-direction: row;
}
main.sub section#report div.article article div.flex div.img img {
width: 70%;
margin: auto;
}
main.sub section#report div.article article div.flex div.body {
margin: auto;
width: 100%;
margin-top: 30px;
}
main.sub section#report div.article article div.flex div.body div.btn {
margin-top: 50px;
text-align: center;
}
main.sub section#report aside {
width: 100%;
margin-top: 30px;
}
main.sub section#report aside h3 {
font-size: 18px;
}
main.sub section#report aside ul {
display: flex;
flex-wrap: wrap;
gap: 0 10px;
}
main.sub section#report aside ul li {
margin: 0;
}
main.sub section#contact div.wrap {
margin-top: 50px;
margin-bottom: 60px;
}
main.sub section#contact div.wrap div.box {
width: 70%;
}
main.sub section#contact div.wrap div.box h2 {
font-size: 16px;
}
main.sub section#contact div.wrap div.box div.address {
font-size: 5vw;
}
main.sub section#contact div.wrap div.box span {
font-size: 14px;
}
main.sub section#contact div.form {
width: 80%;
}
main.sub section#contact div.form form dl div.flex dt {
font-size: 14px;
width: 35%;
}
main.sub section#contact div.form form dl div.flex dd {
width: 65%;
font-size: 14px;
}
div#statement {
max-width: 300px;
left: calc(100vw - (300px + 1em));
}
div#statement iframe {
border-radius: 0.5em;
}
footer {
padding-top: 20px;
}
footer div.wrap div.flex {
gap: 10px;
}
footer div.wrap div.flex div.ttl {
height: 3.5vh;
}
footer div.wrap div.flex div.address {
font-size: 12px;
}
footer div.wrap div.flex ul li {
font-size: 12px;
}
footer div.wrap div.flex ul li.sub {
line-height: 2;
}
footer div.wrap div.flex ul li.sub::before {
font-size: 10px;
}
}
@media (orientation: landscape) {
header {
height: 60px;
padding: 0 10px;
}
header div.flex {
position: relative;
padding: 5px;
}
header div.flex div.ttl.flex a {
margin: auto 0;
}
header div.flex nav {
position: absolute;
top: 0;
right: 0;
background: #fff;
width: 40vw;
height: inherit;
padding: 50px 0;
left: 105%;
transition: 0.2s;
}
header div.flex nav ul {
flex-direction: column;
height: 100%;
padding: 0;
gap: 20px;
}
header div.flex nav ul li {
font-size: 12px;
margin: auto;
height: inherit;
}
header div.flex nav ul li a span {
font-size: 8px;
}
header div.flex nav ul li.current::after {
bottom: -8px;
}
header div.flex nav.open {
left: 61%;
}
header div.flex .menu_btn {
display: block;
position: absolute;
top: 16px;
right: 10px;
width: 30px;
height: 30px;
transition: all 0.5s;
cursor: pointer;
z-index: 10;
}
header div.flex .menu_btn span {
display: block;
position: absolute;
left: 0;
width: 30px;
height: 2px;
background-color: var(--maincolor1);
border-radius: 4px;
transition: all 0.5s;
}
header div.flex .menu_btn span:first-child {
top: 4px;
}
header div.flex .menu_btn span:nth-child(2) {
top: 14px;
}
header div.flex .menu_btn span:last-child {
bottom: 4px;
}
header div.flex .menu_btn.open span:first-child {
transform: translateY(10px) rotate(-315deg);
}
header div.flex .menu_btn.open span:nth-child(2) {
opacity: 0;
}
header div.flex .menu_btn.open span:last-child {
transform: translateY(-10px) rotate(315deg);
}
main section#fv {
height: calc(100vh - 60px);
margin-top: 60px;
background-position: 35% 0;
}
main section#info {
padding: 50px 0;
}
main section#info h2 {
font-size: 20px;
}
main section#info dl {
width: 90%;
margin-top: 20px;
font-size: 14px;
}
main section#anniv {
padding: 30px 0;
}
main section#anniv img {
width: 15%;
}
main section#anniv p {
font-size: 12px;
margin-top: 10px;
}
main section#about {
padding: 50px 5%;
overflow: hidden;
}
main section#about::after {
width: 60%;
}
main section#about h2 div {
font-size: 70px;
padding-bottom: 10px;
}
main section#about h2 div span.jcihibiki {
text-shadow: 6px 6px 0 var(--subcolor);
}
main section#about div.txt {
padding-top: 20px;
width: 60%;
}
main section#about div.txt p {
font-size: 13px;
}
main section#about div.txt div.btn {
margin-top: 50px;
}
main section#activities {
padding-top: 50px;
}
main section#activities h2 {
font-size: 70px;
}
main section#activities h2 span {
font-size: 20px;
}
main section#activities ul {
margin-top: 100px;
width: 80%;
gap: 30px;
padding: 0;
}
main section#activities ul li a figure figcaption h3 {
font-size: 14px;
}
main section#activities ul li a figure figcaption div.time {
font-size: 12px;
}
main section#activities div.btn {
margin-top: 30px;
}
main section#activities div.corner-bg {
top: 200px;
height: 80%;
}
main section#sns {
margin-top: 150px;
}
main section#sns div.flex {
margin: auto;
}
main section#sns div.flex h2 {
font-size: 80px;
}
main section#sns div.flex h2 span {
font-size: 16px;
line-height: 1.5;
top: 90px;
left: 100px;
}
main section#sns div.flex ul.flex {
gap: 5%;
justify-content: space-between;
padding: 0;
width: 60%;
}
main section#sns div.flex ul.flex li {
font-size: 12px;
width: 15%;
}
main section#entry {
padding: 50px 0;
background-position: 20% 0;
}
main section#entry div.txt h2 {
font-size: 26px;
}
main section#entry div.txt p {
font-size: 14px;
width: 90%;
margin: auto;
margin-top: 20px;
}
main section#entry div.btn {
margin-top: 30px;
}
}
.about-links {
display: flex;
flex-direction: column;
gap: 20px;
}
@media (max-width: 1100px) {
main.sub h1.sub {
height: 18vw;
}
main.sub h1.sub div.ttl img {
height: 8vw;
}
}
main.sub section#report div.article article h2.heading {
font-size: 24px;
}
@media (max-width: 750px) {
main.sub section#report div.article {
width: 100%;
}
}
main.sub section#report.article > div.flex {
gap: 5%;
}
@media (max-width: 750px) {
main.sub section#report.article > div.flex {
flex-direction: column;
}
}