@charset "utf-8";

/*
Theme Name: TOKYO AIDS WEEKS (2026)
Theme URI: http://aidsweeks.tokyo
Author: TOKYO AIDS WEEKS
Author URI: http://aidsweeks.tokyo
Description:
Version: 2026.10
License:
License URI:
Tags:
*/

/* vars */

:root {
  --bksp: 20px;
  --bksp-x2: calc(var(--bksp) * 2);
  --bkmg: 4rem;
  --bkmg-x2: calc(var(--bkmg) * 2);
  --max-wid: 1240px;
  --max-wid-in: 1200px;
  --max-wid-out: 1600px;
  --clr-wh: rgb(255 255 255);
  --clr-bk: rgb(12 22 27);
  --clr-bk-17: rgb(12 22 27 / 17%);
  --clr-bk-8: rgb(12 22 27 / 8%);
  --clr-pk: rgb(248 145 182);
  --clr-pk-94: rgb(248 145 182 / 94%);
  --clr-pk-17: rgb(248 145 182 / 17%);
  --clr-bl: rgb(13 153 255);
  --clr-bl-17: rgb(13 153 255 / 17%);
  --fs-S: 0.75rem;
  --fs-MS: 0.875rem;
  --fs-M: 1rem;
  --fs-ML: 1.125rem;
  --fs-L: 1.25rem;
  --fs-2L: 1.5rem;
  --fs-3L: 1.75rem;
  --fs-4L: 2rem;
  --lh-S: 1.3;
  --lh-M: 1.5;
  --lh-L: 1.8;
  --bdrd: 50%;
  --bdrd-S: 1rem;
  --anim: .35s;
}

/* initialization */

body {
  margin: 0;
  padding: 1px 0 0;
  background-color: var(--clr-wh);
  font-size: var(--fs-M);
  line-height: 1;
  font-family: sans-serif;
  color: var(--clr-bk);
}
h1, h2, h3, h4 {line-height: var(--lh-S);}
p {line-height: var(--lh-M);}
ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
hr {display: none;}
.reset {clear: both;}

a:link, a:visited {
  color: var(--clr-bl);
  text-decoration: none;
}
a:hover, a:active {
  color: var(--clr-bk);
  text-decoration: underline;
}
a:hover > img,
#header h1 a:hover {opacity: 0.8;}

a.btn,
button, input[type="submit"] {
  appearance: none;
  display: inline-block;
  padding: 0.88em 2em;
  background-color: var(--clr-bl);
  border: 2px solid var(--clr-bl);
  text-decoration: none;
  font-size: var(--fs-ML);
  line-height: 1;
  color: var(--clr-wh);
}
a.btn:hover,
button:hover, input[type="submit"]:hover {
  background-color: rgb(225 248 255);
  color: var(--clr-bl);
}

a.btn,
button, input[type="submit"],
#navi li,
#title h1, #title > span,
#copyright,
time,
div.pickup_event div.meta::before,
div.pickup_event div.datetime,
body.home section h1,
#home_about_logo span.hash,
div.events span.thumb::before,
div.events span.datetime,
article.event_detial h1,
div.event div.meta dt,
#archive_index li a {
  font-family: 'LINE Seed JP', sans-serif;
  font-weight: 700;
  font-style: normal;
}

/* block elements */

.content,
#header, #navi,
#contents,
#footer {
  margin: 0 auto;
  max-width: var(--max-wid);
}

/* header elements */

#header, #navi {
  position: sticky;
  z-index: 100;
  top: var(--bksp);
  width: 100%;
}
#header h1 {
  position: absolute;
  left: var(--bksp);
  margin: 0;
  width: 100%;
  max-width: var(--max-wid-in);
  height: 80px;
  font-size: 0;
  color: transparent;
}
#header h1 a {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  width: 382px;
  height: 80px;
  background: var(--clr-pk-94) url(images/logo_h_wh.webp) center no-repeat;
  background-size: 342px 60px;
}

/* navi elements */

