@charset "UTF-8";
/*
Theme Name:岐阜県広告美術業協同組合
Text Domain: 
Version: 1.00
Requires at least: 6.9
Requires PHP: 8.3
Author: OK COMPUTER
Description: This is the theme for the 2021 site open.
*/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,400;0,500;0,700;1,100;1,400;1,500;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=PT+Sans&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap");
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

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, 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: 62.5%;
  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; }

body {
  font-size: 1rem;
  line-height: 1.5;
  position: relative; }

ol, ul {
  list-style: none;
  list-style-position: inside; }

blockquote, q {
  quotes: none; }

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

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

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

img.w_85 {
  max-width: 85%;
  height: auto; }

img.w_75 {
  max-width: 75%;
  height: auto; }

img.w_50 {
  max-width: 50%;
  height: auto; }

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%; }

@media screen and (max-width: 767px) {
  html,
  body {
    overflow-x: hidden !important;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; } }
/**************************
FORMAT
**************************/
.bold {
  font-weight: bold; }

.red {
  color: #FF5454; }

.c_yellow {
  color: #FFF683; }

.marker {
  display: inline;
  padding: 0 1px 0px;
  line-height: 2em;
  text-align: center;
  background: linear-gradient(transparent 60%, rgba(255, 246, 131, 0.5) 60%); }

.center {
  text-align: center !important; }

.a_left {
  text-align: left !important; }

.a_right {
  text-align: right !important; }

.center_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center; }

.honbun {
  width: 100%;
  margin: 0 auto;
  padding: 0 1rem; }

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

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

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

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

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

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

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

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

.mb_70 {
  margin-bottom: 70px !important; }

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

.mb_90 {
  margin-bottom: 90px !important; }

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

.mb_1rem {
  margin-bottom: 1rem !important; }

.mb_2rem {
  margin-bottom: 2rem !important; }

.mb_3rem {
  margin-bottom: 3rem !important; }

.mb_4rem {
  margin-bottom: 4rem !important; }

.mb_5rem {
  margin-bottom: 5rem !important; }

.ml_10 {
  margin-left: 10px; }

.pad_5 {
  padding: 5px; }

.pad_10 {
  padding: 10px; }

.pad_right_10 {
  padding: 0 10px 0 0; }

.pad_10-20 {
  padding: 10px 20px !important; }

.pad_20 {
  padding: 20px; }

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

.pad_area {
  padding-top: 20px;
  padding-bottom: 20px; }
  @media screen and (max-width: 900px) {
    .pad_area {
      padding-top: 20px;
      padding-bottom: 20px; } }

.pad_30 {
  padding-top: 30px;
  padding-bottom: 30px; }
  @media screen and (max-width: 900px) {
    .pad_30 {
      padding-top: 20px;
      padding-bottom: 20px; } }

.small {
  font-size: 0.8em; }

.medium {
  font-size: 1.2em; }

.large {
  font-size: 1.5em; }

.clear {
  clear: both; }

.bg_gray {
  background-color: #F7F7F7; }

.relative {
  position: relative !important; }

.absolute {
  position: absolute !important; }

.mask_black {
  position: relative;
  z-index: -1; }
  .mask_black::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); }

/*LINK*/
a:link,
a:visited {
  color: #333;
  text-decoration: none; }

