@charset "UTF-8";
/*----------------------------------------
	reset
----------------------------------------*/
:root {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

*,
::before,
::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
  border-style: solid;
  border-width: 0;
}

* {
  font-size: inherit;
  line-height: inherit;
}

::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}

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, dialog, figure, footer, header, hgroup, main, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  color: #32312F;
  vertical-align: baseline;
}
sup {
  vertical-align: super;
  font-size: smaller;
}
sub {
  vertical-align: sub;
  font-size: smaller;  
}

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

span, small, strong, em, b, i {
  color: inherit;
}

html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

li {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: top;
  font-style: italic;
}

img[src$=".svg"] {
  width: 100%;
}

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

caption, th {
  text-align: left;
}

hr {
  margin: 1em 0;
  padding: 0;
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
}
hr.wp-block-separator {
  border: 0;
  border-top: 1px solid #cccccc;
}

input, select {
  vertical-align: middle;
}

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

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

address {
  font-style: normal;
}

q::before,
q::after {
  display: none;
}

html[data-whatinput="initial"] a:focus,
html[data-whatinput="mouse"] a:focus,
html[data-whatinput="touch"] a:focus, html[data-whatinput="initial"] button:focus,
html[data-whatinput="mouse"] button:focus,
html[data-whatinput="touch"] button:focus {
  outline: none;
}

.clear {clear:both;}

.pagebreak {
  page-break-before: always;
}

/* html,Body
----------------------------------------*/
html.is-scroll-prevent {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}

html {
  font-size: 62.5%;
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
  color: #32312F;
  font-size: 1.6em;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
/*  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;*/
  line-height: 1.5;
}

/*Font
----------------------------------------*/
.sans {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
/*  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;*/
}

.serif {
  font-family: "Noto Serif JP", serif;
/*  font-family: "Hiragino Mincho ProN",
  YuMincho, "Noto Serif JP", serif;*/
}

/* Links
----------------------------------------*/
a {
  color: #3A8AA2;
  text-decoration: none;
  -webkit-transition-property: color, background-color, opacity;
  -o-transition-property: color, background-color, opacity;
  transition-property: color, background-color, opacity;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

a:hover,
a:active {
  text-decoration: underline;
}

.js-tel-link a:hover, .js-tel-link
a:active {
  color: inherit;
  text-decoration: none;
}

/* Button
----------------------------------------*/
button {
  -webkit-transition-property: color, background-color, opacity;
  -o-transition-property: color, background-color, opacity;
  transition-property: color, background-color, opacity;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

/* Ruby
----------------------------------------*/
rt {
  font-size: 0.5em;
}

/* focus
----------------------------------------*/
html[data-whatinput="initial"] a:focus,
html[data-whatinput="mouse"] a:focus,
html[data-whatinput="touch"] a:focus, html[data-whatinput="initial"] button:focus,
html[data-whatinput="mouse"] button:focus,
html[data-whatinput="touch"] button:focus, html[data-whatinput="initial"] input:focus,
html[data-whatinput="mouse"] input:focus,
html[data-whatinput="touch"] input:focus, html[data-whatinput="initial"] textarea:focus,
html[data-whatinput="mouse"] textarea:focus,
html[data-whatinput="touch"] textarea:focus, html[data-whatinput="initial"] select:focus,
html[data-whatinput="mouse"] select:focus,
html[data-whatinput="touch"] select:focus, html[data-whatinput="initial"] label:focus,
html[data-whatinput="mouse"] label:focus,
html[data-whatinput="touch"] label:focus {
  outline: none;
}

/*----------------------------------------
	Form
----------------------------------------*/
body.form #main a:not(.c-btn__link) {
  text-decoration: none;
  border-bottom: 1px dotted #3A8AA2;
}
body.form #main a:not(.c-btn__link):hover {
  border-bottom: 1px solid #3A8AA2;
}



textarea {
  resize: vertical;
  height: 150px;
}

/* placeholder */
input:placeholder-shown, textarea:placeholder-shown {
  color: #CCCAC8;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #CCCAC8;
}

input:-moz-placeholder, textarea:-moz-placeholder {
  color: #CCCAC8;
  opacity: 1;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #CCCAC8;
  opacity: 1;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #CCCAC8;
}

input:focus:placeholder-shown, textarea:focus:placeholder-shown {
  color: #CCCAC8;
}

input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {
  color: #CCCAC8;
}

input:focus:-moz-placeholder, textarea:focus:-moz-placeholder {
  color: #CCCAC8;
  opacity: 1;
}

input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
  color: #CCCAC8;
  opacity: 1;
}

input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
  color: #CCCAC8;
}

/* !iOS Reset
------------------*/
input[type="submit"],
input[type="button"] {
  border: none;
  border-radius: 0;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}

input[type="submit"]:focus,
input[type="button"]:focus {
  outline-offset: -2px;
}

/* !IE11 Reset
------------------ */
select::-ms-expand {
  display: none;
}

/* !default
---------------------------------------------------------- */
legend {
  display: block;
  width: 100%;
  margin: 0 0 4% 0;
  font-size: 125%;
  text-align: center;
  border: 1px solid transparent;
}

fieldset {
  display: block;
  border: 1px solid transparent;
}

fieldset > p {
  margin: 0 0 4% 0;
}

label {
  display: inline-block;
  cursor: pointer;
}

input[type="text"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="search"],
textarea {
  width: 100%;
  background: transparent;
  font-size: 16px;
  font-size: 1.6rem;
}

.ie input[type="text"], .ie
input[type="number"], .ie
input[type="tel"], .ie
input[type="email"], .ie
input[type="search"], .ie
textarea {
  min-height: 30px;
}

/* numberの増減ボタンを消す */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

input[type="number"] {
  -moz-appearance: textfield;
}

/* 必須 */
/* 必須 且つ 入力されていない */
/* focus */
/* 必須にfocus */
/* Placeholder Google Chrome, Safari, Opera 15+, Android, iOS */
/* !ラジオボタン、チェックボックス
---------------------------------------------------------- */
input[type="radio"],
input[type="checkbox"] {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

/* !ラジオボタン　チェックボックス クリック範囲
---------------------------------------------------------- */
input[type="radio"] + label,
input[type="checkbox"] + label {
  display: inline-block;
  position: relative;
  margin: 0 2em 0 0;
  padding: 0.1em 0 0.4em 2.5em;
  line-height: 1.5;
  text-align: left;
  vertical-align: middle;
  cursor: pointer;
}

/* !ラジオボタン、チェックボックスのクリック範囲にフォーカスしたとき
---------------------------------------------------------- */
input[type="radio"]:focus + label:before,
input[type="checkbox"]:focus + label:before {
  -webkit-box-shadow: 0 0 0 3px #007ce6;
  box-shadow: 0 0 0 3px #007ce6;
}

/* !ラジオボタン チェック印の背景
---------------------------------------------------------- */
input[type="radio"] + label:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  border: 1px solid #B3B1AF;
  border-radius: 50%;
  line-height: 100%;
  background: #F1F0EF;
  content: "";
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

input[type="radio"]:checked + label:before {
  background: #3A8AA2;
}

/* !ラジオボタン チェックの印
---------------------------------------------------------- */
input[type="radio"] + label:after {
  position: absolute;
  top: 7px;
  left: 7px;
  width: 16px;
  height: 16px;
  margin: 0;
  border-radius: 50%;
  background: #ffffff;
  content: "";
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

input[type="radio"]:checked + label:after {
  background: #90BFCD;
}

/* !チェックボタン チェック印の背景
---------------------------------------------------------- */
input[type="checkbox"] + label:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 1.5em;
  height: 1.5em;
  border-width: 1px 1px 1px 1px;
  border-style: solid;
  border-color: #B3B1AF;
  border-radius: 3px;
  background: #F1F0EF;
  line-height: 100%;
  content: "";
  vertical-align: middle;
}

input[type="checkbox"]:checked + label:before {
  background-color: #3A8AA2;
}

/* チェックボックスにプライバシーポリシーなどのリンクを含めた時 */
/* !チェックボタン チェックの印
---------------------------------------------------------- */
input[type="checkbox"] + label:after {
  display: block;
  position: absolute;
  top: 0.3em;
  left: 0.3em;
  width: 1em;
  height: 0.6em;
  content: "";
  border-left: 3px solid #ffffff;
  border-bottom: 3px solid #ffffff;
  margin: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

input[type="checkbox"]:checked + label:after {
  border-left: 3px solid #90BFCD;
  border-bottom: 3px solid #90BFCD;
}

/*セレクトボックス
-----------------------------------------------------*/
.select-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 280px;
  padding-right: 2rem;
  background-color: #F1F0EF;
  border: 2px solid #B3B1AF;
  border-radius: 3px;
  -webkit-transition: background-color 0.5s ease-out;
  -o-transition: background-color 0.5s ease-out;
  transition: background-color 0.5s ease-out;
}

.select-box:hover, .select-box:focus {
  background: #E5F4F8;
}

.select-box._short {
  max-width: 140px;
}

.select-box__wrap {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
}

.select-box__wrap::after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-right: 2px solid #666462;
  border-bottom: 2px solid #666462;
  pointer-events: none;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}

.select-box__body {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  cursor: pointer;
  width: 100%;
  height: 3.125em;
  line-height: 3.125;
  padding-left: 1em;
  padding-right: calc(1em + 16px);
}

.select-box__body:invalid {
  color: #CF121B;
}

.select-box__body.focus-visible {
  border-color: #3A8AA2;
  -webkit-box-shadow: inset 0 0 0 1px #3A8AA2;
  box-shadow: inset 0 0 0 1px #3A8AA2;
  outline: none;
}

.select-box__body:-webkit-autofill {
  -webkit-transition: background-color 99999s;
  transition: background-color 99999s;
}

.select-box__unit {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 14px;
  font-size: 1.4rem;
  padding-left: 2rem;
  border-left: 1px solid #B3B1AF;
}