#navi h1 {display: none;}
#navi ul {
  position: absolute;
  right: var(--bksp);
  top: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-right: var(--bksp);
  width: calc(100% - (382px + var(--bksp-x2) + var(--bksp) + 8px));
  height: 80px;
  background-color: var(--clr-pk-94);
}
#navi li {display: inline;}
#navi li:not(:last-child)::after {
  content: '|';
  margin: 0 1em;
  font-weight: bold;
  color: var(--clr-wh);
}
#navi li a {
  display: inline-block;
  margin: 0;
  font-size: var(--fs-L);
  text-decoration: none;
  color: var(--clr-wh);
}
#navi li a:hover {color: var(--clr-bk);}

/* footer elements */

.page_top {display: none;}

#copyright {
  display: block;
  margin: 0 auto;
  padding: var(--bksp) 0;
  max-width: var(--max-wid-in);
  background-color: var(--clr-pk);
  text-align: center;
  font-size: var(--fs-MS);
  color: var(--clr-wh);
}

/* common elements */

#title h1,
#title > span {
  display: block;
  margin: 200px var(--bksp) var(--bkmg-x2);
  text-align: center;
  font-size: var(--fs-4L);
  color: var(--clr-pk);
}

article#main > h1 {
  margin: var(--bkmg-x2) var(--bksp);
  padding: var(--bksp);
  border: 0.5rem solid var(--clr-pk);
  font-size: var(--fs-3L);
  color: var(--clr-bk);
}

nav.paginate {margin: var(--bkmg-x2) 0;}
nav.paginate ul {
  margin: 0 var(--bksp);
  text-align: center;
}
nav.paginate ul::before,
nav.paginate ul::after {
  content: '';
  display: block;
  margin: var(--bksp) 0;
  width: 100%;
  height: 0.5rem;
  background-color: var(--clr-pk);
}
nav.paginate li {
  display: inline-block;
  margin: 0 var(--bksp);
}

/* body elements */

.body h1, .body h2, .body h3, .body h4 {margin: 1.5em var(--bksp);}
.body h1,
.body h2 {
  font-size: var(--fs-3L);
  color: var(--clr-pk);
}
.body h3 {
  padding: 0.75em;
  background-color: var(--clr-pk-17);
}
.body p {
  margin: 1em var(--bksp);
  line-height: var(--lh-L);
}

.body table {
  margin: 2rem var(--bksp);
  border-collapse: collapse;
  line-height: var(--lh-M);
}
.body tbody th, .body tbody td {
  padding: 0.75em;
  border-top: 1px solid var(--clr-bk-17);
  border-bottom: 1px solid var(--clr-bk-17);
}
.body tbody th {text-align: left;}

.body ul, .body ol {
  margin: 1.5rem var(--bksp);
  padding: 0;
}
.body ul {list-style-type: disc;}
.body li {
  margin: 0.75rem 0;
  margin-left: 2em;
  line-height: var(--lh-M);
}

.body div.box {
  margin: 2rem var(--bksp);
  background-color: var(--clr-bk-8);
  overflow: hidden;
}

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

div.edit_post_link {margin: var(--bkmg-x2) var(--bksp);}
body.home div.edit_post_link {margin: 1rem 0;}

/* home */

