@charset "utf-8";
/*
Theme Name: PHD
管理監修：サイバーアセット株式式会社
*/

body {
    color: #222;
    font: 16px/1.6 'Barlow',"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , sans-serif;
    font-weight: 500;
    background: #fff;
    overflow-y: scroll;
    overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6, pre, code, input, textarea, select, button {
    font-family: 'Barlow',"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , sans-serif;
}


/* レイアウト
------------------------------------------------------------*/
#wrapper {
    margin: 0 auto;
    width: 100%;
    position: relative;
}
.inner{
    margin: 0 auto;
    width: 1200px;
    max-width: 90%;
    position: relative;
}
.inner2{
    margin: 0 auto;
    width: 1040px;
    max-width: 90%;
    position: relative;
    line-height: 2;
}
#header{
    margin: 0 auto;
    position: relative;
    z-index: 999;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}
#content{
    float: left;
    width: 840px;
    max-width: 100%;
    padding: 20px 0 50px;
}
#content_1col{
    width: 980px;
    max-width: 100%;
    padding: 0 0 50px;
    margin: 0 auto;
}
#content_1colb{
    width: 1060px;
    max-width: 100%;
    padding: 0 20px 50px;
    margin: 0 auto;
}
#sidebar{
    float: right;
    width: 300px;
    padding: 50px 0 50px;
    position: relative;
}
.post{
    font-size: 16px;
    line-height: 2;
    padding: 40px 10px 50px;
    margin: 0;
    min-height: 350px;
}



/*--- Link&Element ----------------------------------------------------------- */
a:link {
    color: #0067b6;
    text-decoration: none;
    transition: all 0.3s;
}
a:visited {
    color: #0067b6;
}
a:hover {
    color: #8ea5b7;
    text-decoration: none;
}
p {
    margin: 10px 0 20px;
    padding: 0;
}
p img {
    padding: 0;
    max-width: 100%;
}
blockquote {
    font-style: italic;
    margin: 1em 0 1em 20px;
    padding: 15px;
    background-color: #f7f7f7;
    color: #444;
}
pre {
    padding: 10px 20px;
    border-left: 6px solid #ddd;
    background-color: #f7f7f7;
    overflow: auto;
    width: 90%;
    _width: 95%; /* for IE6 */
}
ul, ol {
    margin: 1em 20px;
    padding: 0;
    list-style-position: outside;
}
ul ul, ul ol, ul ol, ol ol {
    margin: 0.3em 0 0.3em 15px
}
ul.designlist {
    overflow: hidden;
    margin: 5px;
    padding: 0;
}
ul.designlist li {
    margin: 0px 0 0 0;
    padding: 3px 0 3px 18px;
    background: url(images/list1.png) left center no-repeat;
    list-style: none;
}
ul.designlist2 {
    overflow: hidden;
    margin: 5px;
    padding: 0;
}
ul.designlist2 li {
    margin: 0px 0 0 0;
    padding: 5px 0 5px 5px;
    list-style: none;
    font-weight: bold;
    font-size: 18px;
    display: flex;
    align-items: center;
    align-content: center;
}
ul.designlist2 li span{
    margin: 0 13px 0 0;
    color: #0067b6;
}
.touka {
    transition: all 0.3s;
}
.touka:hover {
    opacity: 0.8;
}
@media only screen and (max-width: 1200px){
    ul.designlist2 li {
        padding: 5px 0 5px 5px;
        font-size: 15px;
        line-height: 1.4;
    }
}



/*--- Headline, Box ----------------------------------------------------------- */
h2, h3, h4, h5, h6 {
    clear: both;
    color: #222;
    font-weight: normal; 
    margin: 0 0 20px 0;
    padding: 0;
}
h2 {
    font-size: 24px;
}
h3 {
    font-size: 20px;
}
h4 {
    font-size: 18px;
}
h5 {
    font-size: 17px;
}
h6 {
    font-size: 16px;
}

.page h2 {
    display: block;
    font-size: 32px;
    color: #0067b6;
    font-weight: bold;
    margin: 50px 0 30px 0;
    padding: 30px 5px 20px;
    position: relative;
    font-weight: bold;
}
.page h2:before {
    content: '';
    position: absolute;
    top: 0;
    display: inline-block;
    width: 80px;
    height: 3px;
    left: 0;
    background-color: #0067b6;
}
.page h2:first-child {
    margin: 0 0 35px 0;
}
.page h2 span{
    display: block;
    font-size: 16px;
    color: #0067b6;
    font-weight: bold;
    margin: 20px 0 0 0;
    padding: 0 5px 0;
    position: relative;
}
.page h3 {
    clear: both;
    font-size: 19px;
    position: relative;
    margin: 30px 0 40px;
    padding: 15px 5px;
    color: #222;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
    font-weight: bold;
}
.page h4 {
    font-size: 18px;
    margin: 15px 0 15px 0;
    padding: 15px 0;
    border-bottom: 3px solid #ddd;
    font-weight: bold;
}
.page h5 {
    font-size: 19px;
    border-bottom: 1px dotted #ddd;
    margin: 70px 0 0 0;
    padding: 0 0 15px 8px;
    font-weight: bold;
    letter-spacing: 3px;
}
.page h6 {
    font-weight: normal;
    margin: 0;
    padding: 5px 0 15px 0;
}
.box {
    background: #fafafa;
    padding: 20px 30px;
    border: #e9e9e9 1px solid;
    margin: 10px 0 20px 0;
    box-shadow: 0 2px 0 rgba(0,0,0,0.05);
    border-radius: 3px;
}
.box2 {
    position: relative;
    margin: 0 0 20px;
    padding: 30px 40px;
    background: #e5eff9;
    border-radius: 7px;
}
.box2 .box2title{
    position: absolute;
    display: inline-block;
    top: -70px;
    right: 20px;
    font-size: 70px;
    color: #0067b6;
    font-weight: bold;
    letter-spacing: 7px;
    font-style: italic;
}
.box2 .box2title span{
    display: inline-block;
}
.box2 p {
    margin: 0; 
    padding: 0;
}
@media only screen and (max-width: 1200px){
    .page h2 {
        font-size: 22px;
        margin: 35px 0 20px
    }
    .page h2:first-child {
        margin: 0 0 20px 0;
    }
    .page h3 {
        font-size: 18px;
    }
    .box {
        padding: 15px 20px;
    }
    .box2 {
        padding: 15px 15px;
    }
    .box2 .box2title{
        top: -30px;
        right: 15px;
        font-size: 30px;
    }
}



