@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap");
*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

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

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/*mediaquery-1*/
.cf {
  zoom: 1; }
  .cf:after {
    display: block;
    content: "";
    clear: both; }

.ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -ms-text-overflow: ellipsis; }

.hidetext {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap; }

/*fontサイズ指定*/
:root {
  --fz-heading: clamp(3.2rem, 6vw, 7rem);
  --fz-heading02: clamp(2.2rem, 4vw, 5rem);
  --fz-1: clamp(2.8rem, 3.6vw, 4.6rem);
  --fz-2: clamp(2.4rem, 2.8vw, 3.6rem);
  --fz-3: clamp(2rem, 2vw, 3rem);
  --fz-4: clamp(1.8rem, 1.4vw, 2.4rem);
  --fz-5: clamp(1.6rem, 1.2vw, 2rem);
  --fz-6: clamp(1.4rem, 1vw, 1.8rem); }

/*
	include style
===================================================*/
.ellipsis {
  width: 100%; }

/*
	general style
===================================================*/
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 62.5%;
  position: relative;
  height: 100%; }

body {
  font-size: 1.6rem;
  position: relative;
  color: #1a3066;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
  background-color: #e8e9ee; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 1.3rem; } }
  body.home .header__slogan {
    padding-top: 0 !important; }

a {
  background-color: transparent;
  transition: .2s; }
  a:hover {
    color: #1a3066;
    opacity: 0.7; }

img {
  vertical-align: bottom; }

.wp-block-image img {
  max-width: 100%;
  height: auto; }

/*
	layout style
===================================================*/
@media screen and (max-width: 640px) {
  br.brpc {
    display: none; } }

br.brmd {
  display: none; }
  @media screen and (max-width: 768px) {
    br.brmd {
      display: block; } }

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

@media screen and (max-width: 640px) {
  .pcblock {
    display: none !important; } }

.mdblock {
  display: none; }
  @media screen and (max-width: 768px) {
    .mdblock {
      display: block; } }

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

#wraper {
  overflow: hidden; }

.inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 30px; }
  @media screen and (max-width: 640px) {
    .inner {
      max-width: 90%;
      width: 90%;
      padding: 0; } }