#home_pickup {
  position: relative;
  z-index: 0;
  margin: 200px 0 var(--bkmg);
}
div.slide_content {
  position: relative;
  margin: 0 var(--bksp);
  background-color: var(--clr-pk);
  overflow: hidden;
}
div.slide_content::before {
  content: '';
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 40px;
  width: 50%;
  height: calc(100% - 80px);
  background: url(images/logo_v_bk.webp) center no-repeat;
  background-size: auto 100%;
  mix-blend-mode: soft-light;
  opacity: 33%;
}
div.slides {
  position: relative;
  z-index: 1;
  margin: var(--bksp-x2);
}
div.pickup_event a {
  display: flex;
  align-items: center;
  gap: var(--bksp-x2);
  color: var(--clr-bk);
}
div.pickup_event a:hover {
  text-decoration: none;
  color: var(--clr-wh);
}
div.pickup_event a > div {flex: 1;}
div.pickup_event div.thumb {position: relative;}
div.pickup_event img {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
div.pickup_event div.meta::before {
  display: inline-block;
  margin-bottom: 0.5rem;
}
div.pickup_event h4 {
  margin: 0;
  padding-right: 1em;
  font-size: var(--fs-3L);
}
div.pickup_event a:hover h4 {text-decoration: underline;}
div.pickup_event div.datetime {
  margin-top: 0.5rem;
  font-size: var(--fs-2L);
  font-weight: bold;
  color: var(--clr-bk);
}

.slick-list {overflow: hidden;}
.slick-arrow {
  appearance: none;
  position: absolute;
  z-index: 1;
  bottom: -30px;
  padding: 0;
  width: 16px;
  height: 16px;
  background-color: transparent;
  border: none;
  border-radius: var(--bdrd-S);
  font-size: 0;
}
.slick-arrow:hover {background-color: transparent;}
.slick-prev {left: calc(50% - 80px);}
.slick-next {right: calc(50% - 80px);}
.slick-arrow::before {
  font-size: 16px;
  line-height: 1;
  color: rgb(255 255 255 / 50%);
}
.slick-arrow:hover::before {color: rgb(255 255 255 / 100%);}
.slick-prev::before {content: '\25C0';}
.slick-next::before {content: '\25B6';}
.slick-dots {
  position: absolute;
  z-index: 0;
  padding: 12px 0;
  width: 100%;
  text-align: center;
  font-size: 0;
}
.slick-dots li {display: inline;}
.slick-dots button {
  appearance: none;
  margin: 0 4px;
  padding: 0;
  width: 16px;
  height: 16px;
  background-color: rgb(255 255 255 / 50%);
  border: none;
  border-radius: var(--bdrd-S);
  font-size: 0;
  color: transparent;
  cursor: pointer;
  transition: var(--anim) width;
}
.slick-dots button:hover {background-color: rgb(255 255 255 / 100%);}
.slick-dots li.slick-active button {
  width: 48px;
  background-color: rgb(0 0 0 / 33%);
  cursor: default;
}

body.home section h1 {color: var(--clr-rd);}
#home_events h1 {
  margin: var(--bkmg) var(--bksp);
  text-align: center;
  color: var(--clr-pk);
}

#home_about {margin: var(--bkmg-x2) 0;}
#navi + hr + #home_about {margin-top: var(--bkmg-x2);}
#home_about div.content {
  display: flex;
  align-items: center;
  max-width: calc(var(--max-wid) - var(--bksp-x2));
  background-color: var(--clr-pk);
}
#home_about div.content > div {flex: 1;}
#home_about_logo {
  padding: var(--bksp-x2);
  text-align: center;
}
#home_about_logo span.hash {
  display: block;
  margin-top: 2rem;
  font-size: var(--fs-L);
}
#home_about_logo span.hash::before {content: '#';}
#home_message {padding: var(--bksp-x2);}
#home_message h1 {
  margin-bottom: var(--bksp-x2);
  text-align: center;
}
#home_message p {
  font-size: var(--fs-ML);
  line-height: var(--lh-L);
}

#home_news {margin: var(--bkmg-x2) 0;}
#home_news h1 {
  margin: var(--bksp);
  text-align: center;
  color: var(--clr-pk);
}

#home_uequ {margin: var(--bkmg-x2) 0;}
#home_uequ div.content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#home_uequ h1 {
  margin: 0 var(--bksp) var(--bksp-x2);
  width: 100%;
  text-align: center;
  color: var(--clr-pk);
}
#home_uequ h1 + a {
  margin: 0 var(--bksp);
  width: 33%;
}
#home_uequ h1 + a img {
  width: 100%;
  height: auto;
}
#home_uequ p {
  flex: 1;
  margin: 0 var(--bksp);
  line-height: var(--lh-L);
}

#home_sns div.content {
  display: flex;
  flex-wrap: wrap;
  max-width: calc(var(--max-wid) - var(--bksp-x2));
}
#home_sns div.content::before,
#home_sns div.content::after {
  content: '';
  display: block;
  width: 100%;
  height: 0.5rem;
  background-color: var(--clr-pk);
}
#home_sns div.sns {
  flex: 1;
  padding: var(--bksp-x2) 0;
  text-align: center;
}

#home_rel_01 {
  margin: var(--bkmg-x2) var(--bksp) var(--bkmg);
  padding: var(--bksp);
  background-color: var(--clr-pk-17);
  text-align: center;
}
#home_rel_01 li {
  display: inline-block;
  margin: 5px;
}

div.share_btns {
  margin: var(--bkmg) var(--bksp) var(--bkmg-x2);
  padding: var(--bksp);
  background-color: var(--clr-pk-17);
  text-align: center;
}
div.share_btns > * {vertical-align: top;}

