@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

html {
  overflow-y: scroll; }

blockquote, q {
  quotes: none; }

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

input, textarea {
  margin: 0;
  padding: 0; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

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

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt"; }

html {
  background: #ffffff;
  color: #000000;
  font-size: 100%;
  -webkit-text-size-adjust: 100%; }
  html[lang="ja"] {
    font-family: "UD Shin Go NT Light","メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif; }
    html[lang="ja"] * {
      letter-spacing: 0; }
  html[lang="en"] {
    font-family: "UD Shin Go NT Light", 'FB Agenda Medium Condensed' , sans-serif; }
    html[lang="en"] * {
      letter-spacing: 0; }
  html[lang="zh-cn"] {
    font-family: 'UD Shin Go SC Medium', sans-serif; }
    html[lang="zh-cn"] * {
      letter-spacing: 0; }
    html[lang="zh-cn"] menu .pcmenu > li {
      width: 103px; }
      html[lang="zh-cn"] menu .pcmenu > li a {
        line-height: 1.35; }
  html[lang="zh-tw"] {
    font-family: 'AR Hei B', sans-serif; }
    html[lang="zh-tw"] * {
      letter-spacing: 0; }
    html[lang="zh-tw"] menu .pcmenu > li {
      width: 103px; }
      html[lang="zh-tw"] menu .pcmenu > li a {
        line-height: 1.35; }
  html[lang="ko"] {
    font-family: 'UD Shin Go Hangul Medium', sans-serif; }
    html[lang="ko"] * {
      letter-spacing: 0; }

body {
  background: #ffffff;
  color: #000000;
  letter-spacing: 0.1em;
  letter-spacing: 1.5; }

a:link {
  text-decoration: none;
  color: #e74388; }

a:visited {
  color: #e74388; }

a:hover {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
  text-decoration: underline;
  -webkit-transition: all .8s;
  -o-transition: all .8s;
  transition: all .8s; }

a:active {
  color: #e74388; }

a:focus {
  outline: none; }

.wrap {
  width: 980px;
  margin: 0 auto; }
  @media only screen and (max-width: 640px) {
    .wrap {
      width: 100%; } }

header {
  width: 100%;
  background: #4f4552;
  color: #ffffff;
  overflow: hidden; }
  @media only screen and (max-width: 640px) {
    header {
      width: 100%; } }
  header h1 {
    padding-top: 4px; }
    @media only screen and (max-width: 640px) {
      header h1 {
        padding-top: 0px;
        width: 100%;
        text-align: center; } }
    header h1 img {
      width: 340px; }
      @media only screen and (max-width: 640px) {
        header h1 img {
          width: 70%; } }
  header .wrap {
    padding: 12px 0 4px 0;
    overflow: hidden; }
    header .wrap div {
      float: left; }
      header .wrap div > p > a {
        font-size: 12px;
        color: #e74388;
        padding: 4px 4px 2px 22px;
        background: url(../images/g_arrow.svg) no-repeat 5px center #fff;
        background-size: auto 70%;
        border-bottom: 2px solid #cccccc; }
    @media only screen and (max-width: 640px) {
      header .wrap div.sele {
        margin: 0 auto;
        width: 100%;
        text-align: center; } }
    header .wrap div.sele > p {
      font-size: 12px;
      border: 1px solid #fff;
      padding: 0px 6px 0;
      margin-left: 10px;
      margin-top: 4px;
      border-radius: 15px;
      -webkit-border-radius: 15px;
      -moz-border-radius: 15px; }
      @media only screen and (max-width: 640px) {
        header .wrap div.sele > p {
          margin: 0 auto;
          display: inline-block;
          min-width: 50%; } }
    header .wrap div.days {
      font-size: 10px;
      margin-left: 10px;
      padding-top: 5px; }
      @media only screen and (max-width: 640px) {
        header .wrap div.days {
          text-align: center;
          width: 100%;
          margin-left: 0px; } }
    header .wrap div.auther {
      margin-left: 10px; }
      @media only screen and (max-width: 640px) {
        header .wrap div.auther {
          display: none; } }
    header .wrap ul#sns {
      float: right;
      overflow: hidden; }
      @media only screen and (max-width: 640px) {
        header .wrap ul#sns {
          display: none; } }
      header .wrap ul#sns > li {
        float: left;
        margin-left: 3px; }
        header .wrap ul#sns > li img {
          width: 26px; }
    header .wrap ul#sns-top {
      display: none; }

section, artcle {
  width: 100%;
  margin: 0px auto 0;
  padding: 0; }
  @media only screen and (max-width: 640px) {
    section, artcle {
      width: 100%;
      margin: 25px auto 0;
      padding: 0; } }

.pc_only {
  display: block; }
  @media only screen and (max-width: 640px) {
    .pc_only {
      display: none; } }

.smp_only {
  display: none; }
  @media only screen and (max-width: 640px) {
    .smp_only {
      display: block; } }

menu {
  width: 100%;
  background-color: #fff;
  top: 0;
  z-index: 100000; }
  menu #sns-top {
    display: none; }
  menu .pcmenu {
    overflow: hidden; }
    menu .pcmenu > li {
      display: table;
      vertical-align: middle;
      width: 90px;
      height: 63px;
      margin-left: 20px;
      float: left; }
      menu .pcmenu > li > a {
        font-size: 12px;
        display: table-cell;
        text-align: center;
        vertical-align: middle;
        color: #00557f;
        text-decoration: none;
        position: relative;
        text-decoration: none; }
        menu .pcmenu > li > a::after {
          content: '';
          position: absolute;
          bottom: 4px;
          left: 0;
          width: 100%;
          height: 1px;
          -webkit-transform: scaleX(0);
          -ms-transform: scaleX(0);
          transform: scaleX(0);
          background-color: #00557f;
          -webkit-transition: all .3s ease;
          -o-transition: all .3s ease;
          transition: all .3s ease; }
        menu .pcmenu > li > a:hover::after {
          -webkit-transform: scaleX(1);
          -ms-transform: scaleX(1);
          transform: scaleX(1); }
      menu .pcmenu > li > a:hover {
        -webkit-transition: all .8s;
        -o-transition: all .8s;
        transition: all .8s;
        position: relative; }

