@charset "UTF-8";
/* 全てのWebページに適応される */
html{
    font-family: serif;
    background-image: url(../images/pixta_65207936_L.jpg);
    background-attachment:fixed;
    background-repeat: no-repeat;
    background-size:cover;
    min-width: auto;
    min-height: auto;
}

html *{
    /* 全てのデフォルトのマージン、パディングを０に設定。 */
    margin: 0px;
    padding: 0px;

    color: rgb(123, 24, 35);
    /* 全てのコンテンツは親要素にボーダーごと収まる。 */
    box-sizing: border-box;
}



h2{
    color: rgba(123, 24, 35,0.8);;
    width: 100%;
    margin: 0px;
    padding: 0px;;
    font-size: 22px;
    white-space: nowrap;
}

p{
    line-height: 1.4;
}

a{
    color: black;
}

hr{
    height: 1px;
    border:none;
    background-color: rgb(123, 24, 35);

    margin: 0px;
}


.logo{
    
    /* デフォルトではautoで密着する*/
    margin-bottom: auto;    
}

.header{

    margin-top: 0px;
}

.logo a img{
 
    max-width:100%;
    height: auto;
    vertical-align: bottom;
}

.nav{

    margin-left: auto; 
    vertical-align: top;
    /* ナビゲーションの幅。これ以下になると途切れる。可変させない。 */
    max-width: 980px;
    margin-top: 6px;
}

 .nav ul{
     /* リストを横並びにする。 */
    display:flex;
    margin-bottom: auto;
    /* 超重要。無いと隙間ができる。 */
    padding-left: 0px;

    /* コンテンツを中央揃えにする。 */
    align-items: center;
}

 .nav ul li{
    text-align: center;
    list-style-type: none;
    margin-left: 1px;
    margin-right: 1px;
    /* それぞれのリスト要素を同じ幅に指定 */
    flex:1;
}

.original_button{
    /* 均等に取ってある親要素の幅に合わせる。 */
    width: 100%;
    height: 40px;
    font-size: 16px;
    font-family: sans-serif;
    color: rgb(123, 24, 35);

    border:rgba(0, 0, 0, 0.1);
    border-style:solid;
    border-radius: 10px;

    border-bottom-color:rgb(123, 24, 35);
    border-right-color:rgb(123, 24, 35);
    border-width: 2px;


    /* ボタンの影を消す。 */
    background-color: transparent;

    transition: 0.3s;
}

.original_button:hover{
    background-color: rgba(123, 24, 35,0.8);
    color: white;
    cursor: pointer;
}

.original_button:active{

    background-color: rgba(123, 24, 35,1.0);
    color: white;

    border-bottom-color:rgba(60, 60, 60);
    border-right-color:rgba(60, 60, 60);

    transform: translateY(3px);
    outline: none;
}

.selected_button{

    /* 均等に取ってある親要素の幅に合わせる。 */
    width: 100%;
    height: 40px;
    font-size: 16px;
    font-family: sans-serif;
    
    border:rgba(0, 0, 0, 0.1);
    border-style:solid;
    border-radius: 10px;
    border-width: 2px;

    background-color: rgba(123, 24, 35,1.0);
    color: white;

    border-bottom-color:rgba(60, 60, 60);
    border-right-color:rgba(60, 60, 60);

    transform: translateY(3px);
    outline: none;
}

.image_link{
    position: relative;
    width: 460px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    /* デフォルトでinlineになってるので変更すると画像がはみ出さないようになる。 */
    display: flex;

    margin-top: 10px;
}


.image_link div{
    width: 460px;
    border-style: solid;
    border-radius: 20px;
    border-width: 3px;
    color: rgba(123, 24, 35,1.0);
    overflow:hidden; 
}

.image_link div:hover{
    opacity: 0.8;
}

.image_link img{
    width: 100%;
    height: 100%;
    max-width: 100%;
    vertical-align: bottom;
}

.image_link p{
    position:absolute;
    color: white;
    right: 5px;
    bottom: 5px;
    font-size: 46px;
    text-shadow: 4px 4px 0px rgba(123, 24, 35,1.0);
}


.wrapper{
    margin-left: auto;
    margin-right: auto;
    max-width: 980px;
    padding-bottom: 30px;
    background-color: rgba(238, 238, 238, 1.0);
}

.breadcrumb_navigation{
    margin: 10px;
    background-color:rgba(210, 210, 210, 1.0);
}

h3{
    vertical-align: middle;
    font-size: 46px;
    margin-bottom: 80px;
}

.footer{
    background-color: rgb(23, 23, 23);
}

.infomation{
    margin-left: auto;
    margin-right: auto;
    max-width: 980px;
}

.infomation>div{
    padding-top: 30px;
    padding-bottom: 20px;
    display: flex;
    justify-content: space-between;
}

.infomation>div>div{
    margin-bottom: 20px;
    margin-left: 20px;
    margin-right: 20px;
}

.infomation p{
    color: white;
}

h5{
    font-size: 26px;
    color: white;
}

.infomation table{
    margin: 0px;
    padding: 0px;
    min-width: 200px;
}

.infomation td{
    color: white;
    text-align: left;
    min-width: 100px;
    padding: 0px;
    padding-left: 0px;
    white-space: nowrap;
}

.home_button{
    display: block;
    max-width: 150px;
    max-height: 80px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
}

.menu_name{
    text-align: left;
    vertical-align: top;
}

@media (max-width:767px)
{
    .wrapper{
        max-width: 767px;
        /* はみ出た要素は消す。これが無いと枠外から横アニメーションした時にAndroid版Chromeでバグって強制的にページ上部に移動する。 */
        overflow: hidden;
    }

    .nav{
        max-width: 767px;
    }

    .nav ul{
        display: block;
    }

    .image_link p{
        font-size: 40px;
        }

    h3{
        font-size: 38px;
    }
    .infomation>div{
        display: block;
    }

}