﻿@charset "utf-8";

/* ******* 共通 ******* */
.none{
    display:none !important;
}
html {
    font-family:'Yu Gothic','メイリオ','Meiryo','ＭＳ Ｐゴシック', 'MS PGothic', sans-serif,'ヒラギノ角ゴシック', 'Hiragino Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN';
    letter-spacing:0em;
    -webkit-text-size-adjust: 100%;
    font-size:16px;
    }
body {
    width:100%;
    background-image:url("../image/common/back.png");
    margin:0;
    padding:0;
    }
main,header,footer{
    display:block;
    width:100%;
    max-width:1200px;
    margin:0;
    margin-right:auto;
    margin-left:auto;
    border-right:1px solid green;
    border-left:1px solid green;
    background-color:white;
}
a{
    overflow:hidden;
    text-decoration:none;
    color:black;
}
.none{
    display:none;
}
/* -------------------------------------------*/
header img{
    width:100%;
}
/* -------------------------------------------*/
nav{
    position:absolute;
    top:2em;
    right:2em;
    text-align:right;
}
nav>img{
    width:50px;
    height:50px;
    border:1px solid black;
    border-radius:5px;
}
nav>img:hover{
    cursor: pointer;
}
nav>ul{
    display:block;
    width:100%;
    margin-top:2px;
    background-color:rgb(230,230,230);
    border-radius:5px;
    text-align:left;
}
nav>ul>label{
    font-size:1em;
}
nav>ul>li{
    list-style-type:dot;
    font-size:0.8em;
}
nav>ul>li>a:hover{
    color:red;
}
/* -------------------------------------------*/
main>div{
    display:block;
    width:80%;
    margin:0 10%;
    padding:1em 0;
}
div#myDiv{
    position:relative;/*ビデオをdiv内に収めるため、positionを親要素divに指定要*/
    margin:0;
    width:100%;
    height:45vw;/*main100%xdiv.top80%xdiv#mydiv100%×縦横比0.5625(360/640)
    max-height:417px;*/
}
div#myDiv div{
    margin:0 auto;
}
h1{
    text-align:left;
    font-size:1.5em;
    font-weight:normal;
    margin-left:1em;
}
h2{
    display:block;
    text-align:center;
    font-size:1.2em;
    font-weight:normal;
    margin:0;
    padding-top:0.5em;
}
h2>span:before{
    content:"\a";
    white-space:pre;
}

div.middle{
    display:flex;
    justify-content:space-between;
}
div.article{
    display:block;
    width:30%;
    margin:0 0 1em 0;
    border-top:1px solid black;
}
div.article label{
    display:block;
    width:100%;
    text-align:center;
    border-radius:5px;
    color:white;
}
div.article label.green{
    background-color:rgb(169,209,142);
}
div.article label.blue{
    background-color:rgb(136,185,198);
}
div.article label.white{
    background-color:rgba(255,255,255,0);
}
div.article label.yellow{
    background-color:rgb(255,192,0);
}
span.author{
    display:block;
    margin:0;
    width:100%;
    text-align:right;
}
div.gallery{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-evenly;
    width:100%;
}
div.gallery>img{
    display:block;
    width:45%;
    height:23.76vw;/*main100% x main>div(80%) x img(45%) x 66%*/
    margin:8px 0 0 0;
    float:left;
    object-fit:contain;
}
div.gallery>img.large{
    width:60%;
    height:31.68vw;/*main100% x main>div(80%) x img(60%) x 66%*/
}
div.gallery>img.small{
    width:30%;
    height:31.68vw;/*main100% x main>div(80%) x img(30%) x 66%*/
}
div.gallery>img.fullwidth{
    width:90%;
    height:47.52vw;/*main100% x main>div(80%) x img(90%) x 66%*/
}

div.article p{
    clear:both;
    display:block;
    padding:0;
    margin:0;
    text-indent:1em;
}
div#line>div.article>p{
    text-indent:0;
}
div.line{
    border:6pt solid rgb(91,155,213);
    border-radius:30px;
}
div.line>h2{
    width:20rem;
    max-width:95%;
    margin:0 auto;
    background-color:rgb(200,200,200);
    text-shadow:1px 1px;
}
div.line p{
    padding:0 30px;
}
div.line label{
    background-color:rgb(100,100,100);
    color:white;
    width:20rem;
    max-width:95%;
    margin:0 auto;
}
div.line img{
    width:100px;
    height:186px;
}
div.line ol{
    display:block;
    width:auto;
}
@media screen and (max-width:1800px){
    h2>span:before{
        content:"";
    }
    div.middle{
        display:block;
    }
    div.article{
        display:block;
        width:100%;
        padding:1em 0;
    }
}
@media screen and (min-width:111200px){
    /*mainのmaxwidthに対応*/
    div.gallery>img{
        width:432px;/*main(max-wide:1200) x main>div(80%) x img(45%)*/
        height:285px;/*main(max-wide:1200) x main>div(80%) x img(45%) x 66%*/
    }
    div.line>div.gallery>img{
        width:100px;
        height:186px;
    }
    div.gallery>img.large{
        width:576px;/*main(max-wide:1200) x main>div(80%) x img(60%)*/
        height:380px;/*main(max-wide:1200) x main>div(80%) x img(60%) x 66%*/
    }
    div.gallery>img.small{
        width:288px;/*main(max-wide:1200) x main>div(80%) x img(30%)*/
        height:190px;/*main(max-wide:1200) x main>div(80%) x img(30%) x 66%*/
    }
    div.gallery>img.fullwidth{
        width:672px;/*main(max-wide:1200) x main>div(80%) x img(90%)*/
        height:443.5px;/*main(max-wide:1200) x main>div(80%) x img(90%) x 66%*/
    }
    
}
@media screen and (max-width:1200px){
    /*ナビゲーション縮小*/
    nav{
        right:8px;
    }    
}
@media screen and (max-width:750px){
/*    html {
        font-size:12pt;
        }*/
    /*headerの画像入れ替え（余白削減）
    header{
        background-image:url("../image/common/header_for_small_screen.png");
        background-size:contain;
        background-repeat:no-repeat;
        background-position:top center;

    }
    header img{
        opacity:0;
    }*/
    /*ナビゲーション縮小*/
    nav{
        top:8px;
        right:8px;
    }
    nav>img{
        width:30px;
        height:30px;
    }
    /*main幅拡大、画像拡大*/
    main>div{
        width:98%;
        margin:0 1%;
    }
    div#myDiv{
        position:relative;/*ビデオをdiv内に収めるため、positionを親要素divに指定要*/
        margin:0;
        width:100%;
        height:55.125vw;/*main100%xdiv.top98%xdiv#mydiv100%×縦横比0.5625(360/640)*/
    }
    div.gallery>img,div.gallery>img.large,div.gallery>img.small,div.gallery>img.fullwidth{
        width:100%;
        max-width:700px;
        max-height:auto;
        height:auto;
    }
    div.line>div.gallery>img{
        width:100px;
        height:186px;
    }
    /*背景削除*/
    div.article{
        background-image:none !important;
        padding:1em 0 !important;
    }
}