#submenu {
  width: 100%;
  background-color: #E2E8EB;
  padding: 10px 0;
  display: none;
  position: absolute;
  margin-top: 0px;
  z-index: 1000; }
  #submenu #submenu-inner {
    width: 980px;
    margin: 0 auto;
    padding: 0 26px; }
    #submenu #submenu-inner a {
      background: url("../images/arrow.svg") no-repeat scroll 0 center/auto 50%;
      padding-left: 15px; }
      #submenu #submenu-inner a.b_link {
        background: url("../images/blank.svg") no-repeat scroll 0 center/auto 50%; }
    #submenu #submenu-inner ul {
      display: none;
      overflow: hidden; }
      #submenu #submenu-inner ul li {
        float: left;
        margin-right: 60px; }
        #submenu #submenu-inner ul li a {
          color: #4f4552;
          text-decoration: none;
          font-size: 12px; }

main {
  background: url("../images/visitor_bg.png");
  font-size: 13px;
  line-height: 1.6; }
  main h2 {
    font-size: 37px;
    line-height: 1.4;
    color: #00557f;
    background: url(../images/earth.png) no-repeat 5px center;
    background-size: auto 18px;
    padding-left: 30px;
    margin-bottom: 20px; }
    @media only screen and (max-width: 640px) {
      main h2 {
        font-size: 28px; } }
    main h2.small {
      font-size: 32px; }
      @media only screen and (max-width: 640px) {
        main h2.small {
          font-size: 25px; } }
  main .layout {
    margin: 0 auto;
    width: 980px;
    overflow: hidden;
    color: #4f4552;
    padding: 30px 0 60px; }
    @media only screen and (max-width: 640px) {
      main .layout {
        padding: 13px 0 60px;
        width: 92%; } }
    main .layout .bnrareadd {
      width: 300px;
      float: right; }
      @media only screen and (max-width: 640px) {
        main .layout .bnrareadd {
          width: 100%;
          float: left;
          text-align: center; } }
      main .layout .bnrareadd li:nth-of-type(2), main .layout .bnrareadd li:nth-of-type(3) {
        margin-top: 10px; }
    main .layout .mainareadt {
      width: 652px;
      float: left; }
      @media only screen and (max-width: 640px) {
        main .layout .mainareadt {
          width: 100%;
          float: left; } }
      main .layout .mainareadt .gray-box {
        width: 100%;
        overflow: hidden;
        border-radius: 15px;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        padding: 5px 14px 14px;
        background: #e2e8eb; }
        main .layout .mainareadt .gray-box.secbox {
          margin-top: 30px; }
        main .layout .mainareadt .gray-box .gaiyouimg {
          margin: 23px auto;
          overflow: hidden; }
          main .layout .mainareadt .gray-box .gaiyouimg > dt {
            float: left;
            width: 162px; }
            @media only screen and (max-width: 640px) {
              main .layout .mainareadt .gray-box .gaiyouimg > dt {
                width: 30%; } }
            main .layout .mainareadt .gray-box .gaiyouimg > dt img {
              width: 140px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .gaiyouimg > dt img {
                  width: 100%; } }
          main .layout .mainareadt .gray-box .gaiyouimg > dd {
            margin: -23px auto;
            float: left; }
            @media only screen and (max-width: 640px) {
              main .layout .mainareadt .gray-box .gaiyouimg > dd {
                width: 60%;
                margin-left: 10%; } }
        main .layout .mainareadt .gray-box a.link-btn {
          font-size: 12px;
          color: #e74388;
          padding: 2px 4px 2px 22px;
          background: url(../images/g_arrow.svg) no-repeat 5px center #fff;
          background-size: auto 70%;
          border-bottom: 2px solid #cccccc; }
          @media only screen and (max-width: 640px) {
            main .layout .mainareadt .gray-box a.link-btn {
              width: 100%;
              display: block;
              padding: 8px 12px 8px 35px;
              background-size: auto 50%; } }
        main .layout .mainareadt .gray-box .kaisaidl {
          margin: 23px auto; }
          main .layout .mainareadt .gray-box .kaisaidl dt {
            width: 100%;
            border-bottom: 1px solid #ffffff;
            padding: 0 0 9px 0; }
            main .layout .mainareadt .gray-box .kaisaidl dt h3 {
              font-size: 12px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .kaisaidl dt h3 {
                  font-size: 11px; } }
          main .layout .mainareadt .gray-box .kaisaidl dd {
            width: 100%;
            margin-top: 9px; }
            main .layout .mainareadt .gray-box .kaisaidl dd h4 {
              font-size: 19px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .kaisaidl dd h4 {
                  font-size: 14px; } }
            main .layout .mainareadt .gray-box .kaisaidl dd h5 {
              font-size: 15px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .kaisaidl dd h5 {
                  font-size: 12px; } }
            main .layout .mainareadt .gray-box .kaisaidl dd > p {
              margin-top: 6px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .kaisaidl dd > p {
                  font-size: 12px;
                  margin-top: 8px; } }
            main .layout .mainareadt .gray-box .kaisaidl dd > .note {
              font-size: 12px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .kaisaidl dd > .note {
                  font-size: 10px; } }
            main .layout .mainareadt .gray-box .kaisaidl dd .big {
              font-size: 15px; }
              @media only screen and (max-width: 640px) {
                main .layout .mainareadt .gray-box .kaisaidl dd .big {
                  font-size: 13px; } }
            main .layout .mainareadt .gray-box .kaisaidl dd .businessbox {
              background: #5f84c0;
              color: #ffffff;
              font-size: 13px;
              padding: 2px 5px;
              margin-right: 10px; }
            main .layout .mainareadt .gray-box .kaisaidl dd .ippanbox {
              background: #5fbbc1;
              color: #ffffff;
              font-size: 13px;
              padding: 2px 5px;
              margin-right: 10px; }

#m_s_map {
  z-index: 1000;
  width: 100%;
  background: #d1d1d1;
  min-width: 100%; }
  @media only screen and (max-width: 640px) {
    #m_s_map {
      width: 100%; } }
  #m_s_map a {
    color: #000; }
  #m_s_map .m_s_mapwrap {
    width: 980px;
    margin: 0 auto;
    overflow: hidden;
    padding: 20px 0 60px; }
    @media only screen and (max-width: 640px) {
      #m_s_map .m_s_mapwrap {
        width: 100%;
        padding: 20px 0 40px; } }
    #m_s_map .m_s_mapwrap > li {
      width: 33.33333%;
      float: left; }
      @media only screen and (max-width: 640px) {
        #m_s_map .m_s_mapwrap > li {
          width: 100%;
          padding: 0 4%; } }
      #m_s_map .m_s_mapwrap > li li {
        margin-top: 7px; }
      #m_s_map .m_s_mapwrap > li .m_s_item {
        margin-top: 40px; }
        @media only screen and (max-width: 640px) {
          #m_s_map .m_s_mapwrap > li .m_s_item {
            margin-top: 20px; } }
      #m_s_map .m_s_mapwrap > li .l_item {
        font-size: 18px; }
        @media only screen and (max-width: 640px) {
          #m_s_map .m_s_mapwrap > li .l_item {
            font-size: 15px; } }
      #m_s_map .m_s_mapwrap > li .item {
        font-size: 13px; }
        @media only screen and (max-width: 640px) {
          #m_s_map .m_s_mapwrap > li .item {
            font-size: 11px; } }
      #m_s_map .m_s_mapwrap > li .n_link {
        padding: 2px 4px 2px 17px;
        background: url(../images/arrow.svg) no-repeat 0px center;
        background-size: auto 50%; }
      #m_s_map .m_s_mapwrap > li .b_link {
        padding: 2px 4px 2px 17px;
        background: url(../images/blank.svg) no-repeat 0px center;
        background-size: auto 50%; }

