@charset "UTF-8";
/**************************
*
* リセット↓
*
**************************/
@import url("https://fonts.googleapis.com/css?family=M+PLUS+1p");

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-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

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

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

button,
input,
select,
textarea {
  font-family: inherit; }

a {
  text-decoration: none;
  transition: 0.3s; }

*:focus {
  outline: none; }

img {
  max-width: 100%;
  height: auto; }

*,
*::before,
*::after {
  box-sizing: border-box; }

/**************************
*
* 初期設定↓
*
**************************/
body {
  font-family: "M PLUS 1p", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  line-height: 1.357;
  color: #223250;
  font-size: 14px;
  letter-spacing: 0;
  word-break: break-word;  
  /* PC,SP切り替え */ }
  main {
    transform: rotate(0.03deg);
  }
  body .sp {
    display: none; }
  @media only screen and (max-width: 768px) {
    body .pc {
      display: none; }
    body .sp {
      display: block; } }

a, button {
  outline: 0;
  text-decoration: none;
  color: inherit;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
  transition: opacity 0.3s;
  color: unset; }
  a:hover, button:hover {
    cursor: pointer;
    opacity: 0.7;
    text-decoration: none;
    color: unset; }
  a img, button img {
    transition: 0.3s; }
  main a {
      text-decoration: underline;
      opacity: 1;
  }
  main a:hover {
    color: #009eb1;
    text-decoration: underline;
  }
.style-flex {
  display: flex; }
  @media screen and (max-width: 768px) {
    .style-flex {
      display: block; } }

/**************************
*
* モジュール
*
**************************/
@media print, screen and (min-width: 750px) and (max-width: 1199px) {
  font-size: 80px; }
@media screen and (min-width: 768px) and (max-width: 1000px) {
  body {
    width: 1000px; } }
.w980 {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 10px; }
@media screen and (max-width: 768px) {
  .w980 {
    padding: 0 15px;
  }
}

