@charset "UTF-8";

/* !HTML5 elements
---------------------------------------------------------- */

header,
footer,
nav,
section,
aside,
article {
    display: block;
}


/* !Reseting
---------------------------------------------------------- */

body {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 400;
    font-size: 18px;
    -webkit-text-size-adjust: none;
    line-height: 1.5;
    color: #000;
}

@media screen and (max-width: 1080px) {
    body {
        font-size: 16px;
    }
}

body,
div,
pre,
p,
blockquote,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
th,
td {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

input,
textarea {
    margin: 0;
    font-size: 100%;
}

label {
    cursor: pointer;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
}

fieldset,
img {
    border: 0;
}

img {
    vertical-align: top;
    max-width: 100%;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
    font-style: normal;
    font-weight: normal;
}

ol,
ul {
    list-style: none;
}

caption,
th {
    text-align: left;
}

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

q:after,
q:before {
    content: '';
}

a,
input {
    /* outline: none; */
}

abbr,
acronym {
    border: 0;
}


/* !Clearfix
---------------------------------------------------------- */

.clearfix {
    display: block;
    min-height: 1%;
}

.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

* html .clearfix {
    height: 1%;
    /*\*/
    /*/
	height: auto;
	overflow: hidden;
	/**/
}


/* !Base Fonts -------------------------------------------------------------- */

a {
    text-decoration: none;
    transition: all 0.5s !important;
    -moz-transition: all 0.5s !important;
    /* Firefox */
    -webkit-transition: all 0.5s !important;
    /* Chrome&Safari */
}

a:hover {
    transition: all 0.5s !important;
    -moz-transition: all 0.5s !important;
    /* Firefox */
    -webkit-transition: all 0.5s !important;
    /* Chrome&Safari */
}

.op img,
.op input {
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition: opacity 0.5s ease-out;
    -ms-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
}

.op:hover img,
.op:hover input {
    opacity: .7;
    -webkit-opacity: .7;
    -moz-opacity: .7;
    filter: alpha(opacity=70);
    /* IE lt 8 */
    -ms-filter: "alpha(opacity=70)";
    /* IE 8 */
    -webkit-transition: opacity 0.5s ease-out;
    -moz-transition: opacity 0.5s ease-out;
    -ms-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
}

.fwN {
    font-weight: normal;
}

.fwB {
    font-weight: bold;
}

.fs10 {
    font-size: 10px;
}

.fs11 {
    font-size: 11px;
}

.fs12 {
    font-size: 12px;
}

.fs13 {
    font-size: 13px;
}

.fs14 {
    font-size: 14px;
}

.fs15 {
    font-size: 15px;
}

.fs16 {
    font-size: 16px;
}

.fs17 {
    font-size: 17px;
}

.fs18 {
    font-size: 18px;
}

.fs19 {
    font-size: 19px;
}

.fs20 {
    font-size: 20px;
}

.fs21 {
    font-size: 21px;
}

.fs22 {
    font-size: 22px;
}

.fs23 {
    font-size: 23px;
}

.fs24 {
    font-size: 24px;
}

.fs25 {
    font-size: 25px;
}

.visiblepc {
    display: initial;
}

.visiblets {
    display: none;
}

@media screen and (max-width: 768px) {
    .visiblets {
        display: initial;
    }
    .visiblepc {
        display: none;
    }
}

.flimg {
    float: left;
}

.frimg {
    float: right;
}

.ftbox {
    overflow: hidden;
}


/* !Layout
---------------------------------------------------------- */

html {
    overflow-y: scroll;
}

body {}

@media print {
    html,
    html body {
        *zoom: 0.65;
    }
}


/* !wrapper
---------------------------------------------------------- */

#wrapper {
    background: #fff;
}


/* !header
---------------------------------------------------------- */

#header {
    text-align: center;
    padding: 15px 20px;
}

@media screen and (max-width: 768px) {
    #header {
        padding: 10px 20px;
        text-align: left;
    }
}


/* !mainimg
---------------------------------------------------------- */

.main {}


/* !H
---------------------------------------------------------- */

.hdl {
    font-size: 24px;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .hdl {
        font-size: 18px;
    }
}


/* !contents
---------------------------------------------------------- */


/* !footer
---------------------------------------------------------- */

#footer {
    background: #000;
    text-align: center;
    padding: 20px;
}

@media screen and (max-width: 768px) {
    #footer {
        padding: 10px20px;
    }
}

@media screen and (max-width: 1080px) {}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 640px) {}