<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/*==================================
normalize.css
==================================*/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox &lt; 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: 500;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  /*overflow: auto;*/
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  /*font-family: monospace, monospace;
  font-size: 1em;*/
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*==================================
common.css
==================================*/
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif;
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  font-weight: 500;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

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

caption, th {
  text-align: left;
}

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

object, embed {
  vertical-align: top;
}

hr, legend {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
  vertical-align: bottom;
}

li {
  list-style-type: none;
}

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

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

.clearfix {
  display: inline-block;
  *zoom: 1;
}

/* Hides from IE-mac ＼*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */
.clear {
  clear: both;
}

.fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}

.left_al {
  text-align: left !Important;
}

.center_al {
  text-align: center !Important;
}

.right_al {
  text-align: right !Important;
}

.noimg {
  background-image: none !Important;
}

.nobackcolor {
  background-color: transparent !Important;
}

.noborder {
  border: none !Important;
}

.noborder_top {
  border-top: none !Important;
}

.noborder_bottom {
  border-bottom: none !Important;
}

.noborder_left {
  border-left: none !Important;
}

.noborder_right {
  border-right: none !Important;
}

.strong {
  font-weight: 500 !important;
}

/*margin*/
.mg00 {
  margin: 0px !Important;
}

.mt00 {
  margin-top: 0px !Important;
}

.mt05 {
  margin-top: 5px !Important;
}

.mt10 {
  margin-top: 10px !Important;
}

.mt15 {
  margin-top: 15px !Important;
}

.mt20 {
  margin-top: 20px !Important;
}

.mt25 {
  margin-top: 25px !Important;
}

.mt30 {
  margin-top: 30px !Important;
}

.mt35 {
  margin-top: 35px !Important;
}

.mt40 {
  margin-top: 40px !Important;
}

.mt45 {
  margin-top: 45px !Important;
}

.mt50 {
  margin-top: 50px !Important;
}

.mb00 {
  margin-bottom: 0px !Important;
}

.mb05 {
  margin-bottom: 5px !Important;
}

.mb10 {
  margin-bottom: 10px !Important;
}

.mb15 {
  margin-bottom: 15px !Important;
}

.mb20 {
  margin-bottom: 20px !Important;
}

.mb25 {
  margin-bottom: 25px !Important;
}

.mb30 {
  margin-bottom: 30px !Important;
}

.mb35 {
  margin-bottom: 35px !Important;
}

.mb40 {
  margin-bottom: 40px !Important;
}

.mb45 {
  margin-bottom: 45px !Important;
}

.mb50 {
  margin-bottom: 50px !Important;
}

.mb100 {
  margin-bottom: 100px !Important;
}

.mb150 {
  margin-bottom: 150px !Important;
}

.mb200 {
  margin-bottom: 200px !Important;
}

.ml00 {
  margin-left: 0px !Important;
}

.ml05 {
  margin-left: 5px !Important;
}

.ml10 {
  margin-left: 10px !Important;
}

.ml15 {
  margin-left: 15px !Important;
}

.ml20 {
  margin-left: 20px !Important;
}

.ml25 {
  margin-left: 25px !Important;
}

.ml30 {
  margin-left: 30px !Important;
}

.ml35 {
  margin-left: 35px !Important;
}

.ml40 {
  margin-left: 40px !Important;
}

.ml45 {
  margin-left: 45px !Important;
}

.ml50 {
  margin-left: 50px !Important;
}

.mr00 {
  margin-right: 0px !Important;
}

.mr05 {
  margin-right: 5px !Important;
}

.mr10 {
  margin-right: 10px !Important;
}

.mr15 {
  margin-right: 15px !Important;
}

.mr20 {
  margin-right: 20px !Important;
}

.mr25 {
  margin-right: 25px !Important;
}

.mr30 {
  margin-right: 30px !Important;
}

.mr35 {
  margin-right: 35px !Important;
}

.mr40 {
  margin-right: 40px !Important;
}

.mr45 {
  margin-right: 45px !Important;
}

.mr50 {
  margin-right: 50px !Important;
}

/*padding*/
.pg00 {
  padding: 0px !Important;
}

.pg03 {
  padding: 3px !Important;
}

.pg05 {
  padding: 5px !Important;
}

.pg10 {
  padding: 10px !Important;
}

.pg15 {
  padding: 15px !Important;
}

.pg20 {
  padding: 20px !Important;
}

.pg25 {
  padding: 25px !Important;
}

.pg30 {
  padding: 30px !Important;
}

.pt00 {
  padding-top: 0px !Important;
}

.pt05 {
  padding-top: 5px !Important;
}

.pt10 {
  padding-top: 10px !Important;
}

.pt15 {
  padding-top: 15px !Important;
}

.pt20 {
  padding-top: 20px !Important;
}

.pt25 {
  padding-top: 25px !Important;
}

.pt30 {
  padding-top: 30px !Important;
}

.pt35 {
  padding-top: 35px !Important;
}

.pt40 {
  padding-top: 40px !Important;
}

.pt45 {
  padding-top: 45px !Important;
}

.pt50 {
  padding-top: 50px !Important;
}

.pb00 {
  padding-bottom: 0px !Important;
}

.pb05 {
  padding-bottom: 5px !Important;
}

.pb10 {
  padding-bottom: 10px !Important;
}

.pb15 {
  padding-bottom: 15px !Important;
}

.pb20 {
  padding-bottom: 20px !Important;
}

.pb25 {
  padding-bottom: 25px !Important;
}

.pb30 {
  padding-bottom: 30px !Important;
}

.pb35 {
  padding-bottom: 35px !Important;
}

.pb40 {
  padding-bottom: 40px !Important;
}

.pb45 {
  padding-bottom: 45px !Important;
}

.pb50 {
  padding-bottom: 50px !Important;
}

.pl00 {
  padding-left: 0px !Important;
}

.pl05 {
  padding-left: 5px !Important;
}

.pl10 {
  padding-left: 10px !Important;
}

.pl15 {
  padding-left: 15px !Important;
}

.pl20 {
  padding-left: 20px !Important;
}

.pl25 {
  padding-left: 25px !Important;
}

.pl30 {
  padding-left: 30px !Important;
}

.pl35 {
  padding-left: 35px !Important;
}

.pl40 {
  padding-left: 40px !Important;
}

.pl45 {
  padding-left: 45px !Important;
}

.pl50 {
  padding-left: 50px !Important;
}

