﻿*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    /* ルートのフォントサイズを10pxに設定しておく */
    font-size: 62.5%;
    font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

body {
    /* ルートのフォントサイズを1.6em（16pxと同等のサイズ）に設定 */
    font-size: 1.6em;
    width: 100%;
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

header {
    width: 100%;
    text-align: center;
    background-color: rgb(222, 235, 247);
    font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
    padding: 2rem 1rem 1rem;
    margin-bottom: 2rem;
}

#book_title {
    font-size: 3rem;
    color: rgb(31, 56, 100);
    letter-spacing: .5rem;
}

#title {
    font-size: 2rem
}

.book_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 3rem;
}

.book3_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 3rem;
}

.book_img {
    width: 100%;
    text-align: center;
    margin-bottom: 1.5rem;
}

.book_img img {
    width: 100%;
    height: auto;
    max-width: 100px;
}

.book_list ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0;
    margin-bottom: 0;
}

.book3_list ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    padding: 0;
    margin-bottom: 0;
}

.book_list li {
    width: 100%;
    margin-bottom: 1.5rem;
}

.book3_list li {
    width: 100%;
    margin-bottom: 1.5rem;
}

.book_list li a {
    display: block;
    padding: 1rem;
    text-align: center;
}

.book3_list li a {
    display: block;
    padding: 1rem;
    text-align: center;
}

hr {
    border-top: 5px dashed rgb(166, 166, 166);
}

.pagetop {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    text-decoration: none;
    opacity: 0.7;
}

.pagetop img {
    width: 50px;
    height: 50px;
}

.pagetop:hover {
    opacity: 1;
}

footer {
    background-color: rgb(206, 206, 206);
    margin-top: auto;
}

footer p {
    padding: .5rem;
    margin: 0;
}

/* 書籍ごとの背景色 */
/* 体系数学1 start */

.daisu_btn {
    background-color: rgb(68, 114, 196);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.daisu_btn a {
    color: #fff;
    text-decoration: none;
}

.daisu_btn:hover {
    background-color: rgba(68, 114, 196, .8);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

.kika_btn {
    background-color: rgb(0, 160, 112);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.kika_btn a {
    color: #fff;
    text-decoration: none;
}

.kika_btn:hover {
    background-color: rgba(0, 160, 112, .7);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

/* 体系数学1 end */
/* 体系数学2 start*/

.daisu2_btn {
    background-color: rgb(220, 102, 19);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.daisu2_btn a {
    color: #fff;
    text-decoration: none;
}

.daisu2_btn:hover {
    background-color: rgba(220, 102, 19, .8);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

.kika2_btn {
    background-color: rgb(205, 87, 79);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.kika2_btn a {
    color: #fff;
    text-decoration: none;
}

.kika2_btn:hover {
    background-color: rgba(205, 87, 79, .7);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

/* 体系数学2 end*/

/* 体系数学3 start */

.sukan_btn {
    background-color: rgb(0, 42, 126);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.sukan_btn a {
    color: #fff;
    text-decoration: none;
}

.sukan_btn:hover {
    background-color: rgba(0, 42, 126, .8);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

.ronkaku_btn {
    background-color: rgb(255, 21, 21);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.ronkaku_btn a {
    color: #fff;
    text-decoration: none;
}

.ronkaku_btn:hover {
    background-color: rgba(255, 21, 21, .7);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

/* 体系数学3 end */

/* 体系数学4 start*/

.taikei4_btn {
    background-color: rgb(0, 80, 0);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.taikei4_btn a {
    color: #fff;
    text-decoration: none;
}

.taikei4_btn:hover {
    background-color: rgba(0, 80, 0, .8);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

/* 体系数学4 end*/

/* 体系数学5 start*/

.taikei5_btn {
    background-color: rgb(80, 00, 80);
    -webkit-box-shadow: 0px .4rem rgba(0, 0, 0, .5);
    box-shadow: 0px .4rem rgba(0, 0, 0, .5);
}

.taikei5_btn a {
    color: #fff;
    text-decoration: none;
}

.taikei5_btn:hover {
    background-color: rgba(80, 00, 80, .8);
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translate3d(0, .4rem, 0);
    transform: translate3d(0, .4rem, 0);
}

/* 体系数学5 end*/

.disable_btn {
    background-color: lightgray;
    opacity: .5;
}

.disable_btn a {
    text-decoration: none;
    color: gray;
}

.disable_btn a:hover {
    cursor: default;
}


/*モバイルファーストで設定*/

/*560px以上をタブレットと想定*/

@media screen and (min-width: 560px) {
    html {
        font-size: 93.75%;
    }

    .book_img {
        width: 30%;
    }

    .book_list ul {
        width: 65%;
    }

    .book3_list ul {
        width: 65%;
    }

    .book_img img {
        max-width: 200px;
    }

}

/*960px以上をPCと想定*/

@media screen and (min-width: 960px) {
    .book_img img {
        max-width: 300px;
    }

    html {
        font-size: 125%;
    }

}