@charset "UTF-8";
@import url("html5reset-1.6.1.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Alex+Brush&display=swap');

/*--------------------テンプレート情報--------------------*/
/*template　Maison de R*/
/*url　https://maisonder.web.fc2.com/*/
/*title　Kaitlyn*/
/*code　CSS3*/

/*--------------------ライセンス--------------------*/

/*HTML5 Reset Stylesheet
html5doctor.com Reset Stylesheet v1.6.1
http://html5doctor.com/html-5-reset-stylesheet/
Copyright Richard Clark - http://richclarkdesign.com
Released under the CC0 Public Domain Dedication and MIT License
http://opensource.org/licenses/mit-license.php
*/

/*
jQuery v3.3.1
http://jquery.com/
(c) JS Foundation and other contributors
Released under the MIT license
http://jquery.org/license
http://opensource.org/licenses/mit-license.php
*/

/*
jQuery Smooth scroll
Handy Web Design
https://handywebdesign.net/2017/10/jquery-smooth-scroll/
*/

/*
Google Fonts
"Noto Serif JP" is lisenced under the SIL Open Font License
http://scripts.sil.org/OFL
https://fonts.google.com/(Google)
"Alex Brush" is lisenced under the SIL Open Font License
http://scripts.sil.org/OFL
https://fonts.google.com/(TypeSETit)
*/

/*
Font Awesome(Font License)
"font-awesome" is lisenced under the SIL Open Font License 1.1
http://scripts.sil.org/OFL
https://fontawesome.com/v4.7.0/
*/

/*
Font Awesome(Code License)
https://fontawesome.com/v4.7.0/
Released under the MIT license
https://fontawesome.com/v4.7.0/license/
http://opensource.org/licenses/mit-license.php
*/

/*--------------------PCファースト/すべての画面サイズでベースとなるCSS--------------------*/

/*--------------------全体の設定--------------------*/

* {
    /*paddingとborderを幅と高さに含める*/
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /*単語の途中でも必ず改行される*/
    word-break: break-all;
    /*フォーム周辺のデザインをリセット*/
    -webkit-appearance: none;
    -moz-appearance: none;
}

html {}

body {
    font-family: 'Noto Serif JP', serif;
    font-size: 14px;
    line-height: 1.7;
    color: #333333;
    letter-spacing: 0.05em;
    text-align: left;
    background: white;
    /*モバイル端末でのテキストサイズの自動調整対策*/
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/*--------------------主要タグの設定--------------------*/

/*フロート解除*/
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

/*リンク*/
a {
    color: #333333;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    /*アニメーション*/
}

a:hover {
    color: #a279b5;
}

/*画像*/
img {
    /*フルードイメージ（親要素の幅に応じて縦横比を保持したまま自動的に画像の拡大縮小をする）*/
    max-width: 100%;
    height: auto;
    /*ディセンダー対策（画像の下の隙間を無くす）*/
    vertical-align: bottom;
}

a img {
    /*画像リンクの枠線を消す*/
    border: 0;
}

/*段落*/
p {}

/*ulリスト共通*/
ul {
    /*リストマークを非表示*/
    list-style-type: none;
    /*リストマークを内側に表示*/
    list-style-position: inside;
}

/*--------------------テキスト関連の設定--------------------*/
/*フォントの種類 太さ*/
h1 {
    font-weight: normal;
}

/*テキスト 行の高さ*/
h1,
.sub,
.pagenav,
.pagenav ul li,
.pagetop {
    line-height: 1;
}

/*テキスト 文字間隔*/
h1,
.sub {
    letter-spacing: 0.08em;
}

.pagetop {
    letter-spacing: 0;
}

/*小説部分（.novel）のテキスト関連の設定は下の方にまとめて記載しました*/

/*--------------------構造関連の設定--------------------*/
/*色指定 共通*/
#all::before,
#all::after {
    background: #cbaed9;
}

/*ボディ*/
#all {}

#all::before {
    content: "";
    width: 100%;
    display: block;
    height: 15px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 50;
}

#all::after {
    content: "";
    width: 100%;
    display: block;
    height: 15px;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 50;
}

/*コンテナ*/
.container1::before {
    display: block;
    content: url(bg01.png);
    position: fixed;
    top: -50px;
    right: -150px;
    z-index: 100;
}

.container1::after {
    display: block;
    content: url(bg01.png);
    position: fixed;
    bottom: -50px;
    left: -150px;
    z-index: 100;
}

.container1 {
    padding: 55px 30px 100px;
}

.container2 {
    width: 100%;
    max-width: 700px;
    background: white;
    margin: 0 auto;
}

/*ヘッダー*/
header {}

h1 {
    font-size: 20px;
}

.sub {
    font-size: 16px;
    margin-top: 1.5em;
}

/*メイン*/
main {
    margin: 40px 0;
}

/*小説部分*/
.novel {
    /*小説部分のフォントサイズ*/
    font-size: 14px;
    /*小説部分の行間*/
    line-height: 1.7;
    /*小説部分の文字間隔*/
    letter-spacing: 0.05em;
}

.novel > p {
    /*小説部分直下の階層の段落タグ タグ間の余白*/
    /*小説部分直下の階層のpタグ間に間隔を作りたくない場合はmargin-topに0を指定してください*/
    margin-top: 1em;
}

.novel > p:first-child {
    /*小説部分直下の階層の段落タグ 先頭の要素*/
    margin-top: 0;
}

/*あとがき*/
.afterword {
    text-align: left;
    margin-top: 40px;
    background: #fbf9fc;
    padding: 15px;
}

/*ページナビ*/
.pagenav {
    margin-top: 40px;
    text-align: left;
}

.pagenav ul {
    /*隙間対策*/
    font-size: 0;
}

.pagenav ul li {
    /*隙間対策 再指定*/
    font-size: 14px;
    display: inline;
}

.pagenav ul li::after {
    content: "/";
    margin: 0 6px;
}

.pagenav ul li:last-child::after {
    display: none;
}

/*フッター*/
footer {}

footer ul {}

footer ul li {
    display: inline;
    margin-right: 0.8em;
}

footer ul li:last-child {
    margin-right: 0;
}

footer ul li span {
    margin-right: 0.5em;
}

/*ページトップボタン*/
.pagetop {
    text-align: right;
    margin-top: 30px;
}

.pagetop a {
    text-decoration: none;
}

/*------------画面サイズ（横幅）900px以下用------------*/

@media screen and (max-width:900px) {
    #all::before {
        content: "";
        width: 100%;
        display: block;
        height: 10px;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 50;
    }

    #all::after {
        content: "";
        width: 100%;
        display: block;
        height: 10px;
        position: fixed;
        bottom: 0;
        left: 0;
        z-index: 50;
    }

    .container1::before {
        display: block;
        content: url(bg02.png);
        position: fixed;
        top: -50px;
        right: -130px;
        z-index: 100;
    }

    .container1::after {
        display: block;
        content: url(bg02.png);
        position: fixed;
        bottom: -50px;
        left: -125px;
        z-index: 100;
    }

    .container1 {
        padding: 45px 15px 80px;
    }

    .afterword {
        padding: 10px;
    }
}

/*ベンダープレフィックス設定済*/
/*エラーチェック済*/
