@charset "UTF-8";
/*-------
--------- 共通 -------
-------*/
main.subp {
  letter-spacing: var(--l-space-100);
}
.cover {
  background-position: left top;
  background-size: cover;
  height: 480px;
  width: 100dvw;
  position: relative;
  color: var(--white);
}
.cover_title {
  text-align: center;
}
.cover_bg {
  width: 100%;
  height: 100%;
  background-image: url(/img/02_lower/00_common/cover_info.png);
  background-size: cover;
}
.cover_bg.bg_img-a {
  background-image: url(/img/02_lower/00_common/cover_toKnow.png);
}
.cover_bg.bg_img-b {
  background-image: url(/img/02_lower/00_common/cover_toAsk.png);
}
.cover_bg.bg_img-c {
  background-image: url(/img/02_lower/00_common/cover_toJoin.png);
  background-position: bottom;
}
.cover_bg.bg_img-d {
  background-image: url(/img/02_lower/00_common/cover_toUse.png);
}
.cover_bg.bg_img-e {
  background-image: url(/img/02_lower/00_common/cover_recruit-and-dls.png);
  background-position: center;
}
.cover_inner {
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cover_inner h3 {
  margin-bottom: 16px;
}
.cover_inner img.cover_icon {
  width: 80px;
  margin-bottom: 16px;
}
/*-------
--------- コンテンツ：共通パーツ -------
-------*/
/* --- ラッパー・コンテナ・ボックスまわり --- */
.subp .section_wrap {
  background-color: var(--white);
  margin-top: 120px;
  padding: 0 48px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.subp .section_wrap.no-header {
  padding: 40px 48px;
}
.subp .section_container {
  line-height: 1.7;
  margin: 24px 0 40px;
  width: 100%;
  border-radius: 8px;
  background-image: linear-gradient(to right, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px), linear-gradient(to right, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px),
    linear-gradient(to bottom, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px), linear-gradient(to bottom, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px);
  background-size: 15px 2px, 15px 2px, 2px 15px, 2px 15px;
  background-position: left top, left bottom, left top, right top;
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
}
.subp .section_container.plus-padding {
  padding: 40px 24px;
  width: auto;
}
.subp .section_container.no-frame {
  background-image: none;
}
.subp .section_wrap.no-header .section_container.no-frame {
  margin-bottom: 0;
}
.subp .container_inner,
.subp .box_inner {
  padding: 24px 24px 40px;
  display: flex;
  flex-direction: column;
}
.subp .container_inner.with-frame {
  background-image: linear-gradient(to right, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px), linear-gradient(to right, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px),
    linear-gradient(to bottom, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px), linear-gradient(to bottom, transparent, transparent 10px, var(--orange) 10px, var(--orange) 15px);
  background-size: 15px 2px, 15px 2px, 2px 15px, 2px 15px;
  background-position: left top, left bottom, left top, right top;
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
}
.subp .box_inner {
  align-items: center;
  padding: 24px 0 40px;
}
.subp .section_container .flexbox {
  display: flex;
  justify-content: space-between;
  margin: 24px auto;
  padding: 24px;
}
.subp .section_container .flexbox.rl-margin {
  display: flex;
  justify-content: space-between;
  margin: 0 24px;
  padding: 24px;
}
.subp .section_container .flexbox_item {
  width: 44%;
}
.subp .section_container .flexbox-column {
  display: flex;
  flex-direction: column;
}
.subp .section_container .flexbox-column .flexbox_item {
  width: auto;
}
.subp .section_container .flexbox-column .flexbox_item .box_inner {
  flex-direction: row;
  padding: 40px 24px;
}

/* --- 見出しまわり --- */
.subp .section_header-l {
  background-color: var(--orange);
  border-radius: 8px;
  font-size: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem);
  font-weight: 500;
  position: relative;
  padding: 16px 40px 16px 56px;
  top: -20px;
  width: calc(100% + 48px);
  line-height: 1.6;
}
.subp .section_header-l:before {
  content: "";
  display: inline-block;
  width: 54px;
  height: 4px;
  background-color: var(--white);
  position: absolute;
  top: 20px;
  left: -20px;
}
.subp .section_header-ls {
  font-size: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem);
  font-weight: 500;
  position: relative;
  display: inline-block;
  padding: 4px 32px;
  margin: 16px auto;
}
.subp .section_header-ls:before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: -16px;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background: var(--blue);
}
.subp .section_header-ls:after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  bottom: -16px;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background: var(--orange);
}
.subp .container_header-uline {
  font-size: clamp(1.125rem, 1.1rem + 0.13vw, 1.25rem);
  font-weight: 500;
  position: relative;
  padding-bottom: 16px;
  width: 100%;
}
.subp .container_header-uline:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 3.2px;
  background-color: var(--orange);
  position: absolute;
  bottom: 0;
  left: 0;
}
.subp .contents_header-fukidashi {
  position: relative;
  background: #f5efde;
  padding: 16px 0 16px 56px;
  border-radius: 8px;
  font-size: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem);
  font-weight: 500;
  margin: 0 -24px;
}
.subp .contents_header-fukidashi:after {
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  border-top-width: 20px;
  border-bottom-width: 20px;
  border-left-width: 10px;
  border-right-width: 10px;
  margin-left: -10px;
  border-top-color: #f5efde;
  top: 100%;
  left: 12%;
}
.subp .contents_header-l {
  font-size: clamp(1.125rem, 1.1rem + 0.13vw, 1.25rem);
  border-radius: 8px;
  padding: 12px 0 12px 44px;
  position: relative;
}
.subp .contents_header-l:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--white);
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  left: 16px;
  margin-right: 24px;
}