.pr00 {
  padding-right: 0px !Important;
}

.pr05 {
  padding-right: 5px !Important;
}

.pr10 {
  padding-right: 10px !Important;
}

.pr15 {
  padding-right: 15px !Important;
}

.pr20 {
  padding-right: 20px !Important;
}

.pr25 {
  padding-right: 25px !Important;
}

.pr30 {
  padding-right: 30px !Important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !Important;
}

.pr45 {
  padding-right: 45px !Important;
}

.pr50 {
  padding-right: 50px !Important;
}

/*==================================
ヘッダー
==================================*/
body.active {
  height: 100%;
  overflow: hidden;
}

.header {
  position: fixed;
  z-index: 100;
  width: 100%;
}
.header .inner {
  width: 100%;
  position: relative;
}
.header__inner {
  position: fixed;
  z-index: 100;
  top: -120%;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #F8F8F8;
  transition: all .3s;
  display: flex;
  flex-direction: column-reverse;
  padding-top: 50px;
  justify-content: flex-end;
}
.header__inner.panelactive {
  top: 0;
}
.header__inner .header__logo--pc {
  display: none;
}
.header__inner--sp {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 120;
  background: #fff;
}
.header__inner--sp a {
  display: flex;
  align-items: center;
  height: 50px;
}
.header__inner--sp a img {
  height: 25px;
  width: auto;
  margin-left: 4vw;
}
.header__inner--sp a .logo-text {
  font-size: 1.2rem;
  margin-left: 1em;
  letter-spacing: .2em;
  display: inline-block;
  padding-top: .3em;
}
.header .logout__block {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 92vw;
  margin: 10px auto;
}
.header .logout__block a {
  width: 120px;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #0068B7;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  border-radius: 50px;
  transition: all .3s;
}
.header__contact-btn {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 60px;
  height: 55px;
}
.header__contact-btn a {
  position: relative;
  width: 100%;
  height: 55px;
  display: block;
  border-top-right-radius: 15px;
  background: #0068B7;
  color: #fff;
  font-size: 8px;
  font-weight: 600;
  text-align: center;
  padding-top: 25px;
  line-height: 1.4;
  transition: .3s all;
}
.header__contact-btn a::after {
  content: '';
  width: 16px;
  height: 13px;
  background: url("../images/common/icon-mail.svg") center center no-repeat;
  background-size: cover;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
}

.gnav__block {
  overflow-y: auto;
  height: 100%;
  padding-bottom: 100px;
}
.gnav li a {
  display: block;
  padding: .5em 10vw;
  font-size: 1.6rem;
  text-align: right;
}
.gnav li.current {
  position: relative;
}
.gnav li.current a::after {
  content: '';
  width: 5vw;
  height: 2px;
  background: #333;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.openbtn {
  position: relative;
  width: 50px;
  height: 50px;
  cursor: pointer;
  z-index: 12;
}
.openbtn span {
  background: #85B6DD;
  border: none;
  height: 2px;
  width: 24px;
  position: absolute;
  top: 20px;
  left: 10px;
  transition: all .35s ease;
  cursor: pointer;
}
.openbtn span:nth-of-type(2) {
  top: 30px;
  left: 16px;
}
.openbtn.active span:nth-of-type(1) {
  top: 25px;
  left: 14px;
  transform: translateY(0) rotate(-30deg);
}
.openbtn.active span:nth-of-type(2) {
  top: 25px;
  left: 14px;
  transform: translateY(0) rotate(30deg);
}

/*==================================
フッター
==================================*/
.footer-info__wrap {
  margin: 3.5rem 0 2.0rem;
  display: flex;
  line-height: 1.5;
}
.footer-info__logo {
  margin-right: 5%;
  width: 20%;
  padding-top: 1.0rem;
}
.footer-info__logo img {
  width: 100%;
}
.footer-info__text {
  width: 75%;
}
.footer-info__title {
  font-size: 1.8rem;
  font-weight: 400;
  color: #707070;
  margin-bottom: .2em;
}
.footer-info__address {
  font-size: 1.4rem !important;
  font-weight: 400 !important;
  color: #707070;
  margin-bottom: 0;
}

.footer {
  background: #0068B7;
  color: #fff;
  height: 66px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.footer__inner {
  width: 100%;
  margin: 0 auto;
}
.footer__copyright {
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.4;
}

#totop {
  position: fixed;
  display: none;
  right: 5%;
  bottom: 15px;
  z-index: 90;
  cursor: pointer;
  border-radius: 50%;
}
#totop a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  color: #fff;
  text-indent: -9999px;
}
#totop a::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: '';
  display: block;
  background: #fff;
  transition: .2s all;
  border-radius: 50%;
  border: 2px solid #85B6DD;
  z-index: -1;
  transition: all .3s;
}
#totop a::after {
  position: absolute;
  bottom: 8px;
  margin: auto;
  content: "";
  vertical-align: middle;
  left: 11px;
  width: 13px;
  height: 13px;
  border-top: 2px solid #85B6DD;
  border-right: 2px solid #85B6DD;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  z-index: 81;
  transition: all .3s;
}

/*==================================
共通パーツ
==================================*/
html {
  scroll-behavior: smooth;
  scroll-padding-top: 5.0rem;
}

div, a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
div#wpadminbar, a#wpadminbar {
  position: fixed;
}

.main {
  padding-top: 5rem;
  overflow: hidden;
  margin-bottom: 50px;
}
.main.top-main {
  margin-bottom: 0;
}
.main section {
  /*scroll-margin-top: 7rem;*/
  padding-bottom: 2.0rem;
  position: relative;
}
.main section.bg-gray::before {
  content: '';
  width: 100vw;
  height: 100%;
  position: absolute;
  right: 0;
  top: -2rem;
  background: #F8F8F8;
  z-index: -1;
  border-top-left-radius: 3.0rem;
  border-bottom-left-radius: 3.0rem;
}
.main p {
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 1em;
}
.main p.section__text {
  color: #707070;
}
.main p.section__text a {
  text-decoration: underline;
}
.main p.note {
  font-size: 1.3rem;
  line-height: 1.6;
  padding-left: 1em;
  text-indent: -1em;
  color: #707070;
}
.main p.note a {
  text-decoration: underline;
  color: #707070;
}
.main p.note a:hover {
  text-decoration: none;
}
.main p.copy {
  text-align: center;
}
.main p.strong {
  font-weight: 500;
}
.main p.tab-info {
  text-align: center;
  margin-bottom: 0;
}
.main p.sp-align-left {
  text-align: left;
}
.main .form__wrap dl dd {
  display: block;
}
.main .form__wrap dl dd p {
  display: flex;
  align-items: flex-start;
}
.main .form__wrap dl p {
  margin-bottom: 0;
}
.main .lighter {
  font-weight: 300 !important;
}
.main .bold {
  font-weight: 500 !important;
}
.main section + section {
  margin-top: 5.0rem;
}
.main .inner {
  width: 90%;
  max-width: 94rem;
  margin: 0 auto;
}

