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

/*--------------------テンプレート情報--------------------*/
/*template　Maison de R*/
/*url　https://maisonder.web.fc2.com/*/
/*title　Garden Party*/
/*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
"Questrial" is lisenced under the SIL Open Font License
http://scripts.sil.org/OFL
by https://fonts.google.com/(Joe Prince)
"Alex Brush" is lisenced under the SIL Open Font License
http://scripts.sil.org/OFL
by https://fonts.google.com/(TypeSETit)
"Sawarabi Mincho" is lisenced under the SIL Open Font License
http://scripts.sil.org/OFL
by https://fonts.google.com/(mshio)
*/

/*
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
*/

/*アニメーション*/

body {
    -webkit-animation: fadein 1s ease 0s 1;
    animation: fadein 1s ease 0s 1;
    /*左から、アニメーション名、1回の再生時間、変化方法、開始を遅らせる時間、繰り返し回数*/
}

@-webkit-keyframes fadein {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadein {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}


/*基本*/

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    word-break: break-all;
    -webkit-appearance: none;
    -moz-appearance: none;
    /*フォーム周辺のデザインをリセット*/
}

html {}

body {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    /*モバイル端末でのテキストサイズの自動調整対策*/
    font-family: 'Questrial', "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    color: #454545;
    letter-spacing: 0.04em;
    text-align: center;
    background: url(ga26.gif) repeat center center white;
}

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

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

a:hover {
    color: #a4a8d4;
}

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

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

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

.ul1 {
    /*ulリスト用1（縦リスト/テキスト用）*/
}

.ul1 li {
    margin-top: 0.25em;
}

.ul1 li:first-child {
    margin-top: 0;
}

.ul1 li span {
    display: block;
}

.ul1 li span::before {
    /*FontAwesome*/
    display: inline;
    color: #8d93c8;
    content: "\f0a9";
    margin-right: 0.5em;
    font-family: FontAwesome;
}

.pagetop {
    /*ページトップボタン*/
    position: fixed;
    /*固定*/
    bottom: 8px;
    right: 8px;
}

.pagetop a {
    color: white;
    display: block;
    /*リンク範囲の拡張*/
    background: #4d4398;
    text-align: center;
    width: 30px;
    height: 30px;
    line-height: 30px;
    /*heightの値と揃える*/
    border-radius: 15px;
    /*widthとheightの値の半分にすると円になる*/
}

.pagetop a:hover {
    color: white;
    background: #bbdbf3;
}


/*フォント*/

header h1 {
    font-family: 'Alex Brush', cursive;
    /*font-family: 'Sawarabi Mincho', sans-serif; 日本語を使用したい場合はこちらのフォントに切り替えてください*/
    font-weight: normal;
}

aside h1 {
    /*font-family: 'Sawarabi Mincho', sans-serif; 日本語を使用したいこちらのフォントに切り替えてください*/
    font-weight: normal;
}


/*テキスト 行の高さ*/

header h1 {
    line-height: 1.2;
}

nav,
.text,
footer {
    line-height: 1.7;
}


/*テキスト 文字間隔*/

.catch,
.sub,
nav,
aside h1 {
    letter-spacing: 0.15em;
}

.pagetop {
    letter-spacing: 0;
}


/*テキスト 位置*/

header,
aside,
footer {
    text-align: left;
}


/*ページの枠組み*/

#all {}

.wrap1 {
    padding: 20px 0px;
    background: url(back01.gif) repeat center center white;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /*フレックスボックス*/
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    /*横中央*/
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    /*縦中央*/
}

.wrap2 {
    padding: 20px 0px;
}


/*wrap1の高さを常に画面いっぱいに広げる*/

html,
body {
    height: 100%;
    /*wrap1のすべての親要素の高さを100%にする*/
}

body > .wrap1 {
    height: auto;
    /*wrap1の中身が多くなりすぎた場合の対策 これを指定しないと中身が多くなった場合に切れて表示される場合があります*/
}

.wrap1 {
    min-height: 100%;
    /*上記のautoにより中身が少ない場合に縮小されるのを防ぐ対策*/
    height: 100%;
}


/*レイアウト 共通*/

header,
aside,
footer {
    background: white;
    width: 100%;
}

aside,
footer {
    /*ボックスの内側のライン*/
    -webkit-box-shadow: 0px 0px 0px 2px #ebf8fa inset;
    box-shadow: 0px 0px 0px 2px #ebf8fa inset;
    border: 5px solid white;
}


