@charset "utf-8";
/*@import url(html5reset.css);*/
@import url(reboot.css);
@import url(class.css);
@import url(font-awesome.min.css);
@import url(iconize.css);

/* ================================================================

CSS Information

 File name:      style.css
 Summary:        # styles
 Last update:    2018-10-18

================================================================ */

/* universal
-------------------- */

* {
    margin: 0;
    padding: 0;
}

/* structure */

html {
    background: #fff;
    color: #000;
    font-size: 62.5%;
}
@font-face {
    font-family: 'YuGothicM';
    src: local(Yu Gothic Medium);
}
body {
    min-width: 1060px;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, 'YuGothicM', 'Yu Gothic', "メイリオ", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, sans-serif;
    line-height: 1.8;
    font-size: 100%;
    background-color: #e0e0e0;
}

@media screen and (max-width: 640px) {
    body {
        min-width: 0;
    }
}

div,p,li,dt,dd {
    font-size: 14px;
    font-size: 1.4rem;
}

hr {
    display: none;
}

hr.dotted {
    display: block;
    margin: 40px 0;
    border: none;
    border-bottom: 1px dotted #e0c799;
}

/* config
-------------------- */

#TopWrap {
    background: #000;
}

#Footer {
    background: #000;
}

a {
    color: #333;
    transition: all 0.4s ease-in;
    /*font-weight: 500;*/
}

a:link {
    color: #333;
}

a:visited {
    color: #333;
}

a:hover {
    color: #999;
}

a:active {
    color: #999;
}

.widget-local-navi li.first a {
    background: #000;
}

.widget h2 {
    background: #000;
}

.widget-blog-calendar td center {
    background: #000;
}

/* hypertext
-------------------- */

a {
    text-decoration: none;
}

a:visited {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

a:active {
    text-decoration: underline;
}


/* text
-------------------- */

h1,h2,h3,h4,h5,h6 {
    font-weight: normal;
}

p {
    line-height: 1.8;
}

p b {
    font-weight: bold;
}

strong {
    font-weight: bold;
    border-bottom: 2px solid #ff3333;
}
/* カスタムスタイル 2018.11.07 yfujii@ailes
-------------------- */
.box1 {
    position: relative;
    background: #fff0cd;
    box-shadow: 0px 0px 0px 5px #fff0cd;
    border: dashed 2px white;
    padding: 0.2em 0.5em;
    margin-bottom: 30px;
    color: #454545;
}
.box1:after {
    position: absolute;
    content: '';
    right: -7px;
    top: -7px;
    border-width: 0 15px 15px 0;
    border-style: solid;
    border-color: #ffdb88 #fff #ffdb88;
    box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.15);
}
.obi1 {
    padding:0.5em 1em;
    background-color: #f5f5f5;
    box-shadow: 5px 5px 0px -2px #D6D6D6;
}
.kakko1 {
    position: relative;
    padding:0.25em 1em;
    top:0;
}
.kakko1:before,.kakko1:after{ 
    content:'';
    width: 8px;
    height: 100%;
    position: absolute;
    display: inline-block;
    top:0;
}
.kakko1:before{
    border-left: solid 1px #666;
    border-top: solid 1px #666;
    border-bottom: solid 1px #666;
    left: 0;
}
.kakko1:after{
    border-top: solid 1px #666;
    border-right: solid 1px #666;
    border-bottom: solid 1px #666;
    right: 0;
}
/* list tag
-------------------- */

li,dt,dd {
    list-style: none;
}


/* image tag
-------------------- */

img {
    border: 0;
    vertical-align: bottom;
    max-width: 100%;
}

.content a:hover img:not([class="Over"]) {
    filter: alpha(opacity=70);
    opacity: 0.7;
}





/* layout
-------------------- */