footer {
  width: 100%;
  background: #dedede;
  overflow: hidden;
  padding: 15px;
  min-width: 100%; }
  @media only screen and (max-width: 640px) {
    footer {
      width: 100%;
      padding: 15px; } }
  footer ul.op {
    overflow: hidden;
    width: 267px;
    margin: 0px auto; }
    @media only screen and (max-width: 640px) {
      footer ul.op {
        width: 100%; } }
    footer ul.op > li {
      float: left;
      text-align: center;
      margin-left: 15px; }
      @media only screen and (max-width: 640px) {
        footer ul.op > li {
          width: 100%;
          margin-left: 0px; } }
    footer ul.op .nikkei img {
      width: 136px; }
    footer ul.op .cesa img {
      width: 81px; }
    footer ul.op .cofasta img {
      width: 162px; }
  footer p {
    float: left;
    text-align: center;
    width: 100%;
    font-size: 12px;
    margin-top: 10px; }

.white-box {
  width: auto;
  padding: 10px;
  background-color: #fff;
  font-size: 14px;
  margin-top: 15px;
  margin-bottom: 30px; }
  .white-box a {
    background-image: none;
    color: #00557f !important;
    border-bottom: 0; }

dl.white-box > dt {
  border-bottom: #e2e8eb solid 1px;
  font-weight: bold; }