.grad_blue {
  background: linear-gradient(to right, #01277c 0%, #04bde1 100%); }

/*reCAPTCHAバッチ位置調整*/
.grecaptcha-badge {
  bottom: 80px !important; }

.mt10 {
  margin-top: 10px; }

.mb10 {
  margin-bottom: 10px; }

.mt20 {
  margin-top: 20px; }

.mb20 {
  margin-bottom: 20px; }

.mt30 {
  margin-top: 30px; }

.mb30 {
  margin-bottom: 30px; }

.mt40 {
  margin-top: 40px; }

.mb40 {
  margin-bottom: 40px; }

.center {
  text-align: center; }

.left {
  text-align: left; }

.right {
  text-align: right; }

.red {
  color: red; }

.blue {
  color: #04bde1; }

.gradient-text {
  background: linear-gradient(to right, #01277c 0%, #7589af 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block; }

/*見出し*/
.heading01 {
  color: #01277c;
  line-height: 1;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media screen and (max-width: 768px) {
    .heading01 {
      display: block; } }
  .heading01.lg_txt {
    font-size: clamp(4rem, 8vw, 10rem); }
  .heading01.md_txt {
    font-size: clamp(3.2rem, 6vw, 7rem); }
  .heading01.sm_txt {
    font-size: clamp(2.2rem, 4vw, 5rem); }
  .heading01 span.ja {
    display: inline-block;
    font-size: .3em;
    font-weight: normal;
    margin-left: 1em; }
    @media screen and (max-width: 768px) {
      .heading01 span.ja {
        font-size: 1.4rem;
        margin-left: 0; } }
  .heading01 span.arrow {
    display: flex;
    align-items: center; }
    .heading01 span.arrow::after {
      display: inline-block;
      content: '';
      width: 1.5em;
      height: 1.5em;
      margin-left: 1em;
      background-image: url("../img/arrow_g_off.svg");
      background-repeat: no-repeat;
      background-size: contain;
      vertical-align: middle; }
  .heading01 span.block_txt {
    display: block;
    margin-left: 0;
    margin-top: .5em; }
  .heading01 span.wh {
    color: #ffffff; }

.heading02 {
  color: #01277c;
  line-height: 1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: clamp(3.2rem, 6vw, 7rem); }
  .heading02 span.ja {
    display: inline-block;
    font-size: .3em;
    letter-spacing: .1em;
    margin: 0 1em; }
    @media screen and (max-width: 768px) {
      .heading02 span.ja {
        display: block;
        width: 100%;
        font-size: 1.4rem;
        margin: 1em 0; } }
  .heading02 span.line {
    flex-grow: 1;
    height: 10px;
    background: #7285a9; }
    @media screen and (max-width: 768px) {
      .heading02 span.line {
        display: none; } }

/*ボタン*/
.more-link {
  line-height: 2; }
  .more-link a {
    display: inline-block;
    padding: .8em 2em;
    border-radius: 12px;
    color: #01277c;
    text-align: center;
    text-decoration: none;
    margin: 2em 0;
    font-size: var(--fz-5); }
    .more-link a.sub {
      color: #7285a9; }
      .more-link a.sub:hover {
        color: #01277c;
        opacity: 1; }
    .more-link a span {
      display: flex;
      align-items: center;
      line-height: 1.5; }
      .more-link a span::after {
        display: inline-block;
        content: '';
        width: 1.5em;
        height: 1.5em;
        margin-left: 1em;
        background-image: url("../img/arrow_def.svg");
        background-repeat: no-repeat;
        background-size: contain;
        vertical-align: middle; }
  .more-link.wh a {
    background: #ffffff; }

/*
	Parts style
===================================================*/
/* wp-pagenavi

一覧ページ

*/
.wp-pagenavi {
  clear: both;
  margin: 5% auto 5%;
  text-align: left;
  display: flex;
  flex-wrap: wrap; }

.wp-pagenavi a, .wp-pagenavi span {
  color: #01277c;
  border: 1px solid #01277c;
  padding: 8px 15px !important;
  margin: 5px 2px;
  white-space: nowrap;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
  text-align: center;
  text-decoration: none; }

.wp-pagenavi a:hover {
  color: #fff;
  background-color: #01277c;
  border-color: #01277c; }

.wp-pagenavi span.current {
  color: #fff;
  background-color: #01277c;
  border-color: #01277c;
  font-weight: bold; }

/* 
page_navigation

詳細ページ

*/
.page_navigation {
  width: 100%;
  margin: 4% auto;
  text-align: center; }
  .page_navigation nav {
    margin: 50px auto;
    padding: 30px 0;
    border-top: solid #01277c 1px; }
  .page_navigation .nav-links {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .page_navigation .nav-links .nav-previous, .page_navigation .nav-links .nav-next {
      width: 40%;
      text-align: left; }
      .page_navigation .nav-links .nav-previous span, .page_navigation .nav-links .nav-next span {
        display: inline-block;
        width: 80%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-text-overflow: ellipsis;
        -o-text-overflow: ellipsis; }
    .page_navigation .nav-links a {
      text-decoration: none;
      font-size: 1.6rem;
      color: #01277c;
      line-height: 1;
      text-align: left; }
      @media screen and (max-width: 768px) {
        .page_navigation .nav-links a {
          font-size: 1.3rem; } }
      .page_navigation .nav-links a i {
        font-size: 2rem;
        color: #01277c; }
        @media screen and (max-width: 768px) {
          .page_navigation .nav-links a i {
            font-size: 1.3rem; } }
  .page_navigation .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0; }

/*********************************

パンくずリスト

*********************************/
.breadcrumb {
  margin: 20px 0; }
  .breadcrumb ul {
    list-style: none; }
  .breadcrumb li {
    display: inline;
    font-weight: bold; }
    .breadcrumb li a {
      color: #1a3066;
      font-weight: normal; }
  .breadcrumb li + li:before {
    content: ">";
    margin: .5em; }

/*********************************

loading

*********************************/
/* ローディング画面の背景 */
.loading {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0px;
  left: 0px;
  background: #01277c;
  z-index: 9999; }

.loading__animation {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
  -webkit-animation: loadinganimation 3000ms ease-out forwards infinite;
  animation: loadinganimation 3000ms ease-out forwards infinite; }

@keyframes loadinganimation {
  from, to {
    opacity: 0; }
  50% {
    opacity: .5; } }
/*********************************

loop_text

*********************************/
/*ループテキスト*/
.loop-txt__wrap {
  overflow: hidden;
  display: flex;
  width: 100%;
  height: 180px;
  overflow: hidden;
  line-height: 1; }
  .loop-txt__wrap.intro-loop-txt {
    margin-top: -5%;
    position: relative;
    z-index: 1; }

.loop-txt__wrap div {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 150px;
  overflow: hidden; }

.loop-txt__wrap div:nth-child(odd) {
  animation: loop-txt1 50s -25s linear infinite; }

.loop-txt__wrap div:nth-child(even) {
  animation: loop-txt2 50s linear infinite; }

@keyframes loop-txt1 {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-100%); } }
@keyframes loop-txt2 {
  0% {
    transform: translateX(0); }
  to {
    transform: translateX(-200%); } }
/*********************************

swiper

*********************************/
/*container_gallery*/
/*途切れなくループ*/
.swiper-container_gallery .swiper-wrapper {
  transition-timing-function: linear; }
  .swiper-container_gallery .swiper-wrapper img {
    width: 100%;
    height: auto;
    object-fit: cover; }

/*********************************

HEADER

*********************************/
header .header__bg {
  width: 100%;
  position: fixed;
  z-index: 100; }
header img {
  width: 100%;
  height: auto; }
header a {
  text-decoration: none;
  color: #ffffff; }
header .header__inner {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 20px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media screen and (max-width: 1100px) {
    header .header__inner {
      padding: 0 10px; } }
  @media screen and (max-width: 768px) {
    header .header__inner {
      max-width: 100%;
      width: 100%;
      padding: 0 20px;
      height: 60px; } }
header .header__title {
  width: 280px; }
  @media screen and (max-width: 1240px) {
    header .header__title {
      width: 250px; } }
  @media screen and (max-width: 1100px) {
    header .header__title {
      width: 20vw; } }
  @media screen and (max-width: 768px) {
    header .header__title {
      width: 180px; } }
@media screen and (max-width: 768px) {
  header .header__gnav {
    display: none !important; } }
header .header__gnav .gnav-menu {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /* 初期状態でサブメニューを非表示 */ }
  header .header__gnav .gnav-menu li {
    position: relative;
    letter-spacing: .1em;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    /* 親メニューにマウスオーバーしたときに表示 */ }
    header .header__gnav .gnav-menu li:hover > .sub-menu {
      display: block; }
    header .header__gnav .gnav-menu li a {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 0 1em;
      text-align: center;
      height: 80px; }
      @media screen and (max-width: 1240px) {
        header .header__gnav .gnav-menu li a {
          padding: 0 .8em;
          height: 60px; } }
      @media screen and (max-width: 1100px) {
        header .header__gnav .gnav-menu li a {
          padding: 0 5px;
          font-size: 1.4rem; } }
      header .header__gnav .gnav-menu li a:hover {
        color: #ffffff;
        background: rgba(255, 255, 255, 0.4);
        opacity: 1; }
    header .header__gnav .gnav-menu li.contact_menu {
      display: block;
      margin-left: 1em; }
      @media screen and (max-width: 1100px) {
        header .header__gnav .gnav-menu li.contact_menu {
          margin-left: 0; } }
      header .header__gnav .gnav-menu li.contact_menu a {
        border-radius: 100vw;
        background: linear-gradient(to right, #01277c 0%, #7589af 100%);
        height: auto;
        min-width: auto;
        padding: .4em 1em; }
  header .header__gnav .gnav-menu .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 1000;
    min-width: max-content;
    white-space: nowrap;
    /* 折り返さないようにする */
    /* 必要に応じて調整 */ }
    header .header__gnav .gnav-menu .sub-menu li {
      display: block;
      margin-right: 0;
      background: #01277c;
      /* 必要に応じて背景色 */
      text-align: center; }
      header .header__gnav .gnav-menu .sub-menu li:last-child {
        padding-bottom: 10px;
        border-bottom-left-radius: 12px;
        border-bottom-right-radius: 12px; }
      header .header__gnav .gnav-menu .sub-menu li a {
        display: block;
        height: auto;
        padding: .5em 1em;
        text-decoration: none;
        min-width: auto; }
        @media screen and (max-width: 1100px) {
          header .header__gnav .gnav-menu .sub-menu li a {
            font-size: 1.3rem; } }
        header .header__gnav .gnav-menu .sub-menu li a:hover {
          color: #04bde1;
          background: #01277c; }
header .header__slogan {
  background: #ffffff;
  padding: 20px 0;
  padding-top: 80px; }

/*ハンバーガーメニュー*/
.h-menu_wrap {
  position: fixed;
  z-index: 101;
  top: 10px;
  right: 20px;
  display: none;
  /*menuBg*/
  /*h-menu_lists*/ }
  @media screen and (max-width: 768px) {
    .h-menu_wrap {
      display: block; } }
  .h-menu_wrap .btn {
    width: 100%;
    display: block;
    width: 39px;
    height: 39px;
    position: absolute;
    right: 0;
    z-index: 999;
    /*bar_close*/ }
    .h-menu_wrap .btn .bar {
      width: 30px;
      height: 2px;
      display: block;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      background-color: #ffffff; }
      .h-menu_wrap .btn .bar.bar-top {
        top: 10px; }
      .h-menu_wrap .btn .bar.bar-middle {
        top: 50%;
        transform: translate(-50%, -50%); }
      .h-menu_wrap .btn .bar.bar-bottom {
        bottom: 10px; }
    .h-menu_wrap .btn.close .bar-top {
      transform: translate(-50%, 8px) rotate(45deg);
      transition: transform .3s; }
    .h-menu_wrap .btn.close .bar-middle {
      opacity: 0;
      transition: opacity .3s; }
    .h-menu_wrap .btn.close .bar-bottom {
      transform: translate(-50%, -9px) rotate(-45deg);
      transition: transform .3s; }
  .h-menu_wrap .menuBg {
    transition: all 1s; }
  .h-menu_wrap .menuBg.close {
    background-color: rgba(0, 0, 0, 0.3);
    top: 0;
    content: "";
    left: 0;
    opacity: 1;
    right: 0;
    height: 100vh;
    width: 100%;
    z-index: 19;
    position: fixed; }
  .h-menu_wrap .h-menu_lists {
    display: none;
    background: linear-gradient(to right, #01277c 0%, #04bde1 100%);
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    text-align: center;
    z-index: 800;
    overflow: scroll; }
    .h-menu_wrap .h-menu_lists .h-menu_lists__wrap {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .home-btn {
        margin: 20px auto; }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .home-btn a {
          text-align: center;
          display: inline-block;
          border: 1px solid #ffffff;
          color: #ffffff;
          border-radius: 100vw;
          padding: .8em 2em;
          text-decoration: none;
          font-size: 0.9em;
          margin: 0 1em; }
          .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .home-btn a i {
            display: inline-block;
            margin-right: .5em; }
      .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav {
        width: 90%;
        margin: auto; }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .gnav-menu {
          list-style: none;
          padding: 0;
          margin: 0;
          text-align: left; }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .gnav-menu > li > a {
          display: block;
          padding: 1em;
          font-size: 1.1em;
          letter-spacing: .2em;
          /*background: #f5f5f5;*/
          color: #ffffff;
          text-decoration: none;
          background: rgba(255, 255, 255, 0.1); }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .gnav-menu > li > a::before {
          display: inline-block;
          content: '';
          width: 1.1em;
          height: 1em;
          margin-right: 1em;
          background-image: url("../img/arrow_wh.svg");
          background-repeat: no-repeat;
          background-size: contain;
          vertical-align: middle; }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .gnav-menu > li > a[href="#"]::before {
          display: none; }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .sub-menu {
          list-style: none;
          padding: 0 1em;
          margin: 0;
          /*background: #fff;*/ }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .sub-menu li a::before {
          content: "– ";
          /* 横棒＋半角スペース */
          color: #666;
          color: #ffffff;
          margin-right: 0.5em; }
        .h-menu_wrap .h-menu_lists .h-menu_lists__wrap .h-menu__gnav .sub-menu li a {
          display: block;
          padding: 0.8em 1em;
          font-size: 0.95em;
          color: #01277c;
          color: #f9f9f9;
          text-decoration: none; }

/*gmap*/
.gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 36.25%;
  position: relative; }
  @media screen and (max-width: 768px) {
    .gmap {
      padding-bottom: 56.25%; } }

.gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%; }

/*ニュースリスト*/
.news__list ul li {
  list-style-type: none;
  width: 100%; }
  .news__list ul li.gradient-border {
    position: relative;
    display: inline-block; }
    .news__list ul li.gradient-border::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      /* 下線の太さ */
      background: linear-gradient(to right, #ff7e5f, #feb47b);
      /* グラデーション色 */
      background: linear-gradient(to right, #01277c 0%, #04bde1 100%); }
  .news__list ul li:first-child.gradient-border::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, #ff7e5f, #feb47b);
    background: linear-gradient(to right, #01277c 0%, #04bde1 100%); }
  .news__list ul li a {
    padding: 15px 1em;
    color: #1a3066;
    text-decoration: none;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-image: linear-gradient(to right, rgba(1, 39, 124, 0), rgba(0, 0, 0, 0)), url("../img/arrow_g_off.svg");
    background-repeat: no-repeat;
    background-position: center left, 98% center;
    background-size: 1.5em;
    padding-right: 1em;
    transition: .2s; }
    @media screen and (max-width: 640px) {
      .news__list ul li a {
        flex-direction: column-reverse; } }
    .news__list ul li a .list-item__date {
      letter-spacing: .1em;
      width: 7em;
      font-weight: bold; }
      @media screen and (max-width: 640px) {
        .news__list ul li a .list-item__date {
          display: block;
          width: 100%;
          color: #7285a9; } }
    .news__list ul li a .list-item__ttl {
      width: calc(100% - 16em);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis; }
      @media screen and (max-width: 640px) {
        .news__list ul li a .list-item__ttl {
          display: block;
          width: calc(100% - 1em);
          font-size: 1.1em; } }
    .news__list ul li a .list-item__cat {
      background: #7285a9;
      border-radius: 100vw;
      padding: .2em;
      color: #ffffff;
      width: 6em;
      text-align: center;
      font-size: .9em;
      transition: .2s;
      margin-left: 1em; }
      @media screen and (max-width: 640px) {
        .news__list ul li a .list-item__cat {
          margin: 0 0 .5em; } }
    .news__list ul li a:hover {
      background: linear-gradient(to right, rgba(1, 39, 124, 0.4), rgba(0, 0, 0, 0)), url("../img/arrow_g_on.svg") no-repeat 98% center;
      background-size: auto, 1.5em;
      opacity: 1; }
      .news__list ul li a:hover .list-item__cat {
        background: #01277c; }

/*********************************

top-page

*********************************/
.top-page__slide {
  padding-top: 80px; }
  @media screen and (max-width: 1240px) {
    .top-page__slide {
      padding-top: 60px; } }
  .top-page__slide .slide img {
    width: 100%;
    height: auto; }

.scroll-img-wrapper {
  position: relative; }
  .scroll-img-wrapper .scroll-img {
    position: absolute;
    z-index: 1;
    bottom: -15px;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%); }
    @media screen and (max-width: 768px) {
      .scroll-img-wrapper .scroll-img {
        bottom: -5px;
        display: none; } }
    .scroll-img-wrapper .scroll-img img {
      display: block;
      width: 80px;
      height: auto;
      margin: auto;
      animation: floatY 3s ease-in-out infinite; }
      @media screen and (max-width: 768px) {
        .scroll-img-wrapper .scroll-img img {
          width: 50px; } }
@keyframes floatY {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-5px);
    /* 上にふわっと */ }
  100% {
    transform: translateY(0); } }
#top-page img {
  width: 100%;
  height: auto; }
#top-page .top-news {
  padding: 5vw 0; }
  @media screen and (max-width: 768px) {
    #top-page .top-news {
      padding: 10vw 0; } }
  #top-page .top-news .news__box {
    padding: 5%;
    border-radius: 2vw;
    background: #ffffff; }
    #top-page .top-news .news__box .top-news__index {
      text-decoration: none;
      font-weight: bold;
      display: inline-block; }
    #top-page .top-news .news__box .flx2 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      #top-page .top-news .news__box .flx2 .lt {
        width: 30%; }
        @media screen and (max-width: 768px) {
          #top-page .top-news .news__box .flx2 .lt {
            width: 100%;
            padding-bottom: 5%; } }
      #top-page .top-news .news__box .flx2 .rt {
        width: calc(100% - 30%); }
        @media screen and (max-width: 768px) {
          #top-page .top-news .news__box .flx2 .rt {
            width: 100%; } }
#top-page .top-about {
  position: relative;
  padding: 5vw 0; }
  @media screen and (max-width: 768px) {
    #top-page .top-about {
      padding: 10vw 0; } }
  @media screen and (max-width: 480px) {
    #top-page .top-about .more-link a {
      line-height: 1.75;
      padding: 1em;
      font-size: 4vw; } }
  #top-page .top-about .about__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0; }
    @media screen and (max-width: 768px) {
      #top-page .top-about .about__bg {
        top: auto;
        bottom: 0;
        height: 50%; } }
  #top-page .top-about .about__contents {
    position: relative;
    z-index: 1; }
  #top-page .top-about .flx2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 10vw; }
    @media screen and (max-width: 768px) {
      #top-page .top-about .flx2 {
        padding-bottom: 0; } }
    #top-page .top-about .flx2 .lt, #top-page .top-about .flx2 .rt {
      width: calc(100% / 2 - 5%); }
      @media screen and (max-width: 768px) {
        #top-page .top-about .flx2 .lt, #top-page .top-about .flx2 .rt {
          width: calc(100%); } }
    @media screen and (max-width: 768px) {
      #top-page .top-about .flx2 .rt {
        text-align: center; } }
  #top-page .top-about .about__img {
    padding-top: 10%; }
    @media screen and (max-width: 768px) {
      #top-page .top-about .about__img {
        padding-top: 5%; } }
    #top-page .top-about .about__img img {
      border-radius: 24px; }
  #top-page .top-about .about__read {
    line-height: 2;
    font-size: var(--fz-5); }
    @media screen and (max-width: 768px) {
      #top-page .top-about .about__read {
        padding-top: 5%; } }