span.red {
  color: #DD0000;
}

a {
  color: #333;
  text-decoration: none;
  outline: none;
}
a.blue-link {
  color: #0033DD !important;
  text-decoration: underline;
}
a.before-arrow {
  position: relative;
  padding-left: 2.5rem;
  display: inline-block;
}
a.before-arrow::before {
  position: absolute;
  top: .65em;
  /*bottom: 0;*/
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.0rem;
  height: 1.0rem;
  border-top: .2rem solid #707070;
  border-right: .2rem solid #707070;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: .2s all;
}

ul.list-circle-small li {
  font-size: 1.6rem;
  text-indent: -1.0em;
  padding-left: 1.0em;
  color: #707070;
}
ul.list-circle-small li::before {
  content: '・';
}

.btn-wrap {
  margin: 2.0rem auto 2.0rem;
}
.btn-wrap__col2 .btn + .btn {
  margin-top: 1.0rem;
}
.btn-wrap.login-btn-wrap {
  margin-top: 3.0rem;
}
.btn-wrap.login-btn-wrap .btn {
  width: 100%;
}
.btn-wrap.login-btn-wrap .btn a {
  width: 100%;
  height: 6.0rem;
  text-align: left;
}

.btn {
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 10;
}
.btn a {
  width: 91.32%;
  height: 4.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #2D2D2D;
  border-radius: 4.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 auto;
  line-height: 1.2;
}
.btn.back-btn a {
  position: relative;
}
.btn.back-btn a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 2.0rem;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.0rem;
  height: 1.0rem;
  border-top: .2rem solid #707070;
  border-right: .2rem solid #707070;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  transition: .2s all;
}
.btn.next-btn a {
  position: relative;
}
.btn.next-btn a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 2.0rem;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.0rem;
  height: 1.0rem;
  border-top: .2rem solid #707070;
  border-right: .2rem solid #707070;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: .2s all;
}
.btn.sub-btn {
  margin-top: 2.0rem;
}
.btn.sub-btn a {
  width: 86%;
  max-width: 38rem;
  background: #D5D5D5;
}

button.btn {
  width: 91.32%;
  height: 4.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #2D2D2D;
  border-radius: 4.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 auto;
  line-height: 1.2;
  background-color: transparent;
}

.btn-submit {
  position: relative;
  width: 92%;
  max-width: 43rem;
  display: block;
  margin: 0 auto;
}
.btn-submit .wpcf7-spinner {
  display: none;
}
.btn-submit.is-active::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 2.0rem;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.0rem;
  height: 1.0rem;
  border-top: .2rem solid #707070;
  border-right: .2rem solid #707070;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: .2s all;
}
.btn-submit input[type="submit"] {
  width: 100%;
  height: 4.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #2D2D2D;
  border-radius: 4.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 auto;
  transition: .2s all;
  line-height: 1.3;
  background-color: transparent;
}
.btn-submit input[type="submit"].is-inactive {
  opacity: 0.3;
}

.switch {
  visibility: hidden;
}

.pc {
  display: none;
}

.sp {
  display: block;
}

.breadcrumbs {
  margin: 1.0rem 0 2.0rem;
  line-height: 1.2;
}
.breadcrumbs li {
  display: inline-block;
  font-size: 1.0rem;
  position: relative;
}
.breadcrumbs li a {
  /*text-decoration: underline;*/
  vertical-align: bottom;
  display: block;
}
.breadcrumbs li a:hover {
  text-decoration: none;
}
.breadcrumbs li + li {
  margin-left: 1.4rem;
}
.breadcrumbs li + li::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -1.4rem;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: .6rem;
  height: .6rem;
  border-top: .1rem solid #707070;
  border-right: .1rem solid #707070;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: .2s all;
}

.cat-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.cat-list__item {
  margin-bottom: 1.0rem;
  margin-right: 0.8rem;
}
.cat-list__item a {
  font-size: 1.3rem;
  font-weight: 500;
  color: #707070;
  line-height: 1;
  white-space: nowrap;
  padding: .6rem 1.5rem;
  border-radius: 1.8rem;
  background: #F3F8FC;
  transition: .3s all;
}
.cat-list__item a:hover {
  text-decoration: none;
  color: #fff;
  background: #0068B7;
}
.cat-list__item.current a {
  color: #fff;
  background: #0068B7;
}

.pagelink-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, 49%);
  justify-content: center;
  column-gap: 2%;
  row-gap: 1.0rem;
  position: relative;
  z-index: 10;
}
.pagelink-list-wrap {
  overflow: auto;
  margin-bottom: 1.5rem;
}
.pagelink-list__item {
  text-align: center;
}
.pagelink-list__item a {
  border: 1px solid #D0D0D0;
  font-size: 1.6rem;
  width: 100%;
  display: flex;
  height: 3.6rem;
  justify-content: center;
  align-items: center;
  line-height: 1.3;
  transition: .2s all;
}
.pagelink-list__col3 {
  grid-template-columns: repeat(auto-fit, 23rem);
}

.box-shadow__wrap {
  box-shadow: 0px 0px 1.0rem #00000033;
  border-radius: 1.0rem;
  padding: 4vw 4vw;
}
.box-shadow__wrap--full {
  width: 100%;
}
.box-shadow__wrap .btn-wrap a {
  width: auto;
}
.box-shadow__wrap + .section__border-title {
  margin-top: 3.0rem;
}

.bg-gray__wrap {
  padding: 2.0rem 5.1%;
  background: #F8F8F8;
  border-radius: 2.0rem;
}
.bg-gray__wrap .btn a {
  background: #fff;
}
.bg-gray__wrap .btn-wrap {
  margin-top: 1rem;
}
.bg-gray__wrap .section-inner-section {
  padding-bottom: 0;
}
.bg-gray__wrap .section-inner-section + .section-inner-section {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid #D0D0D0;
}