dl.white-box > dd {
  margin-bottom: 20px; }

.redtext {
  color: #ee0000; }

.gray-box .title {
  margin-top: 20px;
  font-size: 24px;
  color: #00557f;
  line-height: 1.4;
  border-bottom: 3px solid #5fbac0;
  display: inline-block;
  padding-bottom: 6px; }

.gray-box .text {
  margin-top: 15px; }

.atten li {
  margin: 5px 0 0 0; }

.d_list li {
  margin: 5px 0 0 0; }

.d_list a {
  color: #e74388; }

.underline {
  text-decoration: underline; }

.attention_box {
  border: 3px solid #ee0000; }

.child {
  display: none; }

.drawer-nav {
  padding: 20px; }
  .drawer-nav > ul > li {
    margin-top: 15px; }
  .drawer-nav .toggle {
    background: rgba(0, 0, 0, 0) url("../images/arrow.svg") no-repeat scroll 0 center/auto 50%;
    padding-left: 20px;
    font-size: 16px;
    color: #2F557F; }
  .drawer-nav .inner li {
    font-size: 13px;
    padding-left: 20px;
    margin-top: 15px; }
  .drawer-nav .inner a {
    background: rgba(0, 0, 0, 0) url("../images/arrow.svg") no-repeat scroll 0 center/auto 50%;
    padding-left: 20px;
    color: #2F557F; }
    .drawer-nav .inner a.b_link {
      background: rgba(0, 0, 0, 0) url("../images/blank.svg") no-repeat scroll 0 center/auto 50%; }

#button a.link-btn {
  width: 206px;
  display: block;
  float: left;
  margin-right: 14px;
  margin-bottom: 10px;
  min-height: 26px;
  color: #fff; }
  @media only screen and (max-width: 640px) {
    #button a.link-btn {
      width: 100%;
      min-height: auto; } }

#button.lang_en a.link-btn {
  width: 202px;
  display: block;
  float: left;
  margin-right: 14px;
  margin-bottom: 10px;
  min-height: 47px;
  color: #fff; }
  @media only screen and (max-width: 640px) {
    #button.lang_en a.link-btn {
      width: 100%;
      min-height: auto; } }

#button a.link-btn.n {
  margin-right: 0px; }

#button a.link-btn.small {
  font-size: 10px;
  padding-top: 6px; }
  @media only screen and (max-width: 640px) {
    #button a.link-btn.small {
      font-size: 12px; } }