.subp .header_bg-bbl {
  background-color: var(--blue);
}
.subp .header_bg-be {
  background-color: var(--base-beige);
}
.subp .header_bg-pk {
  background-color: var(--accent-pink);
}
.subp .header_bg-bl {
  background-color: var(--accent-blue);
}
.subp .header_bg-yw {
  background-color: var(--accent-yellow);
}
.subp .header_bg-gr {
  background-color: var(--accent-green);
}

.subp .contents_header-s {
  font-size: clamp(1.125rem, 1.1rem + 0.13vw, 1.25rem);
  border-radius: 8px;
  padding: 12px 0 12px 44px;
  position: relative;
  text-align: center;
}
.subp .contents_header-s:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--white);
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  left: 16px;
  margin-right: 24px;
}
.subp .contents_header-s.no-dot {
  padding: 12px 0 12px;
}
.subp .contents_header-s.no-dot:before {
  display: none;
}
.contents_ccopy {
  padding: 40px 24px 0;
  text-align: center;
}
.contents_ccopy.with-banzai {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}
.contents_ccopy.with-banzai::before,
.contents_ccopy.with-banzai::after {
  content: "";
  width: 2.4px;
  height: 18px;
  background-color: var(--orange);
  position: absolute;
}
.contents_ccopy.with-banzai::before {
  transform: rotate(-35deg);
  left: 0;
  bottom: 0;
}
.contents_ccopy.with-banzai::after {
  transform: rotate(35deg);
  right: 8px;
  bottom: 0;
}
.t_align-center {
  text-align: center;
}

/* --- 特有フォントまわり --- */
.subp .section_container .font_accent {
  font-size: clamp(1.25rem, 1.2rem + 0.25vw, 1.5rem);
  font-weight: 500;
  color: var(--orange);
  line-height: 1.4;
}
/* --- 追加マージン --- */
.tp-margin {
  margin-top: 40px;
}
.tp-margin-24 {
  margin-top: 24px;
}
.btm-margin {
  margin-bottom: 40px;
}
.rl-margin {
  margin-right: 24px;
  margin-left: 24px;
}
/* --- その他 --- */
.align_self-start {
  align-self: flex-start;
}
.dot-line {
  border-bottom: dotted 4.8px var(--orange);
}

/* --- ダウンロードファイル関連 --- */
a[download$=".pdf"] {
  padding-right: 32px;
  background: url(/img/03_common/icon_pdf.png) right center/1.4em auto no-repeat;
}
a[download$=".xls"] {
  padding-right: 32px;
  background: url(/img/03_common/icon_xls.png) right center/1.4em auto no-repeat;
}
a[download$=".xlsx"] {
  padding-right: 32px;
  background: url(/img/03_common/icon_xlsx.png) right center/1.4em auto no-repeat;
}
a[download$=".pdf"]:hover,
a[download$=".xls"]:hover,
a[download$=".xlsx"]:hover {
  opacity: 0.56;
}
.subp li.document_file {
  position: relative;
  margin-left: 16px;
  margin-bottom: 16px;
  padding-left: 16px;
}
.subp li.document_file::before {
  content: "";
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  left: -16px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--orange);
  pointer-events: none;
}
.subp li.document_file a {
  text-decoration: underline;
}

