@charset "utf-8";
@font-face {
  font-family: YuGothicM;
  font-weight: normal;
  src: local('YuGothic-Medium'),  /* Mediumを明示的に指定 */
       local('Yu Gothic Medium'), /* Chrome用 */
       local('YuGothic-Regular'); /* Windows8.1ではMediumがないのでRegularを指定 */
}
body{
    margin: 0;
    padding: 0;
    font-family: -apple-system, blinkMacSystemFont, /* Macの欧文はSan Francisco (OS X 10.11以降) */
               'Helvetica Neue', /* Macの欧文 (OS X 10.10以前) */
               'Segoe UI',       /* Windowsの欧文 */
               YuGothicM,        /* Windows8.1以上は游ゴシック */
               YuGothic,         /* Macの游ゴシック */
               Meiryo,           /* 游ゴシックが入っていないWindows */
               sans-serif;
}
h1,h2,h3,h4,h5,h6{
    margin-top: 0;
    line-height: 1.6;
}
h1{
    color: #0A122A;
}
a img{
    border-style: none;
}
header h1{
    display: block;
    width: 225px;
    height: 45px;
    margin: 0;
}
header{
    width: 960px;
    margin: 0 auto;
}
#b_title h1{
    text-align: center;
    margin: 5px auto;
    width: auto;
    border: 1px solid;
    border-radius: 3px;
    box-shadow: 3px 3px 5px;
}
#main_title h1{
    width: auto;
    height: auto;
    text-align: center;
}

#main_visual{
    clear: both;
    width: 960px;
    margin: 0 auto;
}
#main_visual p{
    text-align: center;
    margin: 0;
}
#wrapper{
    clear: both;
    overflow: hidden;
    width: 960px;
    margin: auto;
}
#main{
    width: 960px;
}
#breadcrumb ol{
    clear: both;
    display: block;
    width: 960px;
    margin: auto;
    padding: 0;
    list-style: none;
    font-size: smaller;
}
#breadcrumb ol li{
    display: inline;
    margin: 0;
    padding: 0;
}
#breadcrumb ol li a{text-decoration: none;}
#breadcrumb ol li::after{content: ">"}
#breadcrumb ol li:last-child::after{content: none;}

article h1{
    text-align: center;
    background-color: cadetblue;
}
article figure{
    color: #333333;
    margin: 0;
}
article figure a img{
    float: left;
    margin-right: 20px;
}
article hr{
    clear: both;
}
article h2{
    display: inline-block;
    padding: 2px;
    margin: 0;
    border-radius: 5px;
    text-decoration: none;
    color: #333333;
    font-size: 20px;
}
article h2:visited{
    color: #333333;
}
article h2:hover{
    background-color: crimson;
    color: azure;
    transition-property: background-color,color;
    transition-timing-function:ease-in;
    transition-duration: 0.3s;
    transition-delay: 0.1s;
}
article figure a img:hover{
    transition: opacity 0.3s linear;
    opacity:0.5;    
}
footer{
    display: block;
    width: 960px;
    color: azure;
    background-color: chocolate;
    margin: auto;
    text-align: center;
}
@media screen and (max-width : 767px){
    img{
        max-width: 100%;
    }
    header,#global_navi,#sidebar,#wrapper,#main_visual{
        width: 100%;
    }
    header h1 img{
        width: 50%;
    }
    header #main_title h1 img{
        width: 50%;
    }
    #global_navi ul li{
        width: 50%;
        padding: 0.5px;
        margin: 0;
        box-sizing: border-box;
    }
    #global_navi ul li a{
        margin: 0;
    }
    #main{
        width: 100%;
        padding: 0 5%;
        box-sizing: border-box;
    }
    #main_visual{
        width: 100%;
        height: auto;
    }
    footer{
        width: 100%;
    }
    article h2{
    margin: 0 auto;
    font-size: 8px;
    }
    article h1{
        font-size: 12px;
    }
    article h3{
        font-size: 8px;
    }
    #breadcrumb ol{
    font-size: 50%;
    }
}