a:hover {
  color: #ba1b21; }

a img {
  border: none; }

a:hover img {
  transition: .3s;
  opacity: 0.80;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
  -moz-opacity: 0.80; }

a.underline {
  text-decoration: underline;
  font-weight: bold; }

.flex_2_1 {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_2_1 > div {
    margin: 0;
    padding: 10px;
    width: 50%; }
    @media (max-width: 900px) {
      .flex_2_1 > div {
        margin: 0;
        width: 100%; } }

.flex_3_1 {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_3_1 > div {
    margin: 0;
    padding: 10px;
    width: 33.3%; }
    @media (max-width: 900px) {
      .flex_3_1 > div {
        margin: 0;
        width: 100%; } }

.flex_4_2 {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_4_2 > div {
    margin: 0;
    padding: 10px;
    width: 25%; }
    @media (max-width: 900px) {
      .flex_4_2 > div {
        margin: 0;
        width: 50%; } }

.flex_4_1 {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_4_1 > div {
    margin: 0;
    padding: 10px;
    width: 25%; }
    @media (max-width: 900px) {
      .flex_4_1 > div {
        margin: 0;
        width: 100%; } }

.flex_30_70 {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_30_70 > div:nth-child(1) {
    margin: 0;
    padding: 10px;
    width: 30%; }
    @media (max-width: 900px) {
      .flex_30_70 > div:nth-child(1) {
        margin: 0;
        width: 100%; } }
  .flex_30_70 > div:nth-child(2) {
    margin: 0;
    padding: 10px;
    width: 70%; }
    @media (max-width: 900px) {
      .flex_30_70 > div:nth-child(2) {
        margin: 0;
        width: 100%; } }

.res_block {
  display: none !important; }

.res_none {
  display: block !important; }

.res_center {
  text-align: left !important; }

.right_res_center {
  text-align: right !important; }

@media screen and (max-width: 900px) {
  .res_block {
    display: block !important; }

  .res_none {
    display: none !important; }

  .res_center {
    text-align: center !important; }

  .right_res_center {
    text-align: center !important; } }
/*TEL*/
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }
/**************************
HEADLINE
**************************/
h3.ttl_midashi {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.3;
  border-bottom: 3px solid #004903;
  padding: 8px 5px;
  margin-bottom: 20px;
  letter-spacing: 0.05em; }

/**************************
background
**************************/
.contents {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
  /*padding:10px 10px;*/ }
  @media screen and (max-width: 900px) {
    .contents {
      margin: 0px auto;
      padding: 10px; } }

.contents_600 {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 20px;
  /*padding:10px 10px;*/ }
  @media screen and (max-width: 900px) {
    .contents_600 {
      margin: 0px auto; } }

.contents_800 {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  /*padding:10px 10px;*/ }
  @media screen and (max-width: 900px) {
    .contents_800 {
      margin: 0px auto; } }

/*jQuery.appear.js*/
.item_top {
  top: -30px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_bottom {
  bottom: -30px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_left {
  left: -40px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_right {
  right: -40px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_fade_in {
  opacity: 0;
  position: relative;
  padding-left: 0px;
  right: 0px; }

.item_c_left {
  left: 600px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_c_right {
  right: 600px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

/**************************
FRAMEWORK
**************************/
body {
  font-size: 16px;
  font-weight: 500;
  color: #333;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5em;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 900px) {
    body {
      font-size: 14px; } }

h1, h2, h3, h4, h5, h6 {
  font-family: "Zen Kaku Gothic New", sans-serif; }

/*骨組み*/
#wrap {
  margin: 0px auto; }

.container {
  /*padding-top: 80px;*/
  width: 100%;
  height: auto;
  min-height: 400px;
  margin: 0 auto; }
  @media screen and (max-width: 900px) {
    .container {
      margin-top: 70px; } }

.bread {
  background: #fff;
  border-bottom: 1px solid #004903; }
  .bread .inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 10px 10px;
    color: #999;
    font-size: 0.8em;
    letter-spacing: 0.06em; }

ul.disk li {
  list-style-type: disc;
  padding-left: 1em;
  text-indent: -1em; }

ul.number li {
  list-style-type: decimal;
  padding-left: 1em;
  text-indent: -1em; }

ul.toggle_menu {
  display: none;
  list-style-type: none;
  position: fixed;
  top: 0px;
  width: 100%;
  z-index: 10; }

ul.toggle_menu li a {
  text-decoration: none;
  font-weight: 500;
  display: block;
  padding: 17px 25px;
  color: #000;
  background-color: rgba(182, 220, 201, 0.96);
  border-bottom: 1px dotted #DDD; }

ul.toggle_menu li a:hover {
  color: #8A603F; }

/* FRONTPAGE */
.bg_texture {
  background-image: url("./images/bg_texture.jpg");
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: cover; }

.area_catch {
  margin-top: 40px;
  position: relative;
  padding-top: 50%;
  background: linear-gradient(180deg, #f2f2f2 0%, #f2f2f2 50%, #fff 50%, #fff 100%); }

.front_catch {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 10px; }
  .front_catch > div:nth-child(1) {
    width: 100%;
    z-index: 1;
    vertical-align: middle; }
  .front_catch > div:nth-child(2) {
    background-color: rgba(255, 255, 255, 0.96);
    padding: 50px;
    width: 90%;
    margin: -80px auto 0;
    z-index: 5; }
    @media screen and (max-width: 900px) {
      .front_catch > div:nth-child(2) {
        padding: 15px;
        margin: -20px auto 0; } }

/*マスクボタン*/
.for_someone {
  width: 100%;
  background-color: #282828;
  color: #fff;
  text-align: center;
  padding: 6px 0; }

.btn_mask {
  position: relative; }

.btn_mask a {
  width: 100%;
  max-width: none;
  color: #fff;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  transition: background 0.3s;
  font-size: 1.4em;
  line-height: 1.3;
  font-weight: bold; }

.btn_mask a span {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.8em;
  font-weight: 500;
  font-style: italic; }

.btn_mask a:hover {
  background: rgba(0, 0, 0, 0.2); }

.btn_bg_dx-strategy {
  background: url("./images/img_dx.jpg") no-repeat center center/cover; }

.btn_bg_digital-thinking {
  background: url("./images/img_digital-thinking.jpg") no-repeat center center/cover; }

.btn_bg_digital-innovation {
  background: url("./images/img_digital-innovation.jpg") no-repeat center center/cover; }

.seminar_name {
  position: absolute;
  color: #fff;
  font-size: 1.4em;
  line-height: 1.3;
  font-weight: bold;
  left: 20px;
  top: 20px; }

ul.list_seminar {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center; }
  ul.list_seminar li {
    width: 80px;
    float: left; }

/*seminar*/
.seminar_top {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%; }
  .seminar_top > div:nth-child(1) {
    position: relative;
    width: 50%;
    padding: 20px;
    background-color: #282828;
    order: 1; }
    @media screen and (max-width: 900px) {
      .seminar_top > div:nth-child(1) {
        width: 100%;
        height: 240px;
        order: 2; } }
    .seminar_top > div:nth-child(1) .box {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%); }
      @media screen and (max-width: 900px) {
        .seminar_top > div:nth-child(1) .box {
          top: 33%; } }
      .seminar_top > div:nth-child(1) .box .for_someone_top {
        display: inline-block;
        background-color: #fff;
        color: #282828;
        padding: 4px 10px;
        margin-bottom: 20px; }
  .seminar_top > div:nth-child(2) {
    width: 50%;
    order: 2; }
    @media screen and (max-width: 900px) {
      .seminar_top > div:nth-child(2) {
        width: 100%;
        order: 1; } }
    .seminar_top > div:nth-child(2) img {
      vertical-align: top; }

h2.ttl_top_seminar {
  font-size: 2em;
  font-weight: bold;
  color: #fff;
  line-height: 1.8em;
  white-space: nowrap; }

/*annotation*/
dl.list_flow {
  padding: 15px;
  background-color: #fff; }
  dl.list_flow dt {
    float: left;
    width: 100px;
    padding: 10px;
    font-weight: bold; }
    @media (max-width: 900px) {
      dl.list_flow dt {
        float: none;
        padding: 3px;
        width: 100%; } }
  dl.list_flow dd {
    margin-left: 105px;
    padding: 10px; }
    @media (max-width: 900px) {
      dl.list_flow dd {
        margin-left: 0;
        padding: 3px;
        margin-bottom: 15px; } }

/* post 投稿　topics */
.flex_post {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: start;
  margin-bottom: 10px;
  position: relative; }
  .flex_post > div:first-child {
    width: 76%;
    padding: 10px 15px;
    margin-bottom: 50px; }
    @media screen and (max-width: 900px) {
      .flex_post > div:first-child {
        width: 100%; } }
    .flex_post > div:first-child p.datetag {
      color: #333;
      margin-bottom: 30px; }
  .flex_post > div:last-child {
    width: 24%;
    padding: 10px 15px;
    margin-bottom: 0px; }
    @media screen and (max-width: 900px) {
      .flex_post > div:last-child {
        width: 100%; } }
    .flex_post > div:last-child h4.sidebar_title {
      font-size: 1.125em;
      font-weight: bold;
      text-align: center;
      padding: 15px 0 5px;
      border-bottom: 2px solid #004903;
      margin-bottom: 10px; }
      @media screen and (max-width: 900px) {
        .flex_post > div:last-child h4.sidebar_title {
          padding: 15px 0; } }

/*footer*/
footer {
  padding-top: 40px;
  background-color: #282828;
  width: 100%;
  height: auto;
  color: #fff;
  padding-left: 16em; }
  @media screen and (max-width: 900px) {
    footer {
      padding-left: 0; } }

/*footer ここまで*/
address {
  width: 100%;
  text-align: center;
  background-color: #282828;
  color: white;
  font-size: 0.8em;
  padding: 10px 0; }

/* breadlist */
.breadlist {
  width: 100%;
  max-width: 1280px;
  margin: 10px auto 30px;
  font-size: 12.8px; }

/**************************
LIST
**************************/
ul.list-gaiyou li {
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.2em; }
  ul.list-gaiyou li::before {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 10px;
    display: inline-block;
    background-color: coral;
    margin-right: 0.5rem; }

ul.list-gyousyu li {
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.2em; }
  ul.list-gyousyu li::before {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 10px;
    display: inline-block;
    background-color: #c3e0ff;
    margin-right: 0.5rem; }

dl.table {
  box-sizing: border-box;
  background: rgba(242, 242, 242, 0.5);
  border-bottom: 1px solid #CCC; }
  dl.table dt {
    font-weight: bold;
    float: left;
    width: 32%;
    padding: 20px 19px 20px;
    border-top: 1px solid #CCC; }
  dl.table dd {
    margin-left: 32%;
    background: #FFF;
    padding: 20px 39px 20px;
    border-top: 1px solid #CCC; }

@media screen and (max-width: 767px) {
  dl.table dt {
    float: none;
    width: 100%;
    padding: 10px 19px 10px; }
  dl.table dd {
    margin-left: 0;
    background: #FFF;
    padding: 10px 39px 20px; } }
/**************************
TABLE
**************************/
table.table {
  width: 100%;
  margin: 10px auto;
  border: 1px solid #ccc; }
  table.table th {
    min-width: 100px;
    font-weight: 500;
    padding: 0.3em 1em;
    text-align: left;
    background-color: #dedede;
    border: 1px solid #ccc;
    font-weight: bold;
    font-size: 0.95rem; }
  table.table td {
    padding: 0.5em 1em;
    font-size: 16px;
    border: 1px solid #ccc;
    font-size: 0.9rem !important; }
    @media screen and (max-width: 900px) {
      table.table td {
        white-space: nowrap; } }

a.btn_more {
  position: relative;
  display: inline-block;
  padding: 7px 24px;
  color: #fff;
  background-color: #004903;
  border: 2px solid #004903;
  text-align: center;
  transition: .3s;
  margin: 20px auto;
  font-weight: bold;
  /*&::before{
      content:">";
      //background-image: url("images/btn_arrow.svg");
      position: absolute;
      right:7px;
      top:7px;
      transition: .3s;
  }*/ }
  a.btn_more:hover {
    border: 2px solid #333;
    color: #FFF;
    background-color: #333; }
    a.btn_more:hover::before {
      right: 3px;
      transition: .3s; }

/**************************
OTHERS
**************************/
.flex_top {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  min-height: 400px; }
  .flex_top > div {
    position: relative; }
    .flex_top > div:first-child {
      width: 67%;
      background: #aaa;
      background-image: url("images/slider/top_02.jpg");
      background-size: cover;
      background-position: right bottom; }
      @media screen and (max-width: 900px) {
        .flex_top > div:first-child {
          width: 100%;
          min-height: 50vh; } }
      .flex_top > div:first-child img {
        vertical-align: top; }
    .flex_top > div:last-child {
      width: 33%;
      background: #004903;
      padding: 10px; }
      @media screen and (max-width: 900px) {
        .flex_top > div:last-child {
          width: 100%; } }
      .flex_top > div:last-child > div {
        min-height: 380px;
        margin: 0 auto;
        background-color: #fff;
        border-radius: 10px;
        padding: 5px 10px; }
        @media screen and (max-width: 900px) {
          .flex_top > div:last-child > div {
            position: relative;
            min-height: 0; } }
    .flex_top > div .icon_situation {
      position: absolute;
      top: -40px;
      left: -8px;
      width: 80px;
      height: 80px; }
    .flex_top > div .inner {
      background-color: #fff;
      padding: 20px 10px 10px; }

.ttl_news {
  text-align: center;
  padding: 1rem;
  font-size: 1.2rem;
  font-weight: bold; }

.flex_rule {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  min-height: 400px; }
  .flex_rule > div:first-child {
    width: 75%;
    padding: 10px; }
    @media screen and (max-width: 900px) {
      .flex_rule > div:first-child {
        width: 100%; } }
    .flex_rule > div:first-child img {
      vertical-align: top; }
  .flex_rule > div:last-child {
    width: 25%;
    padding: 10px; }
    @media screen and (max-width: 900px) {
      .flex_rule > div:last-child {
        width: 100%; } }

/**************************
PAGE CONTENTS
**************************/
.hissu {
  display: inline-block;
  background-color: #E0243E;
  color: #FFF;
  font-size: 0.6em;
  margin-left: 10px;
  padding: 0px 5px;
  font-weight: bold;
  line-height: 1.5em; }

.old {
  float: left;
  text-align: center;
  border-radius: 10px;
  color: #000;
  margin-left: auto;
  margin-right: 0; }
  .old a {
    padding: 0.1em 1em;
    color: #000; }

.new {
  float: right;
  text-align: center;
  border-radius: 10px;
  color: #000;
  margin-left: auto;
  margin-right: 0; }
  .new a {
    padding: 0.1em 1em;
    color: #000; }

.old a:hover, .new a:hover {
  color: #3842CE; }

.striptag {
  font-size: 14px;
  width: 88%; }

/*pagenation*/
.pagenation {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  clear: both;
  padding: 10px 0 0;
  position: relative;
  font-size: 11px;
  line-height: 14px;
  text-align: center; }
  .pagenation span {
    display: block;
    min-width: 30px;
    height: 30px;
    margin: 2px 5px 2px 0;
    padding: 5px;
    background-color: #fff;
    border-radius: 3px;
    color: #b7b7b7;
    text-decoration: none; }
  .pagenation a {
    display: block;
    float: left;
    width: 30px;
    height: 30px;
    margin: 2px 5px 2px 0;
    text-align: center;
    padding: 5px;
    background-color: #fff;
    border: 2px solid #b7b7b7;
    border-radius: 50%;
    color: #b7b7b7;
    text-decoration: none; }
    .pagenation a:hover {
      background-color: #b7b7b7;
      color: #fff; }
    .pagenation a.pagenation_square {
      border: none; }
  .pagenation .current {
    background-color: #b7b7b7;
    border: 2px solid #b7b7b7;
    color: #fff;
    border-radius: 50%; }

/*title_area*/
.t_bg {
  background: #004903;
  background: url("images/top_bg/t_bg.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat; }

.title_area {
  height: 10vw;
  position: relative;
  /*&::before{
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background-image: url("images/mask_dot.svg");
     background-repeat: repeat;
     z-index: 1;
  }*/ }
  @media screen and (max-width: 900px) {
    .title_area {
      height: 24vw; } }
  .title_area .mv-text {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    @media screen and (max-width: 900px) {
      .title_area .mv-text {
        top: 50%;
        width: 80%; } }
    .title_area .mv-text h2 {
      text-align: center;
      color: #333;
      font-size: 2em;
      font-weight: bold;
      line-height: 1.5; }
      @media screen and (max-width: 900px) {
        .title_area .mv-text h2 {
          font-size: 1.8rem; } }

/*pageTop*/
#pageTop {
  background: url("images/pagetop.svg");
  width: 40px;
  height: 40px;
  background-size: cover;
  position: fixed;
  bottom: 80px;
  right: 2%;
  z-index: 10000;
  text-indent: -9999em;
  cursor: pointer;
  transition: .3s; }

#pageTop:hover {
  background: url("images/pagetop.svg");
  background-size: cover;
  bottom: 85px;
  transition: .3s; }

/*========= LoadingのためのCSS ===============*/
#wrapper {
  display: none; }

/*Loading背景画面設定　*/
#splash {
  /*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: #004903;
  text-align: center;
  color: #fff;
  display: none; }

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width: 174px;
  height: 174px; }

/* fadeUpをするアイコンの動き */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.99s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(20px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
.recaptcha_policy {
  padding: 0;
  margin: 0;
  text-align: center;
  font-size: 11px !important;
  color: #ccc !important; }

.recaptcha_policy a {
  font-size: 11px !important;
  color: #ccc !important; }

dl.sidebar_post dt {
  font-size: 0.85em;
  color: #333; }
dl.sidebar_post dd {
  margin-bottom: 10px;
  font-size: 0.9em; }

dl.topics dt {
  font-size: 0.7em;
  font-weight: bold;
  color: #333333; }
dl.topics dd {
  font-size: 0.95em;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #ccc; }

dl.topics_toppage dt {
  font-size: 0.7em;
  font-weight: bold;
  color: #333333; }
dl.topics_toppage dd {
  font-size: 0.8em;
  margin-bottom: 5px;
  padding-bottom: 5px;
  border-bottom: 1px dotted #ccc;
  line-height: 1.25em; }
  @media screen and (max-width: 900px) {
    dl.topics_toppage dd {
      font-size: 0.9em; } }

a.link_underline {
  color: #384a9a !important;
  text-decoration: none;
  font-weight: bold; }
  a.link_underline:hover {
    text-decoration: underline !important; }

/*sidebar*/
.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 16em;
  height: 100%;
  overflow: visible;
  background-color: #004903; }
  @media (max-width: 900px) {
    .sidebar {
      display: none; } }
  .sidebar h1 {
    padding: 15px; }

.sidebar_inner {
  display: flex;
  position: relative; }
  @media (min-width: 900px) {
    .sidebar_inner {
      position: sticky;
      top: 0;
      flex-direction: column;
      height: 100vh;
      z-index: 1000; } }
  .sidebar_inner .logo {
    flex: auto;
    padding: 1rem; }

ul.navi li {
  border-bottom: 1px solid #004903;
  color: #333;
  font-weight: bold; }
  ul.navi li:hover {
    background-color: #FFF; }
  @media (max-width: 900px) {
    ul.navi li {
      border-bottom: 1px solid #FFF; } }
  ul.navi li a {
    display: block;
    width: 100%;
    padding: 12px 24px 12px 16px;
    color: #fff;
    font-size: 0.95em;
    border-left: 10px solid #008A04; }
    @media (max-width: 900px) {
      ul.navi li a {
        padding: 0 0 0 16px;
        font-size: 1.1em; } }
    ul.navi li a.bl_orange {
      border-left: 10px solid #FFAA46; }
    ul.navi li a.bl_pink {
      border-left: 10px solid #FF8282; }
    ul.navi li a.bl_lightblue {
      border-left: 10px solid #46D2D2; }
    ul.navi li a:hover {
      color: #FFED79;
      color: #555; }
  ul.navi li:first-child {
    border-top: 1px solid #004903; }

/*main*/
.main {
  flex: auto;
  display: flex;
  flex-direction: column;
  padding-left: 16em;
  min-height: 750px; }
  @media screen and (max-width: 900px) {
    .main {
      padding-left: 0;
      min-height: 0; } }

.top_catch {
  background-color: rgba(255, 246, 191, 0.82);
  padding: 50px;
  width: 90%;
  margin: -80px auto 0;
  z-index: 5;
  border-radius: 20px; }
  .top_catch h3 {
    font-family: "Kosugi Maru", sans-serif;
    font-size: 2em;
    line-height: 1.5em;
    margin-bottom: 20px;
    color: #222542; }
    @media screen and (max-width: 900px) {
      .top_catch h3 {
        font-size: 2em; } }

dl.list_rule {
  padding: 0 1rem; }
  dl.list_rule > dt {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 0.5rem; }
    dl.list_rule > dt::before {
      content: "■";
      color: darkcyan;
      margin-right: 0.5rem; }
  dl.list_rule dd {
    margin-bottom: 3rem; }

dl.list_rule_child {
  padding: 0 1rem; }
  @media screen and (max-width: 900px) {
    dl.list_rule_child {
      padding: 0 0.3rem; } }
  dl.list_rule_child dt {
    font-size: 1.0rem;
    font-weight: bold; }
    dl.list_rule_child dt::before {
      content: ""; }
  dl.list_rule_child dd {
    margin-bottom: 1.5rem; }

.catch_phrase {
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  line-height: 3rem;
  margin-bottom: 2rem;
  color: #c81547; }
  @media screen and (max-width: 900px) {
    .catch_phrase {
      font-size: 1.8rem;
      line-height: 1.8rem; } }

.catch_lyric {
  font-weight: 600;
  line-height: 2.0;
  text-align: center; }

dl.list_members dt {
  font-weight: bold; }
dl.list_members dd {
  margin-bottom: 2rem; }

.flex_s-members {
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_s-members > div {
    margin: 0 auto;
    padding: 10px;
    width: 40%; }
    @media (max-width: 900px) {
      .flex_s-members > div {
        margin: 0;
        width: 100%; } }

.ttl_s-member {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 1rem;
  padding-bottom: 0.25rem;
  border-bottom: 2px solid #7a7a7a; }

.list_s-members {
  display: grid;
  grid-template-columns: 100px 1fr;
  row-gap: 10px;
  column-gap: 10px;
  margin: 1rem auto 3rem; }
  @media (max-width: 768px) {
    .list_s-members {
      grid-template-columns: 1fr; } }
  .list_s-members dt {
    background-color: #E4E4E4;
    color: #333;
    padding: 3px;
    text-align: center;
    font-size: 0.8rem;
    border-radius: 5px;
    align-self: start;
    /* ← これが重要 */
    letter-spacing: 0; }
  .list_s-members dd {
    margin: 0;
    padding: 3px 0; }
    @media (max-width: 768px) {
      .list_s-members dd {
        margin-bottom: 4px;
        padding: 3px 8px; } }
    .list_s-members dd a {
      overflow-wrap: anywhere;
      text-decoration: underline; }

.ttl_c_member {
  font-size: 1.5rem;
  font-weight: bold;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #004903;
  margin-bottom: 3rem; }

.list_c-members {
  display: grid;
  grid-template-columns: 180px 1fr;
  row-gap: 10px;
  column-gap: 10px;
  margin: 1rem auto 3rem; }
  @media (max-width: 768px) {
    .list_c-members {
      grid-template-columns: 1fr; } }
  .list_c-members dt {
    background-color: #DFFFDE;
    color: #333;
    padding: 3px;
    text-align: center;
    font-size: 0.875rem;
    border-radius: 5px;
    align-self: start;
    /* ← これが重要 */ }
  .list_c-members dd {
    margin: 0;
    padding: 3px 0; }
    @media (max-width: 768px) {
      .list_c-members dd {
        margin-bottom: 4px;
        padding: 3px 8px; } }
    .list_c-members dd a {
      overflow-wrap: anywhere; }

ul.list_local li {
  line-height: 2.0;
  display: inline-block;
  color: #004903;
  border: 1px solid #004903;
  border-radius: 999px;
  padding: 0 1rem;
  margin: 0 0.5rem 0.5rem 0; }

table.t_meibo {
  width: 100%;
  margin: 10px auto;
  border: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show; }
  @media (max-width: 768px) {
    table.t_meibo {
      width: max-content; } }
  table.t_meibo th {
    border: 1px solid #ccc;
    background-color: #f8ffe0;
    font-weight: bold;
    padding: 0.3em 1em;
    text-align: center;
    white-space: nowrap; }
  table.t_meibo td {
    border: 1px solid #ccc;
    padding: 0.5em 1em;
    font-size: 1rem;
    white-space: nowrap; }

.list_member_top {
  display: grid;
  grid-template-columns: 300px 1fr;
  row-gap: 0;
  column-gap: 0;
  margin: 1rem auto 3rem;
  border-top: 1px solid #ccc; }
  @media (max-width: 768px) {
    .list_member_top {
      grid-template-columns: 1fr; } }
  .list_member_top dt {
    font-weight: bold;
    color: #333;
    padding: 0.5rem;
    border-bottom: 1px solid #ccc;
    background-color: #efefef; }
  .list_member_top dd {
    margin: 0;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid #ccc; }
    @media (max-width: 768px) {
      .list_member_top dd {
        padding: 8px 16px 16px; } }
    .list_member_top dd a {
      overflow-wrap: anywhere; }

.ttl_jirei {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 1rem; }

.lyric_youknow {
  text-align: center;
  font-size: 1.4rem;
  margin-bottom: 2rem;
  font-weight: bold;
  color: crimson; }