/*-------
--------- archive-new-info.php 新着情報一覧 -------
-------*/
.dropdown-box {
  display: block;
  margin-left: auto;
  width: fit-content;
}
select {
  padding: 8px;
  border-radius: 8px;
  border-color: var(--blue);
  color: var(--sub-font);
  letter-spacing: 0.1em;
  margin-top: 4px;
  font-family: "Outfit", Arial, “NotoSansJP”, sans-serif;
}
.subp.archive_new-info ul.new-info_list {
  padding: 0 24px;
}
.subp.archive_new-info .new-info_list li {
  padding: 24px 0;
  border-bottom: 1px solid var(--blue);
}
.subp.archive_new-info .new-info_list a:hover {
  opacity: 0.6;
}
.subp.archive_new-info .new-info_list .new-info_date {
  margin-bottom: 8px;
}
/* ページネーション */
.subp.archive_new-info nav.navigation.pagination {
  text-align: center;
  margin-bottom: 40px;
}
.subp.archive_new-info .nav-links .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.subp.archive_new-info .nav-links a.page-numbers,
.subp.archive_new-info .nav-links .current,
.subp.archive_new-info .nav-links a.prev,
.subp.archive_new-info .nav-links a.next,
.subp.archive_new-info .nav-links .dots {
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  background: #fff;
  color: var(--orange);
  border-radius: 50%;
  margin-right: 20px;
  font-size: 13px;
  border: 1px solid var(--orange);
}
.subp.archive_new-info .nav-links a.page-numbers:hover {
  color: #fff;
  background-color: var(--orange);
  border-color: var(--orange);
  border-radius: 50%;
}
.subp.archive_new-info .nav-links .current {
  background: var(--blue);
  border: 1px solid var(--blue);
  color: #fff;
  padding: 0;
}
.subp.archive_new-info .nav-links a.prev,
.subp.archive_new-info .nav-links a.next {
  border: 1px solid var(--orange);
  color: var(--orange);
  position: relative;
}
.subp.archive_new-info .nav-links a.prev {
  margin-right: 32px;
}
.subp.archive_new-info .nav-links a.next {
  margin-right: 0;
  margin-left: 16px;
}
.subp.archive_new-info .nav-links .next::before,
.subp.archive_new-info .nav-links .prev::after {
  content: "";
  display: inline-block;
  width: 0.5px;
  height: 32px;
  background-color: var(--blue);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.subp.archive_new-info .nav-links .next::before {
  left: -10px;
}
.subp.archive_new-info .nav-links .prev::after {
  right: -10px;
}
.subp.archive_new-info .nav-links .dots {
  background: transparent;
  border: none;
}
/*-------
--------- single-new-info.php 新着情報個別ページ -------
-------*/
.article_header-title {
  padding: 16px 0;
  margin-bottom: 24px;
}
.subp.single_new-info .single_bottom_nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 40px 0;
}
.subp.single_new-info .single_bottom_nav_back a {
  background-color: var(--blue);
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  font-weight: 500;
  padding: 8px 24px;
}
.subp.single_new-info .single_bottom_nav_back a:hover {
  color: var(--white);
}
.subp.single_new-info .article_sentence a {
  text-decoration: underline;
}

.article_sentence {
  line-height: 1.6;
}
.article_content ul {
  padding: 1em;
  margin: 1em;
  list-style: disc;
}
.article_content p {
  margin-bottom: 16px;
}
/*-------
--------- page-about.php 社協のこと―概要 -------
-------*/
.subp.p_about .grid-gallery {
  margin-top: 80px;
}
.subp.p_about .section_wrap.no-header {
  position: relative;
  z-index: 2;
  margin-top: -12.5%;
}
/* 当会のあゆみ */