.page__title-wrap {
  position: relative;
}
.page__title-text {
  display: flex;
  align-items: center;
  height: 20vw;
  font-size: 2.2rem;
  font-weight: 700;
  color: #0068B7;
}
.page__title-img {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  border-bottom-left-radius: 3.0rem;
}
.page__title-img::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(270deg, #FFFFFF66 0%, #FFFFFF 100%);
  z-index: 0;
}
.page__title-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right 50%;
  border-bottom-left-radius: 3.0rem;
}

.section__title {
  font-size: 2.0rem;
  font-weight: 600;
  position: relative;
  margin: 0 auto 1.5rem;
  padding: 1rem 0;
  display: block;
  line-height: 1.3;
  z-index: 1;
  padding-left: 2.5rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.section__title::before {
  content: '';
  width: 2.0rem;
  height: 2.0rem;
  position: absolute;
  left: 0;
  top: 1.2em;
  transform: translateY(-50%);
  background: #0068B7;
  border-radius: 50%;
  z-index: -1;
}
.section__title.branch__sub-title {
  font-size: 1.6rem;
}
.section__title-sub {
  font-size: 1.46rem;
  font-weight: 500;
  color: #707070;
  margin: 1em auto 1em 0;
  position: absolute;
  left: 0;
  top: 4rem;
}
.section__title-sub a {
  color: #707070;
  text-decoration: underline;
}
.section__title-sub a:hover {
  text-decoration: none;
}
.section__title-link {
  margin: 0 0 0 auto;
}
.section__title-link a {
  font-size: 1.4rem;
  font-weight: 500;
  vertical-align: top;
  border-bottom: 1px solid #333333;
  line-height: 2;
  padding-bottom: .4em;
}
.section__title-link a:hover {
  border: none;
  text-decoration: none;
}

.section__sub-title {
  color: #707070;
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: .5em;
}

.section__notice {
  color: #707070;
  font-size: 1.4rem;
  font-weight: 300;
  padding: .5em;
}

.section__agenda-wrap {
  margin-top: 0 !important;
}

.book-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 3em;
}
.book-list::before {
  content: '';
  display: block;
  width: 22.12%;
  height: 0;
  order: 1;
}
.book-list__item {
  width: 48%;
  margin-bottom: 3.83%;
}
.book-list__item figure {
  margin: 0;
  padding: 0;
}
.book-list__item figcaption {
  font-size: 1.4rem;
  color: #707070;
  text-align: center;
  line-height: 1.6;
  margin-top: .2em;
  margin-bottom: .3em;
}
.book-list__item img {
  width: 100%;
  border-radius: 1.0rem;
  margin-bottom: .1em;
}
.book-list__item a {
  transition: .3s all;
}
.book-list__item a:hover {
  text-decoration: none;
  opacity: .6;
}

.apply-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.apply-list__item {
  width: 100%;
  margin-bottom: 5%;
  border-radius: .5rem;
}
.apply-list__item:hover img {
  box-shadow: 0px .3rem 3rem #00000029;
}
.apply-list__item figure {
  margin: 0;
  padding: 0;
}
.apply-list__item figcaption {
  font-size: 1.6rem;
  color: #707070;
  text-align: center;
  line-height: 1.6;
  margin-top: .2em;
  margin-bottom: .3em;
}
.apply-list__item img {
  width: 100%;
  border-radius: 1.0rem;
  margin-bottom: .3em;
  box-shadow: 0px 0px 1.0rem #00000033;
  transition: .3s all;
}
.apply-list__item a {
  transition: .3s all;
}
.apply-list__item a:hover {
  text-decoration: none;
}

.bnr-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.bnr-list__item {
  width: 100%;
  margin-bottom: 3.83%;
  border-radius: .5rem;
}
.bnr-list__item:hover img {
  box-shadow: 0px .3rem 3rem #00000029;
}
.bnr-list__item figure {
  margin: 0;
  padding: 0;
}
.bnr-list__item figcaption {
  font-size: 1.6rem;
  color: #707070;
  text-align: center;
  line-height: 1.6;
  margin-top: .2em;
  margin-bottom: .3em;
}
.bnr-list__item img {
  width: 100%;
  border-radius: 1.0rem;
  box-shadow: 0px 0px 1.0rem #00000033;
  transition: .3s all;
}
.bnr-list__item a {
  transition: .3s all;
}
.bnr-list__item a:hover {
  text-decoration: none;
}

/*==================================
お知らせページ
==================================*/
.news__wrap .section__title {
  margin-bottom: 0;
}

.news-list__item {
  padding: 1em 0;
  border-bottom: 1px solid #E5E5E5;
}
.news-list__item a {
  transition: .3s all;
}
.news-list__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.news-list__day {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 600;
  color: #707070;
}
.news-list__cat {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 600;
  color: #0068B7;
  margin-left: 1.5em;
}
.news-list__text {
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  color: #707070;
}

.pagenation-list {
  margin-top: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.pagenation-list__item {
  font-size: 2.3rem;
  font-weight: 700;
}
.pagenation-list__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.6rem;
  height: 3.6rem;
  transition: all .3s;
  border-radius: .8rem;
  border: 1px solid #707070;
  color: #C1C1C1;
}
.pagenation-list__item a.active {
  color: #333333;
}
.pagenation-list__item + .pagenation-list__item {
  margin-left: 15px;
}

ul.page-numbers {
  margin-top: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
ul.page-numbers li {
  font-size: 2.3rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
}
ul.page-numbers li .page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.6rem;
  height: 3.6rem;
  transition: all .3s;
  border-radius: .8rem;
  border: 1px solid #707070;
  color: #C1C1C1;
}
ul.page-numbers li .page-numbers.current {
  color: #333333;
}
ul.page-numbers li + li {
  margin-left: 1.5rem;
}