/*--- Images ----------------------------------------------------------- */
img {
    max-width: 100%;
    border: none;
    margin: 0;
    vertical-align: bottom;
}
img.centered {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
img.alignright {
    float: right;
    padding: 0;
    margin: 0 0 20px 30px;
    display: inline;
}
img.alignleft {
    float: left;
    padding: 0;
    margin: 0 30px 20px 0;
    display: inline;
}
img.alignleft2 {
    float: left;
    padding: 0;
    margin: 0 20px 5px 0;
    display: inline;
}
img.alignrightmp0 {
    float: right;
    padding: 0;
    margin: 0;
}
img.alignleftmp0 {
    float: left;
    padding: 0;
    margin: 0;
}
img.thumb {
    max-width: 300px !important;
    height: auto !important;
}
@media only screen and (max-width: 1200px){
    img.alignright, img.alignleft {
        float: none;
        display: block;
        padding: 0px;
        margin: 20px auto;
    }
}


/*--- form ----------------------------------------------------------- */
form {
    margin: 0;
    padding: 0;
    font-size: 14px;
    font-family: inherit;
}
fieldset {
    padding: 3px;
    border: none;
}
legend {
    padding: 0 10px;
    background-color: #fff;
}
input, textarea, select {
    padding: 8px 8px;
    border-width: 1px;
    border-style: solid;
    border-color: #ccc;
    background-color: #fff;
    max-width: 500px;
    font-family: inherit;
    font-size: 14px;
    box-sizing: border-box;
}
input:hover, textarea:hover {
    border-color: #999;
}
a:focus, textarea:focus, input:focus {
    outline: none
}
textarea {
    padding: 3px 10px
}
input.submit {
    padding: 3px 5px;
    font-size: 100%;
    border: none;
}
input.submit:hover {
    border: none
}
input[type=radio] {
    display: inline-block;
    border: none;
    background-color: transparent;
    background-image: none;
}
@media only screen and (max-width: 1200px){
    input, textarea {
        width: 99%;
        padding: 5px 3px;
    }
    input[type=radio] {
        display: inline-block;
        width: 20px;
    }
    .mwform-tel-field input {
        width: 50px;
    }
    .mwform-checkbox-field input {
        display: inline-block;
        width: 18px;
    }
}


/*--- Table ----------------------------------------------------------- */
table {
    font-size: 15px;
    width: 99.9%;
    border-collapse: collapse;
    border-spacing: 0;
    empty-cells: show;
    color: #000;
    font-size: 13px;
    margin: 8px auto;
}
th {
    color: #2b3d49;
    background-color: #eee;
    padding: 10px 5px 10px 5px;
    text-align: left;
    font-weight: bold;
    background: #f1f4f5;
}
td {
    padding: 10px 5px;
    text-align: left;
}

/*--- Design Table ----------------------------------------------------------- */
table.design_tbl {
    border-top: 1px solid #dbd8d1;
    border-bottom: 1px solid #dbd8d1;
    font-size: 14px;
    margin: 20px auto 5px;
}
.design_tbl th {
    border-right: 1px dotted #dbd8d1;
    border-bottom: 1px solid #dbd8d1;
    color: #4f4430;
    background: #f4f2e5;
    padding: 8px 12px 8px 12px;
    vertical-align: top;
    font-size: 14px;
}
.design_tbl td {
    border-bottom: 1px solid #dbd8d1;
    padding: 8px 15px 8px 15px;
    background: #fff;
    color: #352800;
    font-size: 14px;
}


/*--- button ----------------------------------------------------------- */
.btn_container {
  display: block;
  text-align: center;
  margin: 30px 0;
}
.btn_container_right {
  display: block;
  text-align: right;
  margin: 30px 0;
}
a.btn {
  display: inline-block;
  position: relative;
  height: 60px;
  line-height: 60px;
  min-width: 250px;
  max-width: 100%;
  font-size: 17px;
  margin: 0;
  padding: 0 50px;
  box-sizing: border-box;
  text-align: center;
  text-transform: uppercase;
  transition: 0.3s;
  background-size: 200% auto;
  color: #fff;
  text-shadow: 0px 0px 1px rgba(0,0,0,0.1);
  flex: 1 1 auto;
 }
a.btn span{
  position: absolute;
  display: inline-block;
  line-height: 57px;
  right: 15px;
  transition: all 0.3s;
}
a.btn:hover {
  color: #fff;
  background-position: right center;
}
a.btn:hover span{
  margin-right: -7px;
}
a.btn-blue {
  background-image: linear-gradient(to right, #0067b6 0%, #44bff2 51%, #0067b6 100%);
  letter-spacing: 2px;
}
@media only screen and (max-width: 1200px){
.btn_container_right {
  text-align: center;
}
}




/* ヘッダー、グローバルメニュー
------------------------------------------------------------*/
.uk-logo {
    padding: 0;
    margin: 0;
    padding-left: 50px;
    font-size: 10px;
}
.uk-navbar-container {
    min-height: 80px;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}
.uk-navbar-nav > li > a {
    color:#fff;
    font-size: 14px;
    padding: 0 22px;
    transition:.1s ease-in-out;
    transition-property:color,background-color,border-color,box-shadow;
    position:relative;
    z-index:1;
    font-weight: 500;
    letter-spacing: 1px;
}
.uk-navbar-nav>li>a::before {
    content:'';
    display:block;
    position:absolute;
    z-index:-1;
    bottom:0;
    height:0;
    background: linear-gradient(to right, #0067b6, #44bff2);
    transition:.2s ease-in-out;
    transition-property:background-color,border-color,box-shadow,height,right;
    left:16px;
    right:calc(102% - 16px)
}
.uk-navbar-nav>li:hover>a,.uk-navbar-nav>li>a.uk-open,.uk-navbar-nav>li>a:focus {
    color:#fff;
    outline:0
}
.uk-navbar-nav>li:hover>a::before,.uk-navbar-nav>li>a.uk-open::before,.uk-navbar-nav>li>a:focus::before {
    right:16px;
    height:2px
}
.uk-navbar-nav>li>a:active {
    color:#fff
}
.uk-navbar-nav>li>a:active::before {
    height:2px
}
.uk-navbar-nav>li.uk-active>a {
    color:#fff
}
.uk-navbar-nav>li.uk-active>a::before {
    right:16px;
    height:2px
}
.uk-navbar-container:not(.uk-navbar-transparent) {
    background: #232d3d;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
    border: none;
}
.uk-navbar-nav > li:first-child > a {
    background: none;
}
.uk-navbar-nav > li > a span{
    margin-left: 9px;
    color: rgba(255,255,255,0.6);
}
.uk-navbar-item, .uk-navbar-nav > li > a, .uk-navbar-toggle {
    font-family: inherit;
}
/*--- dropdown --- */
.uk-dropdown {
    width: 220px;
    padding: 20px;
    background: #2b3849;
    color: #eee;
    box-shadow: 0 5px 12px rgba(0,0,0,.15);
    margin-top: 0;
}
.uk-navbar-dropdown-nav > li > a:hover {
    color: #82a8d1;
}
/*--- mobile menu --- */
.uk-offcanvas-bar {
    background: #2b3849;
}
.uk-nav > li > a {
    color: #ccc;
    padding: 7px 10px 7px 10px;
    font-size: 92%;
}
.uk-nav > li.menu-child > a {
    color: #ccc;
    padding: 7px 10px 7px 25px;
    font-size: 80%;
}
@media only screen and (max-width: 1200px){
    .uk-navbar-container {
        min-height: 60px;
    }
    .uk-navbar-nav > li > a {
        padding: 0 10px;
        font-size: 14px;
    }
    .uk-logo {
        width: 180px;
        padding: 3px 0 0 15px;
    }
}



/* メインイメージ
------------------------------------------------------------*/
#slider .slide_sub{
    color: #fff;
    font-size: 15px;
    margin: 0;
    padding: 0;
    letter-spacing: 8px;
}
#slider h1.slide_title{
    color: #fff;
    font-size: 74px;
    font-weight: bold;
    margin: 0 auto;
    padding: 5px 0 20px;
    letter-spacing: 3px;
    box-sizing: border-box;
}
#slider .slide_sub2{
    color: #fff;
    font-size: 22px;
    margin: 0;
    padding: 0;
    letter-spacing: 5px;
}
#slider .sls01 {
    font-weight: 400;
}
#slider .sls02 {
    color: #c9e2ef;
}
#slider .sls03 {
    color: #d3e89b;
}
#slider .sls04 {
    color: #f7b556;
}

