/* reset-css */
html {
  line-height: 1.8;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility; }

body {
  margin: 0;
  padding: 0; }

article, aside, footer, header, nav, section {
  display: block; }

figcaption, figure, main {
  display: block; }

figure {
  margin: 0; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace,monospace;
  font-size: 1em; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b, strong {
  font-weight: inherit;
  font-weight: bolder; }

code, kbd, samp {
  font-family: monospace,monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

audio, video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none;
  max-width: 100%;
  vertical-align: middle; }

svg:not(:root) {
  overflow: hidden; }

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button, input {
  overflow: visible; }

button, select {
  text-transform: none; }

button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
  border: none;
  background: none;
  box-shadow: none; }

button:hover {
  outline: none; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: .35em .75em .625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"], [type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details, menu {
  display: block; }

summary {
  display: list-item; }

canvas {
  display: inline-block; }

template {
  display: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td, th {
  padding: 0; }

ul, ol {
  padding: 0;
  margin: 0;
  list-style: none; }

[hidden] {
  display: none; }

iframe {
  border: none;
  max-width: 100%; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

h1, h2, h3, h4, h5, h6 {
  color: #202020;
  line-height: 1.3;
  font-weight: 900;
  margin: 0 0 1rem;
  padding: 0; }

h1 {
  margin: 0;
  font-size: 1rem; }

h2 {
  font-size: 2.25rem; }

h3 {
  font-size: 1.4em;
  line-height: 1.5; }

h4, h5, h6 {
  font-size: 1rem;
  font-weight: 500; }

a {
  color: #202020;
  text-decoration: none; }

a:hover {
  color: #0f75bb; }

img {
  max-width: 100%;
  vertical-align: middle;
  height: auto; }

a img:hover {
  opacity: 0.8; }

p {
  margin: 0 0 0.7rem; }

.nomr {
  margin: 0; }

.nopd {
  padding: 0; }

.mb_0 {
  margin-bottom: 0 !important; }

.pb_0 {
  padding-bottom: 0 !important; }

.pd5 {
  padding: 5px; }

.pt5 {
  padding-top: 5px; }

.pb5 {
  padding-bottom: 5px; }

.pl5 {
  padding-left: 5px; }

.pr5 {
  padding-right: 5px; }

.mg5 {
  margin: 5px; }

.mt5 {
  margin-top: 5px; }

.mb5 {
  margin-bottom: 5px; }

.ml5 {
  margin-left: 5px; }

.mr5 {
  margin-right: 5px; }

.pd10 {
  padding: 10px; }

.pt10 {
  padding-top: 10px; }

.pb10 {
  padding-bottom: 10px; }

.pl10 {
  padding-left: 10px; }

.pr10 {
  padding-right: 10px; }

.mg10 {
  margin: 10px; }

.mt10 {
  margin-top: 10px; }

.mb10 {
  margin-bottom: 10px; }

.ml10 {
  margin-left: 10px; }

.mr10 {
  margin-right: 10px; }

.pd15 {
  padding: 15px; }

.pt15 {
  padding-top: 15px; }

.pb15 {
  padding-bottom: 15px; }

.pl15 {
  padding-left: 15px; }

.pr15 {
  padding-right: 15px; }

.mg15 {
  margin: 15px; }

.mt15 {
  margin-top: 15px; }

.mb15 {
  margin-bottom: 15px; }

.ml15 {
  margin-left: 15px; }

.mr15 {
  margin-right: 15px; }

.pd20 {
  padding: 20px; }

.pt20 {
  padding-top: 20px; }

.pb20 {
  padding-bottom: 20px; }

.pl20 {
  padding-left: 20px; }

.pr20 {
  padding-right: 20px; }

.mg20 {
  margin: 20px; }

.mt20 {
  margin-top: 20px; }

.mb20 {
  margin-bottom: 20px; }

.ml20 {
  margin-left: 20px; }

.mr20 {
  margin-right: 20px; }

.pd25 {
  padding: 25px; }

.pt25 {
  padding-top: 25px; }

.pb25 {
  padding-bottom: 25px; }

.pl25 {
  padding-left: 25px; }

.pr25 {
  padding-right: 25px; }

.mg25 {
  margin: 25px; }

.mt25 {
  margin-top: 25px; }

.mb25 {
  margin-bottom: 25px; }

.ml25 {
  margin-left: 25px; }

.mr25 {
  margin-right: 25px; }

.pd30 {
  padding: 30px; }

.pt30 {
  padding-top: 30px; }

.pb30 {
  padding-bottom: 30px; }

.pl30 {
  padding-left: 30px; }

.pr30 {
  padding-right: 30px; }

.mg30 {
  margin: 30px; }

.mt30 {
  margin-top: 30px; }

.mb30 {
  margin-bottom: 30px; }

.ml30 {
  margin-left: 30px; }

.mr30 {
  margin-right: 30px; }

.mt50 {
  margin-top: 50px; }

.size1_3 {
  font-size: 1.3em; }

.size1_5 {
  font-size: 1.5em; }

.size1_8 {
  font-size: 1.8em; }

.size2 {
  font-size: 2em; }

.size2_3 {
  font-size: 2.3em; }

.size2_5 {
  font-size: 2.5em; }

.size2_8 {
  font-size: 2.8em; }

.size3 {
  font-size: 3em; }

.size12 {
  font-size: 12px; }

.clearfix {
  clear: both; }

.clear:after {
  display: block;
  content: '';
  clear: both; }

.img_full {
  display: block;
  width: 100%; }

.img_ct {
  display: block;
  margin: 0 auto; }

.fl_lf {
  float: left; }

.fl_rt {
  float: right; }

.fl_no {
  float: none;
  clear: both; }

.bg_fix {
  background-attachment: fixed; }

.display_inl {
  display: inline-block; }

.display_blk {
  display: block; }

.display_cir {
  display: block;
  border-radius: 50%; }

.al_lf {
  text-align: left; }

.al_ct {
  text-align: center; }

.al_rt {
  text-align: right; }

.bold {
  font-weight: 700; }

@media screen and (min-width: 768px) {
  .sp {
    display: none; } }

@media screen and (max-width: 767px) {
  .sp {
    display: block; }
  .pc {
    display: none; } }

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex; }

.flex_row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: 100%;
  flex-flow: row wrap;
  justify-content: space-between; }

.flex_col {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: 100%;
  flex-flow: column nowrap;
  justify-content: space-between; }

.flex_reverse {
  flex-direction: row-reverse; }

@media screen and (min-width: 1025px) {
  .flex_el-1 {
    width: 7.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-2 {
    width: 15.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-3 {
    width: 24%;
    margin: 0;
    padding: 0; }
  .flex_el-4 {
    width: 32.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-5 {
    width: 40.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-6 {
    width: 49%;
    margin: 0;
    padding: 0; }
  .flex_el-7 {
    width: 57.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-8 {
    width: 65.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-9 {
    width: 74%;
    margin: 0;
    padding: 0; }
  .flex_el-10 {
    width: 82.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-11 {
    width: 90.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-12 {
    width: 99%;
    margin: 0;
    padding: 0; } }

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .flex_el-sm-1 {
    width: 7.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-2 {
    width: 15.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-3 {
    width: 24%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-4 {
    width: 32.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-5 {
    width: 40.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-6 {
    width: 49%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-7 {
    width: 57.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-8 {
    width: 65.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-9 {
    width: 74%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-10 {
    width: 82.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-11 {
    width: 90.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-sm-12 {
    width: 99%;
    margin: 0;
    padding: 0; } }

@media screen and (max-width: 767px) {
  .flex_el-xs-1 {
    width: 7.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-2 {
    width: 15.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-3 {
    width: 24%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-4 {
    width: 32.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-5 {
    width: 40.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-6 {
    width: 49%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-7 {
    width: 57.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-8 {
    width: 65.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-9 {
    width: 74%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-10 {
    width: 82.33333%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-11 {
    width: 90.66667%;
    margin: 0;
    padding: 0; }
  .flex_el-xs-12 {
    width: 99%;
    margin: 0;
    padding: 0; } }

.tit {
  color: #333;
  font-size: 1.3rem;
  margin: 1rem 0; }

.tit_bor {
  padding: 0 0 0.5em;
  border-bottom: 1px solid; }

.tit-sm {
  text-transform: uppercase; }

.tit-bl {
  font-weight: 500;
  text-transform: uppercase;
  margin: 0 0 1rem; }
  .tit-bl:after {
    content: '';
    display: block;
    width: 8em;
    border-top: 2px solid; }

.tit_ico:before {
  content: '';
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  line-height: 1.8;
  border: 4px solid #333;
  border-radius: 50%;
  margin: 0 8px 0 0;
  vertical-align: top; }

.bg-gray {
  background-color: #efefef; }

.bg-blue {
  background-color: #0f75bb;
  color: #fff; }

.bg-wr {
  position: relative; }

.bg-lazyload {
  position: absolute;
  z-index: 9;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-repeat: no-repeat; }

.txt_ico {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: 100%; }
  .txt_ico > .ico {
    display: inline-block;
    margin: 0 10px 0 0;
    flex-shrink: 0; }

.txt-normal {
  font-weight: normal;
  font-size: 1rem; }

.txt_line_2 {
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  display: -webkit-box;
  display: box;
  -webkit-box-orient: vertical;
  box-orient: vertical; }

.txt_line_3 {
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  display: -webkit-box;
  display: box;
  -webkit-box-orient: vertical;
  box-orient: vertical; }

.txt_line_4 {
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
  display: -webkit-box;
  display: box;
  -webkit-box-orient: vertical;
  box-orient: vertical; }

.txt_line_5 {
  text-overflow: ellipsis;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  overflow: hidden;
  display: -webkit-box;
  display: box;
  -webkit-box-orient: vertical;
  box-orient: vertical; }

.anm-sc {
  position: relative;
  overflow: hidden;
  background: #000; }
  .anm-sc:hover .anm {
    -ms-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    transform: scale(1.1); }

.anm {
  -ms-transition: all ease-in 0.5s;
  -webkit-transition: all ease-in 0.5s;
  -moz-transition: all ease-in 0.5s;
  transition: all ease-in 0.5s; }

/* button-css */
.btn {
  background: #258bb3;
  color: #fff;
  padding: 0.5rem 1rem;
  display: inline-block;
  margin: 1rem 0;
  font-size: 1rem;
  line-height: 2;
  min-width: 7rem;
  cursor: pointer; }
  .btn:hover {
    opacity: 0.8; }
  .btn.btn-full {
    display: block;
    width: 100%; }
  .btn.btn-ico {
    position: relative; }
    .btn.btn-ico:after {
      display: block;
      position: absolute;
      content: '';
      width: 2rem;
      height: 100%;
      top: 50%;
      right: 5px;
      background: #aaa; }
  .btn.btn-ico-inl:after {
    display: inline-block;
    content: '';
    width: 1em;
    height: 1em;
    background: #aaa; }

.label {
  background: #fff;
  padding: 0.5rem 1rem;
  line-height: 1.3;
  min-width: 7rem;
  border-radius: 15px;
  font-size: 1.3rem;
  text-align: center;
  margin: 0 1rem 1rem; }
  .label:hover {
    background: #0f75bb;
    color: #fff; }

/* icon-css */
.ico {
  display: inline-block;
  vertical-align: middle;
  padding: 0;
  font-size: 1em;
  width: 1.5rem;
  height: 1.5rem;
  line-height: 1.5;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain; }

.ico-place {
  background-image: url("../images/ico-place.png"); }

.ico-call {
  background-image: url("../images/ico-calling.png"); }

.ico-mail {
  background-image: url("../images/ico-mail.png"); }

.ico_menu {
  position: absolute;
  background: transparent;
  top: 2px;
  right: 0;
  padding: 0;
  width: 35px;
  cursor: pointer; }
  .ico_menu > .line {
    display: block;
    width: 100%;
    height: 3px;
    background: #333;
    border-radius: 5px;
    margin: 0 0 7px;
    -webkit-transition: all ease-in 0.3s;
    -moz-transition: all ease-in 0.3s;
    transition: all ease-in 0.3s; }
    .ico_menu > .line:last-child {
      margin: 0; }
  .ico_menu:hover > .line1, .ico_menu.close > .line1, #header.active .ico_menu > .line1 {
    -webkit-transform: translateY(11px) rotateZ(-45deg);
    -moz-transform: translateY(11px) rotateZ(-45deg);
    transform: translateY(11px) rotateZ(-45deg); }
  .ico_menu:hover > .line2, .ico_menu.close > .line2, #header.active .ico_menu > .line2 {
    background: 0 0; }
  .ico_menu:hover > .line3, .ico_menu.close > .line3, #header.active .ico_menu > .line3 {
    -webkit-transform: translateY(-8px) rotateZ(45deg);
    -moz-transform: translateY(-8px) rotateZ(45deg);
    transform: translateY(-8px) rotateZ(45deg); }

.fig {
  position: relative;
  padding-top: 56.19%;
  overflow: hidden;
  width: 100%;
  display: block; }

.fig1_1 {
  padding-top: 100%; }

.fig2_1 {
  padding-top: 49%; }

.fig3_2 {
  padding-top: 66.66%; }

.fig16_9 {
  padding-top: 53.19%; }

.fig4_3 {
  padding-top: 75%; }

.fig9_16 {
  padding-top: 156.19%; }

.fig3_4 {
  padding-top: 132.25%; }

.fig-img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 9;
  object-fit: cover;
  object-position: center;
  display: block;
  height: 100%;
  width: 100%; }

.fig-lnk:hover > img {
  opacity: 1; }

/* list-css */
.lst > li {
  padding: 10px 0;
  margin: 0 0; }

.lst_page > li {
  padding: 0.5rem 0;
  line-height: 1; }
  .lst_page > li:first-child {
    padding-top: 0; }

.lst_inl {
  font-size: 0; }
  .lst_inl > li {
    display: inline-block;
    font-size: 1rem;
    padding: 0 5px; }
    .lst_inl > li:first-child {
      padding-left: 0; }
    .lst_inl > li > .sep {
      font-size: 0.7em;
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 0 5px; }

.lst-md > li {
  padding-right: 0.7rem; }

.lst_tb {
  display: table;
  width: 100%;
  margin: 15px 0; }
  .lst_tb > li {
    display: table-cell;
    vertical-align: top; }

.lst_top > li {
  padding: 0 1rem; }

.lst_sep > li > a {
  display: block;
  padding: 0 5px;
  border-left: 1px dashed #efefef; }

.lst_post > li {
  display: block;
  margin: 5px 0;
  padding: 5px 0;
  border-top: 1px dotted #efefef; }
  .lst_post > li:first-child {
    margin-top: 0;
    border-top: 0; }

html {
  height: 100%;
  font-size: 20px; }

body {
  font-size: 1rem;
  line-height: 1.5;
  height: 100%;
  color: #202020;
  font-weight: 400;
  font-family: Roboto, sans-serif, Tahoma, Verdana, Segoe, sans-serif;
  background: #fff;
  padding-top: 80px; }

.container {
  width: 100%;
  max-width: 975px;
  margin: 0 auto;
  padding: 0 15px; }

.container-sm {
  width: 100%;
  max-width: 766px;
  margin: 0 auto;
  padding: 0 15px; }

.layout {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  min-height: 100%;
  flex-flow: column nowrap;
  align-items: stretch; }

#header,
#nav,
#footer {
  flex-shrink: 0; }

#main {
  flex-grow: 1; }

@media screen and (max-width: 767px) {
  html {
    font-size: 14px; }
  body {
    padding-top: 50px; }
  #header_sp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 9999;
    display: block; } }

@media screen and (max-width: 360px) {
  html {
    font-size: 13px; } }

#header {
  position: fixed;
  width: 100%;
  height: 80px;
  top: 0;
  left: 0;
  z-index: 9999;
  background: #f5f7ed;
  padding: 10px 0; }

.logo {
  margin: 0;
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%); }

.logo-img {
  width: 100%;
  display: block;
  width: 40px; }

@media screen and (max-width: 767px) {
  #header {
    padding: 0;
    height: 50px; }
  #header_sp {
    background: #eee; }
  .logo-title {
    padding-top: 10px; }
  .logo-img {
    width: auto;
    max-width: unset;
    margin-top: 7px;
    width: auto;
    height: 35px; } }

#footer {
  background: #efefef;
  padding: 40px 0;
  margin: 40px 0 0;
  font-size: 0.9rem; }
  #footer a {
    font-size: 0.9rem; }

.copyright {
  margin: 0;
  padding: 10px 0 10px;
  text-align: center; }

@media screen and (min-width: 768px) {
  .flex_ft-ite:first-child {
    width: 35%; } }

@media screen and (max-width: 767px) {
  .flex_ft-ite {
    width: 100%;
    margin: 15px 0; } }

#nav {
  background: transparent; }

.menu-wr {
  position: relative; }

.menu-lst {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  width: 100%;
  max-width: 630px;
  margin: 0 auto; }
  .menu-lst > li {
    display: block;
    vertical-align: middle;
    text-align: center;
    position: relative; }
    .menu-lst > li.logo-pos {
      width: 11%; }
    .menu-lst > li > a {
      color: #11a223;
      font-size: 1.2rem;
      line-height: 1.5;
      display: inline-block;
      padding: 0.5em 0.3rem;
      text-transform: uppercase;
      font-weight: 500; }
      .menu-lst > li > a:hover, .menu-lst > li > a.active {
        color: #0f75bb;
        text-decoration: none; }
  .menu-lst > li > .menu-sub {
    display: none; }

@media screen and (min-width: 768px) {
  .menu-lst > li:first-child > a {
    padding-left: 0; }
  .menu-lst > li > .menu-sub {
    width: 200px;
    position: absolute;
    left: 0;
    background: #eee; }
  .menu-lst li > li:hover > .menu-sub {
    display: block; } }

@media screen and (max-width: 767px) {
  .menu-sp {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 9999;
    top: 0;
    left: 0;
    background: #fff;
    padding: 50px 0 0; }
    .menu-sp.active {
      display: block; }
  .menu-but {
    right: 15px;
    top: 20px; }
  .menu-lst > li > a {
    font-size: 0.9rem;
    padding: 23px 3px 10px; } }

.main-image {
  height: 35vw;
  min-height: 350px;
  align-items: center;
  background-color: #333; }
  .main-image > .container-sm {
    position: relative;
    z-index: 99; }

.main-tit {
  color: #fff;
  font-size: 2.5rem;
  line-height: 1.5;
  letter-spacing: 1px;
  text-shadow: 4px 2px 6px rgba(0, 0, 0, 0.4); }

@media screen and (max-width: 767px) {
  .main-image {
    min-height: 150px; }
  .main-tit {
    font-size: 2rem; } }

.wr {
  padding: 9vh 0; }

.wr_flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: 100%;
  min-height: 70vh;
  align-items: center; }

.wr-tit {
  line-height: 1.5;
  margin: 0 0 1.3em;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #0f75bb; }
  .wr-tit.white {
    color: #fff; }
  .wr-tit:after {
    content: '';
    display: block;
    width: 3.8em;
    border-top: 0.3rem solid;
    margin: 0.1em auto 0; }

.wr-desc {
  font-size: 1.5rem;
  margin: 0 0 0.5em; }

.wr-ct {
  text-align: justify;
  text-align-last: center;
  max-width: 736px;
  margin: 2rem auto 1rem; }

.wr_small {
  margin: 0 auto;
  padding: 40px 15px;
  max-width: 700px; }

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .wr_flex {
    min-height: 50vh; } }

@media screen and (max-width: 767px) {
  .wr_flex {
    min-height: 200px; }
  .wr {
    padding: 50px 0; } }

@media screen and (min-width: 768px) {
  .wr_2col > .col_lf {
    width: 75%;
    padding: 0 15px 0 0; }
  .wr_2col > .col_rt {
    width: 25%;
    padding: 0; } }

.post_hot {
  position: relative;
  width: 100%;
  margin: 1rem 0; }
  .post_hot:after {
    content: '';
    display: block;
    position: absolute;
    top: 40%;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9;
    background: #1a9f00;
    background: linear-gradient(0deg, #1a9f00 0%, #1a9f00 44%, rgba(26, 159, 0, 0.7) 70%, rgba(26, 159, 0, 0) 100%); }

.post_hot-tit {
  position: absolute;
  min-height: 40%;
  margin: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99;
  color: #fff;
  font-size: 0.9rem;
  text-align: center;
  padding: 15px;
  font-weight: 400; }

@media screen and (min-width: 768px) {
  .post_hot {
    width: calc(33.33% - 5px); } }

@media screen and (max-width: 767px) {
  .post_hot-tit {
    top: 60%;
    font-size: 1.3rem; } }

.slider-carousel {
  display: none; }
  .slider-carousel.slick-initialized {
    display: block; }

.bl-slider {
  margin: 2rem 0; }
  .bl-slider:last-child {
    margin-bottom: 0; }

.sl-ite {
  padding: 0 2px; }

.slick-arrow {
  position: absolute;
  top: 50%;
  width: 1.3rem;
  height: 2rem;
  display: inline-block;
  margin-top: -1rem;
  left: 10px;
  z-index: 9;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center top;
  cursor: pointer; }
  .slick-arrow:hover {
    opacity: 0.7; }
  .slick-arrow.prev-arrow {
    background-image: url("../images/ico-arrow.png"); }
  .slick-arrow.next-arrow {
    left: auto;
    right: 10px;
    background-image: url("../images/ico-arrow.png");
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg); }