/*==================================
お知らせ投稿ページ
==================================*/
.news-contents {
  /* thタグ、tdタグ内の中央に上下左右にそろえる */
}
.news-contents__wrap {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
.news-contents__date {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 600;
  color: #707070;
}
.news-contents__cat {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 600;
  color: #0068B7;
  margin-left: 1em;
}
.news-contents h1.news-contents__title {
  font-size: 1.8rem;
  font-weight: 600;
  padding: 0 0 .5em;
  color: #707070;
  border-bottom: 1px solid #E5E5E5;
  margin-bottom: 0;
  line-height: 1.5;
}
.news-contents__mv {
  width: 100%;
  margin: 2rem 0;
}
.news-contents::after {
  content: "";
  display: block;
  clear: both;
}
.news-contents a {
  color: #107AA8;
  text-decoration: underline;
}
.news-contents a:hover {
  text-decoration: none;
}
.news-contents img {
  max-width: 100%;
}
.news-contents p {
  font-size: 1.6rem;
  margin-bottom: 1.8rem;
}
.news-contents ul {
  margin-bottom: 1.6rem;
  padding-left: 2.5rem;
}
.news-contents ul li {
  font-size: 1.8rem;
  list-style-type: disc;
}
.news-contents ol {
  padding-left: 2.6rem;
  margin-bottom: 1.8rem;
}
.news-contents ol li {
  font-size: 1.6rem;
  list-style-type: decimal;
}
.news-contents table {
  border-collapse: collapse;
}
.news-contents th, .news-contents td {
  padding: .2em;
  font-size: 1.4rem;
  vertical-align: middle;
  border: 1px solid #333;
  vertical-align: inherit;
}
.news-contents th {
  font-weight: 500;
  text-align: center;
  vertical-align: inherit;
  background: #FFECE1;
}
.news-contents h1 {
  font-size: 2.4rem;
  margin: .335em 0;
  font-weight: 600;
}
.news-contents h2 {
  font-size: 2.2rem;
  margin: 0.375em 0;
  font-weight: 600;
}
.news-contents h3 {
  font-size: 2rem;
  margin: .415em 0;
  font-weight: 600;
}
.news-contents h4 {
  font-size: 1.8rem;
  margin: .56em 0;
  font-weight: 600;
}
.news-contents h5 {
  font-size: 1.494rem;
  margin: .75em 0;
  font-weight: 600;
}
.news-contents h6 {
  font-size: 1.35rem;
  margin: .835em 0;
  font-weight: 600;
}
.news-contents em {
  font-style: italic;
}
.news-contents .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.news-contents .alignright {
  float: right;
  margin-left: 1.5em;
}
.news-contents .alignleft {
  float: left;
  margin-right: 1.5em;
}
.news-contents hr {
  display: block;
  unicode-bidi: isolate;
  margin-block-start: 0.5em;
  margin-block-end: 0.5em;
  margin-inline-start: auto;
  margin-inline-end: auto;
  overflow: hidden;
  border-style: inset;
  border-width: 1px;
}
.news-contents blockquote {
  position: relative;
  padding: 2rem 2rem;
  background: #F8F8F8;
  color: #555;
  margin: 1rem auto;
}

/*==================================
投稿ページ一覧
==================================*/
.post-list-wrap {
  padding: 0 4vw;
}

.post-list__item {
  margin-bottom: 3.0rem;
  font-size: 1.8rem;
  padding: 0;
}
.post-list__item:first-child {
  box-shadow: none;
  border: 1px solid #707070;
  padding: 1.0rem;
  border-radius: 1.0rem;
}
.post-list__item a {
  display: block;
  padding: 1.0rem;
}
.post-list__item a:hover {
  text-decoration: none;
}
.post-list__item a:hover .post-list__day {
  text-decoration: none;
}
.post-list__item a:hover .post-list__title {
  text-decoration: underline;
}
.post-list__item .post-list__day {
  padding: .2rem 1.0rem .8rem;
  border-bottom: 1px solid #707070;
}
.post-list__item .post-list__title {
  padding: .8rem 1.0rem .2rem;
}
.post-list__item.is-hidden {
  display: none;
}

.more-btn-wrap, .panel-more-btn-wrap {
  text-align: center;
}

.panel-more-btn-wrap {
  margin-top: 3.0rem;
}

.more-btn, .panel-more-btn {
  font-size: 2.0rem;
  font-weight: 500;
  border: none;
  background: none;
  margin: 0 auto;
  position: relative;
  padding-right: 2.0rem;
}
.more-btn::before, .panel-more-btn::before {
  position: absolute;
  top: .45em;
  /*bottom: 0;*/
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.2rem;
  height: 1.2rem;
  border-top: .3rem solid #707070;
  border-right: .3rem solid #707070;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.more-btn.is-btn-hidden, .panel-more-btn.is-btn-hidden {
  display: none;
}

.archive-more-btn-wrap {
  display: none;
}

.archive-list-wrap {
  position: fixed;
  left: 0;
  bottom: calc(-100vh + 19rem - 7rem);
  width: 100%;
  height: calc(100vh - 6.9rem);
  padding: 0 0 0;
  background: #F8F8F8;
  z-index: 100;
  transition: .5s all;
}
.archive-list-wrap.hide {
  transform: translateY(13.5rem);
}
.archive-list-wrap.is-open {
  bottom: 0;
}
.archive-list-wrap.is-open .archive-open-btn::before {
  top: .6rem;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.archive-open-btn {
  width: 100%;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 1.68rem 1rem .8rem;
  margin-bottom: 1em;
  position: relative;
}
.archive-open-btn::before {
  position: absolute;
  top: .8em;
  left: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1rem;
  height: 1rem;
  border-top: .2rem solid #707070;
  border-right: .2rem solid #707070;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  transition: .2s all;
}

.archive-list {
  width: 90%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, 100px);
  justify-content: center;
  grid-gap: .75rem 2%;
  /*margin-bottom: 2.0%;*/
  /*grid-auto-rows: minmax(30rem, auto);*/
  position: absolute;
  top: 50%;
  transform: translateY(-60%);
}
.archive-list li {
  font-size: 1.8rem;
}
.archive-list li a {
  position: relative;
  padding-left: 1.5rem;
  display: block;
}
.archive-list li a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 7.5rem;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.0rem;
  height: 1.0rem;
  border-top: .2rem solid #707070;
  border-right: .2rem solid #707070;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: .2s all;
}
.archive-list li a:hover {
  text-decoration: none;
  color: #D99069;
}
.archive-list li a:hover::after {
  border-color: #D99069;
}
.archive-list li.current a {
  color: #D99069;
}
.archive-list li.current a::after {
  border-color: #D99069;
}