.scroll-btn {
    padding-bottom: 10px;
}
.scroll-btn a {
  padding-top: 50px;
  display: inline-block;
  position: relative;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: rgba(255,255,255,0.7);
  font-size: 13px;
  letter-spacing: 2px;
}
.scroll-btn a span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 38px;
  height: 38px;
  margin-left: -19px;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 100%;
  box-sizing: border-box;
}
.scroll-btn a span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 12px;
  height: 12px;
  margin: -8px 0 0 -6px;
  border-left: 1px solid rgba(255,255,255,0.7);
  border-bottom: 1px solid rgba(255,255,255,0.7);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
.scroll-btn a span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: '';
  width: 38px;
  height: 38px;
  box-shadow: 0 0 0 0 rgba(255,255,255,.1);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 40px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 40px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@media only screen and (max-width: 1200px){
#slider .slide_sub{
    color: #fff;
    font-size: 14px;
    margin: 0;
    padding: 0;
    letter-spacing: 4px;
}
#slider h1.slide_title{
    font-size: 36px;
    padding: 5px 0 20px;
    letter-spacing: 3px;
}
#slider .slide_sub2{
    font-size: 18px;
    letter-spacing: 2px;
}
}



/* パンくずリスト
----------------------------------*/
#pankuzu {
    width: 1200px;
    max-width: 100%;
    padding: 10px 0 10px;
    color: #666;
}
#pankuzu a{
    color: #666;
    text-decoration: none;
}
.pankuzu_inner {
    margin: 0 auto;
}
#pankuzu ul {
    list-style: none;
    padding: 0 15px;
    margin: 0 10px 0 10px;
    font-size:11px;
    text-align: right;
}
#pankuzu ul li {
    display: inline;
    margin: 0;
    padding: 0 5px;
    font-size: 11px;
}
#pankuzu ul li:first-child {
    background:none;
}


/* ページヘッダー
------------------------------------------------------------*/
.page-header {
    height: 450px;
    background: #005ea0;
    padding: 0;
    margin: 0 auto;
    border: none;
    position: relative;
    text-align: center;
    overflow: hidden;
}
.h1title {
    display: block;
    padding: 210px 20px 20px 20px;
    margin: 0;
    border: none;
    color: #fff;
    font-weight: bold;
    font-size: 36px;
    line-height: 1.2;
    box-sizing: border-box;
    letter-spacing: 10px;
}
.h1title:first-letter{
    color: #c9e2ef;
}
.h1en{
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    border: none;
    color: #c9e2ef;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.2;
    box-sizing: border-box;
    letter-spacing: 3px;
}
@media only screen and (max-width: 1200px){
.page-header {
    height: 250px;
}
.h1title {
    padding: 120px 20px 10px 20px;
    font-size: 24px;
    letter-spacing: 2px;
}
.h1en{
    font-size: 14px;
}
}



/* TOP
------------------------------------------------------------*/

/*--- トップ ニュース ---*/
#top_news {
    width: 100%;
    display: table;
    background: #fff;
    border: 1px solid #eee;
    box-shadow: 1px 1px 7px rgba(0,0,0,0.03);
    margin: 40px 0 60px;
}
.top_news_l {
    width: 150px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    background: #0067b6;
    color: #fff;
    font-size: 18px;
    padding: 20px 10px;
    letter-spacing: 2px;
}
.top_news_m {
    display: table-cell;
    vertical-align: middle;
}
.top_news_m span{
    display: inline-block;
    color: #333;
    font-size: 15px;
    padding: 0 15px;
    margin: 0 25px 0 25px;
    font-weight: normal;
    letter-spacing: 1px;
}
.top_news_m {
    margin: 0;
    overflow: hidden;
}
.top_news_m a{
    text-decoration: none;
    color: #333;
}
.top_news_m a:hover{
    color: #999;
}
.top_news_r {
    width: 70px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    border-left: 1px dotted #ddd;
}
.top_news_r a{
    display: inline-block;
    color: #ccc;
}


/* ABOUT */
.top_about {
    background: #28476a;
    padding: 0;
    min-height: 200px;
}
.top_about_inner {
    padding: 0;
    background: url(images/tp1_bg.jpg) right center no-repeat;
    background-size: 50%;
    min-height: 200px;
    color: #fff;
    position: relative;
    overflow: hidden;
}
.top_about_link {
    position: absolute;
    bottom: 40px;
    right: 30px;
}
.top_about_link a{
    font-size: 14px;
    color: #fff;
}
.top_about_box {
    position: relative;
}
.top_about_boxinner {
    padding: 80px 70px 50px 20px;
}
.top_about .bigtitle {
    position: absolute;
    top: -5px;
    right: 0;
}
.top_about h2 {
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 50px 0;
    padding: 0;
    text-align: right;
    letter-spacing: 2px;
    z-index: 1;
}
.top_about h2 span{
    display: block;
    color: #fff;
    font-size: 60px;
    font-weight: bold;
    letter-spacing: 5px;
    margin-right: -7px;
    margin-bottom: 10px;
}
.top_about h2 span:first-letter{
    color: #c9e1ee;
}
.top_about_p {
    color: #eee;
    line-height: 2;
}
@media only screen and (max-width: 1200px){
.top_about_inner {
    padding: 0;
    background: none;
}
.top_about_link {
    display: none;
}
.top_about .bigtitle {
    display: none;
}
.top_about_boxinner {
    padding: 30px 15px;
}
.top_about h2 {
    font-size: 14px;
    margin: 0 0 30px 0;
    letter-spacing: 0;
    text-align: center;
}
.top_about h2 span{
    font-size: 36px;
    letter-spacing: 3px;
    margin-right: 0;
    margin-bottom: 10px;
}
.top_about_p {
    font-size: 15px;
}
}


