@charset "UTF-8";

/*!
 * Bootstrap  v5.3.8 (https://getbootstrap.com/)
 * Copyright 2011-2025 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */

:root {
    /* カスタムカラーの定義 (basictop.css から抽出) */
    --custom-link-color: #0105d2;
    --custom-link-visited: #059a76;
    --custom-link-hover: #ed0000;
    --custom-link-active: #e0c408;

    /* Bootstrap の変数をカスタムカラーで上書き */
    --bs-link-color: var(--custom-link-color);
    --bs-link-hover-color: var(--custom-link-hover);
}

/* 共通要素のスタイル (basictop.css & basetop.css 統合) */
a:link {
    color: #0105d2;
}

a:visited {
    color: #059a76;
}

a:hover {
    color: #e30000;
}

a:active {
    color: #e0c408;
}

/* フォントサイズへの影響をなくす */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    /* 親要素のサイズを継承 */
    font-weight: normal;
    /* 太字を解除 */
    margin: 0;
    /* ついでに上下の余白も消すと扱いやすいです */
}

body {
    font-family: "Helvetica", "Meiryo", "Arial", "游ゴシック", sans-serif;
    font-size: 62.5%;
    line-height: 1.45em;
    letter-spacing: 0.1em;
    margin: 0 auto 50px auto;
    /*背景画像*/
    background-color: #00156f;
    background-image: url("img/park.jpg");
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
    /*End背景画像*/
}

.wrapper {
    vertical-align: middle;
    width: 100%;
    max-width: 3000px;
    height: auto;
    margin: 0 auto 0 auto;
}

.loop {
    width: 100%;
    height: auto;
    background: url(img/topback.png) repeat-x;
    background-position: 0 0;
    -webkit-animation: bgloop 90s linear infinite;
    -moz-animation: bgloop 90s linear infinite;
    -ms-animation: bgloop 90s linear infinite;
    -o-animation: bgloop 90s linear infinite;
    animation: bgloop 90s linear infinite;
}

@-webkit-keyframes bgloop {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 1600px 0;
    }
}

@-moz-keyframes bgloop {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 1600px 0;
    }
}

@-ms-keyframes bgloop {
    0% {
        -ms-background-position: 0 0;
    }

    100% {
        -ms-background-position: 1600px 0;
    }
}

@-o-keyframes bgloop {
    0% {
        -o-background-position: 0 0;
    }

    100% {
        -o-background-position: 1600px 0;
    }
}

@keyframes bgloop {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 1600px 0;
    }
}

/* basictop.css */
.boxcontainer2 {
    line-height: 2.2em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    position: relative;
    background-color: #ffffff;
    border-radius: 8px;
    flex-direction: row;
    flex-flow: row;
    align-items: stretch;
    overflow: hidden;
    flex-wrap: wrap;
    margin: 0 auto 10px auto;
    text-align: left;
}

.boxcontainer4 {
    line-height: 1.2em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    padding: 0 15px 5px 15px;
    background-color: #00eaea;
    position: relative;
    text-align: left;
    overflow: hidden;
    margin: 0 auto 0 auto;
}

