@charset "utf-8";

/*====================================================================================
■01.RESET HTML
■02.CLEAR FLOAT
■03.MARGIN DEFAULT
■04.LAYOUT
■05.USE MEDIA
■06.OTHER
■07.PAGE UP
■08.HEADER
■09.GOLABLE NAVIGATION
■10.FOOTER
====================================================================================*/


/*====================================================================================
■01.RESET HTML
====================================================================================*/

ul,
li {
    list-style: none;
}

img {
    margin: 0px;
    padding: 0px;
    border: 0px;
    transition: All 0.3s ease;
    -webkit-transition: All 0.3s ease;
    -moz-transition: All 0.3s ease;
    -o-transition: All 0.3s ease;
}

.ov_hover:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70)";
}

a {
    color: #333;
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

body {
    font-size: 13px;
    font-family: "Meiryo", "メイリオ", "MS PGothic", "MS Pゴシック", sans-serif;
    color: #333333;
    line-height: 1.7;
    word-break: break-word;
    word-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
}


/*====================================================================================
■02.CLEAR FLOAT
====================================================================================*/

.clearfix:before,
.clearfix:after {
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden
}

.clearfix:after {
    clear: both
}

.clearfix {
    zoom: 1
}


/*====================================================================================
■03.MARGIN DEFAULT
====================================================================================*/


/*--------------------------------------------------
	margin 
-------------------------------------------------- */

.m00 {
    margin: 0px !important;
}

.m05 {
    margin: 5px !important;
}

.m10 {
    margin: 10px !important;
}

.m15 {
    margin: 15px !important;
}

.m20 {
    margin: 20px !important;
}

.m25 {
    margin: 25px !important;
}

.m30 {
    margin: 30px !important;
}

.m35 {
    margin: 35px !important;
}

.m40 {
    margin: 40px !important;
}

.m45 {
    margin: 45px !important;
}

.mt00 {
    margin-top: 0px !important;
}

.mt05 {
    margin-top: 5px !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt25 {
    margin-top: 25px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt33 {
    margin-top: 33px !important;
}

.mt35 {
    margin-top: 35px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt45 {
    margin-top: 45px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mr00 {
    margin-right: 0px !important;
}

.mr05 {
    margin-right: 5px !important;
}

.mr10 {
    margin-right: 10px !important;
}

.mr15 {
    margin-right: 15px !important;
}

.mr20 {
    margin-right: 20px !important;
}

.mr25 {
    margin-right: 25px !important;
}

.mr30 {
    margin-right: 30px !important;
}

.mr35 {
    margin-right: 35px !important;
}

.mr40 {
    margin-right: 40px !important;
}

.mr45 {
    margin-right: 45px !important;
}

.mb00 {
    margin-bottom: 0px !important;
}

.mb05 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb35 {
    margin-bottom: 35px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb45 {
    margin-bottom: 45px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.mb80 {
    margin-bottom: 80px !important;
}

.mb100 {
    margin-bottom: 100px !important;
}

.ml00 {
    margin-left: 0px !important;
}

.ml05 {
    margin-left: 5px !important;
}

.ml10 {
    margin-left: 10px !important;
}

.ml15 {
    margin-left: 15px !important;
}

.ml20 {
    margin-left: 20px !important;
}

.ml25 {
    margin-left: 25px !important;
}

.ml30 {
    margin-left: 30px !important;
}

.ml35 {
    margin-left: 35px !important;
}

.ml40 {
    margin-left: 40px !important;
}

.ml45 {
    margin-left: 45px !important;
}


/* 
--------------------------------------------------
	padding
-------------------------------------------------- */

.p00 {
    padding: 0px !important;
}

.p05 {
    padding: 5px !important;
}

.p10 {
    padding: 10px !important;
}

.p15 {
    padding: 15px !important;
}

.p20 {
    padding: 20px !important;
}

.p25 {
    padding: 25px !important;
}

.p30 {
    padding: 30px !important;
}

.p35 {
    padding: 35px !important;
}

.p40 {
    padding: 40px !important;
}

.p45 {
    padding: 45px !important;
}

.pt00 {
    padding-top: 0px !important;
}

.pt05 {
    padding-top: 5px !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pt15 {
    padding-top: 15px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pt25 {
    padding-top: 25px !important;
}

.pt30 {
    padding-top: 30px !important;
}

.pt35 {
    padding-top: 35px !important;
}

.pt40 {
    padding-top: 40px !important;
}

.pt45 {
    padding-top: 45px !important;
}

.pr00 {
    padding-right: 0px !important;
}

.pr05 {
    padding-right: 5px !important;
}

.pr10 {
    padding-right: 10px !important;
}

.pr15 {
    padding-right: 15px !important;
}

.pr20 {
    padding-right: 20px !important;
}

.pr25 {
    padding-right: 25px !important;
}

.pr30 {
    padding-right: 30px !important;
}

.pr35 {
    padding-right: 35px !important;
}

.pr40 {
    padding-right: 40px !important;
}

.pr45 {
    padding-right: 45px !important;
}

.pb00 {
    padding-bottom: 0px !important;
}

.pb05 {
    padding-bottom: 5px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb15 {
    padding-bottom: 15px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.pb25 {
    padding-bottom: 25px !important;
}

.pb30 {
    padding-bottom: 30px !important;
}

.pb35 {
    padding-bottom: 35px !important;
}

.pb40 {
    padding-bottom: 40px !important;
}

.pb45 {
    padding-bottom: 45px !important;
}

.pl00 {
    padding-left: 0px !important;
}

.pl05 {
    padding-left: 5px !important;
}

.pl10 {
    padding-left: 10px !important;
}

.pl15 {
    padding-left: 15px !important;
}

.pl20 {
    padding-left: 20px !important;
}

.pl25 {
    padding-left: 25px !important;
}

.pl30 {
    padding-left: 30px !important;
}

.pl35 {
    padding-left: 35px !important;
}

.pl40 {
    padding-left: 40px !important;
}

.pl45 {
    padding-left: 45px !important;
}


/*====================================================================================
■04.LAYOUT
====================================================================================*/

.container {
    position: relative;
    width: 1000px;
    margin: 0 auto;
}


/*====================================================================================
■05.USE MEDIA
====================================================================================*/

.pull_left {
    float: left !important;
}

.pull_right {
    float: right !important;
}

.media,
.media-body {
    overflow: hidden;
}

.media>.pull_left {
    margin-right: 20px;
}

.media>.pull_right {
    margin-left: 20px;
}

.media-text:after {
    clear: both;
    display: block;
    content: "";
    height: 0px;
    visibility: hidden;
}

.pic_l .image {
    float: left;
    margin: 5px 10px 5px 0;
}

.pic_r .image {
    float: right;
    margin: 5px 0 5px 10px;
}

.document p {
    margin-bottom: 10px;
}


/*====================================================================================
■06.OTHER
====================================================================================*/

.text_normal {
    font-weight: normal !important
}

.text_bold,
.text_bold a {
    font-weight: bold !important
}

.text_left {
    text-align: left !important
}

.text_right {
    text-align: right !important
}

.text_center {
    text-align: center !important
}

.text_blue {
    color: #014d98 !important;
}

.text_underline {
    text-decoration: underline!important;
}

.small {
    font-size: 85% !important;
}

.f10 {
    font-size: 10px !important;
}

.f11 {
    font-size: 11px !important;
}

.f12 {
    font-size: 12px !important;
}

.f13 {
    font-size: 13px !important;
}

.f14 {
    font-size: 14px !important;
}

.f15 {
    font-size: 15px !important;
}

.f16 {
    font-size: 16px !important;
}

.f17 {
    font-size: 17px !important;
}

.f18 {
    font-size: 18px !important;
}

.f19 {
    font-size: 19px !important;
}

.f20 {
    font-size: 20px !important;
}

.f25 {
    font-size: 25px !important;
}

.f30 {
    font-size: 30px !important;
}

.f35 {
    font-size: 35px !important;
}

.l_h7 {
    line-height: 1.7;
}

.l_h8 {
    line-height: 1.8;
}

.l_h9 {
    line-height: 1.9;
}

.w30 {
    width: 30% !important;
}

.w35 {
    width: 35% !important;
}

.w40 {
    width: 40% !important;
}

.w50 {
    width: 50% !important;
}

.w60 {
    width: 60% !important;
}

.w70 {
    width: 70% !important;
}

.w76 {
    width: 76% !important;
}

.w78 {
    width: 78% !important;
}

.w80 {
    width: 80% !important;
}

.w90 {
    width: 90% !important;
}

.w100 {
    width: 100% !important;
}


/*====================================================================================
■07.PAGE UP
====================================================================================*/


/*====================================================================================
■08.HEADER
====================================================================================*/


/*====================================================================================
■09.GOLABLE NAVIGATION
====================================================================================*/

.gnav>ul>li {
    float: left;
    position: relative;
}

.sub_nav {
    position: absolute;
    width: auto;
    min-width: 250px;
    background: #000;
    z-index: 100;
    display: none;
    opacity: 0.8;
}

.sub_nav li {
    display: block;
    float: none !important;
}

.sub_nav li a {
    color: #FFF;
    display: block;
    font-size: 12px;
    padding: 10px 10px 8px 15px;
    text-decoration: none;
    font-weight: bold;
}

.sub_nav li:hover a {
    color: #aaa;
}


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

■10.FOOTER
====================================================================================*/


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

.in_header {
    padding: 25px 0px 20px;
}

#header h1 {
    display: none;
}

.h_logo {
    float: left;
}

.in_header ul {
    float: right;
}

.in_header ul li {
    float: left;
    margin-right: 6px;
}

.gnav li {
    float: left;
}

.top_footer {
    border-top: 10px solid #ededed;
    padding: 25px 0px;
}

.f_logo {
    float: left;
}

.f_tel {
    float: left;
    margin-left: 47px;
    margin-top: 11px;
}

.f_contact {
    float: left;
    margin-left: 12px;
    margin-top: 5px;
}

.f_lang {
    float: right;
    margin-top: 5px;
}

.in_footer {
    background-color: #333333;
    padding: 30px 0px 0px;
}

.f_nav1 {
    width: 480px;
    float: left;
    margin-right: 20px;
    min-height: 180px;
}

.f_nav1 ul {
    width: 50%;
}

.f_gnav2 {
    width: 240px;
    float: left;
}

.f_gnav3 {
    width: 240px;
    float: right;
}

.in_footer h3 {
    background: url(../common_img/icon.png) no-repeat left 5px;
    padding-left: 15px;
    color: #cccccc;
    font-weight: normal;
    border-bottom: 1px solid #4a4a4a;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

.in_footer li {
    background: url(../common_img/icon2.png) no-repeat left center;
    padding-left: 15px;
    margin-bottom: 8px;
}

.in_footer li a {
    text-decoration: none;
    color: #999999;
    font-size: 12px;
}

.in_footer li a:hover {
    text-decoration: underline;
}

.icon_nav a {
    background: url(../common_img/icon3.png) no-repeat right center;
    padding-right: 20px;
}

.cpy_right {
    padding: 20px 0px 30px;
    text-align: center;
    font-size: 10px;
    color: #999999;
    border-top: 1px solid #4a4a4a;
}

.gotop {
    position: fixed;
    right: 0px;
    bottom: 0;
    margin: 0 0 0 -63px;
}

.gotop a {
    width: 120px;
    height: 203px;
    display: block;
}

.gnav_en li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    ;
    border-right: 1px solid #cccccc;
    line-height: 1.3;
    width: 50%;
    text-align: center;
}

.gnav_en li:first-child {
    border-left: 1px solid #ccc;
}

.gnav_en a {
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
    text-decoration: none;
}

#footer .right {
    float: right;
    margin-top: 10px;
}

#footer .right p {
    float: left;
    margin-left: 5px;
}

#footer .right .f_tel {
    margin: 6px 10px 6px;
}


/*--------------------------------------------------
 main
--------------------------------------------------*/

.main {
    margin-bottom: 80px;
}