.timeline_item {
  width: 100%;
  position: relative;
  border-left: 1px solid var(--blue);
  min-height: 100px;
}
.timeline_item.several-rows {
  min-height: 152px;
}
.timeline_item::before {
  content: "●";
  position: absolute;
  left: -0.55em;
  top: -4px;
  font-size: 8px;
  color: var(--orange);
}
.timeline_content {
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 24px;
  padding-left: 16px;
  display: flex;
  align-items: center;
  position: absolute;
  top: 16%;
  transform: translateY(-50%);
  width: 100%;
}
.timeline_textcontainer.align-start {
  display: flex;
  align-items: flex-start;
}
.timeline_textcontainer.align-start.plus-pT {
  padding-top: 24px;
}
.timeline_item.several-rows .timeline_textcontainer.align-start.plus-pT {
  padding-top: 24px;
}
.timeline_item.several-rows.add-height_TAB .timeline_textcontainer.align-start {
  padding-top: 48px;
}
.timeline_textcontainer {
  display: flex;
  align-items: center;
}
.timeline_year {
  margin-right: 40px;
  color: var(--blue);
  font-size: clamp(1.375rem, 1.25rem + 0.63vw, 2rem);
  font-weight: 700;
  width: 9%;
}
.timeline_year.opacity-0 {
  opacity: 0;
}
.timeline_item.opacity-0::before {
  color: transparent;
}
.timeline_y-month {
  font-size: clamp(0.75rem, 0.7rem + 0.25vw, 1rem);
  margin-right: 32px;
  min-width: 100px;
}
.timeline_description {
  font-size: clamp(0.75rem, 0.7rem + 0.25vw, 1rem);
}

/*-------
--------- page-publication.php 広報しあわせ-------
-------*/
.subp.p_publication .container_inner.list-of-documents.no-padding_btm {
  padding-bottom: 0;
}
.subp.p_publication li.document_file {
  margin: 24px 24px 0 24px;
}
.subp.p_publication .flexbox.no-padding_top {
  padding: 0 24px 24px;
}
.subp.p_publication a span.span_nowrap {
  text-decoration: underline;
}
img.icon_in_p {
  display: inline-block;
  vertical-align: text-bottom;
  width: 18px;
}
img.icon_in_a {
  width: 32px;
}
.subp.p_publication .section_container .flexbox .flexbox_inner {
  width: 48%;
}
.subp.p_publication .document_file {
  margin-bottom: 24px;
}
.subp.p_publication .document_file p {
  position: relative;
  padding: 24px 24px 24px 16px;
  margin-left: 16px;
}
.subp.p_publication .document_file p::before {
  content: "";
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  left: -16px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--blue);
  pointer-events: none;
}
.subp.p_publication .ul_files.files_shiawase {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fill, minmax(50px, 1fr));
}
.subp.p_publication .ul_files.files_shiawase a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: underline;
  font-size: 14px;
}
.subp.p_publication .p_u_d-file {
  text-indent: 2rem;
  margin: 8px 0 24px 0;
}
/*-------
--------- page-info-disclosure.php 情報公開-------
-------*/

/*-------
--------- page-related-orgs.php 関連団体-------
-------*/
.subp.p_related-orgs .section_container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/*-------
--------- page-asks.php 各種相談－生活上の困りごと-------
-------*/
.subp.p_asks .flexbox_item {
  width: 30%;
}
.subp.p_asks .contents_header-s {
  padding: 12px 0 12px 0px;
}

/*-------
--------- page-for-self-reliance.php 人権を守る支援―生活自立支援-------
-------*/
.three-dots {
  display: inline-block;
  position: relative;
  width: 4px;
  height: 28px;
  padding: 8px 0;
}
.three-dots .dot,
.three-dots .dot::before,
.three-dots .dot::after {
  display: inline-block;
  position: absolute;
  border-radius: 50%;
  width: 4px;
  height: 4px;
  background-color: var(--blue);
}
.three-dots .dot {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.three-dots .dot::before,
.three-dots .dot::after {
  content: "";
}
.three-dots .dot::before {
  top: -8px;
}
.three-dots .dot::after {
  top: 8px;
}
.subp .section_container .flexbox-column .flexbox_item .box_inner .numbering {
  position: relative;
  padding: 0;
  font-size: clamp(2rem, 1.8rem + 1vw, 3rem);
  font-weight: 600;
  color: var(--blue);
  padding: 0 24px 32px 12px;
  border-right: var(--blue) 0.5px solid;
  border-bottom: var(--blue) 0.5px solid;
  margin-right: 24px;
}
.numbering img.numbering_accent {
  position: absolute;
  left: -6px;
  width: auto;
}
.inner_plus-after {
  position: relative;
  margin: auto 0;
}
.inner_plus-after::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border: solid transparent;
  border-top-color: var(--orange);
  position: absolute;
  border-top-width: 16px;
  border-bottom-width: 16px;
  border-left-width: 10px;
  border-right-width: 10px;
  margin-left: -10px;
  top: calc(100% + 26px);
  transform: translateX(-50%);
  left: 16px;
}
.subp.p_for-sr .flexbox-column .inner_plus-after.no-after::after {
  display: none;
}
/*-------
--------- page-conservatorship.php 人権を守る支援―成年後見制度-------
-------*/