/*==================================
総支部ページ
==================================*/
.section__intro-wrap {
  padding-bottom: 6rem !important;
}
.section__intro-wrap .intro__main-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.section__intro-wrap .intro__main-img {
  width: 50%;
  margin: 0 auto 1em;
}
.section__intro-wrap .intro__main-img img {
  width: 100%;
  border-radius: 1.0rem;
}
.section__intro-wrap .intro__main-block {
  width: 100%;
}
.section__intro-wrap .intro__main-block .post-name {
  font-size: 1.8rem;
  font-weight: 500;
  display: inline-block;
  padding: .5em 1em .5em 0;
  width: 50%;
}
.section__intro-wrap .intro__main-block .name {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: .2em;
  padding: .5em 0;
  display: inline-block;
  width: 48%;
}
.section__intro-wrap .intro__sub-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
}
.section__intro-wrap .intro__sub-wrap .intro-table {
  width: 100%;
  /*margin-top: 5.0rem;*/
}
.section__intro-wrap .intro__sub-wrap .intro-table tr th {
  width: 50%;
  font-weight: 500;
  padding: .5em 1em .5em 0;
  border-bottom: 1px solid #E5E5E5;
}
.section__intro-wrap .intro__sub-wrap .intro-table tr td {
  width: 50%;
  padding: .5em 0;
  border-bottom: 1px solid #E5E5E5;
}

/*==================================
広報物ページ
==================================*/
.section__public-wrap p a {
  text-decoration: underline;
}
.section__public-wrap .public__main-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.section__public-wrap .public__main-wrap + .public__main-wrap {
  margin-top: 5rem;
}
.section__public-wrap .public__main-img {
  width: 50%;
  margin: 0 auto;
}
.section__public-wrap .public__main-img a:hover {
  text-decoration: none;
}
.section__public-wrap .public__main-img figure {
  margin: 0;
  padding: 0;
}
.section__public-wrap .public__main-img figure figcaption {
  text-align: center;
}
.section__public-wrap .public__main-img img {
  width: 100%;
  border-radius: 1.0rem;
  margin-bottom: .5rem;
}
.section__public-wrap .public__main-block {
  width: 100%;
}
.section__public-wrap .public__main-block .sub-title {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
}
.section__public-wrap .public__main-block .main-title {
  font-size: 2.0rem;
  font-weight: 600;
  margin-bottom: .1em;
}

/*==================================
機関紙ページ
==================================*/
.section__backnumber-wrap .backnumber__wrap .book-list {
  margin-top: 0;
}

/*==================================
行事ページ
==================================*/
.section__event-wrap + .section__event-wrap {
  margin-top: 0 !important;
}

/*==================================
ギャラリーページ
==================================*/
.modaal-close:after, .modaal-close:before {
  width: 2px;
}

.modaal-close:focus:after, .modaal-close:focus:before, .modaal-close:hover:after, .modaal-close:hover:before {
  background: #0068B7;
}

.gallery-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.gallery-list li {
  /*width: 100%;*/
  margin-right: 1rem;
  margin-bottom: 1rem;
}
.gallery-list li img {
  width: 100%;
}

.gallery__select {
  background: #F8F8F8;
  width: calc(100% - 5.0rem);
  position: relative;
  z-index: 1;
  margin-right: 1.1rem;
  margin-bottom: 1rem;
  position: relative;
}
.gallery__select-wrap {
  display: flex;
  margin-bottom: 5.0rem;
  flex-wrap: wrap;
}
.gallery__select-wrap button#sort-btn {
  background: url("../images/common/icon-search.svg") center center no-repeat #0068B7;
  background-size: 1.6rem 1.6rem;
  width: 3.9rem;
  border: none;
  transition: .3s all;
  border-radius: 0;
  margin-bottom: 1rem;
}
.gallery__select-wrap button#sort-btn:hover {
  opacity: .6;
}
.gallery__select::after {
  position: absolute;
  content: '';
  width: 1.2rem;
  height: 1.2rem;
  right: .8em;
  top: 45%;
  transform: translateY(-50%) rotate(45deg);
  border-bottom: 1px solid #707070;
  border-right: 1px solid #707070;
  z-index: -1;
}
.gallery__select select {
  /* 初期化 */
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: none;
  border: 1px solid #707070;
  border-radius: 0;
  color: #333;
  font-size: 1.6rem;
  width: 100%;
  height: 100%;
  padding: .2em 1.5em .2em .8em;
}

/*==================================
単組・支部ページ
==================================*/
.branch-link-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 3.0rem;
}
.branch-link-list__item {
  margin: 0 auto 1.0rem;
  width: 90%;
}
.branch-link-list__item a {
  display: flex;
  width: 100%;
  height: 4.4rem;
  color: #707070;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  justify-content: flex-start;
  align-items: center;
  padding: 0 2em;
  border: 1px solid #E5E5E5;
  border-radius: 2.2rem;
}

/*==================================
定期大会議案書ページ
==================================*/
.agenda-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.agenda-list__item {
  width: 80%;
  margin: 0 auto 8%;
}
.agenda-list__item figure {
  margin: 0;
  padding: 0;
}
.agenda-list__item figcaption {
  font-size: 1.6rem;
  color: #707070;
  text-align: center;
  line-height: 1.6;
  margin-top: .2em;
  margin-bottom: .3em;
}
.agenda-list__item img {
  width: 100%;
  margin-bottom: .3em;
  transition: .3s all;
}
.agenda-list__item a {
  transition: .3s all;
}
.agenda-list__item a:hover {
  text-decoration: none;
}

/*==================================
スケジュールページ
==================================*/
.schedule-table {
  width: 100%;
  line-height: 1.5;
  font-size: 1.4rem;
}
.schedule-table tr {
  border-top: 1px solid #E5E5E5;
  border-bottom: 1px solid #E5E5E5;
}
.schedule-table tr th {
  vertical-align: top;
  background: #85B6DD;
  color: #fff;
  padding: .5em;
  width: 4em;
  text-align: center;
}
.schedule-table tr td {
  padding: .5em 1em;
}
.schedule-table tr td:only-child {
  position: relative;
}
.schedule-table tr td:only-child::before, .schedule-table tr td:only-child::after {
  content: '';
  width: .5em;
  height: 1px;
  background: #fff;
  position: absolute;
  top: -1px;
}
.schedule-table tr td:only-child::before {
  left: 0;
}
.schedule-table tr td:only-child::after {
  right: 0;
}

/*==================================
各種フォーマットページ
==================================*/
.download-list {
  margin-top: 3rem;
}
.download-list__item {
  margin-bottom: .8em;
  text-indent: -1.0em;
  padding-left: 1.0em;
  line-height: 1.5;
}
.download-list__item a {
  color: #707070;
  font-size: 1.4rem;
  text-decoration: underline;
}
.download-list__item::before {
  content: '・';
}