#top-page .top-activiti {
  padding: 5vw 0 0; }
  @media screen and (max-width: 768px) {
    #top-page .top-activiti {
      padding: 10vw 0 0; } }
  #top-page .top-activiti .activiti__intro {
    padding-bottom: 5vw;
    background: url("../img/top/activiti_bg.png") no-repeat bottom center;
    background-size: 100% 85%; }
    @media screen and (max-width: 768px) {
      #top-page .top-activiti .activiti__intro {
        padding-bottom: 10vw; } }
    #top-page .top-activiti .activiti__intro .activiti__img {
      padding-top: 10%; }
      @media screen and (max-width: 768px) {
        #top-page .top-activiti .activiti__intro .activiti__img {
          padding-top: 5%; } }
    #top-page .top-activiti .activiti__intro .activiti__read {
      line-height: 2;
      font-size: var(--fz-5);
      padding-left: 10%; }
      @media screen and (max-width: 768px) {
        #top-page .top-activiti .activiti__intro .activiti__read {
          padding-left: 0;
          padding-top: 5%;
          text-align: center; } }
    #top-page .top-activiti .activiti__intro .flx2 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      #top-page .top-activiti .activiti__intro .flx2 .lt {
        width: 60%; }
        @media screen and (max-width: 768px) {
          #top-page .top-activiti .activiti__intro .flx2 .lt {
            width: calc(100%); } }
      #top-page .top-activiti .activiti__intro .flx2 .rt {
        width: 40%; }
        @media screen and (max-width: 768px) {
          #top-page .top-activiti .activiti__intro .flx2 .rt {
            width: calc(100%); } }
  #top-page .top-activiti .activiti__thema {
    background: linear-gradient(to right, #7589af 0%, rgba(117, 137, 175, 0) 100%);
    padding: 5vw 0; }
    @media screen and (max-width: 768px) {
      #top-page .top-activiti .activiti__thema {
        padding: 10vw 0; } }
    @media screen and (max-width: 480px) {
      #top-page .top-activiti .activiti__thema .more-link a {
        display: block;
        line-height: 1.75;
        padding: 1em;
        font-size: 4vw; } }
    #top-page .top-activiti .activiti__thema .flx2 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: stretch; }
      #top-page .top-activiti .activiti__thema .flx2 .lt, #top-page .top-activiti .activiti__thema .flx2 .rt {
        width: calc(100% / 2 - 2.5%);
        margin: 5% 0;
        overflow: hidden;
        border-radius: 2vw; }
        @media screen and (max-width: 768px) {
          #top-page .top-activiti .activiti__thema .flx2 .lt, #top-page .top-activiti .activiti__thema .flx2 .rt {
            width: calc(100%);
            margin: 5% 0 0; } }
    #top-page .top-activiti .activiti__thema .thema__ttl {
      color: #01277c;
      letter-spacing: .1em;
      color: #ffffff; }
      #top-page .top-activiti .activiti__thema .thema__ttl .en-ttl {
        background: #01277c;
        display: inline-block;
        border-radius: 12px;
        padding: 0 1em;
        font-weight: bold;
        font-size: var(--fz-3); }
      #top-page .top-activiti .activiti__thema .thema__ttl .ja-ttl {
        color: #ffffff;
        font-size: var(--fz-2);
        margin: .2em 0 .8em; }
      #top-page .top-activiti .activiti__thema .thema__ttl .thema__ttl--read {
        color: #ffffff; }
    #top-page .top-activiti .activiti__thema .thema__list a {
      display: block;
      position: relative;
      width: 100%;
      text-decoration: none;
      color: #ffffff;
      padding: 5%;
      height: 100%;
      transition: transform 0.6s ease; }
      #top-page .top-activiti .activiti__thema .thema__list a .overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(to bottom, rgba(117, 137, 175, 0.6) 0%, rgba(1, 39, 124, 0.8) 100%);
        transition: opacity 0.3s ease; }
      #top-page .top-activiti .activiti__thema .thema__list a:hover .overlay {
        opacity: 0; }
      #top-page .top-activiti .activiti__thema .thema__list a.thema__list--01 {
        background: url("../img/top/activiti_list01.jpg") no-repeat center;
        background-size: cover; }
        #top-page .top-activiti .activiti__thema .thema__list a.thema__list--01:hover {
          transform: scale(1.05); }
      #top-page .top-activiti .activiti__thema .thema__list a.thema__list--02 {
        background: url("../img/top/activiti_list02.jpg") no-repeat center;
        background-size: cover; }
        #top-page .top-activiti .activiti__thema .thema__list a.thema__list--02:hover {
          transform: scale(1.05); }
      #top-page .top-activiti .activiti__thema .thema__list a .thema__list--read {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        flex-direction: column;
        position: relative;
        z-index: 1; }
        #top-page .top-activiti .activiti__thema .thema__list a .thema__list--read h3 {
          margin-bottom: 40%;
          font-size: var(--fz-4);
          letter-spacing: .1em; }
          #top-page .top-activiti .activiti__thema .thema__list a .thema__list--read h3 span::after {
            display: inline-block;
            content: '';
            width: 1.5em;
            height: 1.5em;
            margin-left: .5em;
            background-image: url("../img/arrow_wh.svg");
            background-repeat: no-repeat;
            background-size: contain;
            vertical-align: middle; }