/*-------
--------- page-for-disabled-persons.php 障がい者支援 -------
-------*/
.subp.p_for-dp .section_container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
/*-------
--------- page-volunteer.php ボランティア -------
-------*/
img.volunteer-gather {
  width: 125%;
  margin: -16px -40px;
}
.container_hoken {
  position: relative;
}
img.anshin-anzen {
  position: absolute;
  left: -24px;
  bottom: -24px;
  width: 9.6vw;
  max-width: 120px;
  min-width: 80px;
}
/*-------
--------- page-kifu-kizou.php 寄付・寄贈 -------
-------*/
.kinds-of-bokin .contents_header-s.no-dot.header_bg-be {
  display: inline-block;
  padding: 12px 40px;
  width: fit-content;
  align-self: center;
}
.subp .section_container .kinds-of-bokin .flexbox {
  justify-content: center;
  padding: 0;
  font-size: clamp(0.875rem, 0.825rem + 0.25vw, 1.125rem);
}
.kinds-of-bokin .flexbox span {
  padding: 0 16px;
  margin-bottom: 16px;
}
.container_inner.with-frame.shakyo-members {
  padding: 0;
}
.subp.p_kifu-kizou .flexbox_text {
  display: flex;
  align-items: baseline;
  justify-content: space-around;
  max-width: 220px;
}
.subp.p_kifu-kizou .flexbox_text span {
  display: inline-block;
  white-space: nowrap;
}
/*-------
--------- page-ikiiki-salon.php いきいきサロン -------
-------*/
.subp .container_inner.less-padding_bottom {
  padding: 24px 24px 0;
}
.subp.p_ikiiki-salon .box_inner {
  align-items: flex-start;
  padding: 24px 0;
}
.subp.p_ikiiki-salon .box_inner p {
  padding-bottom: 4px;
}
.salon_area {
  margin-bottom: 40px;
}
/*-------
--------- page-shisetsu.php 施設利用 -------
-------*/
.subp.p_shisetsu table {
  border-spacing: 0;
  border-collapse: separate;
  margin: 0 auto;
}
.subp.p_shisetsu table.reservation-window {
  margin-top: 24px;
}
.subp.p_shisetsu table td {
  width: 140px;
  padding: 10px 12px;
  background: var(--white);
  border-top: 0.5px solid var(--blue);
  border-left: 0.5px solid var(--blue);
  vertical-align: middle;
}
.subp.p_shisetsu table td.td_wider {
  display: block;
  width: 100%;
  min-width: 180px;
}
.subp.p_shisetsu table a {
  text-decoration: underline;
  padding-right: 24px;
}
.subp.p_shisetsu table td:last-child {
  border-right: 0.5px solid var(--blue);
}
.subp.p_shisetsu table tr:last-child td {
  border-bottom: 0.5px solid var(--blue);
}
.subp.p_shisetsu table tr:first-child :first-child {
  border-top-left-radius: 8px;
}
.subp.p_shisetsu table tr:first-child :last-child {
  border-top-right-radius: 8px;
}
.subp.p_shisetsu table tr:last-child :first-child {
  border-bottom-left-radius: 8px;
}
.subp.p_shisetsu table tr:last-child :last-child {
  border-bottom-right-radius: 8px;
}
.subp .section_container .flexbox.container_innerbox {
  padding: 0;
}
.subp.p_shisetsu .section_container .flexbox.container_innerbox {
  width: 100%;
}
.subp.p_shisetsu .shisetsu_details {
  margin: unset;
}
.subp.p_shisetsu .flexbox_inner-left {
  width: 50%;
}
.subp.p_shisetsu .flexbox_inner-right {
  width: 46%;
}
.subp img.img-innerbox {
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
/*-------
--------- page-rental-wheelchair.php 職員募集 -------
-------*/
.subp img.img-innerbox.img_full {
  margin-bottom: 16px;
}
.flexbox_item.item_senior-car {
  margin: 0 auto;
}
/*-------
--------- page-recruit.php 職員募集 -------
-------*/
.subp.p_recruit li.recruitment-details {
  position: relative;
  margin-left: 16px;
  margin-bottom: 16px;
  padding-left: 16px;
}
.subp.p_recruit li.recruitment-details::before {
  content: "";
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  left: -16px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--orange);
  pointer-events: none;
}
.subp.p_recruit li.recruitment-details a {
  text-decoration: underline;
}
/* ----------------------------------- */
/* ---------- メディアクエリ --------- */
/* ----------------------------------- */
@media screen and (max-width: 1024px) {
  .subp .section_container .flexbox {
    flex-direction: row;
  }
  /* archive-new-info.php */
  .subp.archive_new-info ul.new-info_list {
    padding: 0;
    margin: 0 0 40px;
  }
  /* page-about.php */
  .timeline_content {
    flex-direction: column;
    align-items: flex-start;
    top: 25%;
  }
  .timeline_item.several-rows .timeline_content {
    top: 32%;
  }
  .timeline_item.several-rows {
    height: auto;
  }
  .timeline_textcontainer.align-start,
  .timeline_item.several-rows .timeline_textcontainer.align-start,
  .timeline_textcontainer.align-start.plus-pT,
  .timeline_item.several-rows.add-height_TAB .timeline_textcontainer.align-start {
    padding-top: 0;
  }
  .timeline_content.u1000_pt-24 {
    padding-top: 24px;
  }
  .timeline_year.opacity-0 {
    display: none;
  }
  /* page-publication.php */
  .subp.p_publication li.document_file {
    margin: 0 0 0 16px;
  }
  .subp.p_publication .document_file p {
    padding: 0 0 0 16px;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 820px) {
  .u820_pt-24 {
    padding-top: 24px;
  }
}
@media screen and (max-width: 768px) {
  .cover_bg {
    background-image: url(/img/02_lower/00_common/cover_info_u768.jpg);
  }
  .cover_bg.bg_img-a {
    background-image: url(/img/02_lower/00_common/cover_toKnow_u768.jpg);
  }
  .cover_bg.bg_img-b {
    background-image: url(/img/02_lower/00_common/cover_toAsk_u768.jpg);
  }
  .cover_bg.bg_img-c {
    background-image: url(/img/02_lower/00_common/cover_toJoin_u768.jpg);
  }
  .cover_bg.bg_img-d {
    background-image: url(/img/02_lower/00_common/cover_toUse_u768.jpg);
  }
  .cover_bg.bg_img-e {
    background-image: url(/img/02_lower/00_common/cover_recruit-and-dls_u768.jpg);
  }
  .subp .contents_header-fukidashi {
    padding: 16px 0 16px 24px;
  }
  .subp .section_container .flexbox {
    flex-direction: column;
    width: auto;
  }
  .subp .section_container .flexbox_item {
    width: 100%;
  }
  .subp li.document_file a,
  .subp.p_recruit li.recruitment-details a {
    display: inline;
  }
  .subp li.document_file::before,
  .subp.p_recruit li.recruitment-details::before {
    top: 12px;
  }
  a[download$=".pdf"] {
    padding-right: 16px;
    background: url(/img/03_common/icon_pdf.png) right center/1em auto no-repeat;
  }
  a[download$=".xls"] {
    padding-right: 16px;
    background: url(/img/03_common/icon_xls.png) right center/1em auto no-repeat;
  }
  a[download$=".xlsx"] {
    padding-right: 16px;
    background: url(/img/03_common/icon_xlsx.png) right center/1em auto no-repeat;
  }

  /* page-about.php */
  .timeline {
    margin: 0 -24px;
  }
  .timeline_item.several-rows {
    min-height: 136px;
  }
  .timeline_item.several-rows.add-height_TAB {
    min-height: 240px;
  }
  /* page-publication.php */
  .subp.p_publication .section_container .flexbox {
    flex-direction: row;
  }
  .subp.p_publication .ul_files.files_shiawase {
    margin-left: 0;
  }
  .subp.p_publication .container_inner.list-of-documents.no-padding_btm div {
    display: inline-block;
    line-height: 1.1;
    margin: 8px 0;
  }
  /* page-shisetsu.php */
  .subp.p_shisetsu .flexbox_inner-left {
    width: auto;
    margin-bottom: 16px;
  }
  .subp.p_shisetsu .flexbox_inner-right {
    width: auto;
  }

  /* page-ikiiki-salon.php */
  .attention {
    margin-bottom: 24px;
  }

  /* page-kifu-kizou.php */
  .subp .section_container .kinds-of-bokin .flexbox {
    align-items: center;
  }
  .kinds-of-bokin .flexbox span {
    margin-bottom: 8px;
  }

  /* page-renatal-wheelchair.php */
  /* page-renatal.php */
  .subp.p_rental-wchair .section_container .flexbox,
  .subp.p_rental .section_container .flexbox {
    margin: 0 auto;
  }
}
@media screen and (max-width: 548px) {
  main.subp {
    width: 88%;
    font-size: smaller;
  }
  .subp .section_wrap {
    margin-top: 80px;
    padding: 0 32px 0;
  }
  .subp .section_header-l:before {
    width: 48px;
    left: -16px;
  }
  /* page-about.php */
  .timeline {
    margin: 0 -16px 0 -8px;
  }
  .timeline_content {
    top: 12%;
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .timeline_content.u548-top25 {
    top: 25%;
  }
  .timeline_year {
    margin-right: 16px;
    font-size: 18px;
  }
  .align-start_SP {
    display: flex;
    align-items: flex-start;
    padding-top: 0;
  }
  .timeline_item.several-rows {
    min-height: 160px;
  }
  .timeline_item.several-rows.add-height_TAB {
    min-height: 220px;
  }
  .timeline_y-month {
    margin-right: 16px;
  }
  .timeline_description {
    font-size: 13px;
  }
  /* page-publication.php */
  .subp.p_publication .section_container .flexbox {
    flex-direction: column;
  }
  .subp.p_publication .section_container .flexbox_item {
    width: 100%;
  }
  .subp.p_publication .flexbox.no-padding_top {
    align-items: center;
    gap: 16px;
  }
  .subp.p_publication .flexbox.no-padding_top .flexbox_inner {
    width: 88%;
  }
  .ul_files.files_shiawase {
    font-size: 12px;
  }
  img.icon_in_a {
    width: 18px;
  }
}
@media screen and (max-width: 500px) {
  .timeline_content.u1000_pt-24 {
    padding-top: 40px;
  }
  .u500-top25 {
    top: 25%;
  }
}
@media screen and (max-width: 430px) {
  .subp .section_header-l {
    padding: 16px 16px 16px 48px;
    font-size: 1.125rem;
    line-height: 1.4;
  }
  .subp .section_header-l:before {
    height: 3.2px;
  }
  .subp .section_header-ls {
    padding: 4px 16px;
    line-height: 1.4;
  }
  .subp .contents_header-s {
    line-height: 1.4;
  }
  .subp .section_container.no-frame {
    margin: 16px 0 32px;
  }
  .subp .section_container .flexbox {
    margin: 0;
  }
  .subp .container_inner,
  .subp .box_inner {
    padding: 24px 16px;
  }
  .subp .section_container .flexbox.rl-margin .box_inner,
  .subp .section_container .flexbox.flex-wrap .box_inner {
    padding: 24px 8px;
  }
  .subp .container_inner.rl-margin {
    margin: 0 8px;
  }
  .subp .container_inner.less-padding_bottom {
    padding: 24px 8px 0;
  }
  .subp.p_ikiiki-salon .tp-margin-24 {
    margin-top: 0;
  }

  /* page-about.php */
  .timeline_item.several-rows {
    min-height: 248px;
  }
  .timeline_item.several-rows.add-height_TAB {
    min-height: 250px;
  }

  .timeline_item.u430_mh {
    min-height: 160px;
  }
  .u430-top25 {
    top: 25%;
  }
  .timeline_item.u390_several-rows .timeline_content.u548-top25.uSP-rvtp {
    top: 34%;
  }
  /* page-publicaiton.php */
  .subp.p_publication .container_inner.list-of-documents {
    padding: 24px 8px 40px 16px;
  }
  /* page-related-orgs.php */
  .subp.p_related-orgs .section_container.no-frame {
    margin: 16px 0 16px;
  }
  /* page-for-self-reliance.php */
  .subp .section_container .flexbox-column .flexbox_item .box_inner {
    align-items: flex-start;
  }
  .subp .section_container .flexbox-column .flexbox_item .box_inner .numbering {
    padding: 0 16px 16px 12px;
  }
  /* page-conservatorship.php */
  .subp .section_container.plus-padding {
    padding: 24px 16px;
    margin: 24px 0 24px;
  }
  .contents_ccopy {
    padding: 24px 16px 0;
  }
  .subp .section_container .flexbox.rl-margin {
    margin: 0;
  }
  /* page-kifu-kizou.php */
  .subp .section_container .kinds-of-bokin .flexbox {
    margin: 24px 0;
  }
  /* page-shisetsu.php */
  .subp .section_container .flexbox.container_innerbox.btm-margin_u430 {
    margin-bottom: 16px;
  }
  /* page-renatal-wheelchair.php */
  /* page-renatal.php */
  .subp.p_rental-wchair .section_container .flexbox,
  .subp.p_rental .section_container .flexbox {
    padding: 0;
  }
}
@media screen and (max-width: 390px) {
  .cover_inner img.cover_icon {
    width: 60px;
  }
  .subp .section_wrap {
    margin-top: 64px;
    padding: 0 16px 0;
  }
  .subp .section_wrap.no-header {
    padding: 32px 24px;
  }
  .subp .section_header-l {
    width: 100%;
  }
  .subp .contents_header-fukidashi {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
    line-height: 1.4;
    font-size: 1.125rem;
  }

  /* page-about.php */
  .timeline {
    margin: 0;
  }
  .timeline_y-month {
    min-width: 88px;
    margin-right: 12px;
  }
  .timeline_item.several-rows,
  .timeline_item.u390_several-rows {
    min-height: 120px;
  }

  .u390-top20 {
    top: 20%;
  }
  .timeline_item.several-rows.opacity-0 {
    min-height: 240px;
  }
  .timeline_item.u390_several-rows .timeline_content.u548-top25 {
    top: 30%;
  }

  /* page-publication.php */
  .subp li.document_file,
  .subp.p_publication .document_file p {
    padding-left: 8px;
  }
  /* page-related-orgs.php */
  .subp.p_related-orgs .container_inner {
    padding: 24px 8px;
  }

  /* page-for-self-reliance.php */
  .subp .section_container .flexbox-column .flexbox_item .box_inner {
    padding: 24px 16px;
  }

  /* page-volunteer.php */
  .subp .section_container .flexbox_item.vol-gather {
    display: flex;
    justify-content: center;
    margin-top: 24px;
  }
  .section_container.container_hoken {
    margin: 0 0 40px;
  }
  img.anshin-anzen {
    bottom: -40px;
  }
}
@media screen and (max-width: 375px) {
  .timeline_item.u390_several-rows .timeline_content.u548-top25.uSP-rvtp {
    top: 38%;
  }
  .u375-top20 {
    top: 20%;
  }
}
@media screen and (max-width: 333px) {
  .timeline_content.u548-top25.u333-top34 {
    top: 34%;
  }
  .u333-top24 {
    top: 24%;
  }
  .timeline_item.u390_several-rows .timeline_content.u548-top25.uSP-rvtp {
    top: 42%;
  }
}
@media screen and (max-width: 320px) {
  .timeline_item.several-rows.opacity-0 {
    min-height: 280px;
  }
  .u320-top24 {
    top: 24%;
  }
  .u320-top34 {
    top: 34%;
  }
  .timeline_item.several-rows.add-height_TAB {
    min-height: 300px;
  }
}
@media screen and (max-width: 300px) {
  table.reservation-window td {
    min-height: 50px;
  }
  .subp.p_shisetsu table td {
    padding: 4px;
  }
}