.nav_open_parent {
  font-size: 2.0rem;
  font-weight: 600;
  position: relative;
  margin: .5em auto .5rem;
  padding: 1rem 0;
  display: block;
  line-height: 1.3;
  z-index: 1;
  padding-left: 2.5rem;
  display: flex;
  align-items: center;
}
.nav_open_parent::before {
  content: '';
  width: 2.0rem;
  height: 2.0rem;
  position: absolute;
  left: 0;
  top: 1.2em;
  transform: translateY(-50%);
  background: #0068B7;
  border-radius: 50%;
  z-index: -1;
}

.nav_open_child {
  /*color: #707070;*/
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: .5em;
  text-indent: -1.0em;
  padding-left: 1.0em;
}
.nav_open_child::before {
  content: '・';
}

.accordion_parent {
  margin-bottom: 1em;
}

.accordion_child {
  margin-bottom: 1em;
  padding-left: 1em;
}

/*==================================
ANGLUの想いページ
==================================*/
.c-number-list {
  color: #707070;
}
.c-number-list li {
  padding-left: 2em;
  text-indent: -2em;
}
.c-number-list li::before {
  content: '一、';
}

.number-list {
  color: #707070;
  counter-reset: item;
}
.number-list li {
  padding-left: 2em;
  position: relative;
}
.number-list li::before {
  counter-increment: item;
  content: counter(item) ".";
  position: absolute;
  text-align: right;
  left: -.5em;
  top: 0;
  width: 2em;
}
.number-list.song-list li {
  margin-bottom: 1em;
}

.instruction-img {
  width: 100%;
}
.instruction-img img {
  width: 100%;
}

/*==================================
組織概要ページ
==================================*/
.organization-img {
  width: 100%;
}
.organization-img img {
  width: 100%;
}

.section__organization-wrap .greeting__main-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.section__organization-wrap .greeting__main-img {
  width: 50%;
  margin: 0 auto 1em;
}
.section__organization-wrap .greeting__main-img img {
  width: 100%;
  border-radius: 1.0rem;
}
.section__organization-wrap .greeting__main-block {
  width: 100%;
}
.section__organization-wrap .greeting__main-block .text {
  color: #707070;
  margin-bottom: 0;
}
.section__organization-wrap .greeting__main-block .text.sign {
  text-align: right;
}

.organization-table {
  /*&amp;__wrap {
    width: 100%;
    height: 50rem;
    overflow-y: auto;
  }*/
}
.organization-table td {
  font-size: 1.4rem;
  color: #707070;
  font-weight: 500;
  vertical-align: top;
  text-align: left;
  padding: 1em 0;
  border-bottom: 1px solid #E5E5E5;
}
.organization-table td:first-child {
  width: 7em;
}

/*==================================
共済・労働金庫ページ
==================================*/
.gray-wrap {
  margin-top: 2em;
  padding: 1em 1.2em;
  background: #F8F8F8;
  border-radius: 1.5rem;
}
.gray-wrap-title {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: .5em;
}
.gray-wrap .section__text {
  margin-bottom: 0;
  font-size: 1.4rem;
}

.border-wrap {
  border: 1px solid #E5E5E5;
  border-radius: 1.0rem;
  padding: 5% 1em;
}
.border-wrap + .section__sub-title {
  margin-top: 1em;
}

.rokin-wrap {
  display: flex;
  align-items: flex-end;
}
.rokin-wrap .rokin-list {
  width: 10em;
  margin-right: 2em;
}
.rokin-wrap .rokin-list li a {
  font-size: 1.6rem;
  color: #707070;
  text-decoration: underline;
  white-space: nowrap;
}
.rokin-wrap .rokin-list li a:hover {
  text-decoration: none;
}
.rokin-wrap .rokin-logo {
  width: calc(100% - 12em);
  max-width: 35rem;
}
.rokin-wrap .rokin-logo img {
  width: 100%;
}