.btn01 {
  background: #223250;
  text-align: center;
  color: #fff;
  padding: .8em;
  width: 17em;
  display: block;
  margin: 0 auto;
  border-radius: 2em;
  position: relative;
  text-decoration: none!important;
  border: none; }
  @media screen and (max-width: 768px) {
    .btn01 {
      width: 90%; } }
  .btn01:before {
    position: absolute;
    content: "";
    top: 1em;
    right: 20px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

.btn01:hover {
  color: #fff; }

.btn02 {
  background: #999;
  text-align: center;
  color: #fff;
  padding: .8em;
  width: 17em;
  display: block;
  margin: 0 auto;
  border-radius: 2em;
  position: relative;
  border: none; }
  @media screen and (max-width: 768px) {
    .btn02 {
      width: 90%; } }
  .btn02:before {
    position: absolute;
    content: "";
    top: 1em;
    right: 20px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

.btn02:hover {
  color: #fff; }
.buttons {
  display: flex;
  justify-content: center;
}
.buttons .btn01,
.buttons .btn02 {
  margin: 0 1em;
}

.animated {opacity: 0;}

/**************************
*
* ヘッダフッタここから
*
**************************/
@keyframes show{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}
.pc_header {
  position: relative;
  margin-bottom: -78px;
  z-index: 1;
  background: rgba(255, 255, 255, 0.9);
  height: 76px; }
  .pc_header h1 img {
    width: 280px; }  
  .pc_header ul li a {transform: rotate(0.03deg);}
  .pc_header .navbar {
    padding: 0;
    position: static; }
  .pc_header .dropdown {    
    position: static; }
  .pc_header .dropdown:hover > .dropdown-menu {
    display: block;
    animation: show .5s linear 0s; }
  .pc_header .dropdown-menu {
    padding: 25px 0;
    width: 100%;
    border: none;
    background: rgba(255, 255, 255, 0.9);
    left: 0;
    border-radius: 0;
    top: 74px;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .pc_header .nav-item {
    line-height: .9em; }
    .pc_header .nav-item > a {
      padding: 2.1em 0!important;
      position: relative; }
      .pc_header .nav-item > a:not(:last-child):before {
        position: absolute;
        content: "";
        top: 48%;
        right: -1em;
        width: 5px;
        height: 5px;
        background: #d5eae6;
        border-radius: 5px; }
      .pc_header .nav-item:nth-last-child(2) > a::before {
        display: none;
      }
    .pc_header .nav-item:not(:last-child) {
      padding-right: 1em;
      padding-left: 1em; }
    .pc_header .nav-item:hover > a span {
      color: #fff;
      background: #223250;
      }
  .pc_header .nav-item:not(:last-child):hover .nav-link {
    padding-right: .0rem;
    padding-left: .0rem; }
  .pc_header .nav-item.english > a {
    color: #223250; }
    .pc_header .nav-item.english > a span {
      width: 9em;
      background: #d5eae6;
      border-radius: 2em;
      padding: .5em 1em;
      text-align: center;
      -webkit-transition: all 0.5s;
      transition: all 0.5s; }
  .pc_header .nav-item.english:hover {
    padding-right: 0;
    padding-left: 0; }
    .pc_header .nav-item.english:hover > a span {
      color: #fff;
      background: #223250; }
  .pc_header .dropdown-menu > .style-flex {
    max-width: 850px;
    margin: 0 auto;
    align-items: center; }
    .pc_header .dropdown-menu > .style-flex .cateA {
      width: 180px;
      margin-right: 27px; }
    .pc_header .dropdown-menu > .style-flex .cateB {
      border-left: 1px solid; }
  .pc_header .dropdown-menu .drop_ul,
  .drawer-menu li{
    transform: rotate(0.03deg);
  }
  .pc_header .dropdown-menu > .style-flex .-activity .drop_ul {
    margin-left: 2em;
  }
  .pc_header .dropdown-menu > .style-flex .-activity .drop_ul:last-of-type {
    border-top: 1px solid #e1e8e7;
  }
  .pc_header .dropdown-menu > .style-flex .-activity .drop_ul li,
  .pc_header .dropdown-menu > .style-flex .-about .drop_ul li {
    display: inline-block;
    min-width: 10%;
    margin: .8em 2em;
  }
  .pc_header .dropdown-menu > .style-flex .-activity .drop_ul li {
    margin-left: 0;
  }
  .pc_header .drop_ul li {
    margin: 1.5em 2em;
    white-space: nowrap; }
    .pc_header .drop_ul li a {
      position: relative;
      color: #223250; }
      .pc_header .drop_ul li a:before {
        position: absolute;
        content: "";
        right: -15px;
        top: .3em;
        width: 10px;
        height: 10px;
        border-top: 2px solid #223250;
        border-right: 2px solid #223250;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
      .pc_header .drop_ul li a:after {
        position: absolute;
        left: 0;
        bottom: -2px;
        width: 0;
        height: 2px;
        background-color: #223250;
        transition: all .2s;
        content: '';
      }
  .pc_header .nav-item > a span {
    display: block;
    padding: .5em 10px;
    border-radius: 2em;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }
  .pc_header .navbar-nav {
    align-items: center; }
  .pc_header .navbar-nav a:hover {
    opacity: 1; }
  .pc_header .navbar-nav a:hover::after {
    width: calc(100% + 30px);
  }

footer {
  padding: 60px 0 25px 0;
  background: #d5eae6;
  transform: rotate(0.03deg);
  }
  @media screen and (max-width: 768px) {
    footer {
      padding: 0px 0 25px 0; } }
  footer .style-flex {
    justify-content: space-between; }
    footer .style-flex > div {
      width: 30%; }
      footer .style-flex > div a {
        display: block;
        padding-left: 1em;
        margin-bottom: 1.5em; }
  footer .ttl {
    font-size: 20px;
    font-weight: bold;
    border-bottom: 1px solid #8cbab2;
    padding-bottom: .9em;
    margin-bottom: 1.1em; }

.ft_logo {
  background: #fff;
  padding: 10px 20%; }

.ft_btm {
  text-align: center;
  margin-top: 55px; }
  @media screen and (max-width: 768px) {
    .ft_btm {
      margin-top: 0; } }
  .ft_btm .style-flex {
    justify-content: center;
    align-items: center; }
  .ft_btm li {
    margin: 1.5em;
    position: relative; }
    .ft_btm li:not(:first-child):before {
      position: absolute;
      content: "";
      top: 31%;
      left: -1.5em;
      width: 5px;
      height: 5px;
      background: #fff;
      border-radius: 5px; }      
    .ft_btm li.sns {
      display: flex; }
      @media screen and (max-width: 768px) {
        .ft_btm li.sns {
          justify-content: center;
          margin: 1em; } }
      .ft_btm li.sns a {
        display: inline-block;
        width: 30px;
        margin: 0 3px; }
  .ft_btm li.sns::before { display: none; }
  .ft_btm p {
    font-size: 12px; }
    @media screen and (max-width: 768px) {
      .ft_btm p {
        font-size: 10px; } }

/**************************
*ヘッダフッタのスマホここから
*
*
**************************/
.drawer-nav {
  overflow: scroll; }

.drawer-dropdown .drawer-caret {
  display: none; }

.drawer-menu-item {
  position: relative;
  color: #223250; }
  .drawer-menu-item:before {
    position: absolute;
    content: "";
    right: 1.5em;
    top: 1em;
    width: 10px;
    height: 10px;
    border-top: 2px solid;
    border-right: 2px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .drawer-menu-item .drawer-menu {
    font-size: 16px; }

.drawer-dropdown.open .drawer-menu-item:before {
  -webkit-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  transform: rotate(225deg); }

.drawer-menu li {
  text-align: center; }

.drawer-dropdown.open {
  background: #223250; }
  .drawer-dropdown.open a {
    color: #fff;
    text-decoration: none; }
    .drawer-dropdown.open a.drawer-dropdown-menu-item {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 50px;
      color: #223250;
      background: #d5eae6;
      border-bottom: 1px solid;
      line-height: 1.2; }

li.nav_info a {
  line-height: 1.3;
  padding: .9em; }

.sp_header .nav-item.english {
  display: flex;
  justify-content: center;
  padding: 1em 0; }
  .sp_header .nav-item.english span {
    border-radius: 2em;
    padding: 0.1em 1.2em;
    text-align: center;
    background: #d5eae6; }
  .sp_header .nav-item.english .on span {
    background: #fff; }

span.drawer-hamburger-icon {
  background: none; }

.drawer-hamburger-icon:after,
.drawer-hamburger-icon:before {
  background-color: #fff;
  width: 70%;
  margin-left: 6px; }

.drawer-hamburger-icon:before {
  top: -10px; }

.drawer-hamburger-icon:after {
  top: 0px; }

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
  top: -4px; }

button.drawer-toggle.drawer-hamburger {
  background: #223250;
  border-radius: 50%;
  right: 10px;
  top: 10px;
  padding: 0;
  width: 40px;
  height: 40px; }

h1 {
  padding: 1.2em; }
  h1 img {
    width: 280px;
    display: block; }
.sp_header {  
  padding: 1.2em 3%;
}
.sp_header h1 { padding: 0; }
@media screen and (max-width: 375px) {
  h1 img { width: 280px; }
}
@media screen and (max-width: 320px) {
  h1 img { width: 230px; }
}

/**************************
*
* TOP
*
**************************/
.top {
  padding-top: 178px;
  padding-bottom: 65px;
  background: #e1e8e7;
  position: relative; }
  @media screen and (max-width: 768px) {
    .top {
      padding-top: 75px; } }
  .top:before {
    position: absolute;
    content: "";
    top: 50px;
    left: calc(50% - 5px);
    width: 5px;
    height: 72px;
    background: url(../images/circle.png) no-repeat center/contain; }
    @media screen and (max-width: 768px) {
      .top:before {
        top: 20px;
        height: 44px; } }

.top_mv {
  position: relative;
  overflow: hidden;
  width: 1000px;
  display: flex;
  margin: 0 auto;
  padding: 185px 0 100px; }
  @media screen and (max-width: 768px) {
    .top_mv {
      width: auto;
      padding: unset; } }
  .top_mv video {
    min-width: 100%; }

.kijiWrap {
  margin-bottom: 63px; }

.kiji {
  position: relative;
  display: block;
  background-color: #fff;
  border-radius: 5px;
  margin: 5px;
  flex: 1; }
  @media screen and (max-width: 768px) {
    .kiji {
      margin-bottom: 30px; } 
    
    .kiji .desc .excerpt {
      -webkit-line-clamp: 3!important;
    }
  }
  @media screen and (min-width: 769px) {
    .kiji::after {
      position: absolute;
      top: 50%;
      left: 50%;
      opacity: 0;
      width: 200px;
      border: 1px solid #fff;
      line-height: 40px;
      color: #fff;
      border-radius: 40px;
      text-align: center;
      -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
      transition: opacity 0.5s, transform 0.5s;
      content: 'VIEW MORE';
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 10;
    }
    .kiji::before {  
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #0da0a9;
      z-index: 9;
      opacity: 0;
      border-radius: 5px;
      -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
      transition: opacity 0.35s, transform 0.35s;
      content: '';
    }
    .kiji:hover::before {
      opacity: .5;
    }
    .kiji:hover::after {
      opacity: 1;
    }
  }
  .kiji .thumb img {
    object-fit: cover;
    width: 100%;
    height: 100%; }
  .kiji .desc {    
    padding: 18px;
     }
    .kiji .desc .title {      
      width: 304px;
      font-weight: bold;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    @media screen and (max-width: 768px) {
      .kiji .desc .title {        
        width: 100%;
      }
    }
    .kiji .desc .excerpt {
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 11;
      overflow: hidden;
      transform: rotate(0.03deg);
    }
     
  .kiji .meta {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1em; }
    .kiji .meta .cateWrap {
      flex: 1; }
      .kiji .meta .cateWrap p {
        display: inline-block;
        color: #fff;
        font-size: 10px;
        border-radius: 3px;
        padding: 4px;
        border: 1px solid #223250;
        }
        .kiji .meta .cateWrap p.cate01 {
          background: #223250; }
        .kiji .meta .cateWrap p.cate02 {
          color: #223250;
          border-radius: 0;
          border: none; }
          .kiji .meta .cateWrap p.cate02::before {
            content: '#';
          }
        .kiji .meta .cateWrap p.cate03 {
          background: #223250; }
        .kiji .meta .cateWrap p.cate04 {
          background: #223250; }
          .kiji .meta .cateWrap p.purple-bg {
          background: #5c4fa5;
          border: none; }
          .kiji .meta .cateWrap p.gray-bg {
          background: #999;
          border: none; }
    .kiji .meta time {
      font-weight: bold;
      text-align: right; }

.kiji_style01 {
  display: flex; }
  @media screen and (max-width: 768px) {
    .kiji_style01 {
      display: block; } }
  .kiji_style01 .thumb {
    width: 610px;
    max-height: 290px;
    border-radius: 5px 0 0 5px; }
    @media screen and (max-width: 768px) {
      .kiji_style01 .thumb {
        width: auto;
        height: 190px;
        border-radius: 5px 5px 0 0; } }
    .kiji_style01 .thumb > img {
      border-radius: 5px 0 0 5px; }
      @media screen and (max-width: 768px) {
        .kiji_style01 .thumb > img {
          border-radius: 5px 5px 0 0; } }
  .kiji_style01 .desc {
    flex: 1; }
  .kiji_style01 .desc .title {    
    width: 300px;
  }
  @media screen and (max-width: 768px) {
    .kiji_style01 .desc .title {      
      width: 100%;
    }
  }
  .kiji_style01 .meta {
    margin-bottom: 2em; }

.kiji_style02 {
  flex: 1; }
  .kiji_style02 .thumb {
    height: 290px;
    width: auto;
    border-radius: 5px 5px 0 0; }
    @media screen and (max-width: 768px) {
      .kiji_style02 .thumb {
        height: 190px; } }
    .kiji_style02 .thumb > img {
      border-radius: 5px 5px 0 0; }
  .kiji_style02 .desc .title {    
    width: 439px;
  }
  @media screen and (max-width: 768px) {
    .kiji_style02 .desc .title {      
      width: 100%;
    }
  }
  .kiji_style02 .desc .excerpt {
    -webkit-line-clamp: 4;
  }
.kijiWrap .style-flex > a {
  width: 48%;
}
.kijiWrap .r {
  width: 48%; }
  @media screen and (max-width: 768px) {
    .kijiWrap .style-flex > a {
      width: initial;
    }
    .kijiWrap .r {
      width: initial; }
  }
  .kijiWrap .r > .kiji:not(:last-child) {
    margin-bottom: 10px; }
    @media screen and (max-width: 768px) {
      .kijiWrap .r > .kiji:not(:last-child) {
        margin-bottom: 30px; } }

.kiji_style03 {
  display: flex;
  height: calc(25% - 10px); }
  @media screen and (max-width: 768px) {
    .kiji_style03 {
      display: block; } }
  .kiji_style03 .thumb {
    width: 125px;
    border-radius: 5px 0 0 5px; }
    @media screen and (max-width: 768px) {
      .kiji_style03 .thumb {
        width: auto;
        border-radius: 5px 5px 0 0;
        height: 190px; } }
    .kiji_style03 .thumb > img {
      border-radius: 5px 0 0 5px; }
      @media screen and (max-width: 768px) {
        .kiji_style03 .thumb > img {
          border-radius: 5px 5px 0 0; } }
  .kiji_style03 .desc {
    flex: 1;
    border-radius: 0 0 5px 5px; }
  .kiji_style03 .desc .title,
  .kiji_style04 .desc .title {    
    width: 300px;
  }
  @media screen and (max-width: 768px) {
    .kiji_style03 .desc .title,
    .kiji_style04 .desc .title {      
      width: 100%;
    }
  }
  .kiji_style03 .desc .excerpt,
  .kiji_style04 .desc .excerpt {
    -webkit-line-clamp: 1;
  }

.kiji_style04 {
  height: calc(25% - 10px); }

.top_tw.w980 {
  margin-top: 65px;
  max-width: 620px; }

/**************************
*TOP
* 下層共通モジュール(複数箇所で使うもの)
**************************/
.inner {
  padding-bottom: 65px;   }
  @media screen and (max-width: 768px) {
    .inner {
      padding-bottom: 30px;
      overflow: hidden; } }

.inner_mv {
  background-image: url(../images/ttl_bg_news.jpg);
  background-size: cover;
  text-align: center;
  padding: 163px 0 72px 0; }
  @media screen and (max-width: 768px) {
    .inner_mv {
      padding: 60px 0; } }
  .inner_mv img {
    height: 112px;
    width: auto; }
    @media screen and (max-width: 768px) {
      .inner_mv img {
        width: auto;
        height: 40px; } }

.about .inner_mv {
  background-image: url(../images/ttl_bg_about.jpg); }

.projects .inner_mv {
  background-image: url(../images/ttl_bg_PROJECTS.jpg); }

.event .inner_mv {
  background-image: url(../images/ttl_bg_event.jpg); }

.publicrel .inner_mv {
  background-image: url(../images/ttl_bg_publicrel.jpg); }

.member .inner_mv {
  background-image: url(../images/ttl_bg_MEMBER.jpg); }

.contact .inner_mv {
  background-image: url(../images/ttl_bg_contact.jpg); }

.terms .inner_mv {
  background-image: url(../images/ttl_bg_terms.jpg); }

.breadcrumb_nav {
  background-color: #d5eae6; }

.breadcrumb {
  margin-bottom: 0;
  padding: .6em 0;
  list-style: none;
  border-radius: 0;
  background-color: unset; }
  @media screen and (max-width: 768px) {
    .breadcrumb {
      padding-left: 10px; } }

.breadcrumb-item + .breadcrumb-item::before {
  content: ">"; }

.breadcrumb-item.active {
  color: unset; }

.ttl_h2 {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  padding: 1.8em;
  background: #223250;
  color: #fff; }
  @media screen and (max-width: 768px) {
    .ttl_h2 {
      font-size: 16px; } }

.ttl_h3 {
  max-width: 840px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 2em auto;
  position: relative;
  display: flex;
  justify-content: center; }  
  .ttl_h3 span {
    position: relative; }
    .ttl_h3 span:before, .ttl_h3 span:after {
      content: '';
      position: absolute;
      top: 50%;
      display: inline-block;
      width: 30px;
      height: 2px;
      background: #223250; }
    .ttl_h3 span:before {
      left: -2.5em; }
    .ttl_h3 span:after {
      right: -2.5em; }
  @media screen and (max-width: 768px) {
    .ttl_h3 {
      max-width: calc(100% - 80px);
      margin: 2em auto;
      font-size: 15px; }
    .ttl_h3 span:before, .ttl_h3 span:after {
      width: 15px; }
    .ttl_h3 span:before {
      left: -25px; }
    .ttl_h3 span:after {
      right: -25px; }  
  }

.ttl_h4 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px; }

.p01 {
  margin-bottom: 20px;
  line-height: 20px; }
.p01 strong { font-weight: bold; }
  @media screen and (max-width: 768px) {
    .p01 {
      margin-bottom: 20px;
      line-height: 22px;
      font-size: 16px; } }
p.small,
p.wp-caption-text {
  font-size: 10px;
  margin-top: 1em; }
  @media screen and (max-width: 768px) {
    p.small,
    p.wp-caption-text {
      font-size: 12px;
      margin-bottom: 2em; } }

.dlStyle01 dl {
  display: flex;
  margin-bottom: 35px; }
  @media screen and (max-width: 768px) {
    .dlStyle01 dl {
      display: block;
      margin-bottom: 10px; } }
  .dlStyle01 dl dt {
    width: 150px;
    font-size: 16px;
    font-weight: bold; }
    @media screen and (max-width: 768px) {
      .dlStyle01 dl dt {
        text-align: center;
        border: 1px solid;
        width: 100%;
        padding: .8em; } }
  .dlStyle01 dl dd {
    flex: 1; }
    @media screen and (max-width: 768px) {
      .dlStyle01 dl dd {
        border: 1px solid;
        padding: .8em;
        margin-top: -1px; } }

.dlStyle02 dl {
  display: flex;
  line-height: 1.5; }
.dlStyle02 dt {
  font-weight: bold; }
  @media screen and (max-width: 768px) {
    .dlStyle02 dt {
      width: 4em; } }
.dlStyle02 dd {
  flex: 1; }

.ulStyle01 {
  list-style: decimal;
  line-height: 1.5;
  list-style-position: inside; }
  @media screen and (max-width: 768px) {
    .ulStyle01 {
      text-indent: -1.3em;
      padding-left: 1em; } }

.ulStyle02 {
  list-style: disc;
  padding-left: 1.5em;
  line-height: 1.5; }

.ulStyle03 {
  list-style: disc;
  padding-left: 1.5em;
  line-height: 2.5; }

.mt-1em {
  margin-top: 3em; }

.mt-2em {
  margin-top: 2em; }

.mt-4em {
  margin-top: 4em; }

.mb-4em {
  margin-bottom: 4em; }

.triangle p {
  margin-bottom: 15px;
  text-indent: -2em;
  padding-left: 2em;
  padding-right: 2em; }
.triangle a {
  position: relative;
  padding-left: 2em;
  /*color: #0059ff;*/
  text-decoration: underline; }
  .triangle a::before {
    position: absolute;
    content: "";
    left: 0;
    top: 2px;
    box-sizing: border-box;
    width: 10px;
    height: 7px;
    border: 7px solid transparent;
    border-left: 10px solid #223250; }
  .triangle a:after {
    position: absolute;
    content: "";
    bottom: 0;
    right: -30px;
    width: 14px;
    height: 16px;
    background: url(../images/icon_pdf.png) no-repeat center/contain; }
  .triangle .noicon a::after { display: none; }
.sosikizu {
  width: 94%;
  margin: 0 auto;
  display: block; }

.tyousa_list {
  width: 100%;
  text-align: center;
  line-height: 3em; }
  @media screen and (max-width: 768px) {
    .tyousa_list {
      display: none; } }
  .tyousa_list .ttl_h4 {
    border-bottom: 1px solid; }
  .tyousa_list tr {
    margin-bottom: 1em; }
    .tyousa_list tr td {
      margin-top: 1em; }

.tyousa_list_sp_Wrap {
  margin-top: -3em; }
  .tyousa_list_sp_Wrap table {
    width: 100%;
    margin-bottom: 1em; }
    .tyousa_list_sp_Wrap table tr {
      border: 1px solid; }
      .tyousa_list_sp_Wrap table tr th {
        width: 7em;
        padding: .5em; }

.pdfBox {
  display: block;
  background: #e5e5e5;
  font-size: 16px;
  font-weight: bold;
  padding: 1em;
  width: 740px;
  margin: 0 auto;
  margin-bottom: 2em;
  text-decoration: none!important; }
.pdfBox:hover {
  color: unset;
}  
  @media screen and (max-width: 768px) {
    .pdfBox {
      width: auto;
      text-indent: -3.8em;
      padding-left: 5em; } }
  .pdfBox img {
    width: 30px;
    margin-right: 30px;
    margin-bottom: -10px; }
    @media screen and (max-width: 768px) {
      .pdfBox img {
        vertical-align: middle; } }

.ma_article_Wrap {
  flex-wrap: wrap;
  display: flex;
  justify-content: space-between;
  margin: 0 -10px; }
  @media screen and (max-width: 768px) {
    .ma_article_Wrap {
      margin: 0; } }
  .ma_article_Wrap > article {
    width: 50%;
    padding: 0 5px; }
    .ma_article_Wrap .news_kiji .desc .excerpt {
        -webkit-line-clamp: 9;
    }
    @media screen and (max-width: 768px) {
      .ma_article_Wrap > article {
        width: 100%;
        padding: 0; }
        .ma_article_Wrap > article .desc {
          padding: 1em 0;
          flex: 1;
          padding-left: 1em; }
        .ma_article_Wrap .news_kiji .desc .excerpt {
          -webkit-line-clamp: 4;
        }
      }              
    .ma_article_Wrap > article .news_kiji {
      display: flex;
      height: auto;
      padding: 10px; }
      .ma_article_Wrap > article .news_kiji .thumb {
        width: 180px;
        border-radius: 0;
        padding: 20px;
        padding-right: 0; }
        .ma_article_Wrap > article .news_kiji .thumb > img {
          object-fit: contain; }
        @media screen and (max-width: 768px) {
          .ma_article_Wrap > article .news_kiji .thumb {
            width: 40%;
            border-radius: 0;
            padding: 0;
            padding-right: 0;
            height: auto; } }

/**************************
*下層共通モジュール
*news
**************************/
.tagWrapWrap {
  margin-bottom: 30px; }

.tagWrap li {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 10px; }
  .tagWrap li a {
    display: block;
    color: #fff;
    font-size: 12px;
    border-radius: 3px;
    padding: 4px;
    text-decoration: none;
    border: 2px solid #223250; }
    .tagWrap li a.cate01 {
      color: #223250;
      background: #fff; }
    .tagWrap li a.cate02 {      
      border-radius: 0;
      border: none;
      color: #223250; }
    .tagWrap li a.cate02::before { content: '#'; }
    .tagWrap li a.cate02.active { color: #223250; font-weight: bold; background: none; }
    .tagWrap li a.active {
      color: #fff;
      background: #223250; }

.news_kiji {
  display: flex;
  height: 125px;
  border: 1px solid #b5b5b5;
  border-radius: 5px;
  background-color: #fff;
  margin: 5px;
  margin-bottom: 18px;
  text-decoration: none;
  flex: 1; }
.news_kiji:hover {
  color: unset;
  text-decoration: none;
}
.news_kiji.-information {
  min-height: 125px;
  height: auto;
}
.news_kiji.-information a {
  text-decoration: underline;
}
.news_kiji.-information a:hover {
  color: #009eb1;
  text-decoration: underline;
}
  @media screen and (max-width: 768px) {
    .news_kiji {
      display: block;
      height: auto; }
    .news_kiji.-information {
      min-height: initial;
    }
  }    
  .news_kiji .thumb {
    width: 200px;
    border-radius: 5px 0 0 5px; }
    @media screen and (max-width: 768px) {
      .news_kiji .thumb {
        width: auto;
        border-radius: 4px 4px 0 0;
        height: 190px; } }
    .news_kiji .thumb > img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      border-radius: 4px 0 0 4px; }
  .news_kiji .desc {
    padding: 18px;
    flex: 1; }
  .news_kiji .meta {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 1em; }    
    .news_kiji .meta .cateWrap {
      display: flex;
      flex-wrap: wrap; }
    .news_kiji .meta p {
      display: block;
      color: #fff;
      font-size: 10px;
      border-radius: 3px;
      padding: 4px;
      border: 1px solid #223250;
      margin-right: 5px; }
      .news_kiji .meta p.cate01 {
        background: #223250; }
      .news_kiji .meta p.cate02 {
        color: #223250;
        border-radius: 0;
        border: none;
      }
      .news_kiji .meta p.cate02::before {
        content: '#';
      }
      .news_kiji .meta p.purple-bg {
      background: #5c4fa5;
      border: none; }
      .news_kiji .meta p.gray-bg {
      background: #999;
      border: none; }
    .news_kiji .meta time {
      display: inline-block;
      font-weight: bold;
      margin-left: 10px; }
    .news_kiji .desc .title {      
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      font-weight: bold;
      overflow: hidden;
    }
    .news_kiji .desc .excerpt {
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden;
    }
    .news_kiji.-information .desc .excerpt {
      display: block;
    }

.pagination {
  justify-content: center;
  margin: 4em 0 0 0; }

.page-link,
.page-numbers {
  position: relative;
  display: block;
  padding: .25em 0;
  margin-left: -1px;
  line-height: unset;
  color: unset;
  background-color: #fff;
  border: 1px solid;
  border-radius: 50%;
  width: 2em;
  text-decoration: none;
  text-align: center;
  margin: 0 .5em; }
.page-link:hover,
.page-numbers:hover {
  color: unset;
  text-decoration: none;
}
.page-item:first-child .page-link,
.page-item:last-child .page-link,
.page-numbers.current {
  /* margin-left: 0; */
  border-top-left-radius: 50%;
  border-bottom-left-radius: 50%;
  border-top-right-radius: 50%;
  border-bottom-right-radius: 50%;
  background: #223250;
  color: #fff; }



/**************************
*about
*event
**************************/
@media print, screen and (min-width: 769px) {
  .event_article_Wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; } }
@media print, screen and (min-width: 769px) {
  .event_article_Wrap article {
    width: calc(50% - 5px); } }
.event_article_Wrap article .news_kiji {
  display: block;
  height: auto; }
  .event_article_Wrap article .news_kiji .thumb {
    width: auto;
    height: 155px; }
  .event_article_Wrap .news_kiji .desc .excerpt {
    -webkit-line-clamp: 4;
  }
  .inner:not(.projects) .event_article_Wrap .news_kiji .meta {
    display: block;
  }
  .inner:not(.projects) .event_article_Wrap .news_kiji .cateWrap {
    flex-wrap: wrap;
  }
  .inner:not(.projects) .event_article_Wrap .news_kiji .cateWrap p {
    margin: .2em 5px 0 0;
  }
  .inner:not(.projects) .event_article_Wrap .news_kiji time {
    display: block;
    margin: 0.5em 0 0 0;
  }
  .notfound {
    margin: 20px auto;
    font-size: 16px;
    font-weight: 700;
  }
/**************************
*event
*publicrel
**************************/
@media screen and (max-width: 768px) {
  .publicrel .inner_mv img {
    height: 30px; } }
.publicrel .triangle a:after {
  position: static; }
.publicrel .kouhou {
  justify-content: center;
  margin: 0 auto;
  margin-top: 3em; }
  .publicrel .kouhou p {
    text-align: center; }
    @media screen and (max-width: 768px) {
      .publicrel .kouhou p {
        margin-bottom: 2em; } }
    .publicrel .kouhou p img {
      width: 137px;
      display: block;
      margin: 0 auto;
      margin-bottom: 2em; }
      @media screen and (max-width: 768px) {
        .publicrel .kouhou p img {
          width: 155px; } }

/**************************
*news
*about
**************************/
.about .leadarea {
  display: flex;
  justify-content: space-between;
  max-width: 720px;
  margin: 63px auto;
  margin-top: 70px; }
  @media screen and (max-width: 768px) {
    .about .leadarea {
      display: block;
      margin: 0 auto 60px; } }
  .about .leadarea .leaditem {
    text-align: center; }
    @media screen and (max-width: 768px) {
      .about .leadarea .leaditem {
        text-align: left;
        display: flex;
        align-items: center;
        margin-bottom: 20px;
        padding-left: 14px; } }
    .about .leadarea .leaditem img {
      height: 108px;
      width: auto; }
      @media screen and (max-width: 768px) {
        .about .leadarea .leaditem img {
          height: 75px; } }
    .about .leadarea .leaditem p {
      font-size: 22px;
      font-weight: bold;
      margin-top: 1em; }
      @media screen and (max-width: 768px) {
        .about .leadarea .leaditem p {
          font-size: 16px;
          margin-top: 0;
          margin-left: 2em; } }
.about .nenpyo dl {
  margin-bottom: .5em; }
.about .nenpyo dt {
  font-size: 14px;
  width: auto;
  margin-right: 1em; }
  @media screen and (max-width: 768px) {
    .about .nenpyo dt {
      border: none;
      padding: 0;
      text-align: left; } }
@media screen and (max-width: 768px) {
  .about .nenpyo dd {
    border: none;
    padding: 4px 0 10px 0; } }
.about .chairman {
  float: left;
  width: 176px;
  margin-right: 26px; }
  @media screen and (max-width: 768px) {
    .about .chairman {
      float: none;
      display: block;
      margin: 0 auto;
      margin-bottom: 2em; } }
.about .chairman_name {
  text-align: right; }
  .about .chairman_name span {
    font-size: 16px;
    font-weight: bold;
    margin-left: 1em; }
.about .outlinemap {
  width: 470px;
  float: right;
  margin-top: -60px; }
  .about .outlinemap.sp {
    width: 100%;
    float: none;
    margin-top: 1em; }
.about .accessArea {
  border-bottom: 1px solid;
  padding-bottom: 40px; }
  .about .accessArea .l {
    flex: 1; }
  .about .accessArea .r {
    margin-top: 40px;
    text-align: center;
  }
  .about .accessArea .r iframe,
  .about .accessArea .r #map {
    max-width: 825px;
    width: 100%;
    height: 450px;
    text-align: left; }
  .about .accessArea #firstHeading {
      font-weight: bold;
      font-size: 16px;
      padding: 0;
   }
   .about .accessArea a {
    color: blue;
    text-decoration: underline;
   }
    @media screen and (max-width: 768px) {
      .about .accessArea .r {
        width: 100%;
        margin-top: 2em; }
        .about .accessArea .r iframe,
        .about .accessArea .r #map {
          width: 100%;
          height: 425px; } }

.secStyle01 {
  border: 1px solid;
  padding: 20px 10px 0;
  margin-bottom: 30px; }
  .secStyle01 h4 {
    border-bottom: 1px solid;
    padding-bottom: 27px; }
    @media screen and (max-width: 768px) {
      .secStyle01 h4.indent {
        text-indent: -3.3em;
        padding-left: 3.3em; }
        .secStyle01 h4.indent img {
          vertical-align: middle; } }
    .secStyle01 h4 img {
      width: 32px;
      margin-bottom: -9px;
      margin-right: 20px; }

/**************************
*recruit
**************************/
.recruit p {
  margin: 30px 0 20px 0;
  line-height: 20px;
}
.recruit a {   
  text-decoration: underline;
}
.recruit table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
.recruit table th {
  width: 150px;
  font-size: 16px;
  font-weight: bold;
}
.recruit table td {
  padding: 0 0 30px 0;
}
@media screen and (max-width: 768px) {
  .recruit table th,
  .recruit table td {
    display: block;
    width: 100%;
    padding: .8em;
    border: 1px solid #223250;
  }
  .recruit table th {
    text-align: center;
  }
  .recruit table td {
    margin: -1px 0 10px 0;
  }
}
/**************************
*about
*projects
**************************/
.projects .style-flexStyle01 {
  justify-content: space-between;
  margin-bottom: 66px; }
  .projects .style-flexStyle01 .l, .projects .style-flexStyle01 .r {
    width: calc(50% - 10px); }
    @media screen and (max-width: 768px) {
      .projects .style-flexStyle01 .l, .projects .style-flexStyle01 .r {
        width: 100%;
        margin-bottom: 2em; } }
.projects .tyousa_box {
  margin-top: 50px;
  margin-right: -20px;
  margin-bottom: 63px; }
  @media screen and (max-width: 768px) {
    .projects .tyousa_box {
      margin-right: 0; } }
  .projects .tyousa_box > div {
    width: 33.3%;
    margin-right: 20px; }
    @media screen and (max-width: 768px) {
      .projects .tyousa_box > div {
        width: 70%;
        margin-right: 0;
        margin: 0 auto; } }
    .projects .tyousa_box > div p {
      margin-top: 1em; }
      @media screen and (max-width: 768px) {
        .projects .tyousa_box > div p {
          margin-top: .5em;
          margin-bottom: 2em; } }
.projects .guidebook {
  align-items: center;
  justify-content: space-around;
  margin: 50px 0 50px 0; }
  .projects .guidebook .circle01 {
    background: #f4dca2;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 10em;
    height: 10em; }
    @media screen and (max-width: 768px) {
      .projects .guidebook .circle01 {
        margin: 0 auto;
        margin-bottom: 2em; } }
.projects .seido_listWrap {
  margin-top: 60px;
  margin-bottom: 40px; }
  @media screen and (max-width: 768px) {
    .projects .seido_listWrap {
      display: none; } }
.projects .seido_list {
  width: 100%;
  text-align: center;
  line-height: 1.5;
  border-collapse: separate;
  border-spacing: 0 30px; }
  .projects .seido_list .ttl_h4Wrap th {
    vertical-align: middle;
    border-bottom: 1px solid; }
  .projects .seido_list p {
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2em; }
  .projects .seido_list.mei {
    flex: 1; }
.projects .seido_list_sp_Wrap {
  margin-top: 2em; }
  .projects .seido_list_sp_Wrap table {
    width: 100%;
    margin-bottom: 1em;
    border-collapse: collapse!important;
    border-spacing: 0!important; }
    .projects .seido_list_sp_Wrap table tr {
      border: 1px solid; }
      .projects .seido_list_sp_Wrap table tr th {
        width: 8em;
        padding: .5em; }
      .projects .seido_list_sp_Wrap table tr td {
        padding: .5em;
         }
.projects td {
  vertical-align: middle; }

@media screen and (max-width: 768px) {
  .style-flex.style-flexStyle01.mb-0.flexRe {
    display: flex;
    flex-direction: column-reverse; }
    .style-flex.style-flexStyle01.mb-0.flexRe .l {
      margin-bottom: -2em; } }
.secStyle02Wrap {
  justify-content: space-between; }

.secStyle02 {
  padding: 20px 10px 0;
  margin-bottom: 30px; }
  @media screen and (max-width: 768px) {
    .secStyle02 {
      width: 100%; } }
  .secStyle02 h4 {
    border-bottom: 1px solid;
    padding-bottom: 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 4em;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .secStyle02 h4 {
        height: auto; } }

.fukidasi {
  text-align: center;
  margin: 2em 0; }
  .fukidasi img {
    width: 30px;
    height: auto;
    margin: 0 15px -10px 0; }

.nagareImg {
  width: 80%;
  margin: 0 auto;
  display: block;
  margin-top: 50px; }
  @media screen and (max-width: 768px) {
    .nagareImg {
      width: 100%; } }

/**************************
*projects
*member
**************************/
.member .sosikizu {
  width: 75%;
  margin-top: 3em; }
  @media screen and (max-width: 768px) {
    .member .sosikizu {
      width: 100%;
      margin-top: 2em; } }
.member .tyousa_list_sp_Wrap {
  margin-top: 0; }
@media print, screen and (min-width: 769px) {
  .member .triangle.kaiin {
    display: flex;
    flex-wrap: wrap; }
    .member .triangle.kaiin .pWrap {
      width: 50%; } }
.member .triangle.kaiin a:after {
  background: url(../images/icon_link.png) no-repeat center/contain; }
.member .service_merit {
  margin-bottom: 1em;
  list-style: decimal;
  line-height: 2;
  list-style-position: inside;
  text-indent: -1.2em;
  padding-left: 1.2em; }
  .member .service_merit li {
    line-height: 1.5;
    margin-bottom: .7em; }
.member .ti_p {
  text-indent: -3em;
  padding-left: 2.5em; }
.member .kaihi .l {
  width: 500px;
  margin-right: 2em; }
  @media screen and (max-width: 768px) {
    .member .kaihi .l {
      width: 100%; } }
.member .kaihi .r {
  flex: 1; }
  .member .kaihi .r .pdfBox {
    width: 100%;
  }

/**************************
*member
*contact
**************************/
.formWrap {
  margin-bottom: 5em; }
  @media screen and (max-width: 768px) {
    .formWrap {
      padding: 0 10px; } }
  .formWrap p {
    margin: 2em 0; }
  .formWrap .dfjs {
    display: flex;
    justify-content: space-between;
    font-weight: bold; }
    @media print, screen and (min-width: 769px) {
      .formWrap .dfjs {
        padding-right: 0; } }
    .formWrap .dfjs span {
      background: red;
      color: #fff;
      font-size: .8em;
      padding: .3em .8em;
      display: inline-block;
      height: 25px; }
    .formWrap .error {
      display: block;
      color: red;
    }
  .formWrap label.form-check-label {
    margin-right: 1em; }
  .formWrap .fend {
    align-items: flex-start; }
  .formWrap .form-group:not(.noborder) {
    border-bottom: 1px solid #b5b5b5;
    padding-bottom: 1em; }
  .formWrap textarea.form-control,
  .formWrap input.form-control {
    border-radius: 0;
    border: 1px solid #000000; }
  .formWrap .form-inline .form-control {
    width: 10em; }
  @media screen and (max-width: 768px) {
    .formWrap div.dfjs {
      margin-bottom: 1em; }
    .formWrap .tel .form-control {
      display: inline-block;
      width: calc(33% - 9px); } }

	/**************************
	*contact

	共通
	terms
	specific
	privacy
	sns_policy
	**************************/
.terms .ttl_h3 {
  margin-top: 3em; }
.terms .terms_ul1 {
  list-style: decimal;
  padding-left: 1em; }
  .terms .terms_ul1 li {
    margin-bottom: 1.5em; }
.terms .terms_ul2 {
  margin-bottom: 1.5em; }
  .terms .terms_ul2 li {
    margin-bottom: .5em;
    text-indent: -2em;
    padding-left: 2em; }
@media screen and (max-width: 768px) {
  .terms ul {
    font-size: 16px; } }
.terms .tar {
  text-align: right; }
@media print, screen and (min-width: 769px) {
  .terms span.pc {
    display: inline-block; } }

.policy .ttl_h3 {
  text-align: left; }
.policy .h5_sikaku {
  margin-bottom: .3em;
  font-size: 16px; }
.policy .p_fb {
  margin-top: 1em; }
.policy .ul_dot {
  margin-bottom: 1.5em; }
  .policy .ul_dot li {
    position: relative;
    padding-left: 2em;
    line-height: 1.5; }
    .policy .ul_dot li:before {
      position: absolute;
      content: "";
      top: 5px;
      left: 0.5em;
      width: 12px;
      height: 12px;
      background: #223250;
      border-radius: 50%; }
.policy .ul_dot_1 li {
  margin-bottom: 1em; }

/*# sourceMappingURL=style.css.map */

/* content-detail */
.content-detail {
  margin-bottom: 50px;
}
.content-detail .alignleft {
  float: left;
  margin-right: 40px;
}
.content-detail .alignright {
  float: right;
  margin-left: 40px;
}
.content-detail p {
  margin-bottom: 1.5em;
}
.content-detail strong {
  font-weight: bold;
}
.content-detail em {
  font-style: italic;
}
.content-detail h1 {
  padding: 0;
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 20px;
}
.content-detail h2 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
.content-detail h3 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
}
.content-detail h4 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.content-detail h5 {
  margin-bottom: 20px;
  font-weight: bold;
}
.content-detail h6 {
  margin-bottom: 20px;
}
.content-detail * {
  max-width: 100%;
}
.content-detail p img {
  max-width: 100%;
  width: initial;
  height: auto;
}
.content-detail p img.aligncenter {
  display: block;
  margin: 0 auto;
}
.content-detail table {
  width: 100%!important;
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.5;
  border-collapse: collapse;
  border-spacing: 0;
}
.content-detail table th {
  padding: .5em;
  font-size: 16px;
  font-weight: bold;  
  border: 1px solid;
}
.content-detail table td {
  padding: .5em;
  border: 1px solid;
}
.content-detail span { 
display: inline-block;
display: inline;
 }
.content-detail ul {
  margin-bottom: 20px;
  list-style: disc inside;
}
.content-detail ol {
  margin-bottom: 20px;
  list-style: decimal inside;
}
.content-detail blockquote {
    position: relative;
    padding: 10px 15px 10px 30px;
    box-sizing: border-box;
    font-style: italic;
    background: #efefef;
    color: #555;
    border-left: 4px solid #cfcfcf;
    margin-bottom: 1.5em;
}

/*.content-detail blockquote:before{
    display: inline-block;
    position: absolute;
    top: 18px;
    left: 15px;
    content: "\f10d";
    font-family: FontAwesome;
    color: #cfcfcf;
    font-size: 30px;
    line-height: 1;
    font-weight: 900;
}*/

.content-detail blockquote p {
    padding: 0;
    margin: 10px 0;
    line-height: 1.7;
}

.content-detail blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}
.projects .content-detail table.seido_list {
  width: 100%!important;
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.5;
  border-collapse: separate;
  border-spacing: 0;
}
.projects .content-detail table.seido_list th {
  vertical-align: middle;
  border: none;
  border-bottom: 1px solid;
  font-size: 16px;
  font-weight: bold;
}
.projects .content-detail table.seido_list td {
  vertical-align: middle;
  text-align: left;
  padding: 1em 1em 1em 0;
  border: none;
}
.content-detail .event-table > tbody > tr > th {
  width: 145px;
  padding: 1em 0;
  font-size: 16px;
  font-weight: bold;
  border: none;
  white-space: nowrap;
  vertical-align: top;
}
.content-detail .event-table  > tbody > tr > td {
  padding: 1em 0;
  font-size: 14px;
  border: none;
  text-align: left;
}
.pdf-link a {
  padding-right: 25px;
  background: url(../images/icon_pdf.png) no-repeat right center;
  background-size: 14px auto;
}
.bulletin-block {
  display: flex;
  margin-top: 50px;
}
.bulletin-block .left {
  width: 340px;
  padding: 0 40px;
}
.bulletin-block .right {
  width: calc(100% - 340px);
  padding: 0 40px;
}
.bulletin-block .article-title {  
  margin-bottom: 30px;
  font-size: 20px;
}
.bulletin-block .article-title a {
  position: relative;
  display: inline-block;
  padding-left: 35px;
  padding-right: 40px;
  background: url(../images/icon_pdf.png) no-repeat right center;
  background-size: 18px auto;
}
.bulletin-block .article-title a::before {
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 7px 0 7px 14px;
  border-color: transparent transparent transparent #223250;
  transform: translate(0, -50%);
  content: '';
}

@media screen and (max-width: 768px) {
  .content-detail {
    margin-bottom: 30px;
  }
  .event-table > tbody > tr > th {
    display: block;
    width: 100%;
    padding: 1em 0 0 0;
    font-size: 15px;
    text-align: left;
  }
  .event-table > tbody > tr > td {
    display: block;
    padding: 0.5em 0 1em 0;
  }  
  .projects .content-detail .seido_list_sp_Wrap table {
    border: 1px solid #223250;
  }
  .projects .content-detail .seido_list_sp_Wrap table th {
    padding: .5em;
    text-align: left;
  }
  .projects .content-detail .seido_list_sp_Wrap table td {
    padding: .5em;
  }
  .bulletin-block {
    display: block;
    margin-top: 30px;
  }
  .bulletin-block .left {
    width: 100%;
    padding: 0;
    margin-bottom: 15px;
    text-align: center;
  }
  .bulletin-block .left  img {
    width: 80%;
    height: auto;
    margin: 0 auto;
  }
  .bulletin-block .right {
    width: 100%;
    padding: 0;
  }
  .bulletin-block .article-title {
    font-size: 18px;
    text-align: center;
  }
  .bulletin-block .article-title a {
    padding-left: 25px;
    padding-right: 30px;
  }
}