/* events */

div.events ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--bksp-x2) var(--bksp);
  margin: var(--bkmg) var(--bksp);
}
div.events li a,
div.events li a > span {display: block;}
div.events li a {
  position: relative;
  height: 100%;
}
div.events li a:hover {
  text-decoration: none;
  color: var(--clr-pk);
}
div.events span.thumb {
  position: relative;
  overflow: hidden;
  font-size: 0;
}
div.events span.thumb img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
div.pickup_event div.meta::before,
div.events span.thumb::before {
  padding: 0.35em 0.5em;
  background-color: var(--clr-pk);
  border: 1px solid var(--clr-wh);
  font-size: var(--fs-MS);
  color: var(--clr-wh);
}
div.events span.thumb::before {
  position: absolute;
  left: 0.5rem;
  top: 0.5rem;
}
div.events li.online span.thumb::before,
div.pickup_event.online div.meta::before,
article.event_detial.online h1::after {content: 'オンライン';}
div.events li.hybrid span.thumb::before,
div.pickup_event.hybrid div.meta::before,
article.event_detial.hybrid h1::after {content: 'ハイブリッド開催';}
div.events li.archived span.thumb::before,
div.pickup_event.archived div.meta::before,
article.event_detial.archived h1::after {content: 'アーカイブ';}
div.events a:hover span.thumb::after,
div.pickup_event a:hover div.thumb::after {
  content: '';
  position: absolute;
  inset: 0;
  background-color: var(--clr-pk-17);
  mix-blend-mode: multiply;
  border: 0.5rem solid var(--clr-pk);
}
div.events span.datetime {
  position: absolute;
  right: 0.5rem;
  translate: 0 calc(-100% - 0.5rem);
  padding: 0.35em 0.5em;
  background-color: rgb(0 0 0 / 72%);
  font-size: var(--fs-L);
  font-weight: bold;
  color: var(--clr-wh);
}
div.events span.title {
  margin-top: 0.5rem;
  font-size: var(--fs-ML);
  line-height: var(--lh-S);
  font-weight: bold;
}
div.events hr {
  display: block;
  margin: var(--bkmg) var(--bksp);
  border: nonoe;
  border-top: 2px solid var(--clr-pk-17);
}
div.events h4 {
  margin: var(--bkmg) var(--bksp);
  text-align: center;
  color: var(--clr-pk);
}

/* event detail */

body.single-event article#main > h1 {margin-bottom: var(--bkmg);}
article.event_detial h1 {
  display: flex;
  align-items: center;
  gap: var(--bksp-x2);
}
article.event_detial h1 > span {flex: 1;}
article.event_detial h1::after {
  padding: 0.5rem 0.75rem;
  background-color: var(--clr-pk);
  font-size: var(--fs-ML);
  line-height: 1;
  color: var(--clr-wh);
  white-space: nowrap;
}
div.event div.thumb {
  margin: var(--bksp-x2) var(--bksp);
  padding: var(--bksp-x2);
  background-color: var(--clr-pk);
  text-align: center;
  font-size: 0;
}
div.event div.thumb img {
  width: auto;
  max-width: 640px;
  height: auto;
  max-height: 640px;
}
div.event div.meta dl {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(2, auto);
  grid-template-columns: repeat(2, minmax(33%, auto));
  margin: var(--bksp-x2) var(--bksp);
  line-height: var(--lh-M);
}
div.event dl > div.date,
div.event dl > div.fee {
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--clr-bk-17);
}
div.event dl > div.venue,
div.event dl > div.guest {padding-top: 0.75rem;}
div.event dl > div.date,
div.event dl > div.venue {padding-right: 1rem;}
div.event dl > div.fee,
div.event dl > div.guest {padding-left: 1rem;}
div.event div.meta dt,
div.event div.meta dd {
  margin: 0;
  padding: 0;
}
div.event div.meta dt {color: var(--clr-pk);}
div.event div.meta dd {font-size: var(--fs-ML);}
div.event div.online {
  margin: 5rem var(--bksp);
  padding: var(--bksp);
  background-color: var(--clr-pk-17);
  text-align: center;
}
div.event div.desc {
  margin: var(--bkmg) auto;
  width: 66%;
}
div.event div.sponsor {
  margin: var(--bkmg-x2) var(--bksp);
  padding: var(--bksp);
  background-color: var(--clr-pk-17);
  text-align: center;
  line-height: var(--lh-M);
}