.light-blue-wrap {
  position: relative;
  overflow: hidden;
  background: #F2F5F7;
  border-top-left-radius: 1.5rem;
  border-bottom-left-radius: 1.5rem;
  z-index: -1;
}
.light-blue-wrap .inner {
  padding: 2.0rem 0 5rem;
}
.light-blue-wrap .wrap-title {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: .5em;
}
.light-blue-wrap .facility-wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.light-blue-wrap .facility-list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.4rem;
}
.light-blue-wrap .facility-list dt {
  background: #85B6DD;
  color: #fff;
  text-align: center;
  padding: 0;
  border-bottom: 1px solid #E5E5E5;
  width: 15rem;
  height: 5.0rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.light-blue-wrap .facility-list dd {
  padding: 0 1em;
  height: 5.0rem;
  border-bottom: 1px solid #E5E5E5;
  text-align: left;
  width: calc(100% - 15rem);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  line-height: 1.5;
}
.light-blue-wrap .facility-list dd a {
  text-decoration: underline !important;
}
.light-blue-wrap .facility-list:first-child dt, .light-blue-wrap .facility-list:first-child dd {
  border-top: 1px solid #E5E5E5;
}

.light-blue-wrap + .inner .gray-wrap {
  margin-top: -3.0rem;
}

.blue-wrap {
  position: relative;
  overflow: hidden;
  color: #fff;
  font-weight: 600;
  background: #85B6DD;
  border-top-left-radius: 1.5rem;
  border-bottom-left-radius: 1.5rem;
}
.blue-wrap .inner {
  padding: 2.0rem 0 4rem;
  position: relative;
  z-index: 10;
}
.blue-wrap .wrap-title {
  font-size: 2.0rem;
  line-height: 1.5;
  font-weight: 600;
  margin-bottom: 1em;
  padding-bottom: .5em;
  border-bottom: 1px solid #fff;
}
.blue-wrap .timeline-list li {
  border-left: 2px solid #fff;
  padding-left: 1.5rem;
  margin: 0 0 0 1rem;
  font-size: 1.6rem;
  position: relative;
}
.blue-wrap .timeline-list li span {
  display: inline-block;
  margin-bottom: 1em;
}
.blue-wrap .timeline-list li span a {
  color: #fff;
  text-decoration: underline;
}
.blue-wrap .timeline-list li span a:hover {
  text-decoration: none;
}
.blue-wrap .timeline-list li::after {
  content: '';
  width: 1.5rem;
  height: 1.5rem;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: .8rem;
  transform: translateX(calc(-50% - 1px));
}
.blue-wrap .timeline-list li:first-child::before {
  content: '';
  height: 1em;
  width: 2px;
  position: absolute;
  left: -2px;
  top: 0;
  background: #85B6DD;
}
.blue-wrap .timeline-list li:last-child {
  border-color: #85B6DD;
}
.blue-wrap .timeline-list li:last-child span {
  margin-bottom: 0;
}
.blue-wrap .timeline-list li:last-child::before {
  content: '';
  height: 1em;
  width: 2px;
  position: absolute;
  left: -2px;
  top: 0;
  background: #fff;
}
.blue-wrap .white-wrap {
  background: #F3F8FC;
  padding: 1em;
  line-height: 1.5;
  color: #707070;
  border-radius: 1rem;
  margin-bottom: 1em;
  display: inline-block;
  font-size: 1.4rem;
}

.blue-wrap + .inner .gray-wrap {
  margin-top: -6.0rem;
  padding-top: 9rem;
}

/*==================================
フォームページ
==================================*/
.privacy__wrap {
  color: #707070;
}
.privacy__wrap .list-circle-small li {
  font-size: 1.2rem !important;
  color: #707070;
}
.privacy__title {
  font-weight: 500;
}
.privacy__text {
  font-size: 1.2rem !important;
  margin-bottom: 0 !important;
}
.privacy__text + .privacy__title, .list-circle-small + .privacy__title {
  margin-top: 2em;
}

.form__wrap {
  min-height: calc(100vh - 20vw - 50px - 66px - 160px);
}
.form__wrap div + dl {
  border-top: 1px solid #E5E5E5;
}
.form__wrap dl {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  border-bottom: 1px solid #E5E5E5;
}
.form__wrap dl:first-child {
  border-top: 1px solid #E5E5E5;
}
.form__wrap dl dt {
  font-weight: 500;
  width: 100%;
  position: relative;
  line-height: 3.0rem;
  padding: 1rem 2rem;
  background: #F8F8F8;
}
.form__wrap dl dt .required {
  color: #DD0000;
  display: inline-block;
}
.form__wrap dl dd {
  width: 100%;
  word-break: break-all;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 2rem 2rem 3rem;
}
.form__wrap dl dd .separator {
  margin: 0 1.0rem;
}
.form__wrap dl dd .short-size {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.form__wrap dl dd .short-size .label {
  margin-right: 1rem;
}
.form__wrap dl dd .short-size input {
  width: 8rem;
}
.form__wrap dl dd .middle-size {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.form__wrap dl dd .middle-size .label {
  margin-right: .5rem;
}
.form__wrap dl dd .middle-size input {
  width: 10rem;
}
.form__wrap dl dd .middle-size + .middle-size {
  margin-left: 2rem;
}
.form__wrap dl dd .long-size {
  width: 100%;
}
.form__wrap dl dd .long-size .wpcf7-form-control-wrap {
  width: 100%;
}
.form__wrap dl dd .long-size input, .form__wrap dl dd .long-size textarea {
  width: 100%;
}
.form__wrap dl dd .address-wrap {
  width: 100%;
  margin-top: 1rem;
}
.form__wrap dl dd .address-wrap input {
  width: 100%;
}
.form__wrap dl dd .email-wrap {
  width: 100%;
}
.form__wrap dl dd .email-wrap .wpcf7-form-control-wrap {
  width: calc(100% - 5em);
}
.form__wrap dl dd .email-wrap input {
  width: 100%;
}
.form__wrap dl dd .email-wrap + .email-wrap {
  margin-top: 1rem;
}
.form__wrap input[type="text"], .form__wrap input[type="password"], .form__wrap input[type="email"], .form__wrap textarea, .form__wrap select {
  padding: .5rem 1.0rem;
  line-height: 1.2;
  border: 1px solid #707070;
  border-radius: .5rem;
  width: 100%;
}
.form__wrap textarea {
  height: 15.0rem;
}
.form__wrap .btn-wrap p {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.form__wrap .btn-submit {
  /*display: flex;
  justify-content: center;
  align-items: center;*/
}
.form__wrap .btn-submit .wpcf7-spinner {
  display: none;
}
.form__wrap .btn-submit input {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 4.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #0068B7;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 500;
  border-radius: 2.4rem;
  transition: all .3s;
}
.form__wrap .btn-submit input:hover {
  background: #F3F8FC;
  color: #333;
}
.form__wrap .btn {
  width: 100%;
  height: 4.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #0068B7;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 500;
  border-radius: 2.4rem;
  transition: all .3s;
}
.form__wrap .btn:hover {
  background: #F3F8FC;
  color: #333;
}
.form__wrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: inherit;
}
.form__wrap .select-wrap {
  position: relative;
  width: 100%;
}
.form__wrap .select-wrap.free-select-wrap {
  width: max-content;
}
.form__wrap .select-wrap.free-select-wrap select {
  padding-right: 3.0rem;
  width: auto;
}
.form__wrap .select-wrap::before {
  position: absolute;
  top: .5em;
  /*bottom: 0;*/
  right: 10px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.0rem;
  height: 1.0rem;
  border-top: .1rem solid #707070;
  border-right: .1rem solid #707070;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  z-index: -1;
}
.form__wrap select::-ms-expand {
  display: none;
}

.info__wrap {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  border: 2px solid #0068B7;
  background: #EFF8FE;
  padding: 1rem !important;
  border-radius: 1.0rem;
}
.info__title {
  text-align: center;
  border-bottom: 3px dotted #77B0DA;
}
.info__title .sub {
  font-size: 4.4vw;
  font-weight: 400;
  display: block;
  line-height: 1.6;
}
.info__title .main {
  display: block;
  font-size: 5.4vw;
  font-weight: 500;
  color: #0068B7;
  line-height: 1.6;
  padding-top: 0;
  padding-bottom: 1rem;
  margin-bottom: 0;
  width: 100%;
}

.number__wrap {
  display: flex;
  justify-content: space-around;
}
.number .small {
  font-size: 2.6vw;
  font-weight: 700;
  margin-right: 1%;
}
.number .big {
  font-size: 4.4vw;
  font-weight: 700;
  white-space: nowrap;
}

.btn-submit + .btn-submit {
  margin-top: 15px;
}

.fg-tag-item {
  float: left;
}
</pre></body></html>