@charset "UTF-8";

/*---------------------------------------------------

    各種設定

---------------------------------------------------*/

body.index h2 {
    margin-top: 3.6em;
}

body.index h3.library {
    margin-top: 1.8em !important;
    margin-bottom: 1.8em !important;
}

/*---------------------------------------------------

    メイン配色

---------------------------------------------------*/

bg-orange,
body.home header img,
body.home header p {
    background-color: #ffaa6e;
    color: #524944;
}

body.home nav.menu a,
body.home nav.pagination li:not(.next-page):not(.previous-page) a {
    background-color: #a2521b;/*修正*/
    border-color: #ba5e1f !important;/*修正*/
}

/*---------------------------------------------------

    その他配色（index用）

---------------------------------------------------*/

body.index nav.predictions a {
    background-color: #1f77b4 !important;
    border: solid 1px #2388ce !important;
}

body.index nav.predictions a i{
    font-size: 0.8em;
}

body.index nav.library a {
    background-color: #3d8037 !important;
    border: solid 1px #47933f !important;
}

body.index nav.library a i{
    font-size: 0.8em;
}

body.index nav.expo a {
    background-color: #8d4595 !important;
    border-color: #a24faa !important;
}

body.index nav.expo a i{
    font-size: 0.8em;
}

body.index nav.info a {
    background-color: #ffaa6e !important;
    border-color: #ffc49b !important;
    color: #524944;
}

.gray-highlight{
    background-color: #f6f6f6;
}

/*---------------------------------------------------

    トップバナー

---------------------------------------------------*/

figure.top-banner {
    margin: 0;
    padding: 0;
    width: 100%;
}

figure.top-banner img {
    width: 100%;
}

/*---------------------------------------------------

    トップイメージ画像

---------------------------------------------------*/

div.top-img {
    margin: 2.7em 0 0;
    position: relative;
    width: 100%;
}

div.top-img img {
    width: 100%;
}

div.top-img div {
    background-color: rgb(35 35 35 / 0.6);
    color: #fcfcfe;
    left: 0;
    padding: 2.7em 0;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translate(0, -50%);
    width: 100%;
}

div.top-img p {
    clear: both;
    display: inline-block;
    margin: 0;
    padding: 0;
    text-align: left;
    width: 70%;
}

div.top-img p::first-letter {
    display: block;
    float: left;
    font-size: 2.6em;
    line-height: 1;
    margin: auto;
    padding-right: 0.15em;
}

div.top-img p:last-child {
    margin-top: 0.9em;
}

/*---------------------------------------------------

    helloページ

---------------------------------------------------*/

body.home h4 {
    font-size: 1em;
    margin: 0.9em 1em 0;
}

/*---------------------------------------------------

    aboutページ

---------------------------------------------------*/

body.about h2 {
    margin-top: 2.7em;
}

body.about h3 {
    background: linear-gradient(transparent 60%, #cccccc 60%);/*修正*/
    border-radius: 80% 50% 60% 5%/80% 75% 15% 75%;
    padding: 0 0.5em;
    margin-top: 3.6em;
    width: fit-content;
}

body.about h3::before {
    border: none !important;
}


body.about article.profile ul {
    align-items: flex-end;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0 1em 0 1.8em;
    width: fit-content;
}

body.about article.profile ul li {
    padding: 0 0.9em;
}

body.about article.history h3 {
    border-radius: 2px;
    color: #fcfcfe;
    background: #a2521b;/*修正*/
    margin-bottom: 2.7em;
    padding: 0.3125em 0.85em;
}

body.about article.history p {
    margin-top: 3.6em;
    margin-left: 2em;
}

body.about article.special-thanks h3 {
    margin-bottom: 0.5em;
}

body.about div.bubble {
    background-color: #f2ece6;/*修正*/
    border: solid 0.094em #cccccc;/*修正*/
    border-radius: 6px;
    color: #4b4b4b;
    display: inline-block;
    font-size: 1em;
    margin: 1.8em 2em 0;
    padding: 1.35em 1.5em 1.35em 2em;
    position: relative;
    text-align: left;
}

body.about div.bubble::before {
    border-color: transparent transparent #cccccc;/*修正*/
    border-style: solid;
    border-width: 0 0 0.8em 0.8em;
    content: "";
    left: 8%;
    position: absolute;
    top: 0;
    translate: -50% -100%;
}

body.about div.bubble::after {
    color: #fcfcfe;
    border-color: transparent transparent #f2ece6;/*修正*/
    border-style: solid;
    border-width: 0 0 0.6375em 0.6375em;
    content: "";
    left: 8%;
    position: absolute;
    top: 0;
    translate: calc(-50% + 0.020em) -100%;
}

body.about div.bubble p {
    margin: 1.35em 0 0;
}

body.about div.bubble p:first-child {
    margin-top: 0 !important;
}

body.about div.bubble img {
    float: left;
    height: 3.5em;
    margin: 0 0.5em 0 -1em;
    width: 3.5em;
}