/*********************************

sub_page

*********************************/
#sub-page {
  padding: 5vw 0;
  /*中長期ビジョン*/
  /*入会案内*/
  /*会長挨拶*/
  /*組織図 行事予定*/
  /*会員紹介*/
  /* アコーディオンのスタイル */
  /* 開閉アイコン */
  /* 閉じた状態のアイコン */
  /* 開いた状態のアイコン */
  /* 最初のアコーディオン項目だけ開いておく */
  /* アコーディオンのコンテンツ */
  /*お知らせ*/ }
  @media screen and (max-width: 768px) {
    #sub-page {
      padding: 10vw 0; } }
  #sub-page.page-def h1.def-title {
    font-size: 4rem;
    text-align: center;
    letter-spacing: 0.2em;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #01277c; }
    @media screen and (max-width: 768px) {
      #sub-page.page-def h1.def-title {
        font-size: 2rem; } }
  #sub-page.page-def .sub-page-title {
    padding-bottom: 5%; }
  #sub-page.page-def h2 {
    background: linear-gradient(to right, #01277c 0%, #7589af 100%);
    color: #ffffff;
    padding: .4em 1em;
    font-size: var(--fz-4);
    letter-spacing: .1em;
    margin-bottom: 20px; }
  #sub-page.page-vision img {
    width: 100%;
    height: auto; }
  #sub-page.page-vision .read-contents {
    line-height: 2;
    padding: 0 10px 40px; }
    @media screen and (max-width: 640px) {
      #sub-page.page-vision .read-contents {
        padding: 0 0 40px; } }
  #sub-page.page-vision .page-vision__intro .intro__img {
    margin-bottom: 30px; }
    #sub-page.page-vision .page-vision__intro .intro__img img {
      border-radius: 24px; }
      @media screen and (max-width: 640px) {
        #sub-page.page-vision .page-vision__intro .intro__img img {
          border-radius: 12px; } }
  #sub-page.page-vision .page-vision__list .visionlist {
    padding: 20px 0 0; }
    #sub-page.page-vision .page-vision__list .visionlist dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: stretch;
      border-bottom: 1px solid #01277c;
      padding-bottom: 20px;
      margin-bottom: 20px; }
      #sub-page.page-vision .page-vision__list .visionlist dl.last {
        border-bottom: none;
        padding-bottom: 0;
        margin-bottom: 0; }
      #sub-page.page-vision .page-vision__list .visionlist dl dt {
        width: 200px;
        border-right: 4px solid #01277c;
        padding-right: 20px; }
        @media screen and (max-width: 640px) {
          #sub-page.page-vision .page-vision__list .visionlist dl dt {
            width: 100%;
            border-right: none;
            padding-right: 0; } }
        #sub-page.page-vision .page-vision__list .visionlist dl dt h3 {
          background: #01277c;
          color: #ffffff;
          border-radius: 100vw;
          text-align: center;
          padding: .2em;
          letter-spacing: .1em; }
          @media screen and (max-width: 640px) {
            #sub-page.page-vision .page-vision__list .visionlist dl dt h3 {
              padding: .5em;
              margin-bottom: 20px; } }
      #sub-page.page-vision .page-vision__list .visionlist dl dd {
        width: calc(100% - 230px);
        line-height: 2;
        padding-left: 20px; }
        @media screen and (max-width: 640px) {
          #sub-page.page-vision .page-vision__list .visionlist dl dd {
            width: 100%;
            padding-left: 0; } }
        #sub-page.page-vision .page-vision__list .visionlist dl dd ul {
          margin-left: 2em; }
          #sub-page.page-vision .page-vision__list .visionlist dl dd ul .sub-list li {
            list-style-type: none; }
  #sub-page.page-vision .page-vision__list .matome-note {
    border-left: 4px solid #01277c;
    padding-left: 20px;
    margin-top: 4em; }
  #sub-page.page-join .join__intro .flx2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: stretch;
    margin-bottom: 5%; }
    @media screen and (max-width: 768px) {
      #sub-page.page-join .join__intro .flx2 {
        margin-bottom: 0; } }
    #sub-page.page-join .join__intro .flx2 .lt, #sub-page.page-join .join__intro .flx2 .rt {
      width: calc(100% / 2 - 2.5%); }
      @media screen and (max-width: 768px) {
        #sub-page.page-join .join__intro .flx2 .lt, #sub-page.page-join .join__intro .flx2 .rt {
          width: calc(100%);
          margin-bottom: 40px; } }
  #sub-page.page-join .join__intro--read {
    line-height: 2;
    border-left: 2px solid #01277c;
    padding-left: 20px; }
    @media screen and (max-width: 768px) {
      #sub-page.page-join .join__intro--read {
        padding-left: 0;
        border-left: none; } }
    #sub-page.page-join .join__intro--read .em {
      display: inline-block;
      color: #36b449;
      font-size: var(--fz-3);
      font-weight: bold;
      border-bottom: dashed 3px #36b449;
      letter-spacing: .08em;
      line-height: 1.5; }
      #sub-page.page-join .join__intro--read .em .lg-txt {
        font-size: 1.5em; }
        @media screen and (max-width: 480px) {
          #sub-page.page-join .join__intro--read .em .lg-txt {
            font-size: 1.6rem; } }
    #sub-page.page-join .join__intro--read .fee {
      border: 2px solid #36b449;
      padding: 20px;
      color: #36b449; }
      #sub-page.page-join .join__intro--read .fee .fee__list {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        #sub-page.page-join .join__intro--read .fee .fee__list span {
          display: inline-block; }
          #sub-page.page-join .join__intro--read .fee .fee__list span.line {
            flex-grow: 1;
            margin: 0 1em;
            height: 2px;
            background: #36b449; }
    #sub-page.page-join .join__intro--read .way .em {
      font-size: var(--fz-5); }
    #sub-page.page-join .join__intro--read .dl {
      border: 1px solid #01277c;
      padding: 30px 20px 20px;
      border-radius: 12px;
      position: relative;
      margin-top: 30px; }
      #sub-page.page-join .join__intro--read .dl .dl-ttl {
        background: #e8e9ee;
        padding: 0 10px;
        display: inline-block;
        position: absolute;
        left: 0;
        top: -15px; }
      #sub-page.page-join .join__intro--read .dl a {
        color: #04bde1;
        text-decoration: none;
        font-weight: bold; }
    #sub-page.page-join .join__intro--read ul {
      margin-left: 1em;
      list-style-type: disc; }
  #sub-page.page-join .join__contact {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-top: 1px solid #01277c;
    padding: 30px 0;
    font-weight: bold; }
    #sub-page.page-join .join__contact .join__contact--ttl {
      display: inline-block;
      padding: .5em 2em;
      font-weight: normal;
      color: #ffffff;
      background: linear-gradient(to right, #01277c 0%, #7589af 100%);
      border-radius: 100vw; }
    #sub-page.page-join .join__contact .join__contact--dtl {
      margin-left: 30px; }
      @media screen and (max-width: 768px) {
        #sub-page.page-join .join__contact .join__contact--dtl {
          width: 100%;
          margin-left: 0;
          margin-top: 10px; } }
      #sub-page.page-join .join__contact .join__contact--dtl .tel {
        font-size: var(--fz-5); }
        #sub-page.page-join .join__contact .join__contact--dtl .tel .lg-txt {
          display: inline-block;
          font-size: var(--fz-3);
          letter-spacing: .08em;
          margin: 0 .2em;
          color: #01277c;
          text-decoration: none; }
  #sub-page.page-join .join__voice {
    padding: 5vw 0; }
    @media screen and (max-width: 768px) {
      #sub-page.page-join .join__voice {
        padding: 10vw 0; } }
    #sub-page.page-join .join__voice .join__voice--list {
      margin: 30px auto; }
      #sub-page.page-join .join__voice .join__voice--list ul {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 4rem; }
        @media screen and (max-width: 480px) {
          #sub-page.page-join .join__voice .join__voice--list ul {
            gap: 0; } }
        #sub-page.page-join .join__voice .join__voice--list ul li {
          list-style-type: none;
          width: calc(50% - 2rem); }
          @media screen and (max-width: 480px) {
            #sub-page.page-join .join__voice .join__voice--list ul li {
              width: calc(100%);
              margin-bottom: 20px; } }
          #sub-page.page-join .join__voice .join__voice--list ul li .voice-img img {
            width: 100%;
            height: auto;
            aspect-ratio: 4 / 3;
            object-fit: cover;
            border-radius: 24px; }
            @media screen and (max-width: 480px) {
              #sub-page.page-join .join__voice .join__voice--list ul li .voice-img img {
                border-radius: 12px; } }
          #sub-page.page-join .join__voice .join__voice--list ul li .voice-name {
            font-size: var(--fz-4); }
          #sub-page.page-join .join__voice .join__voice--list ul li .voice-day {
            line-height: 2; }
          #sub-page.page-join .join__voice .join__voice--list ul li .voice-katagaki {
            line-height: 2; }
  #sub-page.page-join .join__pdf .join__pdf--list {
    line-height: 2;
    margin-top: 20px;
    border-left: 2px solid #01277c;
    padding-left: 20px; }
    #sub-page.page-join .join__pdf .join__pdf--list ul li {
      margin: .5em 0;
      list-style-type: none; }
      #sub-page.page-join .join__pdf .join__pdf--list ul li::before {
        display: inline-block;
        content: '●';
        color: #36b449;
        margin-right: .2em; }
      #sub-page.page-join .join__pdf .join__pdf--list ul li a {
        color: #36b449;
        text-decoration: none; }
  #sub-page.page-greeting .contents .page-greeting__read {
    padding: 0 10% 10%;
    line-height: 2; }
    @media screen and (max-width: 768px) {
      #sub-page.page-greeting .contents .page-greeting__read {
        padding: 0 0 10%; } }
  #sub-page.page-greeting .contents .page-greeting__slogan h3 {
    font-size: var(--fz-3); }
  #sub-page.page-organization h2, #sub-page.page-event_schedule h2 {
    background: none;
    color: #01277c;
    padding: 0;
    font-size: var(--fz-5);
    letter-spacing: .1em;
    margin-bottom: 0; }
  #sub-page.page-organization .page-organization__read table,
  #sub-page.page-organization .page-event_schedule__read table, #sub-page.page-event_schedule .page-organization__read table,
  #sub-page.page-event_schedule .page-event_schedule__read table {
    width: 100%;
    margin: 20px auto; }
    #sub-page.page-organization .page-organization__read table td,
    #sub-page.page-organization .page-event_schedule__read table td, #sub-page.page-event_schedule .page-organization__read table td,
    #sub-page.page-event_schedule .page-event_schedule__read table td {
      border: none;
      padding: .6em; }
    @media screen and (max-width: 768px) {
      #sub-page.page-organization .page-organization__read table tr,
      #sub-page.page-organization .page-event_schedule__read table tr, #sub-page.page-event_schedule .page-organization__read table tr,
      #sub-page.page-event_schedule .page-event_schedule__read table tr {
        border-bottom: 1px solid #fff; } }
    #sub-page.page-organization .page-organization__read table tr:first-child td,
    #sub-page.page-organization .page-event_schedule__read table tr:first-child td, #sub-page.page-event_schedule .page-organization__read table tr:first-child td,
    #sub-page.page-event_schedule .page-event_schedule__read table tr:first-child td {
      background: linear-gradient(to right, #01277c 0%, #7589af 100%);
      font-size: 1.1em;
      font-weight: bold;
      color: #ffffff;
      border-right: 1px solid #ffffff; }
      @media screen and (max-width: 768px) {
        #sub-page.page-organization .page-organization__read table tr:first-child td,
        #sub-page.page-organization .page-event_schedule__read table tr:first-child td, #sub-page.page-event_schedule .page-organization__read table tr:first-child td,
        #sub-page.page-event_schedule .page-event_schedule__read table tr:first-child td {
          font-size: 1em; } }
  #sub-page .accordion-header {
    position: relative;
    cursor: pointer;
    background: linear-gradient(to right, #01277c 0%, #7589af 100%);
    border-radius: 12px;
    color: #ffffff;
    font-size: var(--fz-4);
    letter-spacing: .1em;
    padding: .5em 1em;
    margin: 10px 0;
    font-weight: bold; }
  #sub-page .accordion-content {
    display: none;
    padding-left: 20px;
    margin-top: 10px; }
    #sub-page .accordion-content .flx2 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      #sub-page .accordion-content .flx2 .lt {
        width: 30%;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        font-size: var(--fz-5);
        font-weight: bold; }
      #sub-page .accordion-content .flx2 .rt {
        width: calc(100% - 30%); }
    #sub-page .accordion-content .index-heading {
      margin-bottom: 2rem;
      border-left: 3px solid #01277c;
      padding-left: 1rem; }
    #sub-page .accordion-content .member__list {
      margin: 30px 0; }
      #sub-page .accordion-content .member__list .ja_50_index {
        display: inline-block;
        border-right: 2px solid #01277c;
        padding-right: .5em;
        margin-right: .5em;
        font-weight: bold;
        width: 2em; }
      #sub-page .accordion-content .member__list .m_name {
        letter-spacing: .08em;
        width: calc(100% - 3em); }
    #sub-page .accordion-content .m_dtl {
      border-left: 1px solid #01277c;
      padding-left: 2rem;
      line-height: 2; }
      #sub-page .accordion-content .m_dtl li {
        list-style-type: none;
        position: relative;
        padding-left: 1.5em; }
        #sub-page .accordion-content .m_dtl li::before {
          content: '●';
          position: absolute;
          left: 0;
          top: 0;
          color: #01277c;
          font-size: 1em; }
  #sub-page .accordion-toggle {
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    margin-left: 1em;
    transition: transform 0.3s ease, color 0.3s ease; }
  #sub-page .accordion-item .accordion-toggle::before {
    display: inline-block;
    content: '';
    width: 1.5em;
    height: 1.5em;
    background: url("../img/arrow_down.svg") no-repeat center;
    background-size: contain;
    vertical-align: middle; }
  #sub-page .accordion-item.open .accordion-toggle::before {
    display: inline-block;
    content: '';
    width: 1.5em;
    height: 1.5em;
    background: url("../img/arrow_up.svg") no-repeat center;
    background-size: contain;
    vertical-align: middle; }
  #sub-page .accordion-item.open .accordion-content {
    display: block;
    opacity: 1;
    height: auto; }
  #sub-page .accordion-content {
    display: none;
    /* 初期状態では隠す */
    padding-left: 20px;
    opacity: 0;
    height: 0;
    transition: opacity 0.3s ease, height 0.3s ease; }
  #sub-page.page-news .category-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px; }
    #sub-page.page-news .category-list li {
      list-style-type: none; }
      #sub-page.page-news .category-list li a {
        display: inline-block;
        text-decoration: none;
        color: #ffffff;
        background: #7285a9;
        margin: 5px;
        min-width: 100px;
        text-align: center;
        border-radius: 100vw;
        padding: .2em 1em;
        letter-spacing: .1em; }
        #sub-page.page-news .category-list li a:hover {
          background: #01277c;
          opacity: 1; }
        @media screen and (max-width: 768px) {
          #sub-page.page-news .category-list li a {
            min-width: auto; } }
      #sub-page.page-news .category-list li.current a {
        background: #01277c; }
  #sub-page.page-news .flx2 {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    #sub-page.page-news .flx2 .lt {
      width: 20%; }
      @media screen and (max-width: 768px) {
        #sub-page.page-news .flx2 .lt {
          width: 100%; } }
    #sub-page.page-news .flx2 .rt {
      width: 75%; }
      @media screen and (max-width: 768px) {
        #sub-page.page-news .flx2 .rt {
          width: 100%;
          padding: 5% 0; } }
  #sub-page.page-news .heading01 {
    border-right: 10px solid #7285a9;
    padding-bottom: 10px; }
    @media screen and (max-width: 768px) {
      #sub-page.page-news .heading01 {
        border-right: none;
        border-bottom: 5px solid #7285a9; } }
    #sub-page.page-news .heading01 span {
      display: block;
      width: 100%; }