#TopWrap {
    /*position: fixed;
    top: 0;*/
    position: relative;
    z-index: 1;
    width: 100%;
    border-top: 1px solid #EFEFEF;
    box-shadow: 0 5px 10px 0 rgba(100,100,100,0.2);
    -webkit-box-shadow: 0 5px 10px 0 rgba(100,100,100,0.2);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.99, rgba(255,255,255,1)), color-stop(0.99, rgba(205,205,205,0.8)), color-stop(0.85, rgba(255,255,255,0)));
    bac70o70:70ebkit-linear-gradient(top, rgba(255,255,255,0) 85%, rgba(70,70,70,0.3) 99%, rgba(255,255,255,0.5) 99%);
    background: -moz-linear-gradient(top, rgba(255,255,255,0) 85%, rgba(70,70,70,0.3) 99%, rgba(255,255,255,0.5) 99%);
    background: -o-linear-gradient(top, rgba(255,255,255,0) 85%, rgba(70,70,70,0.3) 99%, rgba(255,255,255,0.5) 99%);
    background: -ms-linear-gradient(top, rgba(255,255,255,0) 85%, rgba(70,70,70,0.3) 99%, rgba(255,255,255,0.5) 99%);
    background: linear-gradient(to bottom, rgba(255,255,255,0) 85%, rgba(70,70,70,0.3) 99%, rgba(255,255,255,0.5) 99%);
    background-color: #383838;
}
#TopWrap.fixed {
    position: fixed;
    top: 0;
}

#TopWrap .wrapper {
    position: relative;
    width: 1000px;
    margin: 0 auto;
}

#Header {
    display: flex;
    width: 1000px;
    height: auto;
    margin: 0 auto;
}

#HeaderWrap {
    width: 100%;
/*    background-image: url(../img/Header-obj-L.png),url(../img/Header-obj-R.png);*/
    background-repeat: no-repeat,no-repeat;
    background-position: left top,right top;
    background-color: #fff;
}

#Main {}

#Main #Page {
    float: left;
    width: 594px;
}

#Main #Side {
    float: right;
    width: 291px;
}

#SocialBottons {
    background: url(../img/common/bg_check.png) repeat;
}

#SocialBottons .wrapper {
    width: 1000px;
    margin: 0 auto;
    padding: 30px 0;
    text-align: right;
}

#Footer {}

#Footer .wrapper {
    width: 1000px;
    margin: 0 auto;
    color: #fff;
}

@media screen and (max-width: 640px) {
    #TopWrap {
        position: relative;
    }
    #TopWrap .wrapper {
        width: auto;
    }
    #Header {
        display: block;
        width: auto;
        height: auto;
        margin: 10px;
        padding-top: 0;
    }
    #SocialBottons .wrapper {
        width: auto;
    }
    #Main {}
    #Main #Page {
        float: none;
        width: auto;
        margin: 0 10px;
    }
    #Main #Side {
        float: none;
        width: auto;
        margin: 0 10px;
    }
    #Footer .wrapper {
        width: auto;
        margin: 0 10px;
    }
}


/* Header
-------------------- */

#Header h1 {
    margin: 5px 10px 5px 0;
}

@media screen and (max-width: 640px) {
    #Header h1 {
        text-align: center;
        margin: 0 auto;
    }
    #Header #Description {
        display: block;
        width: 100%;
        padding-right: 0;
        text-align: center;
    }
}

/* Header widget
-------------------- */

#Header .widget-area {
    width: 50%;
    height: auto;
    line-height: 1.5;
    display: flex;
    justify-content: center;
    flex-flow: column nowrap;
    align-items: flex-end;
}

#Header .widget-area .widget-text {
    width: auto;
    white-space: wrap;
    margin: 5px;
}

#Header .widget-area a {
    text-decoration: none;
    text-shadow: 0.5px 0px 0px #212529;
    color: #212529;
}

#Header .widget-area a:hover {
    background-color: transparent;
    text-shadow: 0.5px 0px 0px #cccccc;
    color: #cccccc;
}

#Header .widget-area li {
/*    font-size: 16px;
    font-size: 1.6rem;
    margin: 5px 0px 10px 0px;*/
    padding: 0 0 0 10px;
    position: relative;
}