.boxcontainer5 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    position: relative;
    background-image: url(img/education.png);
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 100% 50%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer6 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    position: relative;
    background-image: url(img/lucky5.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer6 .caption {
    font-size: 1em;
    font-weight: 777;
    color: #000;
    padding-top: 0;
    padding-left: 65%;
}

.boxcontainer6 .mask {
    width: 100%;
    height: 0;
    background-color: transparent;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

.boxcontainer6:hover .mask {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.boxcontainer7 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    position: relative;
    background-image: url(img/cosmos2.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer8 {
    font-size: 1em;
    font-weight: bold;
    text-align: left;
    width: 100%;
    max-width: 1000px;
    height: auto;
    padding-left: 5px;
    box-sizing: border-box;
    overflow: hidden;
    margin: 10px auto 0 auto;
}

.boxcontainer9 {
    text-align: center;
    line-height: 1em;
    width: 100%;
    max-width: 777px;
    height: auto;
    margin: 30px auto 0 auto;
    display: block;
}

.boxcontainer11 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/universe.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-blend-mode: lighten;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer12 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/planet.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer13 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/monta.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer14 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/devil.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer15 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/bezos.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer16 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/australia.jpg);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer17 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/newcale.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.boxcontainer18 {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.8em;
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-image: url(img/dollar.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.box1 {
    width: 100%;
    max-width: 494px;
    height: auto;
    position: relative;
    padding-top: 10px;
    margin: 0 auto 0 auto;
}

.box2 {
    width: 100%;
    height: auto;
    border-collapse: collapse;
    text-align: left;
    padding: 5px 15px 55px 15px;
    margin: 0 auto 0 auto;
    background-color: #e1f7ff;
    padding-left: 10px;
}

.box3 {
    max-width: 90px;
    width: 100%;
    height: auto;
    border: solid #000000 1px;
    margin: 5px 5px 3px auto;
    float: left;
}

.box4 {
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-color: #ffffff;
    padding: 1px 2px 1px 2px;
    border-right: 1px solid #a8e6ff;
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    overflow-wrap: break-word;
    overflow: hidden;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: -400px;
    padding-bottom: 400px;
}

.wat-books {
    width: 100%;
    max-width: 1000px;
    height: auto;
    background-color: #ffffff;
    border: #00eaea solid 1px;
    position: relative;
    box-sizing: border-box;
    word-wrap: break-word;
    overflow: hidden;
    float: left;
    padding-left: 4px;
    padding-right: 4px;
    padding-top: 10px;
    padding-bottom: 100px;
    margin-bottom: -100px;
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.no-gutter > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
    margin-right: 0;
    margin-left: 0;
}

.gutter > [class*="col-"] {
    padding-right: 5px;
    padding-left: 5px;
}

/*アニメグラデーション*/

@keyframes bggradient {
    0% {
        background-position: 11% 0%;
    }

    50% {
        background-position: 90% 100%;
    }

    100% {
        background-position: 11% 0%;
    }
}

/*Endアニメグラデーション*/

.responsive {
    display: block;
    width: 100%;
    max-width: 519px;
    height: auto;
    margin: 2px auto 5px auto;
}

/*ラッキーリピート*/

.boxcontainer19 {
    position: relative;
    width: 120px;
    height: 101px;
    border: solid 1px #000000;
}

.image {
    position: absolute;
    width: 100%;
    opacity: 0;
    animation: change-img-anim 10s infinite;
}

.image:nth-of-type(1) {
    animation-delay: 0s;
}

.image:nth-of-type(2) {
    animation-delay: 4s;
}

.image:nth-of-type(3) {
    animation-delay: 6s;
}

@keyframes change-img-anim {
    0% {
        opacity: 0;
    }

    30% {
        opacity: 1;
    }

    60% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/*Endラッキーリピート*/

.div1 {
    margin: 0 auto 0 auto;
    text-align: center;
}

.div3 {
    display: none;
    width: 105%;
    line-height: 2.1em;
    border: 1px solid #000;
    background: #fff;
}

.div5 {
    font-size: 1em;
    font-weight: bold;
    text-align: left;
    line-height: 2.1em;
    width: 100%;
    max-width: 500px;
    display: none;
    padding-left: 0.3em;
    border: 1px solid #000;
    background: #fff;
    margin-left: -20px;
}

.gradation1 {
    width: 120px;
    height: 35px;
    text-align: center;
    background: linear-gradient(#fdffc7, #87c300);
    border-radius: 10px;
    padding-top: 0;
    padding-bottom: 5px;
    float: left;
}

.section-title {
    position: relative;
    width: 100%;
    max-width: 900px;
    height: auto;
    line-height: 1.3em;
    padding: 8px 2px 4px 5px;
    margin: 3px auto 3px auto;
    border-radius: 4px;
    text-align: left;
    background: linear-gradient(#ffffff, #6fd9ff);
    border: #00bbff solid 1px;
    overflow-wrap: break-word;
}

.books {
    font-size: 1.2em;
    font-weight: 700;
}

.sample1 {
    font-size: 0.9em;
}

.sample2 {
    list-style-type: none;
    color: #000000;
    font-size: 1em;
    text-align: right;
    line-height: 0.9em;
    margin-left: -15px;
}

.sample3 {
    list-style-type: none;
    color: #000000;
}

.sample4 li:hover div {
    font-size: 1em;
    line-height: 1.8em;
    display: block;
    width: 100%;
    max-width: 700px;
    height: auto;
    padding-left: 1.5em;
    list-style-position: inside;
    border: 1px solid #999;
    margin-bottom: 7px;
}

.sample5 {
    width: 100%;
    max-width: 112px;
    height: auto;
    overflow: hidden;
    margin: 3px 8px 3px 5px;
    position: relative;
    float: left;
}

.sample5 .caption {
    font-size: 1.2em;
    font-weight: 700;
    color: #ffffff;
    padding-top: 10px;
    padding-left: 8px;
}

.sample5 .mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: transparent;
    -webkit-transition: all 0.6s ease;
    -moz-transition: all 0.6s ease;
    -o-transition: all 0.6s ease;
    -ms-transition: all 0.6s ease;
    transition: all 0.6s ease;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

.sample5:hover .mask {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.sample6 {
    list-style-type: disc;
    margin-left: -30px;
}

.sample9 {
    font-size: 1.2em;
    font-weight: bold;
    color: #ffffff;
    text-shadow:
        0 0 3px #000000,
        0 0 3px #000000,
        0 0 5px #000000,
        0 0 7px #000000;
    margin-left: 20px;
}

.sample10 {
    font-size: 0.9em;
    font-weight: bold;
}

.sample11 {
    font-size: 1em;
    font-weight: bold;
    display: block;
    text-indent: 1em;
    margin-top: 20px;
}

.title16 {
    font-size: 0.9em;
    text-align: center;
    padding-top: 10px;
    margin-bottom: 5px;
}

.title18 {
    font-size: 2.7em;
    font-weight: bold;
    color: #ffffff;
    text-shadow:
        0 0 8px #000000,
        0 0 8px #000000,
        0 0 10px #000000,
        0 0 12px #000000;
    letter-spacing: 0.5em;
    text-align: center;
}

.title19 {
    font-size: 1.6em;
    font-weight: bold;
    color: #ffffff;
    text-shadow:
        0 0 3px #000000,
        0 0 3px #000000,
        0 0 5px #000000,
        0 0 7px #000000;
    letter-spacing: 0.2em;
    text-align: center;
}

.title21 {
    margin-left: 5px;
    font-size: 1.3em;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.title23 {
    font-size: 1.1em;
    font-weight: bold;
    text-align: left;
    padding: 5px 5px 5px 10px;
    background-color: #84ffc7;
    margin-top: 15px;
    margin-bottom: 15px;
}

.title24 {
    line-height: 1.5em;
    text-align: left;
    display: none;
    width: 100%;
    max-width: 700px;
    height: auto;
    padding: 0 2px 0 2px;
    margin-bottom: 5px;
}

.title25 {
    font-size: 1em;
    font-weight: bold;
    line-height: 1.3em;
    margin: 0 auto;
    text-align: right;
}

.title26 {
    background-color: #ffffff;
    width: 100%;
    max-width: 498px;
    height: auto;
    padding-top: 1px;
    padding-bottom: 23px;
}

.comments {
    font-size: 1.1em;
    font-weight: bold;
    padding-bottom: 10px;
}

nav {
    display: block;
    box-sizing: border-box;
}

ul {
    padding-left: 0;
    list-style-position: inside;
    margin: 0 auto 0 5px;
}

li {
    padding-left: 0.5em;
    margin: 0 auto 0 5px;
}

.indent1 {
    text-indent: 1em;
    font-size: 0.9em;
    margin-top: 5px;
    margin-bottom: 5px;
}

.space2 {
    margin-right: 1em;
}

.newline1 {
    font-size: 0.9em;
    font-weight: bold;
    display: block;
    text-indent: 1em;
    margin-top: 20px;
}