/* PROJECT */
.top_project {
    background: url(images/tp3_bg.png) center top no-repeat;
    padding: 0;
    min-height: 200px;
    position: relative;
}
.top_project .bigtitle {
    position: absolute;
    top: 0;
    left: -265px;
}
.top_project .rightline {
    position: absolute;
    top: 380px;
    right: 0;
    width: 1170px;
    height: 50px;
    background: url(images/right_line.png) left top no-repeat;
}
.top_project .leftline {
    position: absolute;
    top: 590px;
    left: 0;
    width: 1170px;
    height: 50px;
    background: url(images/left_line.png) right top no-repeat;
}
.top_project_boxinner_l {
    padding: 140px 0 40px 0;
}
.top_project_boxinner_r {
    padding: 80px 0 40px 30px;
}
.top_project a{
    margin-bottom: 40px;
}
.top_project h2 {
    color: #222;
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 50px 0;
    padding: 0;
    text-align: left;
    letter-spacing: 2px;
    z-index: 1;
}
.top_project h2 span{
    display: block;
    color: #222;
    font-size: 60px;
    font-weight: bold;
    letter-spacing: 5px;
    margin-right: -7px;
    margin-bottom: 10px;
}
.top_project h3{
    color: #fff;
    text-align: center;
    font-family: inherit;
    font-weight: bold;
    letter-spacing: 4px;
}
.top_project h3 span{
    color: #c9e1ee;
    font-size: 15px;
    display: block;
    letter-spacing: 3px;
    font-weight: 400;
    margin-bottom: 10px;
}
.tp_sub {
    background: rgba(0,0,0,0.6);
    padding: 25px 50px;
    color: #fff;
    font-size: 14px;
}
@media only screen and (max-width: 1200px){
.top_project {
    background: none;
    padding: 0 0 40px 0;
}
.top_project .bigtitle {
    display: none;
}
.top_project .rightline, .top_project .leftline{
    display: none;
}
.top_project_boxinner_l {
    padding: 10px 0 0 0;
}
.top_project_boxinner_r {
    display: none;
}
.top_project a{
    margin-bottom: 0;
}
.top_project_boxinner_l a {
    margin-top: 40px;
}
.tp_sub {
    display: none;
}
.top_project h2 {
    display: none;
}
.top_project h3{
    color: #fff;
    font-size: 17px;
    letter-spacing: 1px;
}
}

/* news */
.top_news {
    position: relative;
    margin: 0;
    background: #f7f7f7;
    padding: 50px 0 50px;
    overflow: hidden;
}
.top_news .bigtitle {
    position: absolute;
    top: -10px;
    left: 50%;
}
.top_news h2 {
    color: #222;
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 50px 0;
    padding: 0;
    text-align: center;
    letter-spacing: 2px;
    z-index: 1;
}
.top_news h2 span{
    display: block;
    color: #222;
    font-size: 60px;
    font-weight: bold;
    letter-spacing: 5px;
    margin-right: -7px;
    margin-bottom: 10px;
}
ul.infoul {
    padding: 0;
    margin: 0 0 50px;
}
ul.infoul li{
    list-style: none;
    padding: 13px 10px;
    border-bottom: 1px dotted #ddd;
}
ul.infoul li a{
    display: block;
}
ul.infoul li i{
    color: #bbb;
    margin-left: 5px;
}
span.infoul01 {
    display: inline-block;
    width: 130px;
    color: #777;
    letter-spacing: 2px;
    font-size: 14px;
}
span.infoul02 {
    display: inline-block;
    width: 130px;
    text-align: center;
    color: #0067b6;
    border: 1px solid #0067b6;
    padding: 1px 10px;
    margin-right: 40px;
    font-size: 13px;
}
span.infoul03 {
    color: #222;
}
ul.infoul li a:hover span.infoul03{
    color: #777;
    text-decoration: underline;
}
.more {
    text-align: right;
    padding-top: 15px
}
.more a{
    color: #444;
    padding-left: 15px;
    background: url(images/list1.png) left center no-repeat;
}
.more a:hover{
    color: #999;
}
@media only screen and (max-width: 1200px){
.top_news {
    padding: 30px 0 30px;
}
.top_news .bigtitle {
    display: none;
}
.top_news h2 {
    font-size: 14px;
    margin: 0 0 30px 0;
    letter-spacing: 0;
    z-index: 1;
}
.top_news h2 span{
    font-size: 36px;
    letter-spacing: 3px;
    margin-right: 0;
    margin-bottom: 10px;
}
span.infoul02 {
    display: none;
}
span.infoul03 {
    display: block;
}
}


/* RECRUIT*/
.top_recruit {
    background: url(images/top5_bg.jpg) center top no-repeat;
    background-size: cover;
    padding: 0;
    overflow: hidden;
}
.top_recruit_inner {
    background: rgba(0,103,182,0.7);
    padding: 70px 0 60px;
    color: #fff;
    text-align: center;
    position: relative;
}
.top_recruit .bigtitle {
    position: absolute;
    top: 0;
    left: 35%;
}
.top_recruit h2 {
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 50px 0;
    padding: 0;
    text-align: center;
    letter-spacing: 2px;
    z-index: 1;
}
.top_recruit h2 span{
    display: block;
    color: #fff;
    font-size: 60px;
    font-weight: bold;
    letter-spacing: 5px;
    margin-right: -7px;
    margin-bottom: 10px;
}
.top_recruit h2 span:first-letter{
    color: #c9e1ee;
}
.recimg {
    padding: 20px 0 50px 0;
}
.rectext {
    line-height: 2;
}
@media only screen and (max-width: 1200px){
.top_recruit {
    background: url(images/top5_bg.jpg) center top no-repeat;
    background-size: cover;
    padding: 0;
    overflow: hidden;
}
.top_recruit_inner {
    background: rgba(0,103,182,0.7);
    padding: 40px 0 40px;
    color: #fff;
    text-align: center;
    position: relative;
}
.top_recruit .bigtitle {
    display: none;
}
.top_recruit h2 {
    font-size: 14px;
    margin: 0 0 30px 0;
    letter-spacing: 0;
}
.top_recruit h2 span{
    font-size: 36px;
    letter-spacing: 2px;
    margin-right: 0;
    margin-bottom: 10px;
}
.recimg {
    padding: 0 0 20px 0;
}
.rectext {
    line-height: 1.5;
    font-size: 14px;
}
}

/* ACCESS */
.top_access {
    padding: 0;
    overflow: hidden;
}
.top_access .bigtitle {
    position: absolute;
    top: 0;
    left: 0;
}
.top_access h2 {
    color: #222;
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 50px 0;
    padding: 0;
    text-align: left;
    letter-spacing: 2px;
    z-index: 1;
}
.top_access h2 span{
    display: block;
    color: #222;
    font-size: 60px;
    font-weight: bold;
    letter-spacing: 5px;
    margin-right: -7px;
    margin-bottom: 10px;
}
.top_access_boxinner {
    padding: 80px 0 40px 70px;
}
.top_access_boxinner span{
    margin-right: 10px;
    color: #0067b6;
}
@media only screen and (max-width: 1200px){
.top_access {
    padding: 0;
    overflow: hidden;
}
.top_access .bigtitle {
    display: none;
}
.top_access h2 {
    font-size: 14px;
    margin: 0 0 30px 0;
    padding: 0;
    text-align: center;
    letter-spacing: 0;
}
.top_access h2 span{
    font-size: 36px;
    font-weight: bold;
    letter-spacing: 3px;
}
.top_access_boxinner {
    padding: 40px 20px;
}
}