#Header .widget-area ul li:before {
    content: "\f105";
    font-family: FontAwesome;
    font-weight: normal;
    font-style: normal;
    display: block;
    position: absolute;
    top: -1px;
    left: 0;
}
#Header .widget-area .widget-search-box {
    width: 100%;
}
#Header .widget form {
    display: flex;
    justify-content: flex-end;
}

@media screen and (max-width: 640px) {
    #Header .widget-area {
        width: 100%;
        flex-flow: row wrap;
    }
    #Header .widget form {
        justify-content: center;
    }
    }

#Header .widget input[type="text"] {
    max-width: 60%;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    box-sizing: border-box;
}
/* 検索ボタン */
#Header .widget .submit_button {
    display: block;
    padding: 0.5em 1em;
    text-decoration: none;
    background: #999999;
    color: #FFF;
    border:none;
    border-bottom: solid 4px #888888;
    border-radius: 3px;
}
/* ボタンを押したとき */
#Header .widget .submit_button:active {
    -ms-transform: translateY(2px);
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
    border-bottom: solid 2px #888888;
}

/* GlobalNavigation
-------------------- */

#GlobalNavigation {
    position: relative;
    z-index: 1000;
}

#GlobalNavigation ul{
    display: flex;
    justify-content: center;
    margin: 0;
}

#GlobalNavigation li {
    border-right: 1px solid rgba(255,255,255,0.3);
    margin: 0;
}

#GlobalNavigation li:last-child {
    border-right: none;
}

#GlobalNavigation li a {
    display: block;
    width: auto;
    padding: 15px 35px;
    color: #ffffff;
    text-shadow: 0.5px 0px 0px #ffffff;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
}

#GlobalNavigation li a:hover {
    background: #6b6b6b;
    text-decoration: none;
}

#GlobalNavigation .sub-nav {
}

div.sub-nav-wrap {
    width: 100%;
    position: absolute;
    top: 58px;
    left: 0;
    background-color: rgba(120, 120, 120, 0.75);
    display: none;
}

#GlobalNavigation ul.sub-nav-group {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

#GlobalNavigation ul.dropdown-list {
}
#GlobalNavigation ul.ul-level-2{
    padding: 10px;
}

#GlobalNavigation ul.dropdown-list li {
    padding: 10px 10px;
    border-right: none;
}

#GlobalNavigation ul.dropdown-list a {
    display: block;
    padding: 0;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
}

#GlobalNavigation ul.dropdown-list li a:before {
    font-family: FontAwesome;
    content: '\f054';
    padding-right: 5px;
}


#GlobalNavigation ul.dropdown-list a:hover {
    background: none;
    color:#333;
    text-shadow: 0.5px 0px 0px #333;
}


#SocialLinks {
    position: absolute;
    right: 0;
    top: 20px;
    z-index: 1001;
}

#SocialLinks li {
    display: inline;
    float: left;
    margin-right: 10px;
}

#BtnMenu {
    display: none;
}

@media screen and (max-width: 640px) {
    #BtnMenu {
        display: block;
    }
    #GlobalNavigation {
        display: none;
    }
    #GlobalNavigation ul {
    flex-direction : column
    }
    #GlobalNavigation li {
        border-right: none;
        border-bottom: 1px solid #e6e6e6;
    }
    #GlobalNavigation li a {
        width: auto;
        padding: 5px 30px;
        text-align: left;
    }
    #GlobalNavigation ul.dropdown-list {
        position: relative;
        display: block;
        width: auto;
        top:0px;
    }
    #GlobalNavigation ul.dropdown-list li {
        float: none;
        padding: 0;
    }
    #GlobalNavigation ul.dropdown-list a {
        padding: 5px 30px 5px 50px;
        text-align: left;
    }
    #SocialLinks {
        top: 0;
    }
    #SocialLinks li {
        width: 40px;
    }
}

/* Content
-------------------- */

@media screen and (max-width: 640px) {
    .content {
        margin: 0 10px;
    }
}






/* TopLink
-------------------- */

#TopLink {
    position: fixed;
    bottom: 80px;
    left: 50%;
    margin-left: 510px;
}