/* news */

div.news_list,
div.headline {margin: var(--bkmg) 0;}
div.news_list ul,
div.headline ul {
  margin: 0 var(--bksp);
  border-top: 0.5rem solid var(--clr-pk);
  border-bottom: 0.5rem solid var(--clr-pk);
}
div.news_list li:not(:last-child),
div.headline li:not(:last-child) {
  border-bottom: 2px solid var(--clr-pk-17);
}
div.news_list li a,
div.headline li a {
  display: flex;
  align-items: center;
  padding: 1rem 0;
  text-decoration: none;
}
div.news_list li time,
div.headline li time {
  width: 12em;
  text-align: center;
  font-weight: 400;
  color: var(--clr-bk);
}
div.news_list li span.title,
div.headline li span.title {
  flex: 1;
  font-size: var(--fs-L);
  font-weight: bold;
  line-height: var(--lh-S);
}
div.news_list li a:hover span.title,
div.headline li a:hover span.title {text-decoration: underline;}

/* archives */

#archive_index ul {
  margin: 3rem 0;
  list-style-type: none;
}
#archive_index li {
  margin: 1rem var(--bksp);
  line-height: 1;
}
#archive_index li a {
  display: block;
  padding: 1em;
  background: var(--clr-pk-17) center no-repeat;
  background-size: cover;
  background-blend-mode: multiply;
  text-align: center;
  font-size: var(--fs-3L);
  text-decoration: none;
  color: var(--clr-wh);
  text-shadow: 0 0 0.25em var(--clr-bl), 0 0 0.25em var(--clr-bl);
}
#archive_index li a:hover {background-color: var(--clr-bl-17);}
#archive_index li a[href*="2025"] {background-image: url(/admin/wp-content/themes/2026.10/images/archive_bg_2025.jpg);}
#archive_index li a[href*="2024"] {background-image: url(/admin/wp-content/themes/2025.10/images/archive_bg_2024.jpg);}
#archive_index li a[href*="2023"] {background-image: url(/admin/wp-content/themes/2024.09/images/archive_bg_2023.jpg);}
#archive_index li a[href*="2022"] {background-image: url(/admin/wp-content/themes/2023.10/images/archive_bg_2022.jpg);}
#archive_index li a[href*="2021"] {background-image: url(/admin/wp-content/themes/2022.10/images/archive_bg_2021.jpg);}
#archive_index li a[href*="2020"] {background-image: url(/admin/wp-content/themes/2020.10/images/archive_bg_2020.jpg);}
#archive_index li a[href*="2019"] {background-image: url(/admin/wp-content/themes/2020.10/images/archive_bg_2019.jpg);}
#archive_index li a[href*="2018"] {background-image: url(/admin/wp-content/themes/2018.11/images/home_bg_event.jpg);}
#archive_index li a[href*="2017"] {
  background-image: url(/admin/wp-content/themes/2017.05/images/bg_event_2017.jpg);
  background-position: center top 10%;
}
#archive_index li a[href*="2016"] {background-image: url(/admin/wp-content/themes/2024.09/images/archive_bg_2016.jpg);}
#archive_index li a[href*="2015"] {background-image: url(/admin/wp-content/themes/2024.09/images/archive_bg_2015.jpg);}

/* inquiry */

.wpcf7 {
  margin: var(--bkmg-x2) auto;
  width: 66%;
}
.wpcf7-form label {
  display: flex;
  gap: 0 var(--bksp-x2);
}
.wpcf7-form span.label {
  width: 10em;
  font-weight: bold;
}
.wpcf7-form span.wpcf7-form-control-wrap {flex: 1;}
.wpcf7-text,
.wpcf7-textarea {
  appearance: none;
  outline: none;
  box-sizing: border-box;
  padding: 0.5em;
  width: 100%;
  background-color:rgb(0 0 0 / 3%);
  border: 1px solid rgb(0 0 0 / 72%);
  font-size: var(--fs-ML);
}
.wpcf7-text:focus,
.wpcf7-textarea:focus {
  background-color: rgb(0 160 210 / 5%);
  border-color: var(--clr-bk);
}
div.btn {
  position: relative;
  margin: var(--bkmg) var(--bksp);
  text-align: center;
}
.wpcf7-submit {min-width: 33%;}
.wpcf7-spinner {
  position: absolute;
  top: 50%;
  translate: 0.5rem -50%;
  margin: 0;
}
.wpcf7 form .wpcf7-response-output {
  margin: var(--bkmg) var(--bksp);
  padding: 1em;
  line-height: var(--lh-M);
}