/* energy
--------------------------------------------------------------------*/
.ene1_inner {
    background: #f5f5f5;
    padding: 50px 0 60px;
    margin-top: 50px;
}
.ene1_inner h3{
    text-align: center;
    color: #0167b6;
    padding: 15px 0;
    margin: 10px 0 20px !important;
    border-top: 3px solid #0167b6;
    border-bottom:  3px solid #0167b6;
    letter-spacing: 3px;
}
.ene1_inner .uk-card-body {
    padding: 20px 32px 30px;
    font-size: 15px;
    line-height: 1.6;
}
.enebox{
    background: #28476a url(images/enebox_icon.png) 60px center no-repeat;
    color: #fff;
    padding: 40px;
    border-radius: 7px;
    margin-top: 50px;
}
.enebox_inner {
    padding: 0 0 0 150px;
}
.ene2_inner {
    padding: 30px 0 100px;
}
.top_work .pdt30 {
    margin: 0 auto;
    width: 1040px;
}
.top_work h2::before {
    display: none;
}
.top_work h2 {
    text-align: center;
}
.top_work_inner {
    padding: 60px 0 60px;
    background: #f6f6f6 url(images/wk_bg.png) center top no-repeat;
    min-height: 200px;
}
.top_work_inner_in {
    margin: 0 auto;
    width: 1600px;
    max-width: 90%;
}
.mediaposi {
    width: 100%;
    height: 220px;
    background-size: cover !important;
    background-position: center center !important;
    overflow: hidden;
    transition: all 0.3s;
}
.work_date {
    color: #333;
    font-size: 12px;
    padding: 8px 0 5px;
    transition: all 0.3s;
}
.work_title {
    color: #333;
    font-size: 15px;
    padding: 15px 25px 25px;
    transition: all 0.3s;
    line-height: 1.4;
}
.top_work .uk-card-body {
    padding: 0;
}
.top_work a.uk-card:hover .work_title{
    color: #888;
}
.top_work a.uk-card:hover .mediaposi{
    opacity: 0.9;
}
@media only screen and (max-width: 1200px){
.enebox_inner {
    padding: 0;
    font-size: 14px;
}
.enebox{
    background: #28476a;
    padding: 25px;
    margin-top: 40px;
}
}
@media only screen and (max-width: 980px){
.top_work {
    margin: 0 auto;
    max-width: 90%;
}
.top_work .pdt30 {
    width: 100%;
}
.top_work_inner {
    padding: 40px 0 30px;
}
.mediaposi {
    height: 200px;
}
.work_date {
    font-size: 12px;
}
.work_title {
    font-size: 14px;
}
.top_work a.btn-blue {
    letter-spacing: 1px;
}
}


/* cled
--------------------------------------------------------------------*/
.cledbox {
    background: #f5f5f5;
    padding: 50px;
}
.cled h2 {
    font-weight: bold;
    font-size: 56px;
}
.cled h2 span{
    font-size: 20px;
}
.cled .uk-card-large .uk-card-body, .cled .uk-card-large.uk-card-body {
    padding: 0;
    background: rgba(255,255,255,0.9) url(images/card_bg.png) right top no-repeat;
    border-radius: 5px;
}
span.cleds {
    display: inline-block;
    position: absolute;
    top: -120px;
    left: -17px;
    font-size: 110px;
    color: #ddd;
    font-weight: bold;
}
span.cleds2 {
    display: inline-block;
    position: absolute;
    right: 40px;
    top: 20px;
    font-size: 16px;
    color: #0167b6;
    font-weight: 400;
    letter-spacing: 2px;
}
.cledss {
    font-weight: bold;
    font-size: 20px;
    color: #333;
    padding: 60px 50px 50px;
    
}
.top_cled_inner01 {
    padding: 100px 0;
    background: url(images/cled01.jpg) left center no-repeat;
    background-size: cover;
    background-size: 60%;
    min-height: 150px;
    margin-bottom: 30px;
    margin-left: -50px;
}
.top_cled_inner02 {
    padding: 100px 0;
    background: url(images/cled02.jpg) right center no-repeat;
    background-size: cover;
    background-size: 60%;
    min-height: 150px;
    margin-bottom: 30px;
    margin-right: -50px;
}
.top_cled_inner03 {
    padding: 100px 0;
    background: url(images/cled03.jpg) left center no-repeat;
    background-size: cover;
    background-size: 60%;
    min-height: 150px;
    margin-bottom: 30px;
    margin-left: -50px;
}
.top_cled_inner04 {
    padding: 100px 0;
    background: url(images/cled04.jpg) right center no-repeat;
    background-size: cover;
    background-size: 60%;
    min-height: 150px;
    margin-bottom: 30px;
    margin-right: -50px;
}
.top_cled_inner05 {
    padding: 100px 0;
    background: url(images/cled05.jpg) left center no-repeat;
    background-size: cover;
    background-size: 60%;
    min-height: 150px;
    margin-bottom: 30px;
    margin-left: -50px;
}
.top_cled_inner06 {
    padding: 100px 0;
    background: url(images/cled06.jpg) right center no-repeat;
    background-size: cover;
    background-size: 60%;
    min-height: 150px;
    margin-right: -50px;
}
@media only screen and (max-width: 1200px){
.cledbox {
    padding: 0;
}
.cled h2 {
    font-size: 30px;
}
.cled h2 span{
    font-size: 14px;
}
span.cleds {
    display: none;
}
span.cleds2 {
    right: 30px;
    top: 15px;
    font-size: 13px;
    letter-spacing: 0;
}
.cledss {
    font-weight: bold;
    font-size: 15px;
    color: #333;
    padding: 50px 20px 30px;
    line-height: 1.6;
}
.top_cled_inner01 {
    padding: 25px 15px;
    background: url(images/cled01.jpg) center center no-repeat;
    background-size: cover;
    min-height: 100px;
    margin: 0;
}
.top_cled_inner02 {
    padding: 25px 15px;
    background: url(images/cled02.jpg) center center no-repeat;
    background-size: cover;
    min-height: 100px;
    margin: 0;
}
.top_cled_inner03 {
    padding: 25px 15px;
    background: url(images/cled03.jpg) center center no-repeat;
    background-size: cover;
    min-height: 100px;
    margin: 0;
}
.top_cled_inner04 {
    padding: 25px 15px;
    background: url(images/cled04.jpg) center center no-repeat;
    background-size: cover;
    min-height: 100px;
    margin: 0;
}
.top_cled_inner05 {
    padding: 25px 15px;
    background: url(images/cled05.jpg) center center no-repeat;
    background-size: cover;
    min-height: 100px;
    margin: 0;
}
.top_cled_inner06 {
    padding: 25px 15px;
    background: url(images/cled06.jpg) center center no-repeat;
    background-size: cover;
    min-height: 100px;
    margin: 0;
}
}