/*テキスト入力エリア
------------------------------------------------------*/
/*入力ブロック領域*/
.form__text-input {
  position: relative;
  padding: 1rem 1.5rem;
  background: #F1F0EF;
  border: 2px solid #B3B1AF;
  border-radius: 3px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.form__text-input:hover, .form__text-input:focus {
  background: #E5F4F8;
}

.form__text-input._full {
  width: 100%;
  max-width: none;
}

.form__text-input._half {
  width: 100%;
  max-width: 400px;
}

.form__text-input._short {
  width: 100%;
  max-width: 140px;
}

.ie .form__text-input {
  min-height: 50px;
}

@media (min-width: 768px), print {
  .form__text-input {
    max-width: 280px;
  }
}

/*サブラベル*/
.form__text-label {
  position: absolute;
  left: 2rem;
  top: -11px;
  padding: 2px 5px;
  border-radius: 10px;
  background: #F1F0EF;
  color: #666462;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
}

/*入力フィールド*/
.text-input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.text-input__body {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.text-input__unit {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 14px;
  font-size: 1.4rem;
  padding-left: 1.2rem;
  border-left: 1px solid #CCCAC8;
}

/*注釈文
------------------------------------------------------*/
.form__group-note {
  margin: 1rem 0 0;
  padding: 2px 4px;
  color: #999795;
  font-size: 14px;
  font-size: 1.4rem;
}

/*エラー文言
------------------------------------------------------*/
.form__group-error {
  margin: 1em 0;
  padding: 1.5rem;
  background: #F7E5E6;
  text-align: left;
}

.form__group-error-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url(/assets/img/icon_attention.svg) center center/contain no-repeat;
  vertical-align: middle;
}

.form__group-error-text {
  color: #CF121B;
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
}

/*必須ラベル
------------------------------------------------------*/
.form__required-label {
  display: inline-block;
  margin-left: 5px;
  color: #CF121B;
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  vertical-align: middle;
}

/*フォームグルーブ
------------------------------------------------------*/
.form__group-content + .form__group-content {
  margin-top:1em;
}

/*2カラム化*/
.form__group._col2:after {
  content: "";
  clear: both;
  display: block;
}

@media (min-width: 768px), print {
  .form__group._col2 > .form__group-header {
    float: left;
    width: 30%;
    padding-right: 1.5rem;
  }
  .form__group._col2 > .form__group-header .form__group-label {
    margin-top: 3rem;
  }
  .form__group._col2 > .form__group-content {
    float: right;
    width: 70%;
    margin-top: 2rem;
  }
  .form__group._col2 > .form__group-content-label {
    float: left;
    width: 30%;
    padding-right: 1rem;
  }
}

.form__group-content._col2:after {
  content: "";
  clear: both;
  display: block;
}

@media (min-width: 768px), print {
  .form__group-content._col2 > .form__group-content-label {
    float: left;
    width: 30%;
    padding-right: 1rem;
  }
  .form__group-content._col2 > .form__group-content-body {
    float: right;
    width: 70%;
    margin-top: 3rem;
  }
}

/*中見出し*/
.form__group-header {
  margin: 0;
  padding: 0;
}

.form__group-label {
  display: block;
  margin-top: 2.6rem;
  margin-bottom: 0.6rem;
  text-align: left;
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
}

@media (max-width: 767px) {
  ._sublabel .form__group-label {
  /*  margin-bottom: 1.6rem; */
  }
}

/*for Safari*/
.safari legend {
  border: 1px solid transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/*小見出し*/
.form__group-content-label {
  margin-top: 2.6rem;
  margin-bottom: 0.6rem;
  color: #807E7C;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: left;
}

._sublabel .form__group-content-label {
  margin-bottom: 1.1rem;
}

/*リスト*/
.form__group-list-item {
  margin: 1rem 0;
}

/*フォームレイアウト
------------------------------------------------------*/
.is-horizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.is-horizontal > * + * {
  margin-left: 1.5rem;
}

.is-horizontal-inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.is-horizontal-inline > * {
  margin-right: 1.5rem;
}

.is-horizontal-pc > * + * {
  margin-top: 2rem;
}

.is-horizontal-inline .form__name {
  width: calc(50% - 0.75rem);
  margin-top: 10px;
}
.is-horizontal-inline .form__name:last-child {
  margin-right: 0;
}

@media (min-width: 768px), print {
  .is-horizontal-pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .is-horizontal-pc .form__name {
    width: 280px;
    margin-top: 10px;
  }
  .is-horizontal-pc .form__cardExp {
    width: 140px;
  }
  .is-horizontal-pc > * + * {
    margin-top: 0;
    margin-left: 3rem;
  }
}

/*選択肢グループ
------------------------------------------------------*/
.form__choices {
  padding: 30px;
  border-radius: 8px;
  background: #ffffff;
  -webkit-box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
}

.form__choices.form__payment {
  cursor: pointer;
}

.form__choices + .form__choices {
  margin-top: 30px;
}

.form__choices._checked {
  border: 1px solid #3A8AA2;
  cursor: default;
}

.form__choices .radio__text {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media (min-width: 768px), print {
  .form__choices .radio__text {
    padding: 0.25em 0 0.2em 2.5em;
    font-size: 20px;
    font-size: 2.0rem !important;
    line-height: 1.75;
  }
  .form__choices .radio__text::before {
    top: 7px !important;
  }
  .form__choices .radio__text::after {
    top: 14px !important;
  }
}

.form__choices .form__group-content-label {
  color: #32312F;
  font-weight: bold;
}

/*支払いグループ
------------------------------------------------------*/
.form__payment-text {
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-size: 80%;
}

.form__choices:first-child .form__payment-text {
  text-align: right;  
}


/*カード*/
.form__payment-cards .cardList {
  margin-top: 1rem;
}

@media (min-width: 768px), print {
  .form__payment-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

/*領収書
------------------------------------------------------*/
.form__receipt .form__group-content {
  margin: 6rem 0;
}

.form__receipt .form__group-note {
  line-height: 2;
}

.form__receipt .form__group-note li {
  color: #666462;
  font-size: 16px;
  font-size: 1.6rem;
}

/*送信ブロック
------------------------------------------------------*/
.form__send {
  margin-top: 6rem;
}

.form__send-text strong {
  color: #807E7C;
  font-weight: normal;
}

.form__send-text a {
  color: inherit;
  text-decoration: underline;
}

.form__send-text a:hover {
  text-decoration: none;
}

.form__send-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.form__send-btns .c-btn {
  margin-top: 3rem;
}

@media (min-width: 768px), print {
  .form__send-btns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 6rem;
  }
  .form__send-btns .c-btn {
    margin-top: 0;
  }
  .form__send-btns .c-btn + .c-btn {
    margin-left: 3rem;
  }
}

.form__postal-code-btn {
  padding: 10px 20px;
  border: 2px solid #3A8AA2;
  border-radius: 6px;
  background: #3A8AA2;
  color: #ffffff;
  font-weight: bold;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.form__postal-code-btn:hover {
  background: #ffffff;
  color: #3A8AA2;
}

.form__postal-code-btn .ico_arw {
  display: inline-block;
  margin-top: -0.3em;
  vertical-align: middle;
}

/*個人情報保護方針同意ボックス
------------------------------------------------------*/
.form__agree {
  margin-top: 6rem;
  padding: 3rem;
  border: 2px solid #F1D029;
  text-align: center;
}

/*JS用エラーメッセージ
------------------------------------------------------*/
.js-formField-message {
  display: none;
}

/*ラジオボタンラベル*/
.form_radioLabel,
.radio__text {
  margin-right: 15px !important;
  font-size: 14px;
  font-size: 1.4rem;
}

.form_radioLabel::before,
.radio__text::before {
  top: -3px !important;
}

.form_radioLabel::after,
.radio__text::after {
  top: 4px !important;
}

/*チェックボックスラベル*/
.checkbox__text {
  font-size: 14px;
  font-size: 1.4rem;
}

/*検索フォーム
------------------------------------------------------*/
.l-articleBody .form-search__input {
  margin-top: 0;
  margin-bottom: 0;
}

/*-------------------------------------------
Layout
--------------------------------------------*/
/* Structure
--------------------------------------------*/
.l-wrapper {
  margin-top: 60px;
  margin-bottom: 60px;
  word-wrap: break-word;
}

@media (min-width: 768px), print {
  .l-wrapper {
    margin-top: 100px;
    margin-bottom: 100px;
  }
}

/* Header
--------------------------------------------*/
.l-header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
  width: 100%;
  background: #ffffff;
  border-bottom: 4px solid #F1D029;
}

.l-header__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media (min-width: 768px), print {
  .l-header .l-header__inner {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    height: 100px;
    padding: 0 20px;
  }
  .l-header .l-header__inner .l-hdLogo {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
  }
}

/*ヘッダーロゴ
----------------------------*/
.l-hdLogo {
  width: auto;
  margin: 0 auto 0 15px;
  line-height: 1;
}

.l-hdLogo a, .l-hdLogo img {
  display: inline-block;
  width: 140px;
  height: 25px;
  vertical-align: bottom;
}

.l-hdLogo .l-hdLogo__txt {
  display: inline-block;
  margin-left: 0.5rem;
  color: #666462;
  font-weight: normal;
  font-size: 10px;
  font-size: 1rem;
  vertical-align: bottom;
}

@media (min-width: 768px), print {
  .l-hdLogo {
    margin: -30px auto 0 0;
  }
  .l-hdLogo a, .l-hdLogo img {
    width: 180px;
    height: 32px;
  }
}

@media (min-width: 980px), print {
  .l-hdLogo {
    margin: 0 auto 0 0;
  }
  .l-hdLogo a, .l-hdLogo img {
    width: 220px;
    height: 39px;
  }
}

/*ヘッダーリンク・ボタン機能群
----------------------------*/
.l-hdFunction {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

/*リンク*/
.l-hdFunction__link li{
  display: none;
}
@media (max-width: 767px) {
  .l-hdFunction__link li.gsc{
    display: block;
    height:16px;
    padding:20px 10px;
  }
}
@media (min-width: 768px), print {
  .l-hdFunction__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .l-hdFunction__link li {
    display: block;
    margin-right: 1rem;
  }
  .l-hdFunction__link li.gsc{
  }
  .l-hdFunction__link a {
    color: #585655; /* #807E7C */
  }
  .l-hdFunction__link a:hover {
    color: #1c1c1b; /* #32312F */
    text-decoration: underline;
  }
  .l-hdFunction__link a.c-link__special {
    color: #CF121B;
  }
  .l-hdFunction__link a.c-link__special:hover {
    color: #930C11;
  }
  .l-hdFunction__link .ico_search {
    color: #CCCAC8;
    font-size: 24px;
    font-size: 2.4rem;
    vertical-align: middle;
  }
  .l-hdFunction__link .ico_search:hover {
    color: #666462;
  }
}

@media (min-width: 980px), print {
  .l-hdFunction__link li {
    margin-right: 15px;
  }
}

/*寄付ボタン*/
.l-hdFunction__donate {
  width: 100px;
  height: 60px;
  font-size: 10px;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: bold;
}

.l-hdFunction__donate::before {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.2;
}

@media (min-width: 768px), print {
  .l-hdFunction__donate {
    width: 100px;
    height: 52px;
    border-radius: 0 0 8px 8px;
  }
}

@media (min-width: 980px), print {
  .l-hdFunction__donate {
    width: 200px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .l-hdFunction__donate::after {
    right: 0;
    top: 0;
    line-height: 1;
  }
}

/*ハンバーガーボタン
----------------------------*/
.l-btnHamburger {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background: #32312F;
  color: #ffffff;
}

.l-btnHamburger__line {
  position: relative;
  width: 18px;
  height: 2px;
  background: #ffffff;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.l-btnHamburger__line::before, .l-btnHamburger__line::after {
  position: absolute;
  left: 0;
  content: "";
  display: block;
  width: 18px;
  height: 2px;
  background: #ffffff;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.l-btnHamburger__line::before {
  top: -7px;
}

.l-btnHamburger__line::after {
  bottom: -7px;
}

/*OPEN時*/
.l-btnHamburger[aria-expanded="true"] {
  background: #F1D029;
  color: #32312F;
}

.l-btnHamburger[aria-expanded="true"] .l-btnHamburger__line {
  background: #F1D029;
}

.l-btnHamburger[aria-expanded="true"] .l-btnHamburger__line::before {
  top: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  background: #32312F;
}

.l-btnHamburger[aria-expanded="true"] .l-btnHamburger__line::after {
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background: #32312F;
}

/*PC*/
@media (min-width: 768px), print {
  .l-btnHamburger {
    display: none;
  }
}

/* Global Navigation (第一階層メニュー)
--------------------------------------------*/
/*for SP*/
@media (max-width: 767px) {
  .l-gnav {
    display: none;
    height: calc(100vh - 60px);
    padding-bottom: 140px;
    background: #F1D029;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .l-gnav__listItem {
    border-bottom: 1px solid #EAC60D;
    /*ホーム*/
    /*英語版リンク*/
    /*その他リンク*/
  }
  .l-gnav__listItem._home {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .l-gnav__listItem .l-gnav__en {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 15px;
    border: 0;
    border-radius: 4px;
  }
  .l-gnav__listItem._other {
    padding-bottom: 1rem;
  }
  .l-gnav__link {
    display: block;
    width: 100%;
    padding: 1.5rem;
    color: #32312F;
    font-weight: bold;
    text-align: left;
  }
  .l-gnav__link::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: 0.5em;
    background-image: url(/assets/img/icon_c_arw.svg);
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  .l-gnav__link[aria-expanded]::before {
    background-image: url(/assets/img/icon_c_arw_yw.svg);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .l-gnav__link[aria-expanded="true"]::before {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }
  .l-gnav__link:hover {
    background: #D9B500;
    text-decoration: none !important;
  }
}

/*for PC*/
@media (min-width: 768px), print {
  .l-gnav {
    position: absolute;
    right: 20px;
    bottom: 0;
    display: block;
    background: none;
  }
  .l-gnav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .l-gnav__listItem {
    padding: 0 20px;
  }
  .l-gnav__listItem._home {
    display: none;
  }
  .l-gnav__link {
    position: relative;
    display: block;
    padding: 10px 0;
    color: #32312F;
    text-decoration: none;
    font-weight: bold;
  }
  .l-gnav__link::after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    background: #32312F;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
  }
  .l-gnav__link:hover {
    text-decoration: none;
  }
}

/*Hover Style*/
.l-gnav__link:hover::after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}

/* Current Position */
@media (min-width: 768px), print {
  body.refugee .l-gnav__listItem._refugee .l-gnav__link::after,
  body.jar .l-gnav__listItem._jar .l-gnav__link::after,
  body.report .l-gnav__listItem._report .l-gnav__link::after,
  body.support .l-gnav__listItem._support .l-gnav__link::after,
  body.contact .l-gnav__listItem._contact .l-gnav__link::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
  }
}

/*検索*/
.l-gnav__search {
  margin: 1.5rem;
}

.l-gnav__search form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #ffffff;
  border: 1px solid;
  border-radius: 4px;
}

.l-gnav__search input[type="search"] {
  padding: 0.5rem 1.5rem;
}

.l-gnav__search button {
  padding: 0.5rem 1.5rem 0 0;
  line-height: 1;
}

@media (min-width: 768px), print {
  .l-gnav__search {
    margin: 3rem auto;
    max-width: 680px;
  }
}

/* Global Navigation (第二階層メニュー)
--------------------------------------------*/
.l-gnavMenu {
  position: relative;
  display: none;
}

.l-gnavMenu__head {
  display: none;
}

.l-gnavMenu__body {
  padding-bottom: 1rem;
  background: #EAC60D;
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
}

.l-gnavMenu__bodyTitle a {
  display: block;
  padding: 1.5rem;
  color: #32312F;
}

.l-gnavMenu__bodyTitle a::before {
  content: "";
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 0.5em;
  background: url(/assets/img/icon_c_arw.svg) center center/contain no-repeat;
  vertical-align: middle;
}

.l-gnavMenu__bodyTitle a:hover {
  background: #D9B500;
  text-decoration: none;
}

.l-gnavMenu__bodyTitleTxt {
  font-size: 16px;
  font-size: 1.6rem;
}

.l-gnavMenu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.l-gnavMenu__list > li {
  width: 49%;
  margin-top: 1rem;
}

.l-gnavMenu__list > li._full {
  width: 100%;
}

.l-gnavMenu__list > li a {
  position: relative;
  display: block;
  padding: 0.5rem 1.5rem 0.5rem 3rem;
  color: #32312F;
  font-size: 14px;
  font-size: 1.4rem;
}

.l-gnavMenu__list > li a::before {
  position: absolute;
  left: 1.5rem;
  top: 0.7rem;
  content: "";
  display: block;
  font-family: "icomoon" !important;
}

.l-gnavMenu__list > li a:hover {
  background: #D9B500;
  text-decoration: none;
}

.l-gnavMenu__close {
  display: none;
}

/*for PC*/
@media (min-width: 768px), print {
  .l-gnavMenu {
    position: fixed;
    left: 0;
    top: 100px;
    width: 100%;
    padding: 3rem;
    background: #F1D029;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .l-gnavMenu__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
  }
  .l-gnavMenu__head {
    display: block;
    width: 38.33%;
  }
  .l-gnavMenu__headTitle {
    margin-bottom: 1.5rem;
    font-weight: bold;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .l-gnavMenu__headTxt {
    line-height: 2;
  }
  .l-gnavMenu__body {
    width: 61.66%;
    padding: 2rem;
    background: #EAC60D;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .l-gnavMenu__bodyTitle {
    margin-bottom: 0.5rem;
  }
  .l-gnavMenu__bodyTitle a {
    padding: 0.5rem 1rem;
    border-radius: 4px;
  }
  .l-gnavMenu__list + .l-gnavMenu__bodyTitle {
    margin-top: 1rem;
  }
  .l-gnavMenu__bodyTitleTxt {
    font-size: 2rem;
  }
  .l-gnavMenu__list > li {
    width: calc((100% - 30px) / 2);
    margin-top: 0.4rem;
  }
  .l-gnavMenu__list > li a {
    border-radius: 4px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .l-gnavMenu__list > li a:hover {
    background: #D9B500;
  }
  /* .l-gnavMenu__list > li a[target="_blank"]::after */
  .l-gnavMenu__list > li a[href^="http"]::after,
  .l-gnavMenu__list > li a[href^="//"]::after {
    content: "";
    display: inline-block;
    margin-left: 0.3em;
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "icomoon" !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .l-gnavMenu__list > li a[href^="https://www.refugee.or.jp/"]::after {
    content:"";
    margin: inherit;
    font-family: inherit;
    font-weight: inherit;
  }
  /*タブレットのみ表示*/
  body.mobile .l-gnavMenu .l-gnavMenu__close {
    position: absolute;
    right: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 50px;
    height: 50px;
    font-size: 20px;
    font-size: 2rem;
  }
}

/* Footer
--------------------------------------------*/
.l-footer {
  padding: 0 0 1.5rem;
  background: #F1D029;
}

.l-footer .l-container--lg {
  padding-left: 15px;
  padding-right: 15px;
  padding-top:3rem;
}

body.form .l-footer {
  padding: 0;
  background: #ffffff;
}

.l-footer__menu {
  position: relative;
}

.l-footer__menu-en {
  position: absolute;
  right: 0;
  top: 1rem;
  z-index: 1;
}

.l-footer__menu-en .c-btn--small {
  border: 0;
  border-radius: 6px;
}

.l-footer__contents {
//  margin-top: 3rem;
    margin-bottom:3rem;
}

@media (min-width: 768px), print {
  .l-footer {
    padding: 6rem 0;
  }
  .l-footer .l-container--lg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row;
    padding-top:0;
  }
  .l-footer__menu {
    width: calc(100% - 400px);
  }
  .l-footer__menu-en {
    width: 160px;
  }
  .l-footer__menu-en > a {
    display: block;
  }
  .l-footer__contents {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 400px;
    margin-right: 5%;
    margin-top: 0;
  }
}

.l-footer__copyright {
  margin-top: 2rem;
  margin-bottom: 2rem;
  color: #666462;
  font-size: 12px;
  font-size: 1.2rem;
}

.l-footer__copyright a:not(.c-btn__link) {
  text-decoration: none;
  border-bottom: 1px dotted #3A8AA2;
}
.l-footer__copyright a:not(.c-btn__link):hover {
  border-bottom: 1px solid #3A8AA2;
}



/* Footer Menu
--------------------------------------------*/
/*第一階層メニュー*/
.l-ftMenu {
  font-weight: bold;
}

.l-ftMenu:last-child {
  margin-bottom: 3rem;
}

@media (min-width: 768px), print {
  .l-ftMenu {
    margin-bottom: 1.5rem;
  }
}

.l-ftMenu__item {
  margin: 0 -1.5rem;
  padding: 1rem 1.5rem;
  border-top: 1px solid #D3B53C;
}

.l-ftMenu__item._noLine {
  border-top: 0;
}

.l-ftMenu__item > a {
  position: relative;
  display: block;
  padding: 1rem 2rem;
  border-radius: 4px;
  color: inherit;
  line-height: 1;
}

.l-ftMenu__item > a::before {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(/assets/img/icon_c_arw.svg) center center/contain no-repeat;
}

.l-ftMenu__item > a:hover {
  background: #D9B500;
  text-decoration: none;
}

.l-ftMenu__item._home {
  margin-top: 0;
  border-top: 0;
}

@media (min-width: 768px), print {
  .l-ftMenu__item {
    margin: 1rem 0 0;
    padding: 1rem 0 0;
  }
  .l-ftMenu__item > a {
    padding: 1rem 2rem 1rem 4rem;
  }
  .l-ftMenu__item > a::before {
    left: 1.5rem;
  }
  .l-ftMenu__item + .l-ftMenu__item {
    margin-top: 1rem;
  }
}

/*第二階層メニュー*/
.l-ftSubMenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: bold;
}

.l-ftSubMenu._line {
  border-top: 1px solid #D3B53C;
}

.l-ftSubMenu > li {
  width: 49%;
  margin-top: 1rem;
}

.l-ftSubMenu > li > a {
  position: relative;
  display: block;
  padding: 1rem 0 1rem 1rem;
  border-radius: 4px;
  color: inherit;
  font-size: 12px;
  font-size: 1.2rem;
}

.l-ftSubMenu > li > a::before {
  position: absolute;
  left: 0;
  content: "";
  display: block;
  font-family: "icomoon" !important;
}

.l-ftSubMenu > li > a:hover {
  background: #D9B500;
  text-decoration: none;
}

.l-ftSubMenu > li > a:hover::before {
  text-decoration: none;
}

/* .l-ftSubMenu > li > a[target="_blank"]::after */
.l-ftSubMenu > li a[href^="http"]::after,
.l-ftSubMenu > li a[href^="//"]::after {
  content: "";
  display: inline-block;
  margin-left: 0.3em;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.l-ftSubMenu > li a[href^="https://www.refugee.or.jp/"]::after {
  content:"";
  margin: inherit;
  font-family: inherit;
  font-weight: inherit;
}


@media (min-width: 768px), print {
  .l-ftSubMenu {
    margin-top: 0;
  }
  .l-ftSubMenu > li {
    width: 50%;
    margin-top: 0.5rem;
  }
  .l-ftSubMenu > li > a {
    width: calc(100% - 30px);
    padding: 0.5rem 0 0.5rem 4rem;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .l-ftSubMenu > li > a::before {
    left: 1.8rem;
  }
}

/* フッター 組織情報
--------------------------------------------*/
.l-ftInfo {
  margin-top: 1.5rem;
  padding: 3rem 1.5rem;
  border-radius: 12px;
  background: #ffffff;
  text-align: center;
}

/*ロゴ*/
.l-ftInfo__ttl {
  width: 220px;
  margin: 0 auto 3rem;
}

/*ボタン*/
.l-ftInfo__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  flex-wrap:wrap;
  gap:2rem;
  margin: 2rem auto;
  max-width: 325px;
}

.l-ftInfo__btns .c-btn {
  width: 100%;
}

.l-ftInfo__btns .c-btn__link {
  display: block;
  min-width: 0;
  padding: 1em 5px;
  font-size: 16px;
  font-size: 1.6rem;
}

@media (min-width: 768px), print {
  .l-ftInfo__btns .c-btn {
    width: calc((100% - 20px) / 2);
    min-width: 0;
  }
}

/*SNS*/
.l-ftInfo__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  vertical-align: middle;
  margin: 3rem 0;
}

.l-ftInfo__sns li {
  margin: 0 15px;
}

.l-ftInfo__sns a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 30px;
  height: 30px;
}

.l-ftInfo__sns a img {
  width: auto;
  height: 20px;
}

.l-ftInfo__sns a:hover {
  opacity: 0.8;
}

/*copyright*/
.l-ftInfo__copyright {
  color: #666462;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
}

/* ウェブサイトメニュー
--------------------------------------------*/
.l-ftSite {
  margin-top: 3rem;
}

.l-ftSite__list .c-btn:not(:first-child) {
  margin-top: 1.5rem;
}

.l-ftSite__list .c-btn__link {
  max-width: none;
  width: 100%;
}

@media (min-width: 768px), print {
  .l-ftSite__list .c-btn {
    min-width: 0;
    width: 100%;
  }
}

/* for Refugees
--------------------------------------------*/
.l-forRefugees rt {
  font-size: 0.5em;
}

.l-forRefugees a {
  display: block;
  padding: 2rem 1.5rem;
  border-radius: 12px;
  background: url(/assets/img/bg_forrefugees.jpg) center center/cover no-repeat;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  font-size: 2rem;
}

.l-forRefugees a * {
  color: inherit;
}

.l-forRefugees a:hover {
  opacity: 0.8;
  text-decoration: none;
}

/* CV メールマガジン登録
--------------------------------------------*/
.l-cvMagazine {
  margin-top: 1.5rem;
  padding: 3rem 1.5rem 0.5rem;
  border-radius: 12px;
  background: #ffffff;
  text-align: center;
}

.l-cvMagazine__ttl {
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
}

.l-cvMagazine__txt {
  margin-top: 1em;
  font-size: 14px;
  font-size: 1.4rem;
}

.l-cvMagazine__btn {
  margin-top: 1em;
}

.l-cvMagazine__btn .c-btn {
  font-size: 16px;
  font-size: 1.6rem;
}

/* JARニュース案内
--------------------------------------------*/
.l-News {
  margin-top: 1.5rem;
  padding: 3rem 1.5rem 0.5rem;
  border-radius: 12px;
  background: #ffffff;
  text-align: center;
}

.l-News__ttl {
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
}

.l-News__txt {
  margin-top: 1em;
  font-size: 14px;
  font-size: 1.4rem;
}

.l-News__btn {
  margin-top: 1em;
}

.l-News__btn .c-btn {
  font-size: 16px;
  font-size: 1.6rem;
}

/* --------------------------------------------
Page Header
---------------------------------------------- */
/*固定ページ汎用タイトル（ビジュアルあり・大）
------------------------------------------*/
.l-pageHeaderL {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 280px;
  margin-bottom: 16vw;
  padding: 14.4vw 0 10.66667vw;
  background-color: #DBD9D7;
  text-align: center;
}
.l-pageHeaderL._withTxt {
  min-height: 280px;
  height: clamp(280px, 48vw ,400px);
  background-color: white;
}

.l-pageHeaderL .l-container {
  position: relative;
  z-index: 1;
  margin: 0;
}

@media (min-width: 568px), print {
  .l-pageHeaderL {
    margin-bottom: 6rem;
    padding: 5.4rem 0 4rem;
  }
}

@media (min-width: 768px), print {
  .l-pageHeaderL {
    margin-bottom: 9rem;
    min-height: 380px;
  }
}

@media (max-width: 767px), print {
  .l-pageHeaderL._withTxt {
    height:100vw;
  }
  .l-pageHeaderL._withTxt .l-pageHeaderL__bg {
    height:auto;
  }
}

/*背景画像*/
.l-pageHeaderL__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.l-pageHeaderL__bg img {
  max-width: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.l-pageHeaderL__bg img.withTxt {
  max-width: 1200px;
}

/*ショルダー*/
.l-pageHeaderL__shoulder {
  display: inline-block;
  padding: 0.5rem 1.4rem 0.3rem;
  margin-bottom: 1rem;
  border-radius: 20px;
  background: #ffffff;
  color: #32312F;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 768px), print {
  .l-pageHeaderL__shoulder {
    margin-bottom: 1.5rem;
  }
}

._reverse .l-pageHeaderL__shoulder {
  background: #000000;
  color: #ffffff;
}

.form .l-pageHeaderL__shoulder {
  color: #3A8AA2;
}

.for_refugees .l-pageHeaderL__shoulder {
  color: #CF121B;
}

/*タイトル*/
.l-pageHeaderL__ttl {
  color: #ffffff;
  font-weight: 700;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
}

._reverse .l-pageHeaderL__ttl {
  color: #000000;
}

.l-pageHeaderL__ttl .sub {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
}

.l-pageHeaderL__ttl::after {
  content: "";
  display: block;
  width: 60px;
  height: 1px;
  margin: 1.5rem auto 0;
  border-top: 1px solid;
  vertical-align: middle;
  line-height: 0;
}

@media (min-width: 768px), print {
  .l-pageHeaderL__ttl {
    font-size: 48px;
    font-size: 4.8rem;
  }
  .l-pageHeaderL__ttl .sub {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .l-pageHeaderL__ttl::after {
    margin-top: 3rem;
  }
}

/*テキスト*/
.l-pageHeaderL__txt {
  margin-top: 2rem;
  color: #ffffff;
  line-height: 2;
  font-size: 14px;
  font-size: 1.4rem;
}

._reverse .l-pageHeaderL__txt {
  color: #000000;
}

@media (min-width: 768px), print {
  .l-pageHeaderL__txt {
    margin-top: 3rem;
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/*固定ページ汎用タイトル（ビジュアルなし：標準）
------------------------------------------*/
.l-pageHeader {
  margin-bottom: 16vw;
  border-bottom: 1px solid #B3B1AF;
  line-height: 1.5;
}

.l-pageHeader .l-container--lg {
  position: relative;
  padding-top: 8vw;
  padding-bottom: 4vw;
}

@media (min-width: 568px), print {
  .l-pageHeader {
    margin-bottom: 6rem;
  }
  .l-pageHeader .l-container--lg {
    padding-top: 3rem;
    padding-bottom: 1.5rem;
  }
}

@media (min-width: 768px), print {
  .l-pageHeader {
    margin-bottom: 9rem;
  }
  .l-pageHeader .l-container--lg {
    padding-top: 6rem;
    padding-bottom: 3rem;
  }
}

/*ショルダー*/
.l-pageHeader__shoulder {
  margin-bottom: 1.5rem;
  color: #CF121B;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

/*タイトル*/
.l-pageHeader__ttl {
  font-weight: 700;
  font-size: 24px;
  font-size: 2.4rem;
}

.l-pageHeader__ttl .sub {
  display: block;
  margin-top: 0.5rem;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
}

.l-pageHeader__ttl::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 60px;
  height: 1px;
  margin: 2rem 0 0;
  border-top: 1px solid #CF121B;
  vertical-align: middle;
  line-height: 0;
}

@media (min-width: 768px), print {
  .l-pageHeader__ttl {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .l-pageHeader__ttl .sub {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .l-pageHeader__ttl::after {
    margin-top: 3rem;
  }
}

/*投稿ページ用汎用カテゴリタイトル
------------------------------------------*/
.l-pageHeader--sm .l-container--lg {
  padding-top: 5.6rem;
  padding-bottom: 1.5rem;
}

/*タイトル*/
.l-pageHeader--sm .l-pageHeader__ttl {
  font-size: 20px;
  font-size: 2rem;
}

.l-pageHeader--sm .l-pageHeader__ttl .sub {
  font-size: 16px;
  font-size: 1.6rem;
}

/* Breadcrumb
--------------------------------------------*/
.l-breadcrumb {
  overflow-x: auto;
  padding: 1em 0;
  background: #F8F8F8;
  color: #807E7C;
  font-size: 12px;
  font-size: 1.2rem;
}

.l-breadcrumb._bottom {
  background: #ffffff;
}

.l-breadcrumb * {
  color: inherit;
}

.l-breadcrumb__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.l-breadcrumb__item {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.l-breadcrumb__item:not(:last-child)::after {
  content: "/";
  margin: 0 0.5em;
}

.l-breadcrumb__item a {
  text-decoration: none;
}

.l-breadcrumb__item a:hover {
  color: #3A8AA2;
}

/* Container
--------------------------------------------*/
/*800px*/
.l-container {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}

@media (min-width: 1201px), print {
  .l-container {
    padding-left: 0;
    padding-right: 0;
  }
}

/*1200px*/
.l-container--lg {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}

@media (min-width: 1201px), print {
  .l-container--lg {
    padding-left: 0;
    padding-right: 0;
  }
}

/*全幅ぶちぬき*/
.l-container--break {
  margin-left: -30px;
  margin-right: -30px;
}

@media (min-width: 768px), print {
  .l-container--break {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

/* Column Layout
--------------------------------------------*/
.l-column {
  margin: 6rem 0;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.l-column__item > *:first-child {
  margin-top: 0;
}

.l-column__item > *:last-child {
  margin-bottom: 0;
}

.l-column__item + .l-column__item {
  margin-top: 20px;
}

@media (min-width: 768px), print {
  .l-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .l-column__item + .l-column__item {
    margin-top: 0;
  }
}

/*2カラム*/
@media (min-width: 768px), print {
  .l-column._col2 .l-column__item {
    width: calc((100% - 60px) / 2);
  }
}

/*3カラム*/
@media (min-width: 768px), print {
  .l-column._col3 {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .l-column._col3::after {
    content: "";
    display: block;
    width: 28.25%;
  }
  .l-column._col3 .l-column__item {
    width: 28.25%;
  }
}

/*2カラム 1:2*/
@media (min-width: 768px), print {
  .l-column._col1to2 .l-column__item._span1 {
    width: 28.25%;
  }
  .l-column._col1to2 .l-column__item._span2 {
    width: 64.25%;
  }
  .l-column._col1to2._reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

/* --------------------------------------------
Page Top Link
---------------------------------------------- */
.p-pageTop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 500;
  width: 60px;
  height: 60px;
  -webkit-transition: bottom 0.3s;
  -o-transition: bottom 0.3s;
  transition: bottom 0.3s;
}

.p-pageTop__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: rgba(50, 49, 47, 0.7);
  color: #ffffff;
  text-decoration: none;
}

.p-pageTop__btn::before {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.p-pageTop__btn:hover {
  background: #32312f;
  text-decoration: none;
}

/*-------------------------------------------
Article Format
--------------------------------------------*/
/* 投稿記事ヘッダー
--------------------------------------------*/
.l-articleHeader {
  max-width: 800px;
  margin: 6rem auto;
  padding-left: 30px;
  padding-right: 30px;
}

@media (min-width: 1201px), print {
  .l-articleHeader {
    padding-left: 0;
    padding-right: 0;
  }
}

/*記事タイトル*/
.l-articleHeader__ttl {
  margin-bottom: 2rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
}

.l-articleHeader__ttl-main {
  display: block;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
}

@media (min-width: 768px), print {
  .l-articleHeader__ttl-main {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.l-articleHeader__ttl-sub {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
}

@media (min-width: 768px), print {
  .l-articleHeader__ttl-sub {
    font-size: 20px;
    font-size: 2rem;
  }
}

/*イベント日時*/
.l-articleHeader .p-eventDate {
  margin-top: -1.0rem;
  margin-bottom: 3rem;
}

/*タグ・投稿日*/
.l-articleHeader__publish {
  display: block;
  margin-top: 1.5rem;
}

/*著者情報*/
.l-articleHeader__author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 3rem;
}

.l-articleHeader__author-ph {
  width: 60px;
  height: 60px;
  margin-right: 15px;
}

.l-articleHeader__author-ph img {
  border-radius: 50%;
}

.l-articleHeader__author-profile {
  font-size: 16px;
  font-size: 1.6rem;
}

.l-articleHeader__author-name {
  font-weight: bold;
}

.l-articleHeader__author-title {
  margin-top: 1rem;
}

/* 投稿記事本文エリア
--------------------------------------------*/
.l-articleBody {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  letter-spacing: 0.02em;
}

.l-articleBody p {
  margin-top: 2.2rem;
  margin-bottom: 2.2rem;
  line-height: 1.75;
}

.l-articleBody a:not(.c-btn__link, .p-card, .p-jarActivities, .p-pagination__item, .p-topSlider__item_link) {
  text-decoration: none;
  border-bottom: 1px dotted #3A8AA2;
}
.l-articleBody a:not(.c-btn__link, .p-card, .p-jarActivities, .p-pagination__item, .p-topSlider__item_link):hover {
  border-bottom: 1px solid #3A8AA2;
}

.l-articleBody .p-indexTable a, .l-articleBody .p-indexTable a:hover,
.l-articleBody .p-articleList a, .l-articleBody .p-articleList a:hover,
.l-articleBody .p-mediaList .p-mediaList__item a,
.l-articleBody .p-accountReport .p-accountReport__item a,
.l-articleBody .p-tab__item a {
  border-bottom:none;
}

.l-articleBody .js-langSelect a {
  border-bottom: 2px solid #B3B1AF;
}

.l-articleBody .p-accountReport .p-accountReport__item a:hover {
  border-bottom:1px dotted #3A8AA2;
}

@media (min-width: 1201px), print {
  .l-articleBody {
    padding-left: 0;
    padding-right: 0;
  }
}

.l-articleBody p.q {
  font-weight: bold;
}

/* 投稿記事フッター
--------------------------------------------*/
.l-articleFooter {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 9rem;
  padding-left: 30px;
  padding-right: 30px;
  line-height: 2;
}
@media (min-width: 1201px), print {
  .l-articleFooter {
    padding-left: 0;
    padding-right: 0;
  }
}


/*著者*/
.l-articleFooter__author {
  text-align: center;
}

.l-articleFooter__author-ttl {
  display: inline-block;
  margin-bottom: 3rem;
  padding: 5px 15px;
  border-radius: 50px;
  background: #3A8AA2;
  color: #ffffff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
}

.l-articleFooter__author-ph {
  width: 120px;
  height: 120px;
  margin: 0 auto 2.5rem;
}

.l-articleFooter__author-ph img {
  border-radius: 50%;
}

.l-articleFooter__author-name {
  font-weight: bold;
}

.l-articleFooter__author-title {
  font-size: 16px;
  font-size: 1.6rem;
}

.l-articleFooter__author-profTxt {
  margin-top: 2.2rem;
  text-align: left;
}

/*-------------------------------------------
Component
--------------------------------------------*/
/* Arrow
--------------------------------------------*/
/* Bg
--------------------------------------------*/
.c-btn__link::before, .wp-block-button__link::before, .c-btn--large .c-btn__link::before, .wp-block-button.c-btn--large .wp-block-button__link::before, .c-btn--small .c-btn__link::before, .wp-block-button.c-btn--small .wp-block-button__link::before, .c-btn--circle::before, .c-btn--small-square::before {
  margin-top: -0.2em;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.c-btn__link, .wp-block-button__link, input[type="submit"].c-btn__link {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  margin: auto;
  max-width: 280px;
  padding: 1.2em 1em;
  border-radius: 6px;
  background: #F1D029;
  color: #32312F;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.2;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.c-btn__link:hover, .wp-block-button__link:hover {
  background: #D9B500;
  color: #32312F;
  text-decoration: none !important;
}

.c-btn__link.back, .wp-block-button__link.back {
  border:1px solid #F1D029;
  background: #fff;
}
.c-btn__link.back:hover, .wp-block-button__link.back:hover {
  border:1px solid #D9B500;
  background: #eee;
}

.c-btn__link::before, .wp-block-button__link::before {
  content: "";
}

.c-btn__link[disabled], .wp-block-button__link[disabled] {
  border: 2px solid #CCCAC8 !important;
  background: #CCCAC8 !important;
  color: #ffffff !important;
  pointer-events: none !important;
}

.c-btn--large .c-btn__link, .wp-block-button.c-btn--large .wp-block-button__link {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  width: 100%;
  min-width: 0;
  max-width: 500px;
  margin: 0 auto;
  padding: 1.5em 1.5em;
  border-radius: 6px;
  background: #F1D029;
  color: #32312F;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.2;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.c-btn--large .c-btn__link:hover, .wp-block-button.c-btn--large .wp-block-button__link:hover {
  background: #D9B500;
  text-decoration: none !important;
}

.c-btn--large .c-btn__link::before, .wp-block-button.c-btn--large .wp-block-button__link::before {
  content: "";
}

.c-btn--large .c-btn__link[disabled], .wp-block-button.c-btn--large .wp-block-button__link[disabled] {
  border: 2px solid #CCCAC8 !important;
  background: #CCCAC8 !important;
  color: #ffffff !important;
  pointer-events: none !important;
}

.c-btn--small .c-btn__link, .wp-block-button.c-btn--small .wp-block-button__link {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  min-width: 0;
  padding: 0.5em 1.5em;
  border-radius: 50px;
  border: 1px solid #3A8AA2;
  background: #ffffff;
  color: #3A8AA2;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.2;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.c-btn--small .c-btn__link:hover, .wp-block-button.c-btn--small .wp-block-button__link:hover {
  background: #E5F4F8;
  text-decoration: none !important;
}

.c-btn--small .c-btn__link::before, .wp-block-button.c-btn--small .wp-block-button__link::before {
  content: "";
}

/* 汎用Buttonエリア
--------------------------------------------*/
.c-btns {
  margin-top: 2.2rem;
  margin-bottom: 2.2rem;
  text-align: center;
}

.c-btns .c-btn {
  margin-bottom: 1rem;
}

@media (min-width: 768px), print {
  .c-btns .c-btn {
    margin-right: 1rem;
    margin-bottom: 1rem;
  }
}

.wp-block-buttons {
  margin-top: 2.2rem;
  margin-bottom: 2.2rem;
  text-align: center;
}

.wp-block-buttons .wp-block-button {
  margin-bottom: 1rem;
}

@media (min-width: 768px), print {
  .wp-block-buttons .wp-block-button {
    margin-right: 1rem;
    margin-bottom: 1rem;
  }
}

/* 汎用Button
--------------------------------------------*/
/*デフォルト（中サイズ・角丸・黄色）*/
.c-btn {
  display: block;
  min-width: 280px;
}

@media (min-width: 768px), print {
  .c-btn {
    display: inline-block;
    min-width: 280px;
    max-width: none;
  }
}

/*大サイズ*/
.c-btn--large {
  display: block;
}

.wp-block-button.c-btn--large {
  width: 100%;
}

/*小サイズ（丸）*/
.c-btn--small {
  display: inline-block;
}

/*もっと見るボタン*/
.js-toggleMore__btn._close::before {
  display: inline-block;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.js-toggleMore__btn._open::before {
  display: inline-block;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

/*外部リンクアイコン
---------------------------------------------*/
.c-btn a[target="_blank"],
.c-btn--large a[target="_blank"] {
  position: relative;
}

/* .c-btn a[target="_blank"]::after,
.c-btn--large a[target="_blank"]::after */
.c-btn a[href^="http"]::after,
.c-btn a[href^="//"]::after,
.c-btn--large a[href^="http"]::after,
.c-btn--large a[href^="//"]::after {
  position: absolute;
  right: 10px;
  top: 10px;
  font-size: 0.8em;
  opacity: 0.5;
  content: "";
  font-size: 0.85em;
  font-family: "icomoon" !important;
  font-weight: normal !important;
  opacity: 0.4;
}
.c-btn a[href^="https://www.refugee.or.jp/"]::after,
.c-btn--large a[href^="https://www.refugee.or.jp/"]::after {
  content:"";
  margin: inherit;
  font-family: inherit;
  font-weight: inherit;
}


/*色バリエーション（※ボタン用スタイルと併用必須）
---------------------------------------------*/
/*補助ボタン*/
.c-btn--sub .c-btn__link {
  background: #32312F;
  color: #ffffff;
}

.c-btn--sub .c-btn__link:hover {
  color: #ffffff;
  background: #666462;
}

.wp-block-button.c-btn--sub .wp-block-button__link {
  background: #32312F;
  color: #ffffff;
}

.wp-block-button.c-btn--sub .wp-block-button__link:hover {
  color: #ffffff;
  background: #666462;
}

/*補助ボタン（小サイズ専用）*/
.c-btn--small.c-btn--sub .c-btn__link {
  border: 1px solid #B3B1AF;
  background: #ffffff;
  color: #32312F;
}

.c-btn--small.c-btn--sub .c-btn__link:hover {
  color: #32312F;
  background: #F1F0EF;
}

.wp-block-button.c-btn--small.c-btn--sub .wp-block-button__link {
  border: 1px solid #B3B1AF;
  background: #ffffff;
  color: #32312F;
}

.wp-block-button.c-btn--small.c-btn--sub .wp-block-button__link:hover {
  color: #32312F;
  background: #F1F0EF;
}

/*赤ボタン*/
.c-btn--special .c-btn__link {
  background: #CF121B;
  color: #ffffff;
}

.c-btn--special .c-btn__link:hover {
  color: #ffffff;
  background: #930C11;
}

.wp-block-button.c-btn--special .wp-block-button__link {
  background: #CF121B;
  color: #ffffff;
}

.wp-block-button.c-btn--special .wp-block-button__link:hover {
  color: #ffffff;
  background: #930C11;
}

/*枠ボタン*/
.c-btn--frame .c-btn__link {
  border: 1px solid #32312F;
  background: #ffffff;
  color: #32312F;
}

.c-btn--frame .c-btn__link:hover {
  background: #EBE9E7;
}

.wp-block-button.c-btn--frame .wp-block-button__link {
  border: 1px solid #32312F;
  background: #ffffff;
  color: #32312F;
}

.wp-block-button.c-btn--frame .wp-block-button__link:hover {
  background: #EBE9E7;
}

/*白ボタン*/
.c-btn--white .c-btn__link {
  background: #ffffff;
  color: #32312F;
}

.c-btn--white .c-btn__link:hover {
  background: #EBE9E7;
}

.wp-block-button.c-btn--white .wp-block-button__link {
  background: #ffffff;
  color: #32312F;
}

.wp-block-button.c-btn--white .wp-block-button__link:hover {
  background: #EBE9E7;
}

/*白ボタン（赤文字）*/
.c-btn--white-special .c-btn__link {
  background: #ffffff;
  color: #CF121B;
}

.c-btn--white-special .c-btn__link:hover {
  background: #F7E5E6;
}

.wp-block-button.c-btn--white-special .wp-block-button__link {
  background: #ffffff;
  color: #CF121B;
}

.wp-block-button.c-btn--white-special .wp-block-button__link:hover {
  background: #F7E5E6;
}

/*disabled*/
.c-btn--disabled .c-btn__link {
  border: 2px solid #CCCAC8;
  background: #CCCAC8;
  color: #ffffff;
  pointer-events: none;
}

.wp-block-button.c-btn--disabled .wp-block-button__link {
  border: 2px solid #CCCAC8;
  background: #CCCAC8;
  color: #ffffff;
  pointer-events: none;
}

/*特殊ボタン
---------------------------------------------*/
/*円形*/
.c-btn--circle {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 6rem;
  height: 6rem;
  border-radius: 100%;
  background: #F1D029;
  color: #32312F;
}

.c-btn--circle:hover {
  background: #D9B500;
  text-decoration: none !important;
}

.c-btn--circle::before {
  content: "";
}

.c-btn--circle.c-btn--sub {
  background: #32312F;
  color: #ffffff;
}

.c-btn--circle.c-btn--sub:hover {
  background: #666462;
}

/*閉じる*/
.c-btn--close {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 6rem;
  height: 6rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 100%;
  background: transparent;
  color: #32312F;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.c-btn--close:hover {
  background: #EBE9E7;
  text-decoration: none !important;
}

.c-btn--close::before {
  content: "";
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1;
}

/*寄付ボタン基本スタイル*/
.c-btn--donate {
  position: relative;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #CF121B;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

/* .c-btn--donate[target="_blank"]::after */
.c-btn--donate[href^="http"]::after,
.c-btn--donate[href^="//"]::after {
  position: absolute;
  right: 10px;
  top: 10px;
  margin-left: 0.5em;
  content: "";
  font-size: 0.85em;
  font-family: "icomoon" !important;
  font-weight: normal !important;
  opacity: 0.4;
}
.c-btn--donate[href^="https://www.refugee.or.jp/"]::after {
  content:"";
  margin: inherit;
  font-family: inherit;
  font-weight: inherit;
}


.c-btn--donate:hover {
  background: #930C11;
  text-decoration: none !important;
}

/*スペシャルサポーター*/
.c-btn--supporter {
  padding: 1.5rem 1rem;
  border-radius: 6px;
}

.c-btn--supporter strong {
  display: block;
  font-size: 1.25em;
}

.c-btn--supporter::before {
  font-size: 1.5em;
}

@media screen and (max-width: 360px) {
  .c-btn--supporter {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px), print {
  .c-btn--supporter {
    display: block !important;
    padding: 3rem;
  }
  .c-btn--supporter strong {
    display: inline;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .c-btn--supporter[target="_blank"]::after {
    position: absolute;
    right: 30px;
    top: 50%;
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    opacity: 0.4;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

/*英語版リンク用*/
.c-btn--small-square {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  min-width: 0;
  padding: 0.5em 1.5em;
  border-radius: 6px;
  background: #32312F;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.2;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.c-btn--small-square:hover {
  background: #666462;
  text-decoration: none !important;
}

.c-btn--small-square::before {
  content: "";
}

/* Link
--------------------------------------------*/
/* 頭矢印付き */
.c-link--arw {
  margin-left: 1em;
  text-indent: -1em;
  display: inline-block;
}

.c-link--arw::before {
  content: "";
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.5em;
  border-top: 2px solid;
  border-right: 2px solid;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* 末尾外部アイコン付き */
/* .c-link--blank::after,
.l-articleBody a[target="_blank"]:not(._no-icon)::after */
.l-articleBody a[href^="http"]:not(._no-icon)::after,
.l-articleBody a[href^="//"]:not(._no-icon)::after,
.l-articleBody a.p-topSlider__item_link:not([href^="https://www.refugee.or.jp/"]) .p-topSlider__btn .c-btn__link::after {
  content: "";
  display: inline-block;
  margin-left: 0.2em;
  margin-right: 0.2em;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.l-articleBody a[href^="https://www.refugee.or.jp/"]:not(._no-icon)::after,
.l-articleBody a.p-topSlider__item_link:not([href^="https://www.refugee.or.jp/"])::after {
  content:"";
  margin: inherit;
  font-family: inherit;
  font-weight: inherit;
}


/* 赤強調リンク */
.c-link--special {
  color: #CF121B;
}

.c-link--special:hover {
  color: #930C11;
}

/* List
--------------------------------------------*/
/*ulリスト-----------------*/
.c-list--normal,
.l-articleBody ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) {
  margin-top: 2em;
  margin-bottom: 2em;
}

.c-list--normal li,
.l-articleBody ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li {
  position: relative;
  padding-left: 1em;
  line-height: 1.75;
}

.c-list--normal li:not(:first-child),
.l-articleBody ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li:not(:first-child) {
  margin-top: 1.5rem;
}

.c-list--normal li::before,
.l-articleBody ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li::before {
  position: absolute;
  left: 0;
  top: 0.5em;
  content: "";
  display: inline-block;
  width: 0.45em;
  height: 0.45em;
  margin-right: 0.5em;
  border-radius: 50%;
  background: #807E7C;
}

.c-list--normal li::before,
.l-articleBody ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"])  ul li::before {
  border-radius: 0%;
}


.l-articleBody ul {
  margin-top: 2em;
  margin-bottom: 2em;
}

h2 + .c-list--normal,
h3 + .c-list--normal,
h4 + .c-list--normal,
h5 + .c-list--normal,
h6 + .c-list--normal,
.l-articleBody h2 + ul,
.l-articleBody h3 + ul,
.l-articleBody h4 + ul,
.l-articleBody h5 + ul,
.l-articleBody h6 + ul {
  margin-top: 0;
}

/*olリスト-----------------*/
.c-list--order,
.l-articleBody ol:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) {
  margin-top: 2em;
  margin-bottom: 2em;
}

.c-list--order li,
.l-articleBody ol:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li {
  margin-left: 1.5em;
  list-style-type: decimal;
  line-height: 1.75;
}

.c-list--order li,
.l-articleBody ol:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) ul {
  margin-top: 1.5rem;
}

.c-list--order li,
.l-articleBody ol:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) ul li {
  list-style-type: none;
}


.c-list--order li:not(:first-child),
.l-articleBody ol:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li:not(:first-child) {
  margin-top: 1.5rem;
}

.l-articleBody ol {
  margin-top: 2em;
  margin-bottom: 2em;
}

h2 + .c-list--order,
h3 + .c-list--order,
h4 + .c-list--order,
h5 + .c-list--order,
h6 + .c-list--order,
.l-articleBody h2 + ol,
.l-articleBody h3 + ol,
.l-articleBody h4 + ol,
.l-articleBody h5 + ol,
.l-articleBody h6 + ol {
  margin-top: 0;
}

/*注釈リスト-----------------*/
.c-list--note li {
  margin-top: 0.5em;
  color: #807E7C;
  font-size: 14px;
  font-size: 1.4rem;
}

.c-list--note li::before {
  content: "※";
  width: 1em;
  height: 1em;
  top: 0;
  border-radius: 0;
  background: none;
}

/*リンク付きリスト-----------------*/
.c-list--link {
  margin-top: 3rem;
  margin-left: 1.5rem;
}

.c-list--link li {
  line-height: 1.75;
}

.c-list--link li:not(:first-child) {
  margin-top: 1.5rem;
}

.c-list--link li::before {
  text-indent: -1em;
  display: inline-block;
  content: "";
  color: #3A8AA2;
  font-family: "icomoon" !important;
  text-decoration: none;
}

/*ロゴリスト-----------------*/
.c-list--logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-list--logo li {
  margin: 10px;
}

@media (min-width: 768px), print {
  .c-list--logo li {
    margin: 20px;
  }
}

.c-list--logo a:hover {
  opacity: 0.7;
}

/*日付順リスト(dl)-----------------*/
.c-list--date dt {
  color: #807E7C;
  font-family: "Roboto", sans-serif;
  font-size: 12px;
  font-size: 1.2rem;
}

.c-list--date dd + dt {
  margin-top: 15px;
}

@media (min-width: 768px), print {
  .c-list--date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .c-list--date dt {
    width: 100px;
    margin-top: 15px;
  }
  .c-list--date dd {
    width: calc(100% - 100px);
    margin-top: 15px;
  }
}

.c-line {
  margin-top: 6rem;
  margin-bottom: 6rem;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Table
--------------------------------------------*/
/*汎用-----------------*/
table {
  width: 100%;
  margin-top: 3rem;
  margin-bottom: 3rem;
  border: 1px solid #B3B1AF;
  line-height: 1.75;
}

table th {
  padding: 15px;
  border: 1px solid #B3B1AF;
  font-weight: bold;
}

table td {
  padding: 15px;
  border: 1px solid #B3B1AF;
}

table td table, table td ul, table td ol, table td p {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  .c-table--rwd table, table.c-table--rwd {
    border: 0;
  }
  .c-table--rwd table tbody,
  .c-table--rwd table tr,
  .c-table--rwd table th,
  .c-table--rwd table td, table.c-table--rwd tbody,
  table.c-table--rwd tr,
  table.c-table--rwd th,
  table.c-table--rwd td {
    display: block;
    width: auto;
  }
  .c-table--rwd table td, table.c-table--rwd td {
    margin-top: -1px;
  }
  .c-table--rwd table tr:not(:first-child) th, table.c-table--rwd tr:not(:first-child) th {
    margin-top: -1px;
  }
}

.wp-block-table table {
  width: 100%;
  margin-top: 3rem;
  margin-bottom: 3rem;
  border: 1px solid #B3B1AF;
}

.wp-block-table table th {
  padding: 15px;
  border: 1px solid #B3B1AF;
  font-weight: bold;
}

.wp-block-table table td {
  padding: 15px;
  border: 1px solid #B3B1AF;
}

@media (max-width: 767px) {
  .wp-block-table.c-table--rwd table {
    border: 0;
  }
  .wp-block-table.c-table--rwd table tbody,
  .wp-block-table.c-table--rwd table tr,
  .wp-block-table.c-table--rwd table th,
  .wp-block-table.c-table--rwd table td {
    display: block;
    width: auto;
  }
  .wp-block-table.c-table--rwd table td {
    margin-top: -1px;
  }
  .wp-block-table.c-table--rwd table tr:not(:first-child) th {
    margin-top: -1px;
  }
}

/*横罫線-----------------*/
.c-table--line table {
  border: 0;
}

.c-table--line table tr {
  border-bottom: 1px solid #B3B1AF;
}

.c-table--line table th {
  border: 0;
}

.c-table--line table td {
  border: 0;
}

.c-table--line table thead {
  border-top: 1px solid #B3B1AF;
  border-bottom: 1px solid #B3B1AF;
  background: #F5F0E2;
}

.c-table--line table thead th {
  text-align: center;
}

.c-table--line table tbody th {
  width: 30%;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
}

.c-table--line table tbody td {
  padding: 30px 15px 30px 0;
}

.c-table--line table tbody td *:first-child {
  margin-top: 0;
}

.c-table--line table tbody td *:last-child {
  margin-bottom: 0;
}

/*罫線なし-----------------*/
.c-table--noline table {
  border: 0;
}

.c-table--noline table th, .c-table--noline table td {
  border: 0;
  padding-left: 0;
}

.c-table--noline table td th {
  font-weight: normal;
}

@media (max-width: 767px) {
  .c-table--noline.c-table--rwd table {
    border: 0;
  }
  .c-table--noline.c-table--rwd table tbody,
  .c-table--noline.c-table--rwd table tr,
  .c-table--noline.c-table--rwd table th,
  .c-table--noline.c-table--rwd table td {
    display: block;
    width: auto;
  }
  .c-table--noline.c-table--rwd table td {
    padding-top: 0;
  }
}

/*横スクロール仕様-----------------*/
.c-table--scroll {
  overflow-y: hidden;
  overflow-x: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.c-table--scroll table {
  width: 740px;
}

@media (min-width: 1201px), print {
  .c-table--scroll table {
    width: 800px;
  }
}

/* Heading
--------------------------------------------*/
/*H1相当-----------------*/
.c-ttl--lv1:not(#_) {
  overflow: hidden;
  margin-top: 8.3rem;
  margin-bottom: 8.3rem;
  color: inherit;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 700;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-ttl--lv1:not(#_) ._sub {
  display: block;
  font-size: 0.5em;
  font-weight: normal;
}

.c-ttl--lv1:not(#_)::after {
  display: none;
}

@media (min-width: 768px), print {
  .c-ttl--lv1:not(#_) {
    margin-top: 13.8rem;
    margin-bottom: 7.8rem;
    font-size: 48px;
    font-size: 4.8rem;
  }
}

/*H2相当-----------------*/
.c-ttl--lv2:not(#_),
.l-articleBody h2 {
  overflow: hidden;
  margin-top: 4.5rem; /* 5.5 */
  margin-bottom: 3.5rem; /* 4 */
  border: 0;
  color: #32312F; /* #3A8AA2; */
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-ttl--lv2:not(#_)::after,
.l-articleBody h2::after {
  content: "";
  display: block;
  margin-top: 15px;
  width: 60px;
  border-top: 1px solid;
  vertical-align: top;
}

.c-ttl--lv2:not(#_) ._sub, .l-articleBody h2 ._sub {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.75;
}

.u-ta__c.c-ttl--lv2:not(#_)::after,
.l-articleBody h2.u-ta__c::after {
  margin: 15px auto 0;
}

@media (min-width: 768px), print {
  .c-ttl--lv2:not(#_),
  .l-articleBody h2 {
    margin-top: 5.3rem; 
    margin-bottom: 3.8rem;
    font-size: 28px;
    font-size: 2.8rem;
  }
  .c-ttl--lv2:not(#_) ._sub, .l-articleBody h2 ._sub {
    font-size: 20px;
    font-size: 2rem;
  }
}

/*H3相当-----------------*/
.c-ttl--lv3:not(#_),
.l-articleBody h3 {
  overflow: hidden;
  margin-top: 4.5rem; /* 5.5 */
  margin-bottom: 2rem; /* 2.5 */
  padding-bottom: 0.3em;
  color: inherit;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-ttl--lv3:not(#_)::after,
.l-articleBody h3::after {
  content: "";
  display: block;
  margin-top: 15px;
  width: 60px;
  border-top: 1px solid #B3B1AF;
  vertical-align: top;
}

.l-articleBody h3.c-txt--catch::after {
  content: none;
}


.c-ttl--lv3:not(#_) ._sub, .l-articleBody h3 ._sub {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.75;
}

.u-ta__c.c-ttl--lv3:not(#_)::after,
.l-articleBody h3.u-ta__c::after {
  margin: 15px auto 0;
}

@media (min-width: 768px), print {
  .c-ttl--lv3:not(#_),
  .l-articleBody h3 {
    margin-top: 5.4rem;
    margin-bottom: 2.4rem;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .c-ttl--lv3:not(#_) ._sub, .l-articleBody h3 ._sub {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/*H4相当-----------------*/
.c-ttl--lv4:not(#_),
.l-articleBody h4 {
  margin-top: 4.6rem; /* 5.6 */
  margin-bottom: 2.1rem; /* 2.6 */
  border: 0;
  color: inherit;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-ttl--lv4:not(#_)::after,
.l-articleBody h4::after {
  display: none;
}

@media (min-width: 768px), print {
  .c-ttl--lv4:not(#_),
  .l-articleBody h4 {
    margin-top: 5.5rem;
    margin-bottom: 2.5rem;
    font-size: 20px;
    font-size: 2rem;
  }
}

.l-articleBody h3 + h4 {
  margin-top: 2rem;
}

/*H5相当-----------------*/
.c-ttl--lv5:not(#_),
.l-articleBody h5 {
  margin-top: 4.6rem; /* 5.6 */
  margin-bottom: 2.1rem; /* 2.6 */
  border: 0;
  font-size: 16px;
  font-size: 1.6rem;
  /* color: #807E7C; */
  color: inherit;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-ttl--lv5:not(#_)::after,
.l-articleBody h5::after {
  display: none;
}

/*H6相当-----------------*/
.c-ttl--lv6:not(#_),
.l-articleBody h6 {
  margin-top: 3rem; /* 3.65 */
  margin-bottom: 1.5rem; /* 1.65 */
  border: 0;
  color: #807E7C; /* inherit */
  font-size: 16px; /* 14px */
  font-size: 1.6rem; /* 1.4rem */
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.c-ttl--lv6:not(#_)::after,
.l-articleBody h6::after {
  display: none;
}

/* Text Style
--------------------------------------------*/
/*キャッチコピー-----------------*/
.c-txt--catch:not(#_) {
  margin: 60px auto 45px;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.c-txt--catch:not(#_) ._sub {
  margin-bottom: 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.5;
}

.c-txt--catch:not(#_) ._main {
  color: inherit;
}

.c-txt--catch:not(#_) ._main::after {
  display: none;
}

@media (min-width: 768px), print {
  .c-txt--catch:not(#_) {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .c-txt--catch:not(#_) ._sub {
    margin-bottom: 2rem;
  }
}

/*引用符付きキャッチコピー-----------------*/
.c-txt--catchQuote {
  position: relative;
  margin: 60px auto 45px;
  text-align: center;
  line-height: 1.5;
}

.c-txt--catchQuote ._sub {
  margin-bottom: 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.5;
}

.c-txt--catchQuote ._main {
  position: relative;
  display: inline-block;
  color: inherit;
  font-weight: 700;
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.5;
}

.c-txt--catchQuote ._main::before, .c-txt--catchQuote ._main::after {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  width: 50px;
  height: 44px;
  background: url(/assets/img/parts_quote.svg) center center/contain no-repeat;
}

.c-txt--catchQuote ._main::before {
  left: -35px;
  top: -25px;
}

.c-txt--catchQuote ._main::after {
  right: -25px;
  bottom: -15px;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  border-top: 0;
}

@media (min-width: 768px), print {
  .c-txt--catchQuote ._sub {
    margin-bottom: 2rem;
  }
  .c-txt--catchQuote ._main {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .c-txt--catchQuote ._main::before, .c-txt--catchQuote ._main::after {
    width: 66px;
    height: 58px;
  }
  .c-txt--catchQuote ._main::before {
    left: -40px;
    top: -40px;
  }
  .c-txt--catchQuote ._main::after {
    right: -40px;
    bottom: -40px;
  }
}

/*引用符付きキャッチコピー（帯状）-----------------*/
/*見出しとしても使用可*/
.c-txt--catchQuote._full {
  position: relative;
  z-index: -1;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 3rem 2rem;
  background: #F1D029;
}

.c-txt--catchQuote._full ._main {
  position: relative;
  z-index: 1;
  margin: 0 !important;
  padding: 0;
  border-bottom: 0;
  color: #32312F;
  font-weight: 700;
}

.c-txt--catchQuote._full ._main::before, .c-txt--catchQuote._full ._main::after {
  z-index: -1;
  background: url(/assets/img/parts_quote02.svg) center center/contain no-repeat;
}

.c-txt--catchQuote._full ._main::after {
  border: 0;
}

@media (min-width: 768px), print {
  .c-txt--catchQuote._full {
    padding: 6rem 2rem;
  }
}

/*リード文-----------------*/
.c-txt--lead {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
}

/*警告文-----------------*/
.c-txt--alert {
  color: #CF121B;
  font-weight: bold;
}

.c-txt--alert * {
  color: inherit;
}

p.c-txt--alert strong {
  font-weight: bold;
}

/*注釈文-----------------*/
.c-txt--note {
  color: #807E7C;
}

/*引用文-----------------*/
.c-txt--blockquote,
blockquote {
  border-left: 5px solid #DBD9D7;
  padding-left: 15px;
  color: #807E7C;
}

.c-txt--blockquote *,
blockquote * {
  color: inherit;
}

/*重要-----------------*/
strong {
  font-weight: bold;
}

/*注意-----------------*/
.c-txt--caution {
  color: #D9B500;
  font-weight: bold;
}

/*警告-----------------*/
.c-txt--danger {
  color: #CF121B;
  font-weight: bold;
}

/*マーカー-----------------*/
mark,
.c-txt--marker {
  background: #F9EEB8;
}

/*選択時-----------------*/
*::-moz-selection {
  background: #F1D029;
  color: #32312F;
}
*::selection {
  background: #F1D029;
  color: #32312F;
}

/*記事の日付-----------------*/
.c-txt--publish, .c-txt--publish time {
  color: #807E7C;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Roboto", sans-serif;
  line-height: 1.5;
}

/*メッセージ文エリア-----------------*/
/*divに設定*/
.c-txt--message {
  margin-top: 6rem;
  margin-bottom: 6rem;
  line-height: 1.75;
  text-align: center;
}

/* Box
--------------------------------------------*/
/*警告装飾ブロック*/
.c-box--alert {
  margin-top: 3rem;
  margin-bottom: 3rem;
  padding: 3rem;
  background: #F7E5E6;
  color: #CF121B;
  text-align: left;
}

.c-box--alert * {
  color: inherit !important;
}

.c-box--alert *:first-child {
  margin-top: 0;
}

.c-box--alert *:last-child {
  margin-bottom: 0;
}

.c-box--alert:after {
  content: "";
  clear: both;
  display: block;
}

.c-box--alert h2, .c-box--alert h3, .c-box--alert h4, .c-box--alert h5, .c-box--alert h6 {
  position: relative;
  margin: 0 0 1em 0;
  padding: 0 0 0 1.5em;
  border-bottom: 0;
  color: inherit !important;
}

.c-box--alert h2::before, .c-box--alert h3::before, .c-box--alert h4::before, .c-box--alert h5::before, .c-box--alert h6::before {
  position: absolute;
  left: 0;
  top: 0.3em;
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(/assets/img/icon_attention.svg) center center/contain no-repeat;
}

.c-box--alert h2::after, .c-box--alert h3::after, .c-box--alert h4::after, .c-box--alert h5::after, .c-box--alert h6::after {
  display: none;
}

.c-box--alert h2._no-icon, .c-box--alert h3._no-icon, .c-box--alert h4._no-icon, .c-box--alert h5._no-icon, .c-box--alert h6._no-icon {
  padding: 0;
}

.c-box--alert h2._no-icon::before, .c-box--alert h3._no-icon::before, .c-box--alert h4._no-icon::before, .c-box--alert h5._no-icon::before, .c-box--alert h6._no-icon::before {
  display: none;
}

@media (min-width: 768px), print {
  .c-box--alert h2, .c-box--alert h3, .c-box--alert h4, .c-box--alert h5, .c-box--alert h6 {
    font-size: 1.25em;
  }
}

/*注釈装飾ブロック*/
.c-box--note {
  margin-top: 3rem;
  margin-bottom: 3rem;
  padding: 3rem;
  background: #F8F8F8;
  text-align: left;
}

.c-box--note *:first-child {
  margin-top: 0;
}

.c-box--note *:last-child {
  margin-bottom: 0;
}

.c-box--note a:not(.c-btn__link) {
  color: #3A8AA2;
}

.c-box--note:after {
  content: "";
  clear: both;
  display: block;
}

.c-box--note h2, .c-box--note h3, .c-box--note h4, .c-box--note h5, .c-box--note h6 {
  position: relative;
  margin: 0 0 1em 0;
  padding: 0 0 0 1.5em;
  border-bottom: 0;
  color: inherit !important;
}

.c-box--note h2::before, .c-box--note h3::before, .c-box--note h4::before, .c-box--note h5::before, .c-box--note h6::before {
  position: absolute;
  left: 0;
  top: 0.3em;
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(/assets/img/icon_note.svg) center center/contain no-repeat;
}

.c-box--note h2::after, .c-box--note h3::after, .c-box--note h4::after, .c-box--note h5::after, .c-box--note h6::after {
  display: none;
}

.c-box--note h2._no-icon, .c-box--note h3._no-icon, .c-box--note h4._no-icon, .c-box--note h5._no-icon, .c-box--note h6._no-icon {
  padding: 0;
}

.c-box--note h2._no-icon::before, .c-box--note h3._no-icon::before, .c-box--note h4._no-icon::before, .c-box--note h5._no-icon::before, .c-box--note h6._no-icon::before {
  display: none;
}

@media (min-width: 768px), print {
  .c-box--note h2, .c-box--note h3, .c-box--note h4, .c-box--note h5, .c-box--note h6 {
    font-size: 1.25em;
  }
}

/*囲み罫装飾ブロック*/
.c-box--frame,
.c-box--frame02,
.c-box--frame03 {
  margin-top: 3rem;
  margin-bottom: 3rem;
  padding: 3rem;
  border: 2px solid #F1D029;
  text-align: left;
}

.c-box--frame *,
.c-box--frame02 *,
.c-box--frame03 {
/*  color: inherit;*/
}

.c-box--frame a:not(.c-btn__link),
.c-box--frame02 a:not(.c-btn__link),
.c-box--frame03 a:not(.c-btn__link) {
  color: #3A8AA2;
}

.c-box--frame *:first-child,
.c-box--frame02 *:first-child,
.c-box--frame03 *:first-child {
  margin-top: 0;
}

.c-box--frame *:last-child,
.c-box--frame02 *:last-child,
.c-box--frame03 *:last-child {
  margin-bottom: 0;
}

.c-box--frame:after,
.c-box--frame02:after,
.c-box--frame03:after {
  content: "";
  clear: both;
  display: block;
}

.c-box--frame02 {
  border: 2px solid #807E7C;
}

.c-box--frame03 {
  border: 2px solid #CF121B;
}

/*塗り囲み装飾ブロック*/
.c-box--paint,
.c-box--paint02,
.c-box--paint03 {
  margin-top: 3rem;
  margin-bottom: 3rem;
  padding: 3rem;
  text-align: left;
}

.c-box--paint *,
.c-box--paint02 *,
.c-box--paint03 * {
  color: inherit !important;
}

.c-box--paint a,
.c-box--paint02 a,
.c-box--paint03 a {
  color: #3A8AA2 !important;
}


.c-box--paint *:first-child,
.c-box--paint02 *:first-child,
.c-box--paint03 *:first-child {
  margin-top: 0;
}

.c-box--paint *:last-child,
.c-box--paint02 *:last-child,
.c-box--paint03 *:last-child{
  margin-bottom: 0;
}

.c-box--paint:after,
.c-box--paint02:after,
.c-box--paint03:after {
  content: "";
  clear: both;
  display: block;
}

.c-box--paint {
  background: #F7E5E6;
}

.c-box--paint02 {
  background: #F8F8F8;
}

.c-box--paint03 {
  background: #FFF9DE;
}

/*全幅塗りブロック*/
.c-box--breakPaint01 {
  margin-left: -30px;
  margin-right: -30px;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 6rem;
  padding-bottom: 6rem;
  background: #F1F0EF;
}

.c-box--breakPaint01 *:first-child {
  margin-top: 0 !important;
}

.c-box--breakPaint01 *:last-child {
  margin-bottom: 0;
}

.c-box--breakPaint01:after {
  content: "";
  clear: both;
  display: block;
}

@media (min-width: 768px), print {
  .c-box--breakPaint01 {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
  }
}

/* Box内での画像回り込み
--------------------------------------------*/
.c-box--alert .p-floatImage__imgR + *,
.c-box--alert .p-floatImage__imgL + *,
.c-box--breakPaint01 .p-floatImage__imgR + *,
.c-box--breakPaint01 .p-floatImage__imgL + *,
.c-box--frame .p-floatImage__imgR + *,
.c-box--frame .p-floatImage__imgL + *,
.c-box--frame02 .p-floatImage__imgR + *,
.c-box--frame02 .p-floatImage__imgL + *,
.c-box--note .p-floatImage__imgR + *,
.c-box--note .p-floatImage__imgL + * {
  margin-top: 0;
}

/* タグ
--------------------------------------------*/
.c-tag {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 50px;
  background: #E5F4F8;
  color: #3A8AA2;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
}

.c-tag._act {
  border-radius: 0;
  display:none;
}

a.c-tag:hover {
  background: #3A8AA2;
  color: #ffffff;
  text-decoration: none !important;
}

.c-tagList:not(#_) {
  margin: 0;
}

.c-tagList:not(#_) li {
  display: inline-block;
  margin: 5px 2px 0;
}

.l-articleHeader__tag.c-tagList {
  display:none;
}
@media (min-width: 768px), print {
  .l-articleHeader__tag.c-tagList {
    display:block;
  }
}


/* Icon
--------------------------------------------*/
[class^="c-icon"], [class*="c-icon"] {
  display: inline-block;
  vertical-align: middle;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

.c-icon--pdf {
  width: 28px;
  height: 14px;
  background-image: url(/assets/img/icon_pdf.svg);
}

.icon_c_arw::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
  background: url(/assets/img/icon_c_arw.svg) center center/contain no-repeat;
  vertical-align: middle;
}

/* Pickup
--------------------------------------------*/
.c-pickup {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  padding: 0.5rem 1rem;
  background: #CF121B;
  color: #ffffff;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
}

/* Ribbon
--------------------------------------------*/
.c-ribbon {
  position: absolute;
  top: -10px;
  left: -10px;
  z-index: 1;
  width: 140px;
  height: 120px;
  overflow: hidden;
}

.c-ribbon span {
  display: inline-block;
  position: absolute;
  left: -40px;
  top: 22px;
  width: 160px;
  padding: 7px 0;
  background: #CF121B;
  color: #ffffff;
  text-align: center;
  font-size: 14px;
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  letter-spacing: 0.05em;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-ribbon span::before, .c-ribbon span::after {
  position: absolute;
  content: "";
  border: transparent 10px solid;
}

.c-ribbon span::before {
  left: -3px;
  bottom: -10px;
  border-right-color: #930C11;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-ribbon span::after {
  right: -3px;
  bottom: -10px;
  border-bottom-color: #930C11;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* Section
--------------------------------------------*/
.l-section {
  margin-top: 50px;
  margin-bottom: 50px;
}

.l-section:first-child {
  margin-top: 0;
}

.l-section.l-breakout {
  margin: 0;
  padding-top: 50px;
  padding-bottom: 50px;
}

/*PC*/
@media (min-width: 768px), print {
  .l-section {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .l-section.l-breakout {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

/* Breakout
--------------------------------------------*/
.l-breakout {
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: calc(50vw - 50%) !important;
  padding-right: calc(50vw - 50%) !important;
}

.l-breakout__inner {
  padding: 20px;
  background: #ffffff;
}

@media (min-width: 768px), print {
  .l-breakout__inner {
    padding: 40px;
  }
}

.l-breakout :first-child {
  margin-top: 0;
}

/*breakout full
--------------------------*/
.l-breakout_full {
  margin: 0 calc(50% - 50vw);
}

/*-------------------------------------------
Project
--------------------------------------------*/
/* Modal
--------------------------------------------*/
/*micromodal*/
/**************************\
  Basic Modal Styles
\**************************/
.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100000;
  background: rgba(0, 0, 0, 0.6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.modal__outer {
  position: relative;
  background-color: #fff;
  padding: 0;
  width: 100%;
  max-width: 1200px;
  border-radius: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.modal__container {
  max-height: calc(100vh - 50px);
  margin: auto;
  padding: 30px 16.24%;
  overflow-y: auto;
}

.modal__close {
  position: absolute;
  right: 15px;
  top: 0;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: transparent;
  border: 0;
}

.modal__close:before {
  content: "\2715";
}

.modal__content {
  margin-top: 2rem;
  margin-bottom: 2rem;
  color: rgba(0, 0, 0, 0.8);
}

.modal__content p {
  margin-bottom: 1em;
}

.modal__content .c-ttl--lv3:not(#_) {
  margin-top: 3.5rem;
  margin-bottom: 2rem;
}

.modal__btn {
  font-size: .875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: .5rem;
  padding-bottom: .5rem;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  border-radius: .25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  transition: -webkit-transform .25s ease-out;
  -webkit-transition: -webkit-transform .25s ease-out;
  -o-transition: transform .25s ease-out;
  transition: transform .25s ease-out;
  transition: transform .25s ease-out, -webkit-transform .25s ease-out;
}

.modal__btn:focus, .modal__btn:hover {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
}

.modal__btn-primary {
  background-color: #00449e;
  color: #fff;
}

.modal__title:not(#_) {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

/**************************\
  Demo Animation Style
\**************************/
@-webkit-keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@-webkit-keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
    transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
    transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}

@keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden="false"] .modal__overlay {
  -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="false"] .modal__container {
  -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__overlay {
  -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__container {
  -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}

/*
サイト内検索用
-------------------------------*/
.modal__container {
  padding: 30px;
}

@media (min-width: 768px), print {
  .modal__container {
    padding: 30px 60px;
  }
}
.form-search input[type="search"] {
  width: calc(100% - 30px);
}

.modal__outer {
  width: 90%;
  max-width: 800px;
}


.form-search {
  position: relative;
  max-width: none;
}

.form-search__input {
  width: calc(100% - 30px);
}

.form-search__btn {
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 20px;
  height: 20px;
}

.form-search__btn .ico_search {
  font-size: 20px;
  font-size: 2rem;
  vertical-align: top;
}

/* 導入部
--------------------------------------------*/
.p-intro {
  text-align: center;
}

.p-intro__ttl {
  margin-bottom: 2rem; /* 3rem */
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
}

.p-intro__ttl ._sub {
  display: block;
  font-size: 0.8em;
}

.p-intro__catch {
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
}

.p-intro__lead {
  line-height: 2;
}

.p-intro__lead p + p {
  margin-top: 1.5em;
}

.p-intro__catch + .p-intro__lead {
  margin-top: 5.2rem;
}

@media (min-width: 768px), print {
  .p-intro__ttl {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

/* 重要なお知らせ
--------------------------------------------*/
.p-importantNews {
  position: relative;
  margin: 6rem 0;
  margin: 3rem 0 6rem;
  text-align: center;
  line-height: 1;
}

.p-importantNews *:last-child {
  margin-bottom: 0;
}

.p-importantNews__ttl:not(#_) {
  display: inline-block;
  -webkit-transform: translateY(calc(50% + 5px));
  -ms-transform: translateY(calc(50% + 5px));
  transform: translateY(calc(50% + 5px));
  max-width: 90%;
  margin: 0;
  padding: 0.8rem 2rem;
  border-radius: 50px;
  background: #CF121B;
  color: #ffffff;
  line-height: 1.5;
  word-break: break-all;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-importantNews__ttl:not(#_)::after {
  display: none;
}

.p-importantNews__frame {
  padding: 4rem 3rem 3rem 3rem;
  border: 2px solid #CF121B;
  text-align: left;
}

.p-importantNews__frame > *:first-child {
  margin-top: 0;
}

.p-importantNews__list {
  padding: 4rem 3rem 3rem 3rem;
  border: 2px solid #CF121B;
  text-align: left;
}

.p-importantNews__list li {
  padding-left: 0;
  line-height: 1.75;
}

.p-importantNews__list li:not(:first-child) {
  margin-top: 1.42em;
}

.p-importantNews__list a {
  color: #32312F;
}

.p-importantNews__note:not(#_) {
  margin-top: 0.5em;
  color: #807E7C;
  line-height: 1.75;
}

/* 重要なお知らせ形式の汎用ボックス
--------------------------------------------*/
.p-importantBox {
  position: relative;
  margin: 6rem 0;
  margin: 3rem 0 6rem;
  text-align: center;
  line-height: 1;
}

.p-importantBox *:last-child {
  margin-bottom: 0;
}

.p-importantBox__ttl:not(#_) {
  display: inline-block;
  -webkit-transform: translateY(calc(50% + 5px));
  -ms-transform: translateY(calc(50% + 5px));
  transform: translateY(calc(50% + 5px));
  max-width: 90%;
  margin: 0;
  padding: 0.8rem 2rem;
  border-radius: 50px;
  background: #F1D029;
  color: #32312F;
  line-height: 1.5;
  word-break: break-all;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-importantBox__ttl:not(#_)::after {
  display: none;
}

.p-importantBox__frame {
  padding: 4rem 3rem 3rem 3rem;
  border: 2px solid #F1D029;
  text-align: left;
}

.p-importantBox__frame > *:first-child {
  margin-top: 0;
}

.p-importantBox__frame > *:last-child {
  margin-bottom: 0;
}

/*赤枠バージョン*/
.p-importantBox._type2 .p-importantBox__ttl:not(#_) {
  background: #CF121B;
  color: #ffffff;
}

.p-importantBox._type2 .p-importantBox__frame {
  border: 2px solid #CF121B;
}

/* リスト型インデックス
--------------------------------------------*/
.p-indexList__item {
  margin-top: 3rem;
  line-height: 1.75;
}

.p-indexList__item a {
  display: inline-block;
  font-weight: bold;
}

.p-indexList__item a::before {
  text-indent: -1em;
  display: inline-block;
  content: "";
  font-family: "icomoon" !important;
  text-decoration: none;
}

.p-indexList__item .p-indexList__note {
  margin: 5px 0 0 0;
  color: #807E7C;
  line-height: 1.75 !important;
}

/* 目次型インデックス
--------------------------------------------*/
.p-indexTable {
  margin: 6rem auto;
  padding: 3rem;
  max-width: 640px;
  background: #F8F8F8;
}

.p-indexTable *:last-child {
  margin-bottom: 0;
}

.p-indexTable__ttl:not(#_) {
  margin: 0 0 0.5em 0;
  color: inherit;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-indexTable__ttl:not(#_)::after {
  display: none;
}

@media (min-width: 768px), print {
  .p-indexTable__ttl:not(#_) {
    font-size: 20px;
    font-size: 2rem;
  }
}

.p-indexTable__list:not(#_) {
  line-height: 1.75;
  margin-top:1em;
}

.p-indexTable__list:not(#_) > li + li {
  border-top: 1px solid #B3B1AF;
}

.p-indexTable__list:not(#_) a {
  position: relative;
  display: block;
  padding: 0.7em 0 0.2em 1.5em;
}

.p-indexTable__list:not(#_) a::before {
  position: absolute;
  left: 0;
  top: 0.5em;
  display: inline-block;
  content: "";
  font-family: "icomoon" !important;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  text-decoration: none;
}

/*第二階層*/
.p-indexTable__nest:not(#_) {
  margin-top: 0;
  padding-left: 2rem;
}

.p-indexTable__nest:not(#_) li a {
  padding-top: 0;
}

.p-indexTable__nest:not(#_) li a::before {
  top: 0;
}

/* ArticleData
※投稿記事一覧のタイトル・概要文ブロック
--------------------------------------------*/
.p-articleData a {
  display: block;
}

.p-articleData a:hover {
  text-decoration: none;
}

/*サムネイル有り*/
.p-articleList._thumb .p-articleData {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.p-articleList._thumb .p-articleData .c-txt--publish {
  margin-top: 0.5em;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  font-size: 16px;
  font-size: 1.6rem;
}

.home .p-articleList._thumb .p-articleData .c-txt--publish {
  margin-top: -1em;
}

@media (min-width: 768px), print {
  .home .p-articleList._thumb .p-articleData .c-txt--publish {
  /*  margin-top: 0.5em; */
  }
}

.p-articleData__ttl {
  font-weight: bold;
  line-height: 1.75 !important;
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
  font-size: 18px;
  font-size: 1.8rem;
}

a:hover .p-articleData__ttl {
  color: #3A8AA2;
}

.p-articleData__sttl {
  margin: 5px 0 0 0 !important;
}

a:hover .p-articleData__sttl {
  color: #3A8AA2;
}

.p-articleData__summary {
  margin: 5px 0 0 0 !important;
  line-height: 1.75 !important;
  color: #727070; /* #807E7C */
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
}

a:hover .p-articleData__summary {
/*  color: #3A8AA2; */
}

/* ArticleList
※記事一覧リスト
--------------------------------------------*/
/*サムネイルなし一覧*/
.p-articleList__item {
  margin-top: 3rem;
}

.p-articleList__item:first-child {
  margin-top: 0;
}

.p-articleList__item p {
  margin: 0;
}

@media (min-width: 768px), print {
  .p-articleList:not(._thumb) .p-articleList__item {
    position: relative;
    padding-left: 100px;
  }
  .p-articleList:not(._thumb) .p-articleList__item .c-txt--publish {
    position: absolute;
    left: 0;
  }
}

/*サムネイルなし一覧（2カラム）*/
@media (min-width: 768px), print {
  .p-articleList._col2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p-articleList._col2 .p-articleList__item {
    display: block;
    width: 48.125%;
    padding-left: 0;
  }
  .p-articleList._col2 .p-articleList__item:nth-child(1), .p-articleList._col2 .p-articleList__item:nth-child(2) {
    margin-top: 0;
  }
  .p-articleList._col2 .p-articleList__item .c-txt--publish {
    position: static;
  }
}

/*日付なし・検索結果専用*/
.p-articleList._noDate .p-articleList__item {
  margin-top: 4.5rem;
}

.p-articleList._noDate .p-articleList__item .c-txt--publish {
  display: none;
}

@media (min-width: 768px), print {
  .p-articleList._noDate .p-articleList__item {
    padding-left: 0;
  }
}

/*サムネイル付き一覧*/
.p-articleList._thumb .p-articleList__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.p-articleList._thumb .p-articleList__thumb {
  position: relative;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 95px;
  margin-right: 15px;
}

.p-articleList._thumb .p-articleData {
  width: calc(100% - 110px);
}

@media (min-width: 768px), print {
  .p-articleList._thumb .p-articleList__thumb {
    width: 120px;
    margin-right: 30px;
  }
  .p-articleList._thumb .p-articleData {
    width: calc(100% - 150px);
  }
}

/*アクセスランキング用*/
.p-articleList._ranking {
  counter-reset: number 0;
}

.p-articleList._ranking .p-articleList__item {
  position: relative;
}

.p-articleList._ranking .p-articleList__item::before {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  counter-increment: number 1;
  content: counter(number);
  position: absolute;
  left: -15px;
  top: -15px;
  z-index: 1;
  width: 30px;
  height: 30px;
  background: #F1D029;
  border-radius: 100%;
}

/*サムネイル付き一覧：1件レコメンド表示*/
.p-articleList._thumb .p-articleList__item._recommend {
  display: block;
}

.p-articleList._thumb .p-articleList__item._recommend .p-articleList__thumb {
  width: auto;
  margin-right: 0;
  margin-bottom: 1rem;
}

.p-articleList._thumb .p-articleList__item._recommend .p-articleList__thumb img {
  width: 100%;
  max-width: none;
}

.p-articleList._thumb .p-articleList__item._recommend .p-articleData {
  width: auto;
}

@media (min-width: 768px), print {
  .p-articleList._thumb .p-articleList__item._recommend {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p-articleList._thumb .p-articleList__item._recommend .p-articleList__thumb {
    width: 48.125%;
    margin-bottom: 0rem;
  }
  .p-articleList._thumb .p-articleList__item._recommend .p-articleData {
    width: 48.125%;
  }
}

/*サムネイル付き一覧：イベント用1件レコメンド表示*/
.p-articleList._event .p-articleList__item._eventRecommend {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.p-articleList._event .p-articleList__item._eventRecommend .p-articleList__thumb {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  margin-right: 0;
  margin-bottom: 1.5rem;
}

.p-articleList._event .p-articleList__item._eventRecommend .p-articleList__thumb img {
  max-width: none;
  width: 100%;
}

.p-articleList._event .p-articleList__item._eventRecommend .p-eventDate {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  width: 100%;
}

.p-articleList._event .p-articleList__item._eventRecommend .p-articleData {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

/* EventDate
※イベント専用記事一覧のイベント日時表示
--------------------------------------------*/
.p-eventDate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1.5rem;
}

.p-eventDate__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 80px;
  padding: 10px;
  background: #CF121B;
  border-radius: 8px 0 0 8px;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
}
.p-eventDate__ttl.past {
  background: #9CA9B6;
}

@media (min-width: 768px), print {
  .p-eventDate__ttl {
    width: 120px;
  }
}

.p-eventDate__time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 10px;
  background: #F1F0EF;
  border-radius: 0 8px 8px 0;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  line-height: 1.2;
  font-family: "Oswald", sans-serif;
}

.p-eventDate__time .date {
  display: inline-block;
  margin: 0 0.2em;
  font-size: 1.66em;
  font-weight: 500;
}

.p-eventDate__time .freeText {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
}

@media (min-width: 768px), print {
  .p-eventDate__time {
    padding: 10px 10px 10px 30px;
  }
}

/* ArticleRecommend
※記事1件おすすめ表示用
--------------------------------------------*/
.p-articleRecommend__thumb {
  position: relative;
  margin-bottom: 1.5rem;
}

.p-articleRecommend__thumb img {
  max-width: none;
  width: 100%;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.p-articleRecommend__thumb a {
  display: block;
}

.p-articleRecommend__thumb a:hover img {
  opacity: 0.8;
}

@media (min-width: 768px), print {
  .p-articleRecommend__thumb {
    margin-bottom: 3rem;
  }
}

/* 汎用メディアブロック（画像＋テキストのコンテンツブロック）
--------------------------------------------*/
.p-mediaBlock__ph {
  text-align: center;
}

@media (min-width: 768px), print {
  .p-mediaBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-mediaBlock__ph {
    width: 48.125%;
  }
  .p-mediaBlock__txt {
    width: 48.125%;
  }
  ._imgR {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  ._imgL {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

/* 汎用メディアリスト（サムネイル＋テキスト）
--------------------------------------------*/
.p-mediaList {
  line-height: 1.75;
}

.p-mediaList__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #807E7C;
}

.p-mediaList__item:not(:first-child) {
  margin-top: 3rem;
}

.p-mediaList__item > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-mediaList__item > a:hover {
  text-decoration: none;
}

.p-mediaList__item > a:hover * {
  color: #3A8AA2;
}

.p-mediaList__item p {
  margin: 0;
  color: #807E7C;
  line-height: 1.75;
}

.p-mediaList__thumb {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 95px;
  margin-right: 15px;
}

.p-mediaList__thumb img {
  max-width: none;
  width: 100%;
}

.p-mediaList__body {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.p-mediaList__body h2, .p-mediaList__body h3, .p-mediaList__body h4, .p-mediaList__body h5, .p-mediaList__body h6 {
  margin: 0;
  color: #32312F;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.75;
  border-bottom: 0;
}

.p-mediaList__body h2::after, .p-mediaList__body h3::after, .p-mediaList__body h4::after, .p-mediaList__body h5::after, .p-mediaList__body h6::after {
  display: none;
}

@media (min-width: 768px), print {
  .p-mediaList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p-mediaList__item:not(#_) {
    width: 46.25%;
    margin-top: 6rem;
  }
  .p-mediaList__item:nth-child(1), .p-mediaList__item:nth-child(2) {
    margin-top: 0 !important;
  }
  .p-mediaList__thumb {
    width: 120px;
    margin-right: 30px;
  }
}

/* CardList
※枠囲みのカード型一覧リスト（※サムネイルなし）
--------------------------------------------*/
.p-cardList {
  margin-top: -3rem !important;
  display: flow-root;
}

.p-cardList > * {
  width: 100%;
}

.p-cardList__item:not(#_) {
  margin-top: 3rem;
  padding-left: 0;
}

.p-cardList__item:not(#_)::before {
  display: none;
}

.p-cardList__item:not(#_) a:hover {
  text-decoration: none;
}

@media (min-width: 768px), print {
  .p-cardList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p-cardList._col2 .p-cardList__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 48.125%;
  }
  .p-cardList._col2 .p-cardList__item:nth-child(2) {
    margin-top: 0;
  }
  .p-cardList._col3 .p-cardList__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 30.75%;
  }
  .p-cardList._col3 .p-cardList__item:nth-child(2), .p-cardList._col3 .p-cardList__item:nth-child(3) {
    margin-top: 0;
  }
  .p-cardList._col3::after {
    content: "";
    display: block;
    width: 30.75%;
  }
}

/*カードリストに入るカード単体スタイル*/
.p-card {
  display: block;
  width: 100%;
  padding: 3rem;
  background: #ffffff;
  border-radius: 8px;
  -webkit-box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
}

.p-card:hover {
  text-decoration: none;
  background-color: #eee;
}

.p-card h2, .p-card h3, .p-card h4, .p-card h5, .p-card h6 {
  margin: 0;
  border-bottom: 0;
}

.p-card h2::after, .p-card h3::after, .p-card h4::after, .p-card h5::after, .p-card h6::after {
  display: none;
}

.p-card[target="_blank"]::after {
  display: none !important;
}

/* .p-card[target="_blank"] .p-card__ttl::after */
.p-card[href^="http"] .p-card__ttl::after,
.p-card[href^="//"] .p-card__ttl::after {
  content: "";
  display: inline-block;
  margin-left: 0.2em;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: auto;
  border: 0;
  margin: 0.25em 0.2em 0 0;
}
.p-card[href^="https://www.refugee.or.jp/"] .p-card__ttl::after {
  content:"";
  margin: inherit;
  font-family: inherit;
  font-weight: inherit;
}

.p-card__ttl:not(#_) {
  padding: 0.9rem 0;
  border-top: 4px solid #F1D029;
  color: #32312F;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.75;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

a:hover .p-card__ttl:not(#_) {
  color: #3A8AA2;
}

@media (min-width: 768px), print {
  .p-card__ttl:not(#_) {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.p-card__sttl {
  display: block;
  margin-bottom: 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
}

.p-card__txt:not(#_) {
  margin: 0;
  color: #807E7C;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.75;
}

/* imageCardList 
※サムネイル画像付きカード一覧（※カルーセル表示）
--------------------------------------------*/
.p-imageCardList .slick-list {
  overflow: visible;
}

.p-imageCardList .slick-dots {
  display: none !important;
}

.p-imageCardList .slick-arrow {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.p-imageCardList__item:not(#_) {
  width: calc(100% - 60px);
  margin: 0 15px;
  padding: 0;
  border-radius: 8px;
  background: #ffffff;
  -webkit-box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
}

.p-imageCardList__item:not(#_):hover {
  background-color: #eee;
}
.p-imageCardList__item:not(#_) p {
  margin: 0;
}

.p-imageCardList__item:not(#_) .p-card {
  padding: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.p-imageCardList__item:not(#_) a.p-card * {
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
}

.p-imageCardList__item:not(#_) a.p-card:hover {
  text-decoration: none;
}

.p-imageCardList__item:not(#_) a.p-card:hover * {
  color: #3A8AA2;
}

.p-imageCardList__item:not(#_) .p-card__thumb img {
  max-width: none;
  width: 100%;
  border-radius: 8px 8px 0 0;
}

.p-imageCardList__item:not(#_) .p-card__body {
  padding: 8vw;
}

@media (min-width: 568px), print {
  .p-imageCardList__item:not(#_) .p-card__body {
    padding: 2.8rem;
  }
}

.p-imageCardList__item:not(#_) .p-card__ttl {
  border-top: 0;
  padding-top: 0;
  font-weight: bold;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-imageCardList__item:not(#_) .p-card__txt {
  color: inherit;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.75;
}

.p-imageCardList__item:not(#_) .c-tagList {
  padding: 0 8vw 8vw 8vw;
}

.p-imageCardList__item:not(#_) .p-card__donate {
  margin-bottom: 10px;
  color: #3A8AA2;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-imageCardList__item:not(#_) .p-card__donate b {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: bold;
}

@media (min-width: 568px), print {
  .p-imageCardList__item:not(#_) .p-tagList {
    padding: 0 3rem 3rem 3rem;
  }
}

@media (min-width: 768px), print {
  .p-imageCardList__item:not(#_) .p-card__body {
    padding: 2.8rem;
  }
  .p-imageCardList__item:not(#_) .p-card__ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .p-imageCardList__item:not(#_) .p-card__txt {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

/* 画像ブロック（投稿記事内）
--------------------------------------------*/
.p-imageBlock {
  margin-top: 6rem;
  margin-bottom: 6rem;
  line-height: 1.75;
}

.p-imageBlock h2, .p-imageBlock h3, .p-imageBlock h4, .p-imageBlock h5, .p-imageBlock h6 {
  margin: 0 0 1em 0;
  border-bottom: 0;
  color: inherit;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-imageBlock h2::after, .p-imageBlock h3::after, .p-imageBlock h4::after, .p-imageBlock h5::after, .p-imageBlock h6::after {
  display: none;
}

@media (min-width: 768px), print {
  .p-imageBlock h2, .p-imageBlock h3, .p-imageBlock h4, .p-imageBlock h5, .p-imageBlock h6 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.p-imageBlock__ph {
  text-align: center;
}

.p-imageBlock__ph img {
  max-width: none;
  width: 100%;
}

.p-imageBlock__caption,
.p-imageBlock figcaption,
figcaption.wp-element-caption {
  margin-top: 1.05rem !important;
  margin-bottom: 0 !important;
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  text-align: right;
  font-size: 12px !important;
  font-size: 1.2rem !important;
}
.u-ta__l .p-imageBlock__caption,
.u-ta__l.p-imageBlock figcaption,
.u-ta__l figcaption.wp-element-caption {
  text-align: left;
}

.p-imageBlock__txt,
.p-imageBlock p {
  margin-top: 2.4rem;
  line-height: 1.75;
}

.p-imageBlock a {
  position: relative;
  display: block;
}

.p-imageBlock a.zoom::before {
  position: absolute;
  right: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: url(/assets/img/icon_zoom.svg) 0 0/contain no-repeat;
}

.p-imageBlock *:first-child {
  margin-top: 0;
}

/*全幅*/
.p-imageBlock._full {
  position: relative;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.p-imageBlock._full .p-imageBlock__ph img {
  width: 100%;
  height: 56vw;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit:cover;';
}

@media (min-width: 768px), print {
  .p-imageBlock._full .p-imageBlock__ph img {
    height: auto;
  }
}

.p-imageBlock._full .p-imageBlock__caption {
  padding: 0 20px;
}

@media (min-width: 1201px), print {
  .p-imageBlock._full .p-imageBlock__caption {
    padding: 0;
  }
}

.p-imageBlock._full .p-imageBlock__ttl {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
  color: #ffffff;
  text-align: center;
  line-height: 1.5;
}

.p-imageBlock._full .p-imageBlock__ttl .num {
  display: block;
  font-weight: 300;
  font-family: "Roboto", sans-serif;
  font-size: 36px;
  font-size: 3.6rem;
}

.p-imageBlock._full .p-imageBlock__ttl .main {
  font-weight: 700;
  font-size: 24px;
  font-size: 2.4rem;
}

.p-imageBlock._full .p-imageBlock__ttl::after {
  content: "";
  display: block;
  width: 60px;
  margin: 2rem auto;
  border-top: 1px solid;
}

@media (min-width: 768px), print {
  .p-imageBlock._full .p-imageBlock__ttl .num {
    font-size: 48px;
    font-size: 4.8rem;
  }
  .p-imageBlock._full .p-imageBlock__ttl .main {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

/*幅広*/
.p-imageBlock._wide {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: calc(50vw - 75%);
  padding-right: calc(50vw - 75%);
}

.p-imageBlock._wide .p-imageBlock__ph img {
  width: 100%;
  height: 56vw;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit:cover;';
}

@media (min-width: 768px), print {
  .p-imageBlock._wide .p-imageBlock__ph img {
    height: auto;
  }
}

.p-imageBlock._wide .p-imageBlock__caption {
  padding: 0 20px;
}

@media (min-width: 1201px), print {
  .p-imageBlock._wide .p-imageBlock__caption {
    padding: 0;
  }
}

/*幅狭*/
.p-imageBlock._narrow {
  max-width: 480px;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

/*見出しの後に連続する画像ブロック*/
h2 + .p-imageBlock, h3 + .p-imageBlock, h4 + .p-imageBlock, h5 + .p-imageBlock, h6 + .p-imageBlock {
  margin-top: 0;
}

/* SNSシェア・ブックマークサービス
--------------------------------------------*/
.p-shareBar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 600px;
  margin: 6rem auto;
}

.p-shareBar > a {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: block;
  text-align: center;
  padding: 0 5px 0 5px;
}

.p-shareBar > a:hover {
  opacity: 0.8;
}

.p-shareBar > a img {
  width: 40px;
  vertical-align: middle;
}

.p-shareBar .facebook {
  border-radius: 6px 0 0 6px;
  background: #1877F2;
}

.p-shareBar .twitter {
  background: #1DA1F2;
}

.p-shareBar .twitter img{
  width: 30px;
  margin-top:4px;
}

.p-shareBar .line {
  background: #00B900;
}

.p-shareBar .hatebu {
  background: #00A4DE;
}

.p-shareBar .pocket {
  border-radius: 0 6px 6px 0;
  background: #EF4056;
}

/* ページナビ・ページネーションエリア
--------------------------------------------*/
.p-pageNavArea {
  margin: 6rem 0;
}

/* ページナビ（次へ／前へ）
--------------------------------------------*/
.p-pageNav:not(#_) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-pageNav:not(#_) li {
  margin: 0 1rem;
  padding-left: 0;
}

.p-pageNav:not(#_) li::before {
  display: none;
}

.p-pageNav:not(#_) li:not(:first-child) {
  margin-top: 0;
}

.p-pageNav__btn {
  display: inline-block;
  width: 140px;
  padding: 1rem 1rem 0.8rem 1rem;
  border-radius: 3rem;
  background: #32312F;
  color: #ffffff;
  text-align: center;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
}

.p-pageNav__btn._prev::before {
  content: "";
  display: inline-block;
  font-family: "icomoon" !important;
  speak: never;
  vertical-align: middle;
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
  margin-right: 0.5em;
}

.p-pageNav__btn._next::after {
  content: "";
  font-family: "icomoon" !important;
  speak: never;
  vertical-align: middle;
  margin-left: 0.5em;
}

@media (max-width: 374px) {
  .p-pageNav__btn {
    width: 120px;
  }
}

/*hover*/
a.p-pageNav__btn:hover, a.p-pageNav__btn:focus {
  text-decoration: none;
  background: #666462;
}

/*disabled*/
span.p-pageNav__btn {
  background: #CCCAC8;
}

/* ページネーション
--------------------------------------------*/
.p-pagination:not(#_) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-pagination:not(#_) li {
  margin: 0 0.5rem;
  padding-left: 0;
}

.p-pagination:not(#_) li::before {
  display: none;
}

.p-pagination:not(#_) li:not(:first-child) {
  margin-top: 0;
}

.p-pagination__item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 28px;
  height: 30px;
  border-radius: 4px;
  color: #32312F;
  line-height: 1;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  vertical-align: middle;
}

.p-pagination__item._current {
  background: #F1F0EF;
}

.p-pagination__item:not(._current):hover {
  color: #3A8AA2;
}

/*skip*/
.p-pagination__item._skip {
  width: 16px;
  height: 4px;
  background: url(/assets/img/icon_reader.svg) center center/contain no-repeat;
}

/* Google Map
--------------------------------------------*/
.p-map {
  position: relative;
  margin-left: -30px;
  margin-right: -30px;
  padding-top: 56%;
}

.p-map iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 768px), print {
  .p-map {
    margin-left: 0;
    margin-right: 0;
  }
  .p-map__txt {
    text-align: center;
  }
}

/* 言語選択プルダウン
--------------------------------------------*/
.p-selectLang {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: -30px -30px 60px 0;
  padding-bottom: 5px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.p-selectLang__ttl {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  color: #000000; /* #807E7C; */
  font-weight: bold;
}

.p-selectLang__select {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-selectLang__select a {
  display: inline-block;
  margin-left: 10px;
  padding: 5px 15px;
  border: 2px solid #B3B1AF;
  border-radius: 50px;
  color: #32312F;
  white-space: nowrap;
}

.p-selectLang__select a.is-current {
  border-color: #32312F;
  background: #F1F0EF; /* 追加 */
}

.p-selectLang__select a:hover {
  border: 2px solid #B3B1AF;
  background: #949494; /* #F1F0EF; */
  text-decoration: none;
}

@media (min-width: 768px), print {
  .p-selectLang {
    margin-top: -50px;
  }
}

/* スタッフ一覧
--------------------------------------------*/
.p-staffList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-staffList__item {
  margin: 5.33333vw 4vw;
  width: 32vw;
  text-align: center;
}

.p-staffList__thumb img {
  border-radius: 100%;
}

.p-staffList__name:not(#_) {
  margin-top: 1.5rem;
  margin-bottom: 0;
  color: inherit;
  font-weight: bold;
}

.p-staffList__dep:not(#_) {
  margin: 0;
  color: inherit;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
}

.p-staffList a {
  color: #32312F;
}

.p-staffList a:hover {
  color: #3A8AA2;
  text-decoration: none;
}

@media (min-width: 768px), print {
  .p-staffList__item {
    margin: 3rem;
    width: 120px;
  }
}

/* 汎用段組み
--------------------------------------------*/
.p-column__item {
  margin-top: 3rem;
}

.p-column__item > *:first-child {
  margin-top: 0 !important;
}

@media (min-width: 768px), print {
  .p-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p-column__item {
    width: calc((100% - 60px) / 3);
  }
}

/* JARの活動メニュー
------------------------------------------*/
.p-jarMenuWrap {
  padding-bottom: 70px;
  background: -webkit-linear-gradient(bottom, #F1F0EF 160px, #ffffff 160px);
  background: -o-linear-gradient(bottom, #F1F0EF 160px, #ffffff 160px);
  background: linear-gradient(to top, #F1F0EF 160px, #ffffff 160px);
}

.p-jarMenuList {
  margin: 0 !important;
}

/*メニュー項目*/
.p-jarMenu {
  width: calc(100% - 30px);
  margin: 0 15px;
  background: #ffffff;
}

.p-jarMenu a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.p-jarMenu a:hover {
  opacity: 0.6;
  text-decoration: none;
}

.p-jarMenu__ttl {
  font-weight: bold;
}

.p-jarMenu__thumb {
  min-height: 0%;
  /*for IE11*/
}

.p-jarMenu__thumb img {
  max-width: none;
  width: 100%;
}

.p-jarMenu__ttl {
  margin: 0 !important;
  padding: 15px;
  line-height: 1.5 !important;
}

.p-jarMenu__illust {
  position: absolute;
  right: 10px;
  bottom: 40px;
  width: 26.66667vw;
  max-width: 120px;
}

@media (min-width: 768px), print {
  .p-jarMenu__item {
    width: 360px;
    margin: 0 30px;
  }
  .p-jarMenu__illust {
    width: 30%;
  }
}

/*for slick*/
.p-jarMenuList .slick-dots {
  bottom: -100px;
  overflow: hidden;
}

.p-jarActivities {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-jarActivities:hover {
  text-decoration: none;
  color: #3A8AA2;
}

.p-jarActivities:hover * {
  color: inherit;
}

.p-jarActivities::before {
  content: "";
  display: block;
  width: 95px;
  margin-right: 15px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.p-jarActivities._none{
	display: block;
}
.p-jarActivities._none::before{
	display: none;
	width: 0;
}


.p-jarActivities._legal::before {
  background-image: url(/assets/img/ill_menu_jar01.svg);
}

.p-jarActivities._social::before {
  background-image: url(/assets/img/ill_menu_jar02.svg);
}

.p-jarActivities._integration::before {
  background-image: url(/assets/img/ill_menu_jar03.svg);
}


.p-jarActivities._job::before {
  background-image: url(/assets/img/ill_menu_jar03.svg);
}

.p-jarActivities._community::before {
  background-image: url(/assets/img/ill_menu_jar04.svg);
}

.p-jarActivities._advocacy::before {
  background-image: url(/assets/img/ill_menu_jar05.svg);
}

.p-jarActivities._pr::before {
  background-image: url(/assets/img/ill_menu_jar06.svg);
}

.p-jarActivities._syria::before {
  background-image: url(/assets/img/ill_menu_jar07.svg);
}

.p-jarActivities._humanitarian::before {
  background-image: url(/assets/img/ill_menu_jar08.svg);
}

@media (min-width: 768px), print {
  .p-jarActivities::before {
    width: 120px;
    margin-right: 30px;
  }
}

.p-jarActivities__ttl:not(#_) {
  margin-top: 0;
  margin-bottom: 0.5em;
}

.p-jarActivities__ttl:not(#_) .sttl {
  display: block;
}

.p-jarActivities__ttl:not(#_) .ttl {
  display: block;
  font-weight: bold;
}

@media (min-width: 768px), print {
  .p-jarActivities__ttl:not(#_) .ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.p-jarActivities__txt:not(#_) {
  margin-top: 0;
  color: #807E7C;
}

/*活動実績モジュール
------------------------------------------*/
.p-jisseki {
  margin: 60px 0;
}

.p-jisseki__item {
  text-align: center;
}

.p-jisseki__item + .p-jisseki__item {
  margin-top: 60px;
}

.p-jisseki__item .count {
  font-weight: bold;
  line-height: 1.4;
}

.p-jisseki__item .number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 160px;
  height: 160px;
  margin: auto;
  border-radius: 50%;
  background: #F1D029;
  font-size: 24px;
  font-size: 2.4rem;
}

.p-jisseki__item .number .num {
  font-weight: bold;
  font-size: 1.33em;
}

.p-jisseki__caption {
  text-align: right;
}

@media (min-width: 768px), print {
  .p-jisseki__fig {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p-jisseki__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0 30px;
  }
  .p-jisseki__item + .p-jisseki__item {
    margin-top: 0;
  }
  .p-jisseki__item .count {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    font-size: 2rem;
  }
}

/*メッセージ文
------------------------------------------*/
.p-messageTxt {
  margin-top: 6rem;
  margin-bottom: 6rem;
  text-align: center;
}

/* 人物プロフィール
--------------------------------------------*/
.p-profile {
  text-align: center;
}

.p-profile__ttl {
  display: inline-block;
  margin-bottom: 3rem;
  padding: 5px 15px;
  border-radius: 50px;
  background: #3A8AA2;
  color: #ffffff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

.p-profile__ph {
  width: 120px;
  height: 120px;
  margin: 0 auto 2.5rem;
}

.p-profile__ph img {
  max-width: none;
  width: 100%;
  border-radius: 50%;
}

.p-profile__name {
  margin-bottom: 0 !important;
  font-weight: bold;
}

.p-profile__title {
  margin-top: 10px !important;
}

.p-profile__catch {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5 !important;
}

@media (min-width: 768px), print {
  .p-profile__catch {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-profile__profTxt {
  margin-top: 2.2rem;
  text-align: left;
}

/* タグ絞り込み検索UI
--------------------------------------------*/
.p-refined {
  margin-bottom: 6rem;
}

.p-refined__ttl:not(#_) {
  margin-bottom: 1.1rem;
  color: #807E7C;
  font-weight: bold;
  text-align: center;
}

.p-refined__item .select-box {
  display: block;
  margin: 0 auto;
}

.p-refined__item + .p-refined__item {
  margin-top: 1.5rem;
}

.p-refined__body .searchandfilter ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-refined__body .searchandfilter li {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
  width: 100%;
  max-width: 280px;
  padding-right: 2rem;
  background-color: #F1F0EF;
  border: 1px solid #B3B1AF;
  border-radius: 6px;
  -webkit-transition: background-color 0.5s ease-out;
  -o-transition: background-color 0.5s ease-out;
  transition: background-color 0.5s ease-out;
}

.p-refined__body .searchandfilter li::before {
  display: none !important;
}

.p-refined__body .searchandfilter li:hover, .p-refined__body .searchandfilter li:focus {
  background: #E5F4F8;
}

.p-refined__body .searchandfilter li._short {
  max-width: 140px;
}

.p-refined__body .searchandfilter li::after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-right: 2px solid #666462;
  border-bottom: 2px solid #666462;
  pointer-events: none;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}

.p-refined__body .searchandfilter li:last-child {
  position: absolute !important;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  margin: -1px;
}

.p-refined__body .searchandfilter select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  cursor: pointer;
  width: 100%;
  height: 3.125em;
  line-height: 3.125;
}

.p-refined__body .searchandfilter select:invalid {
  color: #CF121B;
}

.p-refined__body .searchandfilter select.focus-visible {
  border-color: #3A8AA2;
  -webkit-box-shadow: inset 0 0 0 1px #3A8AA2;
  box-shadow: inset 0 0 0 1px #3A8AA2;
  outline: none;
}

.p-refined__body .searchandfilter select:-webkit-autofill {
  -webkit-transition: background-color 99999s;
  transition: background-color 99999s;
}

@media (min-width: 768px), print {
  .p-refined__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p-refined__item {
    width: 240px;
  }
  .p-refined__item + .p-refined__item {
    margin-top: 0;
    margin-left: 1.5rem;
  }
  .p-refined__body .searchandfilter ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top:0 !important;
    margin-bottom:0 !important;
  }
  .p-refined__body .searchandfilter li {
    width: 240px;
  }
  .p-refined__body .searchandfilter li:not(:first-child) {
    margin-top: 0 !important;
    margin-left: 1.5rem;
  }
}

/* タブ型メニュー
--------------------------------------------*/
.p-tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 30px -30px 60px;
  padding: 0 30px;
  border-bottom: 1px solid #B3B1AF;
}

.p-tab__item {
  width: 50%;
  max-width: 400px;
  margin-bottom: -1px;
}

.p-tab__txt {
  position: relative;
  display: inline-block;
  padding-bottom: 4px;
}

.p-tab__txt::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  border-top: 2px solid;
  display: none;
}

.p-tab__btn {
  display: block;
  width: 100%;
  padding: 20px 5px;
  border: 1px solid #B3B1AF;
  border-bottom: 0;
  background: #F1F0EF;
  color: #32312F;
  text-align: center;
  font-weight: bold;
}

.p-tab__btn.is-current {
  position: relative;
  z-index: 1;
  background: #ffffff;
  border-bottom: 1px solid #ffffff;
}

.p-tab__btn.is-current .p-tab__txt::after {
  display: block;
}

.p-tab__btn:hover {
  position: relative;
  z-index: 1;
  background: #ffffff;
}

.p-tab__btn:hover .p-tab__txt::after {
  display: block;
}

.p-tab__item:last-child .p-tab__btn {
  margin-left: -1px;
}

@media (min-width: 768px), print {
  .p-tab {
    margin: 30px calc(50% - 50vw) 60px;
  }
}

/* アコーディオンパネル
--------------------------------------------*/
.p-accordion {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.p-accordion__item {
  margin-top: 1.5rem;
}

.p-accordion__ttl {
  position: relative;
  padding: 1.5rem 1.5rem 1.5rem 4.5rem;
  border: 1px solid #B3B1AF;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: background-color 0.3s;
  -o-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.p-accordion__ttl:hover {
  background: #F1F0EF;
}

.p-accordion__ttl::before {
  position: absolute;
  left: 1.5rem;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(/assets/img/icon_c_arw.svg) 0 0/contain no-repeat;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  -o-transition: transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.p-accordion__ttl.is-open::before {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.p-accordion__body {
  margin-top: 1.5rem;
}

/* 回り込み画像ブロック
--------------------------------------------*/
.p-floatImage {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.p-floatImage::after {
  content: "";
  display: block;
  clear: both;
}

.p-floatImage__imgL, .p-floatImage__imgR {
  margin-bottom: 2rem;
}

.p-floatImage__imgL > *:last-child, .p-floatImage__imgR > *:last-child {
  margin-bottom: 0;
}

@media (min-width: 768px), print {
  .p-floatImage__imgL {
    float: left;
    width: 38.5%;
    margin-right: 3rem;
  }
  .p-floatImage__imgR {
    float: right;
    width: 38.5%;
    margin-left: 3rem;
  }
/* wordpressのalignright, alignleftの動作設定 */
  .alignleft {
    float:left;
    margin-right:3rem;
  }
  .alignright {
    float:right;
    margin-left:3rem;
  }
  .aligncenter {
    display: block;
    margin: 0 auto;
  }
}



/* 寄付ボタン（寄付で支える専用） */
.p-donateBtn {
  display: block;
  padding: 18px;
  border-radius: 6px;
  background: #CF121B;
  color: #ffffff;
  text-align: center;
}

.p-donateBtn::before {
  content: "";
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.5em;
  border-top: 2px solid;
  border-right: 2px solid;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.p-donateBtn._onetime {
  background: #D87F07;
}

.p-donateBtn:hover {
  text-decoration: none;
  opacity: 0.7;
}

/*-------------------------------------------
Utility
--------------------------------------------*/
/*----------------------------------------
	Utilities
----------------------------------------*/
/*width*/
.u-w50 {
  width: 50px;
}

.u-w60 {
  width: 60px;
}

.u-w70 {
  width: 70px;
}

.u-w80 {
  width: 80px;
}

.u-w90 {
  width: 90px;
}

.u-w100 {
  width: 100px;
}

.u-w110 {
  width: 110px;
}

.u-w120 {
  width: 120px;
}

.u-w130 {
  width: 130px;
}

.u-w140 {
  width: 140px;
}

.u-w150 {
  width: 150px;
}

.u-w160 {
  width: 160px;
}

.u-w170 {
  width: 170px;
}

.u-w180 {
  width: 180px;
}

.u-w190 {
  width: 190px;
}

.u-w200 {
  width: 200px;
}

.u-w250 {
  width: 250px;
}

.u-w300 {
  width: 300px;
}

.u-w350 {
  width: 350px;
}

.u-w400 {
  width: 400px;
}

.u-w450 {
  width: 450px;
}

.u-w500 {
  width: 500px;
}

.u-w10p {
  width: 10%;
}

.u-w20p {
  width: 20%;
}

.u-w30p {
  width: 30%;
}

.u-w40p {
  width: 40%;
}

.u-w50p {
  width: 50%;
}

.u-w60p {
  width: 60%;
}

.u-w70p {
  width: 70%;
}

.u-w80p {
  width: 80%;
}

.u-w90p {
  width: 90%;
}

.u-w100p {
  width: 100%;
}

@media (min-width: 768px), print {
  .u-pc-w10p {
    width: 10%;
  }
  .u-pc-w20p {
    width: 20%;
  }
  .u-pc-w30p {
    width: 30%;
  }
  .u-pc-w40p {
    width: 40%;
  }
  .u-pc-w50p {
    width: 50%;
  }
  .u-pc-w60p {
    width: 60%;
  }
  .u-pc-w70p {
    width: 70%;
  }
  .u-pc-w80p {
    width: 80%;
  }
  .u-pc-w90p {
    width: 90%;
  }
  .u-pc-w100p {
    width: 100%;
  }
}

/*margin*/
.u-mt0 {
  margin-top: 0 !important;
}

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

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

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

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

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

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

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

.u-mt60 {
  margin-top: 60px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mb0 {
  margin-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 768px), print {
  .u-mt_pc0 {
    margin-top: 0 !important;
  }
}

.u-rmt50 {
  margin-top: 50px !important;
}

@media (min-width: 768px), print {
  .u-rmt50 {
    margin-top: 80px !important;
  }
}

/*padding*/
.u-pt0 {
  padding-top: 0 !important;
}

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

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

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

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

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

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

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

.u-pt60 {
  padding-top: 60px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pt80 {
  padding-top: 80px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pb0 {
  padding-bottom: 0 !important;
}

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

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

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

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

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

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

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

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

.u-pb80 {
  padding-bottom: 80px !important;
}

.u-pb90 {
  padding-bottom: 90px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

.u-p05 {
  padding: 5px !important;
}

.u-p10 {
  padding: 10px !important;
}

.u-p20 {
  padding: 20px !important;
}

/*image*/
.u-img-full {
  max-width: none;
  width: 100%;
}

/*float*/
.u-fl {
  float: left;
}

.u-fr {
  float: right;
}

.u-clear {
  clear: both;
}

.u-clearfix::after {
  content: "";
  display: block;
  clear: both;
}


/*line-height*/
.u-lh2 {
  line-height: 2.0 !important;
}


/*width*/
.u-wd30p {
  width: 30%;
}

.u-wd50p {
  width: 50%;
}
.u-wd70p {
  width: 70%;
}
.u-mwd300 {
  max-width: 300px;
}
.u-mwd500 {
  max-width: 500px;
}

@media (min-width: 768px), print {
  .u-wd30p_pc {
  width: 30%;
}
  .u-wd50p_pc {
  width: 50%;
}
  .u-wd70p_pc {
    width: 70%;
  }
}



/*align-text*/
.u-ta__l {
  text-align: left !important;
}

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

.u-ta__r {
  text-align: right !important;
}

/*align-block*/
.u-block__l {
  float: none;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.u-block__c {
  float: none;
  margin-left: auto !important;
  margin-right: auto !important;
}

.u-block__r {
  float: none;
  margin-left: auto !important;
  margin-right: 0 !important;
}

/*font-size*/
.u-fz10 {
  font-size: 1.0rem !important;
}

.u-fz12 {
  font-size: 1.2rem !important;
}

.u-fz14 {
  font-size: 1.4rem !important;
}

.u-fz16 {
  font-size: 1.6rem !important;
}

.u-fz18 {
  font-size: 1.8rem !important;
}

.u-fz20 {
  font-size: 2.0rem !important;
}

.u-fz24 {
  font-size: 2.4rem !important;
}

.u-fz28 {
  font-size: 2.8rem !important;
}

.u-fz32 {
  font-size: 3.2rem !important;
}

.u-fz36 {
  font-size: 3.6rem !important;
}

.u-fz40 {
  font-size: 4.0rem !important;
}

.u-fz__smaller {
  font-size: smaller !important;
}

/*font-weight*/
.u-fw__bold {
  font-weight: bold !important;
}

.u-fw__normal {
  font-weight: normal !important;
}

/*text-color*/
.u-c__red {
  color: #CF121B !important;
}

.u-c__blue {
  color: #3A8AA2 !important;
}

.u-c__yellow {
  color: #F1D029 !important;
}

.u-c__gray {
  color: #807E7C !important;
}

.u-c__black {
  color: #32312F !important;
}

.u-c__white {
  color: #ffffff !important;
}

/*background-color*/
.u-bg__red {
  background-color: #CF121B !important;
  color: white;
}

.u-bg__red * {
  color: inherit !important;
}

.u-bg__red02 {
  background-color: #F7E5E6 !important;
}

.u-bg__blue {
  background-color: #3A8AA2 !important;
  color: white;
}

.u-bg__blue * {
  color: inherit !important;
}

.u-bg__blue02 {
  background-color: #E5F4F8 !important;
}

.u-bg__yellow {
  background-color: #F1D029 !important;
}

.u-bg__yellow02 {
  background-color: #F9EEB8 !important;
}

.u-bg__gray {
  background-color: #807E7C !important;
  color: white;
}

.u-bg__gray * {
  color: inherit !important;
}

.u-bg__gray02 {
  background-color: #F1F0EF !important;
}

.u-bg__black {
  background-color: #32312F !important;
  color: white;
}

.u-bg__black * {
  color: inherit !important;
}

/*display*/
.u-sp {
  display: block;
}

.u-pc {
  display: none;
}

.u-sp-inline {
  display: inline-block;
}

.u-pc-inline {
  display: none;
}

@media (min-width: 768px), print {
  .u-sp {
    display: none;
  }
  .u-pc {
    display: block;
  }
  .u-sp-inline {
    display: none;
  }
  .u-pc-inline {
    display: inline-block;
  }
}

.u-hidden {
  visibility: hidden;
}

/* for screen reader
ーーーーーーーーーーーーーーーーーーーーーーーー*/
.u-visually_hidden {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  margin: -1px;
}

/* for keybord
ーーーーーーーーーーーーーーーーーーーーーーーー*/
.skipLink {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  height: 0;
  overflow: hidden;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

.skipLink:active, .skipLink:focus {
  z-index: 100000;
  opacity: 1;
  overflow: visible;
  height: auto;
  font-size: 14px;
  font-size: 1.4rem;
  text-decoration: none;
  display: block;
  padding: 5px 10px;
  background: #3A8AA2;
  border-radius: 0 0 6px 6px;
  color: #ffffff;
}

/*-------------------------------------------
Animation
--------------------------------------------*/
/*----------------------------------------
	Animation
----------------------------------------*/
/*FadeIn_Quad_1
------------------------------*/
.js-effect {
  opacity: 0;
}

.js-effect.aniOn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.7s;
  animation-duration: 0.7s;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*-------------------------------------------
Vender
--------------------------------------------*/
/*----------------------------------------
	Slick Slider
----------------------------------------*/
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*arrow*/
.slick-arrow {
  overflow: hidden;
  position: absolute;
  z-index: 1;
  width: 60px;
  height: 0;
  padding-top: 60px;
  border-radius: 50%;
  background: rgba(50, 49, 47, 0.7);
  color: #ffffff;
}

.slick-arrow::before {
  position: absolute;
  left: 50%;
  top: 50%;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid;
  border-right: 2px solid;
}

.slick-arrow:hover {
  background: #32312f;
}

.slick-prev {
  left: 2.66667vw;
  top: 18.66667vw;
}

.slick-prev::before {
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
  -ms-transform: translate(-50%, -50%) rotate(-135deg);
  transform: translate(-50%, -50%) rotate(-135deg);
}

.slick-next {
  right: 2.66667vw;
  top: 18.66667vw;
}

.slick-next::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  -ms-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

@media (min-width: 768px), print {
  .slick-prev {
    left: 50px;
    top: 70px;
  }
  .slick-next {
    right: 50px;
    top: 70px;
  }
}

/*dots*/
.slick-dots {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.slick-dots li {
  margin: 0 10px;
  padding: 0;
}

.slick-dots li::before {
  display: none !important;
}

.slick-dots li + li {
  margin-top: 0 !important;
}

.slick-dots li.slick-active button {
  background: #807E7C;
}

.slick-dots button {
  overflow: hidden;
  width: 14px;
  height: 0;
  margin: 0;
  padding: 0;
  padding-top: 14px;
  border-radius: 50%;
  background: #DBD9D7;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto;
}

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  display: none;
  opacity: 0;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  height: 15px;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-y {
  display: none;
  opacity: 0;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute;
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6;
}

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 0.9;
}

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  background-color: #aaa;
  border-radius: 6px;
  -o-transition: background-color .2s linear, height .2s ease-in-out;
  transition: background-color .2s linear, height .2s ease-in-out;
  -webkit-transition: background-color .2s linear, height .2s ease-in-out;
  height: 6px;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__thumb-y {
  background-color: #aaa;
  border-radius: 6px;
  -o-transition: background-color .2s linear, width .2s ease-in-out;
  transition: background-color .2s linear, width .2s ease-in-out;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
  background-color: #999;
  height: 11px;
}

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 11px;
}

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}

@font-face {
  font-family: "icomoon";
  src: url("/assets/fonts/icomoon.ttf?il3tb6") format("truetype"), url("/assets/fonts/icomoon.woff?il3tb6") format("woff"), url("/assets/fonts/icomoon.svg?il3tb6#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="ico_"]:before, [class*=" ico_"]:before {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico_arw::before {
  content: "";
}

.ico_blank::before {
  content: "";
}

.ico_close::before {
  content: "";
}

.ico_fav::before {
  content: "";
}

.ico_note::before {
  content: "";
}

.ico_search::before {
  content: "";
}

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden;
}

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  opacity: 0;
}

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
  overflow: auto;
  opacity: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.modaal-wrapper * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
}

.modaal-wrapper .modaal-close {
  border: none;
  background: transparent;
  padding: 0;
  -webkit-appearance: none;
}

.modaal-wrapper.modaal-start_none {
  display: none;
  opacity: 1;
}

.modaal-wrapper.modaal-start_fade {
  opacity: 0;
}

.modaal-wrapper *[tabindex="0"] {
  outline: none !important;
}

.modaal-wrapper.modaal-fullscreen {
  overflow: hidden;
}

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%;
}

.modaal-fullscreen .modaal-outer-wrapper {
  display: block;
}

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px;
}

.modaal-fullscreen .modaal-inner-wrapper {
  padding: 0;
  display: block;
  vertical-align: top;
}

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0px;
  background: #fff;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto;
}

.modaal-container.is_loading {
  height: 100px;
  width: 100px;
  overflow: hidden;
}

.modaal-fullscreen .modaal-container {
  max-width: none;
  height: 100%;
  overflow: auto;
}

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modaal-close:focus, .modaal-close:hover {
  outline: none;
  background: #fff;
}

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

.modaal-close span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-close:before, .modaal-close:after {
  display: block;
  content: " ";
  position: absolute;
  top: 14px;
  left: 23px;
  width: 4px;
  height: 22px;
  border-radius: 4px;
  background: #fff;
  -webkit-transition: background 0.2s ease-in-out;
  -o-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

.modaal-close:before {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.modaal-close:after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.modaal-fullscreen .modaal-close {
  background: #afb7bc;
  right: 10px;
  top: 10px;
}

.modaal-content-container {
  padding: 30px;
}

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0;
}

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent;
}

.modaal-confirm-btn.modaal-ok {
  padding: 10px 15px;
  color: #fff;
  background: #555;
  border-radius: 3px;
  -webkit-transition: background 0.2s ease-in-out;
  -o-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

.modaal-confirm-btn.modaal-ok:hover {
  background: #2f2f2f;
}

.modaal-confirm-btn.modaal-cancel {
  text-decoration: underline;
}

.modaal-confirm-btn.modaal-cancel:hover {
  text-decoration: none;
  color: #2f2f2f;
}

@keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent;
}

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
  animation: instaReveal 1s linear forwards;
}

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px;
}

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%;
}

.modaal-gallery-wrap {
  position: relative;
  color: #fff;
}

.modaal-gallery-item {
  display: none;
}

.modaal-gallery-item img {
  display: block;
}

.modaal-gallery-item.is_active {
  display: block;
}

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff;
}

.modaal-gallery-label:focus {
  outline: none;
}

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modaal-gallery-control.is_hidden {
  opacity: 0;
  cursor: default;
}

.modaal-gallery-control:focus, .modaal-gallery-control:hover {
  outline: none;
  background: #fff;
}

.modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after {
  background: #afb7bc;
}

.modaal-gallery-control span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-gallery-control:before, .modaal-gallery-control:after {
  display: block;
  content: " ";
  position: absolute;
  top: 16px;
  left: 25px;
  width: 4px;
  height: 18px;
  border-radius: 4px;
  background: #fff;
  -webkit-transition: background 0.2s ease-in-out;
  -o-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out;
}

.modaal-gallery-control:before {
  margin: -5px 0 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.modaal-gallery-control:after {
  margin: 5px 0 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px;
}

.modaal-gallery-next-outer {
  right: 45px;
}

.modaal-gallery-prev:before, .modaal-gallery-prev:after {
  left: 22px;
}

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px;
}

.modaal-gallery-prev-outer {
  left: 45px;
}

.modaal-video-wrap {
  margin: auto 50px;
  position: relative;
}

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%;
}

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block;
}

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px;
  }
}

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    background: rgba(0, 0, 0, 0.7);
  }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    background: #fff;
  }
  .modaal-gallery-next {
    left: auto;
    right: 20px;
  }
  .modaal-gallery-prev {
    left: 20px;
    right: auto;
  }
}

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
}

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important;
  }
}

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .modaal-instagram iframe {
    width: 600px !important;
  }
}

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px;
  }
}

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important;
  }
}

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none;
  }
}

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  -webkit-transform: scale(0.25);
  -ms-transform: scale(0.25);
  transform: scale(0.25);
}

@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: .1;
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute;
}

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff;
}

.modaal-loading-spinner > div:nth-of-type(1) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(1) {
  -ms-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(2) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .12s;
  animation-delay: .12s;
}

.modaal-loading-spinner > div:nth-of-type(2) {
  -ms-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(3) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .25s;
  animation-delay: .25s;
}

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(3) {
  -ms-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(4) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .37s;
  animation-delay: .37s;
}

.modaal-loading-spinner > div:nth-of-type(4) {
  -ms-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(5) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .5s;
  animation-delay: .5s;
}

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(5) {
  -ms-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(6) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .62s;
  animation-delay: .62s;
}

.modaal-loading-spinner > div:nth-of-type(6) {
  -ms-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(7) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .75s;
  animation-delay: .75s;
}

.modaal-loading-spinner > div:nth-of-type(7) {
  -ms-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(8) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .87s;
  animation-delay: .87s;
}

.modaal-loading-spinner > div:nth-of-type(8) {
  -ms-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
}

/* JAR追加 */
/* ブロックエディタでの書式設定対応 */
.has-text-align-center {
  text-align: center;
}

.has-text-align-left {
  /*rtl:ignore*/
  text-align: left;
}

.has-text-align-right {
  /*rtl:ignore*/
  text-align: right;
}

/* youtubeレスポンシブ対応 */
.youtube {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 25px;
}

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

/* 寄付バナー掲載用 */
.banner {
  width: 100%;
  margin: 0;
}
.banner:hover {
  opacity:0.7;
  transition: 0.3s;
  translate: 1px 1px;
}
@media (min-width: 768px), print {
  .banner {
    width: 80%;
    margin: 0 10%;
  }  
}


hr.is-style-default {
  width:70%;
  margin:2em 15%;
}
hr.is-style-wide {
  width:100%;
  margin:2em 0;
}

/* 関連記事 */
.crp_related h3 {
	margin-top: 1rem;
}
.l-articleBody .crp_related ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li{
  height:auto;
  padding-left:0;
  clear:both;
}
.l-articleBody .crp_related ul:not([class*="c-"]):not([class^="p-"]):not([class*="l-"]):not([class*="md-"]) li::before {
  background: none;  
}
.crp_related ul li figure {
  width:80px;
  margin:0 10px 10px 0;
  float:left;
  clear:both;
}

/* Google Custom Search Engine */
#modal-search-ja table.gsc-search-box td.gsc-input {
  padding:0;
}
#modal-search-ja table.gsc-search-box td.gsc-input .gsc-input-box table{
  border: none;
}
#modal-search-ja table.gsc-search-box td.gsc-input .gsc-input-box td{
  border: none;
  padding:0;
}
#modal-search-ja table.gsc-search-box td.gsc-input .gsc-input-box td{
  padding:8px;
}
#modal-search-ja table.gsc-search-box td.gsc-search-button {
  padding:0 0 0 4px;
  border:none;
}
#modal-search-ja table.gsc-search-box td.gsc-search-button button{
  margin:0;
  padding: 18px 27px;
}

.l-gnav__search form.gsc-search-box table.gsc-search-box {
  margin-top: 0;
  border:none;
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td {
  padding:2px;
  border:none;
  margin: 0;
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td.gsc-input {
  width: calc(100% - 70px);
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td.gsc-input table.gsc-input {
  border:none;
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td.gsc-input table.gsc-input td.gsib_a {
  width:calc(100% - 20px);
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td.gsc-input table.gsc-input td.gsib_b {
  width: 20px;
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td.gsc-input table.gsc-input td.gsib_b .gscb_a{
  vertical-align: middle;
}
.l-gnav__search form.gsc-search-box table.gsc-search-box td.gsc-search-button {
  width:62px;
}
.l-gnav__search button {
  margin:0;
  padding: 0.5rem 0.2rem 0.4rem 0.2rem;
  width: 56px;
  height: 30px;
}

table.gsc-above-wrapper-area-container {
  margin-top: 0;
}

/* メルマガ登録フォーム */
#mc_embed_signup {padding-top: 2rem; padding-bottom:2rem; border:2px solid #999;}
#mc_embed_signup form#mc-embedded-subscribe-form {padding:0;}
#mc_embed_signup #mc_embed_signup_scroll h2 {margin:0;font-size:1.2em;}
#mc_embed_signup #mc_embed_signup_scroll p {font-size:0.9em; margin-top:1.2rem; margin-bottom:1.2rem;}
#mc_embed_signup div.mc-field-group {padding-bottom: 0;}
#mc_embed_signup div.mc-field-group input {float:left; width:18%; margin-right:3%;height:40px;padding:2px 4px;}
#mc_embed_signup div.mc-field-group input:first-child {width:34%;}
#mc_embed_signup div.mc-field-group input:last-child {margin-right:0;}
#mc_embed_signup input.button {clear:none;line-height:20px;}
div#mc_embed_signup div#mce-responses {padding:0;margin:0;width:100%;}
div#mc_embed_signup div.response {padding:0;margin:0;width:100%;}
div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {margin:0;padding:0;font-size:80%;float:left;width:18%;margin-right:3%;}
div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error[for="mce-EMAIL"] {width:34%;}
div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error[for="mce-EMAIL"]:before {content:"e-mail: ";}
div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error[for="mce-LNAME"]:before {content:"姓: ";}
div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error[for="mce-FNAME"]:before {content:"名: ";}

@media (max-width: 767px) {
  #mc_embed_signup div.mc-field-group input {width:48%; margin-right:0%;margin-bottom:1em;}	
  #mc_embed_signup div.mc-field-group input:first-child {width:100%;}
  #mc_embed_signup div.mc-field-group input:nth-child(2) {margin-right:4%}
  #mc_embed_signup div.mc-field-group input:nth-child(4) {width:100%;margin-right:0;}
  div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {
    float:none;width:auto;
  }
  div#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error[for="mce-EMAIL"] {width:auto;}
}

/* Icegram */
div.ig_action_bar .ig_headline {font-size: 1.3em;}
div.ig_action_bar .ig_message {font-size: 1.0em;}
div.ig_action_bar .ig_button, .ig_action_bar input[type=submit], .ig_action_bar input[type=button] {font-size: 1.2em;}
div.ig_action_bar.ig_hello.ig_container.ig_bottom {box-shadow:none;}

.ig_action_bar.ig_hello .ig_button, 
.ig_action_bar.ig_hello input[type=submit], 
.ig_action_bar.ig_hello input[type=button] {
  background-image: none;
}

/* wordpress embed */
.wp-block-embed__wrapper iframe {
  max-width:100%;
}


/* woredpress エディターCSS */
.is-layout-flex {display: flex;flex-wrap: wrap;}

/* wordpress download manager */
.w3eden .mb-2, .w3eden .my-2 {
  margin-bottom: 2.2rem!important;
}

@media screen and (max-width: 750px){
  .w3eden .mb-2, .w3eden .my-2 {
    margin-bottom: 1.8rem!important;
  }
}

.u-bd__gray {
  border:1px #807E7C solid;
}
figure.u-bd__gray {
  border:none;
}
figure.u-bd__gray img {
  border:1px #807E7C solid;
}


/* ニュースレター
ーーーーーーーーーーーーーーーーーーーーーーーー*/
body[class*="nl"] .l-articleBody h2 { 
  font-family: "Noto Serif JP", serif;
  color: black;
}


body[class*="nl"] .l-articleBody h3{
  padding-bottom:0;
  margin-bottom:0;
}
body[class*="nl"] .l-articleBody h3::after {
  content:none;
}


body[class*="nl"] .l-articleBody h4 {
  margin-top: 4rem;
}

body[class*="nl"] .l-articleBody h3 + h4 {
  margin-top: 2rem;
}


/* 印刷用 
ーーーーーーーーーーーーーーーーーーーーーーーー*/
@page {size:A4; margin:7mm;}
@media print{
  body {padding: 0mm; margin: 7mm;}
  header.l-header {position: relative;}
  header.l-header .l-header__inner {padding:0; height: 50px;}
  header .l-header__inner .l-hdFunction {display: none;}
  header h1.l-hdLogo {display: block;}
  header button {display: none;}
  header #gnav {display: none;}
  #main {margin: 0; font-size:10pt;}
  #main .l-breadcrumb .l-breadcrumb__list {padding-left: 1em;}
  #main .l-pageHeader {margin-bottom: 0;}
  #main .l-pageHeader--sm .l-container--lg {padding-top: 1rem;}
  #main .l-article header {max-width:100%; margin:2rem auto 1rem;}
  #main .l-article header h1.l-articleHeader__ttl {margin-bottom:1rem;}
  #main .l-article header ul.l-articleHeader__tag::before {content:"Tag: ";}
  #main .l-article header ul.l-articleHeader__tag::before {content:"Tag: ";}
  #main .l-article header ul.l-articleHeader__tag .c-tag {font-size:10pt;}
  #main .l-article header h1.l-articleHeader__ttl .l-articleHeader__ttl-main {font-size:14pt;}
  #main .l-article .l-articleBody {max-width:100%;}
  #main .l-article .l-articleBody h2 {margin: 2rem auto 1rem;font-size:1.8rem;}
  #main .l-article .l-articleBody h3 {margin: 2rem auto 0.5rem;font-size:1.8rem;}
  #main .l-article .l-articleBody h4 {font-size:1.8rem;}
  #main .l-article .p-shareBar {display: none;}
  .l-breadcrumb._bottom::after {content:"\00a9Japan Association for Refugees";}
  footer.l-footer {display: none;}
  #pageTop {display: none !important; }
  #icegram_messages_container {display: none;}
}