@media only screen and (max-width:768px) {

:root {
  --bksp: 5%;
  --bkmg: 2rem;
}

/* initialization */

body {
  padding: 0;
  font-size: 100%;
  font-family: 'Roboto', sans-serif;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

a.btn,
button, input[type="submit"] {padding: 0.75em 1em;}

/* header elements */

#header {position: initial;}
#header h1 {
  position: relative;
  z-index: 999;
  left: initial;
  top: initial;
  margin: 1rem var(--bksp);
  width: initial;
  height: initial;
  background-color: var(--clr-pk-94);
  text-align: center;
}
#header h1::after {content: none;}
#header h1 a {
  position: initial;
  margin: 10px;
  width: 228px;
  height: 40px;
  background-color: transparent;
  background-size: 100%;
}

/* navi elements */

#navi {position: initial;}
#navi h1 {
  display: block;
  position: fixed;
  z-index: 1001;
  right: var(--bksp);
  top: 1rem;
  width: 60px;
  height: 60px;
  background: var(--clr-pk-94) url(images/ic_menu.webp) center no-repeat;
  background-size: 100%;
  font-size: 0;
  color: transparent;
}
body.nav #navi h1 {background-image: url(images/ic_close.webp);}
#navi ul {
  position: fixed;
  z-index: 1000;
  left: 0;
  right: initial;
  top: -100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(0 0 0 / 0%);
  transition: var(--anim) background-color;
}
body.nav #navi ul {
  top: 0;
  background-color: rgb(255 255 255 / 100%);
}
#navi ul::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 1rem;
  background-color: rgb(0 0 0 / 0%);
  transition: var(--anim) background-color;
}
body.nav #navi ul::before {background-color: var(--clr-pk-94);}
#navi li {
  display: block;
  margin: 0 1rem;
}
#navi li::after {content: none !important;}
#navi li a {
  display: block;
  margin: 0;
  padding: 1em;
  text-align: center;
  font-size: var(--fs-L);
}
#navi li a:hover {color: var(--clr-bk);}

/* footer elements */

.page_top {display: none;}

#copyright {margin: var(--bkmg-x2) var(--bksp) 1rem;}

/* common elements */

#title h1,
#title > span {
  margin: var(--bkmg-x2) var(--bksp);
  font-size: var(--fs-3L);
}

article#main > h1 {
  margin: var(--bkmg-x2) var(--bksp);
  padding: 0.5rem;
  font-size: var(--fs-2L);
}

nav.paginate {margin: var(--bkmg-x2) 0;}

/* body elements */

.body table {
  margin: 2rem var(--bksp);
  max-width: 90%;
}

div.edit_post_link {margin: var(--bkmg-x2) var(--bksp);}

/* home */

#home_pickup {margin: 5rem 0;}
div.slide_content {
  margin: 0;
  padding-bottom: 30px;
  border-radius: initial;
}
div.slide_content::before {
  left: initial;
  top: initial;
  inset: 0;
  width: initial;
  height: initial;
  background-size: auto 72%;
}
div.slides {margin: 1rem 0;}
div.pickup_event {margin: 0 1rem;}
div.pickup_event a {display: block;}
div.pickup_event div.thumb {margin-bottom: 0.5rem;}
div.pickup_event img {width: 100%;}
div.pickup_event div.meta::before {margin: 0;}
div.pickup_event h4 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  margin: 0.5rem 0;
  padding: 0;
  max-height: 3.9em;
  font-size: var(--fs-L);
}
div.pickup_event div.datetime {font-size: var(--fs-ML);}

#home_events h1 {
  margin: var(--bkmg-x2) var(--bksp);
  font-size: var(--fs-3L);
}