/*********************************

single-page

*********************************/
#single-page {
  padding: 5vw 0; }
  #single-page .single-page-title {
    padding-bottom: 5%; }
  #single-page .single-page__contents {
    line-height: 2;
    padding: 5%;
    border-radius: 12px;
    background: #ffffff; }
  #single-page.single-news .news-date {
    letter-spacing: .1em;
    color: #7285a9;
    font-weight: bold;
    font-size: .95em; }
  #single-page.single-news .news-ttl {
    font-size: var(--fz-5);
    margin-bottom: 1em;
    padding: .5em 0;
    border-bottom: 1px solid #7285a9; }

/*********************************

Contact_MWWPFORM

*********************************/
/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge {
  /*margin-bottom: 60px;*/ }

#form_page {
  margin: 5% auto;
  background: #fff;
  padding: 10%;
  color: #000; }
  @media screen and (max-width: 768px) {
    #form_page {
      max-width: 100%; } }

table.form_page__table {
  width: 100%;
  margin: 0 auto 5%; }
  @media screen and (max-width: 768px) {
    table.form_page__table {
      font-size: 1.3rem; } }
  table.form_page__table input, table.form_page__table textarea {
    padding: 10px;
    width: 100%;
    background: #eee;
    border: 1px solid #eee; }
    @media screen and (max-width: 768px) {
      table.form_page__table input, table.form_page__table textarea {
        padding: 10px .5em; } }
  table.form_page__table input[type="checkbox"],
  table.form_page__table input[type="radio"],
  table.form_page__table input[type="text"].input_tel {
    width: auto; }
  table.form_page__table input[type="tel"].input_zip {
    width: 6em; }
  table.form_page__table input[type="checkbox"] {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    -moz-transform: scale(1.4);
    -webkit-transform: scale(1.4);
    transform: scale(1.4); }
  table.form_page__table tr {
    border-bottom: 1px solid #eee; }
    table.form_page__table tr:first-child {
      border-top: 1px solid #eee; }
  table.form_page__table th {
    text-align: left;
    vertical-align: top;
    padding: 15px;
    width: 300px;
    background: #f9f9f9; }
    @media screen and (max-width: 768px) {
      table.form_page__table th {
        padding-bottom: 0;
        vertical-align: middle; } }
  table.form_page__table td {
    padding: 15px;
    font-weight: normal; }
    @media screen and (max-width: 768px) {
      table.form_page__table td {
        display: block;
        width: 100%;
        padding: 10px 0; } }

span.equ {
  display: inline-block;
  color: #01277c;
  padding: 4px 10px;
  font-weight: normal;
  font-size: .8em;
  font-weight: bold; }
  @media screen and (max-width: 768px) {
    span.equ {
      margin-top: 1em; } }

.btn_submit_wrap {
  text-align: center;
  margin: 5% auto; }

.btn_submit {
  cursor: pointer;
  color: #fff;
  background: #01277c;
  display: inline-block;
  padding: 1em 4em;
  margin: 0 auto;
  border: 1px solid #01277c;
  -webkit-transition: all .5s;
  transition: all .5s;
  letter-spacing: 0.18em;
  border-radius: 100vw; }

.btn_submit:hover {
  background: #7285a9;
  border: 1px solid #7285a9;
  color: #fff; }

/*戻る*/
.btn_submit_back {
  cursor: pointer;
  color: #01277c;
  background: #f9f9f9;
  display: inline-block;
  padding: 1em 2em;
  margin: 0 auto;
  border: 1px solid #01277c;
  -webkit-transition: all .5s;
  transition: all .5s;
  letter-spacing: 0.18em;
  margin-right: 1em;
  border-radius: 100vw; }

/*エラー*/
.mw_wp_form .error {
  display: inline-block !important; }

/*個人情報取り扱い*/
.form_page__p_area {
  text-align: center; }
  @media screen and (max-width: 768px) {
    .form_page__p_area {
      font-size: 1.3rem; } }
  .form_page__p_area h3 {
    margin-bottom: 20px; }
  .form_page__p_area .p_btn {
    display: inline-block; }
  .form_page__p_area .form_page__p_txt {
    padding: 30px;
    text-align: left;
    margin-bottom: 20px;
    line-height: 1.75em;
    width: 100%;
    height: 200px;
    border: 1px solid #01277c;
    border-radius: 5px;
    overflow: auto;
    background: #fff; }

/*********************************

footer

*********************************/
.footer {
  background-color: #01277c;
  color: #ffffff;
  padding: 5vw 0;
  /*スポンサー*/ }
  .footer a {
    text-decoration: none;
    color: #ffffff; }
  .footer img {
    width: 100%;
    height: auto; }
  .footer ul li {
    list-style-type: none; }
  .footer .footer__menu--sponsor {
    padding: 40px 0; }
    @media screen and (max-width: 768px) {
      .footer .footer__menu--sponsor {
        padding: 30px 0; } }
    .footer .footer__menu--sponsor ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media screen and (max-width: 640px) {
        .footer .footer__menu--sponsor ul {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
          justify-content: space-between;
          -webkit-align-items: flex-start;
          -ms-flex-align: start;
          align-items: flex-start;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
      .footer .footer__menu--sponsor ul li {
        width: calc(100% / 4 - 30px);
        margin: 15px; }
        @media screen and (max-width: 768px) {
          .footer .footer__menu--sponsor ul li {
            width: calc(100% / 4 - 10px);
            margin: 5px; } }
        @media screen and (max-width: 640px) {
          .footer .footer__menu--sponsor ul li {
            width: calc(100% / 2 - 10px);
            margin: 5px 0; } }
        .footer .footer__menu--sponsor ul li a {
          display: block; }
  .footer .footer__menu--top {
    background: #7285a9;
    padding: 15px 0; }
    .footer .footer__menu--top ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .footer .footer__menu--top ul li {
        margin-right: 2em;
        line-height: 2; }
        @media screen and (max-width: 768px) {
          .footer .footer__menu--top ul li {
            padding: 10px 0; } }
        .footer .footer__menu--top ul li:last-child {
          margin-right: 0; }
        .footer .footer__menu--top ul li a {
          letter-spacing: .1em; }
  .footer .footer__menu--btm {
    padding: 40px 0; }
    @media screen and (max-width: 768px) {
      .footer .footer__menu--btm {
        padding: 0 0 30px; } }
    .footer .footer__menu--btm .flx3 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .footer .footer__menu--btm .flx3 .lt, .footer .footer__menu--btm .flx3 .center, .footer .footer__menu--btm .flx3 .rt {
        width: calc(100% / 3 - 30px); }
        @media screen and (max-width: 768px) {
          .footer .footer__menu--btm .flx3 .lt, .footer .footer__menu--btm .flx3 .center, .footer .footer__menu--btm .flx3 .rt {
            width: calc(100%);
            padding: 30px 0; } }
    @media screen and (max-width: 768px) {
      .footer .footer__menu--btm .site-title a {
        display: block;
        width: 70%;
        margin: auto; } }
    .footer .footer__menu--btm .menu-list .menu-index {
      border-bottom: 1px solid #ffffff;
      padding-bottom: .5em;
      margin-bottom: 1em;
      font-size: var(--fz-5);
      text-align: left;
      font-weight: bold;
      letter-spacing: .1em; }
    .footer .footer__menu--btm .menu-list ul {
      margin-left: 1em; }
      .footer .footer__menu--btm .menu-list ul li {
        list-style-type: disc;
        text-align: left;
        margin-bottom: 10px; }
        @media screen and (max-width: 768px) {
          .footer .footer__menu--btm .menu-list ul li {
            margin-bottom: 15px; } }
        .footer .footer__menu--btm .menu-list ul li a {
          letter-spacing: .1em; }

#page_top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 100; }
  #page_top a {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    overflow: hidden;
    background: #01277c;
    border-radius: 100%;
    text-align: center;
    border: 1px solid #ffffff; }
    #page_top a i {
      color: #fff; }