/*ヘッダー*/

header {
    padding: 30px 20px;
    /*ボックスの内側のライン*/
    -webkit-box-shadow: 0px 0px 0px 2px #c0ebf0 inset;
    box-shadow: 0px 0px 0px 2px #c0ebf0 inset;
    border: 5px solid white;
}

.title {}

.title::after {
    /*メインビジュアル*/
    content: "";
    width: 100%;
    height: 150px;
    background: url(bg04.png) no-repeat bottom center, url(back01.gif) repeat center center white;
    display: block;
    margin-top: 30px;
}

.catch {
    color: #89dbeb;
}

.catch::before {
    /*FontAwesome*/
    display: inline;
    content: "\f005";
    color: #4d4398;
    margin-right: 0.5em;
    font-family: FontAwesome;
}

header h1 {
    color: #a4a8d4;
    margin-top: 15px;
    font-size: 30px;
}

header h1 span {
    /*先頭の文字*/
    font-size: 40px;
}

header h1 a {
    color: #a4a8d4;
    text-decoration: none;
}

.sub {
    color: gray;
    margin-top: 15px;
}


/*ナビ*/

nav {
    margin-top: 40px;
}

nav ul {}

nav ul li {
    margin-top: 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /*フレックスボックス*/
}

nav ul li:first-child {
    margin-top: 0;
}

nav ul li a {
    text-decoration: none;
    /*マーカー風ライン*/
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(0%, #f7f6fb));
    background: linear-gradient(transparent 50%, #f7f6fb 0%);
}

nav ul li div:first-child {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    /*縮小を無効*/
    color: gray;
}

nav ul li div:first-child::before {
    /*FontAwesome*/
    display: inline;
    content: "\f0da";
    color: #a4a8d4;
    margin-right: 0.5em;
    font-family: FontAwesome;
}

nav ul li div:first-child::after {
    display: inline;
    content: "-";
    color: gray;
    margin: 0 0.5em;
}

nav ul li div:last-child {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    /*伸長係数*/
}


/*補足*/

aside {
    padding: 30px 20px;
    margin: 0 auto;
}

aside h1 {
    font-size: 13px;
    margin-bottom: 30px;
    text-align: center;
}

aside h1::after {
    content: "";
    display: block;
    margin: 15px auto 0;
    width: 50px;
    border-top: 4px double #ffd2c6;
}


/*本文エリア*/

.text > p,
.text > ul {
    /*タグ間の余白*/
    margin-top: 1.5em;
}

.text > p:first-child,
.text > ul:first-child {
    /*タグ間の余白 先頭の要素を無効*/
    margin-top: 0;
}


/*フッター*/

footer {
    margin: 20px auto 0;
    padding: 30px 20px;
}

footer ul {
    font-size: 11px;
}

footer ul li {
    float: left;
    margin-right: 1em;
}

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

/*------------画面サイズ768px以上用（大きい画面サイズ向け）------------*/
@media screen and (min-width:768px) {

    .wrap1,
    .wrap2,
    header,
    aside {
        padding: 50px;
    }

    .wrap1 {
        background: url(bg06.png) no-repeat top right, url(bg05.png) no-repeat bottom left, url(back01.gif) repeat center center white;
    }

    header,
    aside,
    footer {
        max-width: 700px;
    }

    header {
        -webkit-box-shadow: 0px 0px 0px 2px #c0ebf0 inset;
        box-shadow: 0px 0px 0px 2px #c0ebf0 inset;
        border: 10px solid white;
    }

    .title {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
        background: url(fa26.gif) repeat-x center left;
    }

    .title > div {
        /*直下の子要素*/
        background: white;
        padding: 0 40px;
    }

    .title::after {
        /*メインビジュアルを非表示*/
        display: none;
    }

    nav {
        margin-top: 40px;
    }

    nav ul {
        -webkit-column-count: 2;
        column-count: 2;
        /*カラム数*/
        -webkit-column-gap: 40px;
        column-gap: 40px;
        /*カラムの間隔*/
    }

    aside,
    footer {
        -webkit-box-shadow: 0px 0px 0px 2px #ebf8fa inset;
        box-shadow: 0px 0px 0px 2px #ebf8fa inset;
        border: 10px solid white;
    }

    aside h1 {
        margin-bottom: 40px;
    }

    footer {
        padding: 30px 50px;
    }
}

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