/* history
--------------------------------------------------------------------*/
table.history_tbl {
    font-size: 14px;
    margin: 0 auto 5px;
}
.history_tbl th {
    color: #fff;
    background: #0067b6;
    padding: 25px 15px 25px 15px;
    text-align: center;
    vertical-align: middle;
    font-size: 17px;
    width: 25%;
    position: relative;
    letter-spacing: 2px;
    font-weight: 500;
}
.history_tbl th:before {
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #0067b6;
  content: "";
  position: absolute;
  top: 50%; right: -8px;
  margin-top: -9px;
  display: block;
  width: 0px;
  height: 0px;
  z-index: 0;
}
.history_tbl tr:nth-child(even) th {
    background: #2884c9;
}
.history_tbl tr:nth-child(even) th:before {
  border-color: transparent transparent transparent #2884c9;
}
.history_tbl td {
    padding: 25px 35px;
    background: #fff;
    color: #444;
    font-size: 15px;
}
.history_tbl tr:nth-child(even) td{
    background: #f5f5f5;
}
@media only screen and (max-width: 1200px){
.history_tbl th {
    padding: 15px 5px;
    font-size: 16px;
    width: 30%;
    letter-spacing: 0;
}
.history_tbl td {
    padding: 15px 15px;
    font-size: 14px;
}
}


/* real estate
--------------------------------------------------------------------*/
table.real_tbl {
    font-size: 15px;
    margin: 0 auto 5px;
}
.real_tbl th {
    border: none;
    color: #eee;
    background: #232d3d;
    padding: 15px 20px;
    border-right: 1px solid #3d4756;
}
.real_tbl td {
    border: 1px solid #e5e5e5;
    padding: 15px 20px;
    background: #fff;
    color: #444;
    font-size: 14px;
}
.real_tbl tr:nth-child(even) td {
    background: #f6f6f6;
}
@media only screen and (max-width: 980px){
    table.real_tbl {
        width: 95%;
        border-bottom: none;
    } 
    .real_tbl th {
        display: none;
    }
    .real_tbl td {
        display: block;
        width: 95%;
        padding: 10px 7px;
    }
    .real_tbl tr td:first-child {
        font-weight: bold;
        border-top: 3px solid #3d4756;
    }
}


/* base
--------------------------------------------------------------------*/
table.base_tbl {
    border: none;
    font-size: 14px;
    margin: 0 auto 5px;
}
.base_tbl th {
    border: none;
    color: #222;
    background: #fff;
    padding: 20px;
    vertical-align: top;
    width: 32%;
}
.base_tbl td {
    border: none;
    padding: 20px;
    background: #fff;
    color: #444;
    font-size: 14px;
}
.base_tbl td h3{
    margin: 40px 0 25px;
}
.base_tbl td h3:first-child{
    margin-top: 0;
}
@media only screen and (max-width: 980px){
    table.base_tbl {
        width: 95%;
        border-bottom: none;
    } 
    .base_tbl th {
        display: block;
        width: 95%;
        border-right: none;
        padding: 10px 7px;
    }
    .base_tbl td {
        display: block;
        width: 95%;
        padding: 10px 7px;
    }
}



/* contact
--------------------------------------------------------------------*/
table.con_tbl {
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    font-size: 14px;
    margin: 0 auto 5px;
}
.con_tbl th {
    border-bottom: 1px solid #e5e5e5;
    color: #222;
    background: #fff;
    padding: 25px 15px 25px 15px;
    vertical-align: middle;
    font-size: 15px;
    width: 30%;
}
.con_tbl td {
    border-bottom: 1px solid #e5e5e5;
    padding: 25px 25px 25px 25px;
    background: #fff;
    color: #444;
    font-size: 15px;
}

.hissu {
    display: inline-block;
    font-size: 11px;
    background: #ffeae5;
    color: #ea3323;
    padding: 0 10px;
    margin: 0 5px;
    border-radius: 20px;
    font-weight: normal;
}
.horizontal-item {
    margin-right: 10px;
}
.mwform-file-delete {
    display: inline-block;
    background: #aaa;
    color: #fff;
    font-weight: bold;
    border-radius: 18px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    margin-left: 7px;
}
.soushinbtn {
    text-align: center;
    margin: 25px 0 10px;
}
.soushinbtn input{
    display: inline-block;
    margin: 15px 10px 5px;
    padding: 18px 50px;
    background: #0168b7;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    border: none;
    cursor: pointer;
}
.soushinbtn input:hover{
    opacity: 0.7;
    border: none;
}
.descr{
    display: block;
    margin-top: 5px;
    color: #666;
}
.mw_wp_form_confirm .descr, .mw_wp_form_confirm a.con_priv{
    display: none;
}
.mw_wp_form_confirm .descr2{
    display: none;
}
.mw_wp_form_confirm .honyaku_tbl, .mw_wp_form_confirm .tsuuyaku_tbl, .mw_wp_form_confirm .other_tbl {
    display: table;
}
span.error {
    display: block;
    color: #ea3323;
    padding: 2px 0;
    margin-top: 7px;
    font-size: 14px;
    font-weight: bold;
}
@media only screen and (max-width: 1200px){
    table.con_tbl {
        width: 95%;
        border-bottom: none;
    } 
    .con_tbl th {
        display: block;
        width: 95%;
        border-right: none;
        padding: 10px 7px;
    }
    .con_tbl th.actth {
        display: block;
        width: 90%;
}
    .con_tbl td {
        display: block;
        width: 95%;
        padding: 10px 7px;
    }
}



/* Single
------------------------------------------------------------*/
h1.h1single {
    background: none;
    border: none;
    padding: 20px 0 20px 0;
    font-size: 32px;
    margin: 0 0 30px 0;
    font-weight: bold;
    color: #292929;
    line-height: 1.5;
}
.s_date {
    display: block;
    text-align: left;
    font-size: 14px;
    color: #999;
    letter-spacing: 2px;
}
.cat_bottom {
    text-align: right;
    display: flex;
    align-items: center;
    align-content: center;
    font-size: 14px;
    padding-top: 25px;
}
.cat_bottom span{
    margin-right: 10px;
    color: #999;
}
@media only screen and (max-width: 1200px){
    h1.h1single {
        font-size: 22px;
        margin: 0 0 15px 0;
    }
}



