html{
    width:100%;
    margin: 0;
    padding: 0;
}
body {
    background:aqua;
    margin:0 auto;
    padding: 10px;
    box-sizing: border-box;
    max-width: 1200px;
    width: 100%;
    font-size:20px;
}
header {
    width: 100%;
}
footer {
    padding: 10px;
}
footer div {
    margin: 10px;
}
h1 {
    text-align: center;
    font-size: 1.2rem;
}
h2 {
    font-size: 1.1rem;
}
h3 {
    font-size: 1.0rem;
}
pre {
    white-space: pre-wrap;
}
.page-title-box {
    margin: 0 auto;
}

.container {
    width: 100%;
}
.passage-ways {/* これは廊下 */
/*.box {*/
    box-sizing: border-box;
    padding: 10px;
    overflow: hidden;
    background-color: white;
    width: 100%;
    border-radius: 20px;
}
.passage-ways div {/* これは廊下 */
/*.box div{*/
    margin: 0;
}
.intro-box {
    box-sizing: border-box;
    padding: 10px;
    overflow: hidden;
    background-color: white;
    width: 100%;
    border-radius: 20px;
}
#page-title{
    margin: 0;
    margin-bottom: 10px;
    padding: 0;
    width: 100%;
    height: 60px;
    background-color: white;
    color:black;
    animation-name: title-char;
    animation-duration: 0.7s;
    animation-iteration-count:1;
    transform: scale(1,1);
}
#page-title span {
    display: inline-block;
    width:100%;
    height: 100%;
    text-align: center;
    vertical-align: middle;
}
#page-title img {
    height: 100%;
    margin: 0 auto;
}

/* スマホ用 (幅が 1024px 以下であれば) */
@media (max-width:1024px) {
    .wide {
        display: none;
    }
    .large-hall {
        display: flex;
        flex-direction: column;
    }
    .large-hall .passage-ways {
        width:100%;
    }
    .large-hall .w40 {
        width: 100%;
    }
    .large-hall .w60 {
        width: 100%;
    }
    .large-hall .passage-ways:first-child {
        border-radius: 20px 20px 0 0; /* 左上　右上　右下　左下の準 */
        padding-bottom: 0;
    }
    .large-hall .passage-ways:last-child {
        border-radius: 0 0 20px 20px;
        padding-top: 0; 
    }
    .large-hall .passage-ways:first-child  .list:last-child {
        padding-bottom: 0;
    }
    .large-hall .passage-ways:last-child .list:first-child {
        padding-top: 0;
    }
    .border {
        border-radius: 20px;
    } 
}

/* PC用 (幅が 1025px 以上であれば) */
@media (min-width:1025px) {
    .narrow {
        display: none;
    }
    .large-hall {
        display: flex;
        flex-direction: row;
        align-items: stretch;
    }
    .large-hall .passage-ways {
        width:50%;
        border-radius:20px;
    }
    .large-hall .w40 {
        width: 40%;
    }
    .large-hall .w60 {
        width: 60%;
    }
    .large-hall .passage-ways:first-child{
        margin-right: 10px;
    }
}

.subject-frame {
    padding: 5px;
}
.list-pdf {
    margin: 0;
    margin-left: -30px;
    margin-bottom: 5px;
    padding: 5px;
    border: 2px purple solid;
    border-radius: 5px;
    list-style-position: inside;
}
.list-pdf span {
    display: block;
    text-align: right;
}
#explain-this-object {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 5px 20px;
    background-color: lightgoldenrodyellow;
    border-radius:10px;
    font-style:italic;
}

@keyframes title-char{
    0%{
        transform: scale(200,0);
    }
    70%{
        transform: scale(100,0.5);
    }
    100%{
        transform: scale(1,1);
    }
}
.flex-ver-center {
    display: flex;
    align-items:center;
}
.buttan {
    margin: 20px auto;
    background-color: cyan;
    padding: 10px;
    border-radius: 10px;
    border: purple 2px solid;
    color: purple;
}
.mokuji {
    margin: 10px;
}
.border {
    border: black 1px solid;
}
.pdf-link {
    width: 100%;
    height: 100%;
}
.img-book {
    width: 200px;
    margin: 20px;
}