#button a:nth-of-type(3n) {
  margin-right: 0px; }

.lang_en a.link-btn {
  font-size: 12px;
  color: #e74388;
  padding: 4px 4px 2px 22px;
  background: url(../images/arrow_w.svg) no-repeat 5px center #5fbbc1;
  background-size: auto 35%;
  border-bottom: 2px solid #cccccc; }

a.link-btn {
  font-size: 12px;
  color: #e74388;
  padding: 4px 4px 2px 22px;
  background: url(../images/arrow_w.svg) no-repeat 5px center #5fbbc1;
  background-size: auto 70%;
  border-bottom: 2px solid #cccccc; }

a.link-btn:hover {
  color: #e74388; }

.pagetop {
  width: 54px;
  height: 54px;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 10001; }
  @media only screen and (max-width: 640px) {
    .pagetop {
      width: 45px;
      height: 45px; } }
  .pagetop a {
    display: block;
    width: 100%;
    height: 100%;
    background: #5FB5BB; }
    .pagetop a img {
      width: 100%; }

.menuhome {
  width: 36px !important; }
  .menuhome img {
    width: 20px; }

#index .menuhome {
  display: none; }

#div-gpt-ad-1464164443956-0,
#div-gpt-ad-1464164443956-0_ad_container {
  margin: 0 auto;
  text-align: center;
  display: block; }

#aw0 {
  display: block;
  margin: 0 auto;
  text-align: center; }

.img_ad img {
  margin: 0 auto;
  display: block; }

.nkbnr {
  margin-top: 20px;
  width: 100%; }
  .nkbnr img {
    width: 100%; }

.large_space {
  letter-spacing: 0.35em !important; }

.press_list li {
  margin-top: 20px;
  border-top: 1px solid #fff;
  padding-top: 20px; }
  .press_list li:nth-of-type(1) {
    margin-top: 10px;
    border-top: 0px solid #fff;
    padding-top: 0px; }

.press_day {
  font-size: 15px; }

.press_h3 {
  margin-top: 10px;
  font-size: 22px; }

.press_text {
  margin-top: 10px;
  font-size: 13px; }

.press_link {
  margin-top: 20px; }
  .press_link .link-btn {
    margin-top: 10px;
    line-height: 2.5; }