/* WP-pagenavi カスタム
------------------------------------------------------------*/
.wp-pagenavi {
    display: inline-block;
    margin: 0 auto;
    padding: 25px 0;
    clear: both;
    color: #666;
    font-size: 16px;
}
.wp-pagenavi a, .wp-pagenavi span {
    display: inline-block;
    float: left;
    text-align: center;
    min-width: 30px;
    height: 30px;
    line-height: 30px;
    text-decoration: none;
    border: 1px solid #ddd !important;
    padding: 5px 5px !important;
    margin: 3px !important;
    color: #999;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
    border: 1px solid #0067b6 !important;
    background: #0067b6 !important;
    color: #fff !important;
}



/* サイドバー
------------------------------------------------------------*/
/**** blog ****/
h6.blogh6 {
    display: block;
    margin-top: 0;
    margin-bottom: 0;
    background: none;
    font-size: 16px;
    text-align: left;
    padding: 10px 0 10px;
    color: #292929;
    border: none;
    border-bottom: 3px solid #d8bf85;
    font-weight: bold;
}
a.link-box {
    padding: 10px 0;
    border-bottom: 1px dotted #ddd;
    text-decoration: none;
    color: #222;
}
.thumb-left {
    float: left;
    width: 80px;
    margin-right: 15px;
    margin-top: 3px;
    margin-bottom: 3px;
}
.c_title2 {
    font-size: 14px;
    line-height: 1.4;
    overflow: hidden;
}
.c_title2 span{
    display: block;
    font-size: 12px;
    text-decoration: none;
    padding-bottom: 5px;
}
.side_arc {
    margin-top: 15px;
}
a.link-box:hover img{
    opacity: 0.85;
}
a.link-box:hover .c_title2{
    color: #777;
}



/* フッター
------------------------------------------------------------*/
#footer{
    clear:both;
    width: 100%;
    padding: 0;
    margin: 0;
    text-align: center;
}
#footer ul{
    padding:0;
    margin: 5px 5px 0;
}
#footer ul li{
    list-style: none;
    padding: 0 10px;
}
#footer ul li.f_par{
    font-size: 14px;
    font-weight: bold;
    padding: 2px 10px 10px 10px;
    border-bottom: 1px solid #eee;
    margin-bottom: 7px;
}
#footer ul li a{
    display: block;
    font-size: 13px;
    color:#444;
    padding: 5px 0;
}
#footer ul li a:hover{
    color: #999;
}
.ft_01 {
    text-align: left;
    padding-top: 20px;
    font-size: 13px;
    line-height: 1.8;
}

.bnr_area {
    background: #f7f7f7;
    padding: 70px 0;
    margin-bottom: 70px;
}
.uk-card-small {
    padding: 20px 40px;
}
.uk-card-small a{
    display: block;
}
#pageTop {
    display: none;
    position: fixed;
    margin: 0;
    bottom: 0;
    right: 10px;
    width:45px;
    height:45px;
    line-height: 40px;
    text-align: center;
    z-index: 1;
}
#pageTop a {
    display: block;
    background: #28476a url(images/page_up.png) center center no-repeat;
    width:45px;
    height:45px;
}
#pageTop a:hover{
    background: #386393 url(images/page_up.png) center center no-repeat;
}

#copyright_wrapper{
    width: 100%;
    background: #fff;
    margin-top: 40px;
}
#copyright{
    display: block;
    text-decoration: none;
    color: #666;
    padding: 30px 15px;
    text-align:center;
    font-size:13px;
    margin: 0;
}
@media only screen and (max-width: 1200px){
    #footer ul{
        padding:0;
        margin: 10px 5px 0;
    }
    #footer ul li{
        display: block;
        text-align: left;
        list-style: none;
        padding: 2px 10px;
        border-bottom: 1px solid #eee;
    }
    #footer ul li a{
        display: block;
        font-size: 13px;
        color:#444;
        
    }
    #footer ul li.f_par{
        font-size: 14px;
        padding: 2px 10px 5px 10px;
        margin-bottom: 2px;
    }
    .bnr_area {
        padding: 30px 0;
        margin-bottom: 30px;
    }
    .f_1b {
        text-align: center;
    }
    .ft_01 {
        text-align: center;
    }
    #copyright{
        padding: 20px 15px;
        font-size:11px;
    }
}



/* 1200px以下
------------------------------------------------------------*/
@media only screen and (max-width: 1200px){
    body {
        background: #fff;
    }
    #wrapper, #header, #content_1col {width:100%;}
    .inner {width:92%; margin: 0 auto; padding: 0;}
    #header ul{padding:0;}
    #header p, #hr_space{display: none;}
    #header {width: 100%; height: 60px;}
    .navbox {
        margin-top: -5px;
        margin-right: 25px;
    }
    .navbox a{
        font-size: 36px;
        color: #fff;
    }

    #pankuzu {display: none;}

    #content, #content_1col{
        clear:both;
        width:100%;
        float:none;
        margin:0 auto;
        padding:0;
    }
    .post{
        clear:both;
        margin: 0 auto 0;
        padding: 20px 10px 30px;
        box-shadow: none;
    }

    #sidebar{
        float: none;
        clear:both;
        width:90%;
        margin: 30px auto;
        padding:0;
    }

    #footer {
        width:100%;
    }
}




/* ユーティリティー
------------------------------------------------------------*/
/**** clearfix ****/
.clearfix:after {content: "."; display: block; height: 0; line-height: 0; clear: both; visibility: hidden;}
.clearfix { display: inline-block; }
*+html .clearfix { height: 1%; }
* html .clearfix { height: 1%; }
.clearfix {display: block;}

/**** font size ****/
.font10 {font-size: 10px}
.font11 {font-size: 11px}
.font12 {font-size: 12px}
.font13 {font-size: 13px}
.font14 {font-size: 14px}
.font15 {font-size: 15px}
.font16 {font-size: 16px}
.font17 {font-size: 17px}
.font18 {font-size: 18px}
.font20 {font-size: 20px}
.font24 {font-size: 24px}
.font28 {font-size: 28px}
.font36 {font-size: 36px}
.font40 {font-size: 40px}
.font50 {font-size: 50px}
.font60 {font-size: 60px}
.font80 {font-size: 80px}
.font100 {font-size: 100px}

/**** font weight ****/
.bold {font-weight: bold}
.normal {font-weight: normal}