#home_about {margin: var(--bkmg-x2) 0;}
#navi + hr + #home_about {margin-top: var(--bkmg-x2);}
#home_about div.content {
  display: block;
  margin: 0 var(--bksp);
  overflow: hidden;
}
#home_about_logo {
  margin: var(--bkmg) var(--bksp);
  padding: 0;
}
#home_about_logo img {
  width: 72%;
  max-width: 240px;
  height: auto;
}
#home_message {
  margin: var(--bkmg) var(--bksp);
  padding: 0;
}
#home_message h1 {font-size: var(--fs-3L);}
#home_message p {
  font-size: var(--fs-M);
  line-height: var(--lh-M);
}

#home_news {margin: var(--bkmg-x2) 0;}
#home_news h1 {
  margin: var(--bkmg) var(--bksp) 1em;
  font-size: var(--fs-3L);
}

#home_uequ {margin: var(--bkmg-x2) 0;}
#home_uequ div.content {display: block;}
#home_uequ h1 {
  margin: var(--bkmg) var(--bksp) 1em;
  width: initial;
  font-size: var(--fs-3L);
}
#home_uequ h1 + a {
  display: block;
  margin: 1rem var(--bksp);
  width: initial;
  text-align: center;
}
#home_uequ h1 + a img {
  width: 360px;
  max-width: 100%;
}
#home_uequ p {
  margin: 1rem var(--bksp);
  line-height: var(--lh-M);
}

#home_sns div.content {
  display: block;
  margin: var(--bkmg-x2) var(--bksp);
}
#home_sns div.sns {
  margin: 1rem 0;
  padding: 0;
}

#home_rel_01 {
  margin: var(--bkmg-x2) var(--bksp) 1rem;
  padding: 1rem;
}

div.share_btns {
  margin: 1rem var(--bksp) var(--bkmg-x2);
  padding: 1rem;
}

/* events */

div.events ul {
  display: block;
  margin: var(--bkmg-x2) 0;
}
div.events li {margin: var(--bkmg) var(--bksp);}
div.events li a {height: initial;}

/* event detail */

body.single-event article#main > h1 {margin-bottom: var(--bkmg);}
article.event_detial h1 {
  flex-direction: column-reverse;
  align-items: start;
  gap: 0.5rem 0;
}

div.event div.thumb {
  margin: var(--bkmg) 0;
  padding: 1rem 0;
  border-radius: initial;
}
div.event div.thumb img {
  max-width: 90%;
  height: auto;
  max-height: 480px;
}
div.event div.meta dl {
  display: block;
  margin: var(--bkmg) 0;
}
div.event dl > div {
  margin: 0 var(--bksp);
  padding: 0.75rem 0 !important;
  border-bottom: 1px solid var(--clr-bk-17) !important;
}
div.event dl > div:last-child {border: none !important;}
div.event div.online {
  margin: var(--bkmg-x2) 0;
  padding: 1rem 0;
}
div.event div.online iframe {
  max-width: 90%;
  height: auto;
  aspect-ratio: 16 / 9;
}
div.event div.desc {
  margin: var(--bkmg-x2) 0;
  width: initial;
}
div.event div.sponsor {
  margin: var(--bkmg-x2) var(--bksp);
  padding: 1rem;
}

/* news */

div.news_list ul,
div.headline ul {margin: 0 var(--bksp);}
div.news_list li a,
div.headline li a {display: block;}
div.news_list li time,
div.headline li time {
  display: inline-block;
  margin-bottom: 0.35em;
  width: initial;
}
div.news_list li span.title,
div.headline li span.title {
  display: block;
  font-size: var(--fs-ML);
}

#post_content table,
#post_content tbody {display: block;}
#post_content thead {display: none;}
#post_content th,
#post_content td {
  padding: 0;
  display: inline-block;
}
.body tbody tr {
  display: block;
  margin: 1rem 0;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--clr-bk-17);
}
.body tbody tr:last-child {border: none;}
.body tbody td {border: none;}

/* archives */

/* inquiry */

.wpcf7 {
  margin: var(--bkmg-x2) 0;
  width: initial;
}
.wpcf7-form label {display: block;}
.wpcf7-form span.label {
  display: block;
  margin-bottom: 0.25rem;
  width: initial;
}
div.btn {
  margin: var(--bkmg) var(--bksp);
  text-align: center;
}
.wpcf7-submit {min-width: 66%;}
.wpcf7 form .wpcf7-response-output {
  margin: var(--bkmg) var(--bksp);
  padding: 1em;
}

}