@media screen and (max-width: 640px) {
    #TopLink {
        position: fixed;
        bottom: 20px;
        right: 10px;
        left: auto;
        margin-left: 0;
    }
}
.pagetop a:link {
    display: block;
    background-color: #666666;
    text-align: center;
    color: #fff;
    font-size: 20px;
    text-decoration: none;
    padding: 18px;
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
    border-radius: 30px;
    opacity: 0.5;
    line-height: 0;
}
.pagetop a:hover {
    background-color: #999;
}
/* SocialBottons
-------------------- */

#SocialBottons .sns {
    float: left;
}

#SocialBottons .hatena {
    margin-right: 30px;
}

.fbcomments,
.fb_iframe_widget,
.fb_iframe_widget[style],
.fb_iframe_widget iframe[style],
.fbcomments iframe[style],
.fb_iframe_widget span {
    width: 100% !important;
}


/* Footer
-------------------- */
#Footer {
    padding: 40px 0 30px;
}

#Footer #FooterNavigator {
    float: right;
    width: 64%;
}

#Footer #FooterNavigator ul {
    margin: 0;
    padding: 0;
}

#Footer #FooterNavigator li {
    margin:  0 0 15px;
    font-size: 13px;
    font-size: 1.3rem;
    float: left;
    text-shadow: 0.5px 0px 0px #ffffff;
}

#Footer #FooterNavigator li a {
    padding: 3px 15px 1px;/* 20170804 yfujii@ailes */
    border-right: rgba(255,255,255,0.3) solid 1px;
    text-decoration: none;
    color: #ffffff;
}
.widget li a:hover,
#FooterNavigator a:hover,
#Copyright a:hover {
    background-color: #747474;
}
#FooterInformation {
    float: left;
    width: 36%;
}

#Footer p {
    margin-bottom: 10px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.5;
    text-shadow: 0.5px 0px 0px #ffffff;
}

p#FooterLogo {
    margin-bottom: 20px;
    font-size: 20px;
    font-size: 2.0rem;
    font-weight: bold;
}

#Footer p.Copyright {
    margin: 50px 0 0 0;
    color: #ccc;
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: "Courier New", Courier, monospace;
}

@media screen and (max-width: 640px) {
    #Footer #FooterNavigator {
        float: none;
        width: auto;
    }
    #Footer #FooterNavigator ul {
        margin: 0;
        padding: 0;
        border-left: none;
    }
    #FooterInformation {
        float: none;
        width: auto;
        text-align: center;
    }
    #Footer #FooterNavigator li a {
        display: block;
        color: #fff;
    }
}

@media print {
    #GlobalNavigation, #Header .widget-area, #Side, #FooterNavigator, #TopLink {
        display: none !important;
    }
    #PageTitle {
        height: 150px;
    }
    .eye-catch {
        background-attachment: scroll;
    }
    #Page {
        width:92% !important;
    }
    #FooterInformation {
        display: flex;
        flex-flow: row nowrap;
        width: 90%;
        justify-content: space-between;
    }
    #Footer {
        padding: 20px 0 10px;
    }
    #Footer p.Copyright {
        margin: 10px;
    }
}

/* Common
-------------------- */

input, textarea, select {
    margin: 3px 2pt;
    padding: 3px 1pt;
}

.more-link a {
    padding: 4px 40px 4px 20px;
    background: #000 url(../img/common/icon_arrow.png) 85% center no-repeat;
    color: #fff !important;
    font-family: "Century Gothic", Tahoma, Geneva, sans-serif;
    font-size: 13px;
    font-size: 1.3rem;
}
/* フォントカラー */
.red {
    color: #FF3333;
    font-weight: bold;
}
.blue {
    color: #336699;
    font-weight: bold;
}
.green {
    color: #336600;
    font-weight: bold;
}
.orange {
    color: #FF6600;
    font-weight: bold;
}
.purple {
    color: #2C4197;
    font-weight: bold;
}
.aqua {
    color: #0099FF;
    font-weight: bold;
}
.pink {
    color: #FF66CC;
    font-weight: bold;
}
.top-icon {
    color: #ff9b1f;
}