/**** font color****/
.font-red {color: #e57c72}
.font-pink {color: #ce4c47}
.font-orange {color: #ffc114}
.font-purple {color: #99608c}
.font-blue {color: #3396b5}
.font-blue2 {color: #b5cedb}
.font-sky {color: #b0e0e1}
.font-tya {color: #706651}
.font-green {color: #339999}
.font-mosgreen {color: #00a84c}
.font-green2 {color: #009966}
.font-green3 {color: #b5dbc1}
.font-yellow {color: #ffcc33}
.font-gray {color: #999}
.font-gray2 {color: #bbb}
.font-gray3 {color: #ddd}
.font-gray6 {color: #666}
.font-black {color: #444}
.font-white {color: #fff}

/**** align ****/
.a_center {text-align: center; margin-left: auto; margin-right: auto;}
.a_left {text-align: left;}
.a_right {text-align: right;}

/**** valign ****/
.v_top {vertical-align: top}
.v_middle {vertical-align: middle}
.v_bottom {vertical-align: bottom}

/**** float ****/
.fl_l {float: left}
.fl_r {float: right}
.fl_clear {clear: both}

/**** border ****/
.border-top {border-top: 1px solid #eee}
.border-bottom {border-bottom: 1px solid #eee}
.border-left {border-left: 1px solid #eee}
.border-right {border-right: 1px solid #eee}

/**** width ****/
.w5 {width: 5%}
.w10 {width: 10%}
.w15 {width: 15%}
.w20 {width: 20%}
.w25 {width: 25%}
.w30 {width: 30%}
.w35 {width: 35%}
.w40 {width: 40%}
.w45 {width: 45%}
.w50 {width: 50%}
.w55 {width: 55%}
.w60 {width: 60%}
.w70 {width: 70%}
.w75 {width: 75%}
.w80 {width: 80%}
.w85 {width: 85%}
.w90 {width: 90%}
.w95 {width: 95%}
.w100 {width: 100%}

/**** margin ****/
/* 全体 */
.mg5 {margin: 5px}
.mg10 {margin: 10px}
.mg15 {margin: 15px}
.mg20 {margin: 20px}
.mg30 {margin: 30px}
/* 上下 */
.mgtb5 {margin-top: 5px; margin-bottom: 5px;}
.mgtb10 {margin-top: 10px; margin-bottom: 10px;}
.mgtb15 {margin-top: 15px; margin-bottom: 15px;}
.mgtb20 {margin-top: 20px; margin-bottom: 20px;}
.mgtb30 {margin-top: 30px; margin-bottom: 30px;}
.mgtb40 {margin-top: 40px; margin-bottom: 40px;}
.mgtb50 {margin-top: 50px; margin-bottom: 50px;}
/* 上 */
.mgt5 {margin-top: 5px}
.mgt10 {margin-top: 10px}
.mgt15 {margin-top: 15px}
.mgt20 {margin-top: 20px}
.mgt30 {margin-top: 30px}
.mgt40 {margin-top: 40px}
.mgt50 {margin-top: 50px}
/* 下 */
.mgb5 {margin-bottom: 5px}
.mgb10 {margin-bottom: 10px}
.mgb15 {margin-bottom: 15px}
.mgb20 {margin-bottom: 20px}
.mgb30 {margin-bottom: 30px}
.mgb40 {margin-bottom: 40px}
.mgb50 {margin-bottom: 50px}
.mgb60 {margin-bottom: 60px}
.mgb70 {margin-bottom: 70px}
/* 左 */
.mgl5 {margin-left: 5px}
.mgl10 {margin-left: 10px}
.mgl15 {margin-left: 15px}
.mgl20 {margin-left: 20px}
.mgl30 {margin-left: 30px}
.mgl40 {margin-left: 40px}
.mgl50 {margin-left: 50px}
.mgl70 {margin-left: 70px}
/* 右 */
.mgr5 {margin-right: 5px}
.mgr8 {margin-right: 8px}
.mgr10 {margin-right: 10px}
.mgr15 {margin-right: 15px}
.mgr20 {margin-right: 20px}
.mgr30 {margin-right: 30px}
.mgr40 {margin-right: 40px}
.mgr50 {margin-right: 50px}
.mgr70 {margin-right: 70px}
/* 左右 */
.mglr5 {margin-left: 5px; margin-right: 5px}
.mglr10 {margin-left: 10px; margin-right: 10px}
.mglr15 {margin-left: 15px; margin-right: 15px}
.mglr20 {margin-left: 20px; margin-right: 20px}
.mglr30 {margin-left: 30px; margin-right: 30px}

/**** padding ****/
/* 全体 */
.pd3 {padding: 3px;}
.pd5 {padding: 5px;}
.pd10 {padding: 10px;}
.pd15 {padding: 15px;}
.pd20 {padding: 20px;}
.pd30 {padding: 30px;}
.pd40 {padding: 40px;}
/* 上下 */
.pdtb5 {padding-top: 5px; padding-bottom: 5px;}
.pdtb10 {padding-top: 10px; padding-bottom: 10px;}
.pdtb15 {padding-top: 15px; padding-bottom: 15px;}
.pdtb20 {padding-top: 20px; padding-bottom: 20px;}
.pdtb30 {padding-top: 30px; padding-bottom: 30px;}
.pdtb40 {padding-top: 40px; padding-bottom: 40px;}
.pdtb60 {padding-top: 60px; padding-bottom: 60px;}
.pdtb100 {padding-top: 100px; padding-bottom: 100px;}
/* 上 */
.pdt3 {padding-top: 3px;}
.pdt5 {padding-top: 5px;}
.pdt10 {padding-top: 10px;}
.pdt15 {padding-top: 15px;}
.pdt20 {padding-top: 20px;}
.pdt30 {padding-top: 30px;}
.pdt40 {padding-top: 40px;}
/* 下 */
.pdb5 {padding-bottom: 5px;}
.pdb10 {padding-bottom: 10px;}
.pdb15 {padding-bottom: 15px;}
.pdb20 {padding-bottom: 20px;}
.pdb30 {padding-bottom: 30px;}
.pdb40 {padding-bottom: 40px;}
.pdb50 {padding-bottom: 50px;}
.pdb60 {padding-bottom: 60px;}
.pdb70 {padding-bottom: 70px;}
/* 左右 */
.pdlr5 {padding-left: 5px; padding-right: 5px;}
.pdlr10 {padding-left: 10px; padding-right: 10px;}
.pdlr15 {padding-left: 15px; padding-right: 15px;}
.pdlr20 {padding-left: 20px; padding-right: 20px;}
.pdlr25 {padding-left: 25px; padding-right: 25px;}
.pdlr30 {padding-left: 30px; padding-right: 30px;}
.pdlr40 {padding-left: 40px; padding-right: 40px;}
/* 左 */
.pdl5 {padding-left: 5px;}
.pdl10 {padding-left: 10px;}
.pdl15 {padding-left: 15px;}
.pdl20 {padding-left: 20px;}
.pdl30 {padding-left: 30px;}
/* 右 */
.pdr5 {padding-right: 5px;}
.pdr10 {padding-right: 10px;}
.pdr15 {padding-right: 15px;}
.pdr20 {padding-right: 20px;}
.pdr30 {padding-right: 30px;}
/* 左右 */
.pdlr5 {padding-left: 5px; padding-right: 5px}
.pdlr10 {padding-left: 10px; padding-right: 10px}
.pdlr15 {padding-left: 15px; padding-right: 15px}
.pdlr20 {padding-left: 20px; padding-right: 20px}
.pdlr30 {padding-left: 30px; padding-right: 30px}

.env-policy {
    margin-bottom: 30px;
    padding: 25px 60px;
    border: 1px solid #222;
    border-radius: 5px;
    font-size: 0.95rem;
}

@media only screen and (max-width: 928px){
    .env-policy {
        padding: 8px;
        font-size: 0.8rem;
    }
}