/* _setting CSS */
/* ___________________PC layout */
@media screen and (min-width: 781px) {
  #archive {
    padding-top: 70px;
  }
  #archive .event_list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px 20px;
  }
  #archive .event_list .event_item {
    min-width: 0;
    border: 1px solid #5EACA6;
    border-radius: 4px;
    background: #fff;
    overflow: hidden;
  }
  #archive .event_list .event_item > a {
    display: flex;
    height: 100%;
    flex-direction: column;
  }
  #archive .event_list .event_item > a:hover .post_image img {
    scale: 1.1;
  }
  #archive .event_list .event_item .post_image {
    height: 160px;
    overflow: hidden;
    background: #d9d9d9;
  }
  #archive .event_list .event_item .post_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.3s ease;
  }
  #archive .event_list .event_item .event_item_body {
    display: flex;
    min-height: 184px;
    padding: 22px 25px 18px;
    flex: 1;
    flex-direction: column;
  }
  #archive .event_list .event_item h3 {
    color: #5EACA6;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
  }
  #archive .event_list .event_item .event_item_excerpt {
    margin-top: 4px;
    color: #1E3D3B;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  #archive .event_list .event_item time {
    display: block;
    margin-top: auto;
    color: #6A7E7C;
    font-family: "Barlow", sans-serif;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: right;
  }
  #archive .post_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    margin: 10px 0 30px;
  }
  #archive .post_tags span,
  #archive .post_tags a {
    color: #9c836c;
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.55;
  }
  #archive .posts_empty {
    padding: 80px 0;
    color: #6A7E7C;
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: center;
  }
  .post_single {
    padding-top: 60px;
  }
  .post_single .post_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    margin: 10px 0 30px;
  }
  .post_single .post_tags span,
  .post_single .post_tags a {
    color: #9c836c;
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.55;
  }
  .post_single #breadcrumb {
    justify-content: flex-start;
    padding: 0;
    margin-top: 0;
  }
  .post_single .single_layout {
    display: grid;
    grid-template-columns: 700px 240px;
    gap: 60px;
    padding-top: 80px;
  }
  .post_single .single_header time {
    display: block;
    margin-bottom: 14px;
    color: #6A7E7C;
    font-family: "Barlow", sans-serif;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .post_single .single_header h2 {
    color: #5EACA6;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .post_single .single_eyecatch {
    width: 100%;
    height: 400px;
    margin-top: 30px;
    overflow: hidden;
    background: #d9d9d9;
  }
  .post_single .single_eyecatch img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .post_single .single_content {
    margin-top: 30px;
    color: #1E3D3B;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .post_single .single_content > * + * {
    margin-top: 24px;
  }
  .post_single .single_content > :first-child {
    margin-top: 0;
  }
  .post_single .single_content h1,
  .post_single .single_content h2,
  .post_single .single_content h3,
  .post_single .single_content h4,
  .post_single .single_content h5,
  .post_single .single_content h6 {
    color: #1E3D3B;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .post_single .single_content h1 {
    margin: 48px 0 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #5EACA6;
    font-size: 2.8rem;
    line-height: 1.5;
  }
  .post_single .single_content h2 {
    margin: 48px 0 20px;
    padding: 10px 14px;
    border-left: 4px solid #5EACA6;
    background: #EDF3F2;
    font-size: 2.4rem;
    line-height: 1.5;
  }
  .post_single .single_content h3 {
    margin: 40px 0 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid #5EACA6;
    font-size: 2rem;
    line-height: 1.6;
  }
  .post_single .single_content h4 {
    margin: 32px 0 14px;
    color: #5EACA6;
    font-size: 1.8rem;
    line-height: 1.6;
  }
  .post_single .single_content h5 {
    margin: 28px 0 12px;
    font-size: 1.6rem;
    line-height: 1.7;
  }
  .post_single .single_content h6 {
    margin: 24px 0 10px;
    color: #6A7E7C;
    font-size: 1.6rem;
    line-height: 1.7;
  }
  .post_single .single_content p {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
  }
  .post_single .single_content p::after {
    display: block;
    clear: both;
    content: "";
  }
  .post_single .single_content strong,
  .post_single .single_content b {
    color: #1E3D3B;
    font-weight: 700;
  }
  .post_single .single_content em,
  .post_single .single_content i {
    font-style: italic;
  }
  .post_single .single_content ul,
  .post_single .single_content ol {
    margin: 24px 0;
    padding: 18px 20px 18px 44px;
    border-radius: 4px;
    background: #EDF3F2;
  }
  .post_single .single_content ul {
    list-style: disc;
  }
  .post_single .single_content ol {
    list-style: decimal;
  }
  .post_single .single_content li {
    padding-left: 4px;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
  }
  .post_single .single_content li + li {
    margin-top: 6px;
  }
  .post_single .single_content a {
    color: #5EACA6;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    overflow-wrap: anywhere;
  }
  .post_single .single_content a:hover {
    color: #1E3D3B;
    text-decoration-color: #5EACA6;
  }
  .post_single .single_content img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .post_single .single_content img.alignnone,
  .post_single .single_content figure.alignnone {
    margin: 24px 0;
  }
  .post_single .single_content img.aligncenter,
  .post_single .single_content figure.aligncenter {
    margin: 24px auto;
  }
  .post_single .single_content img.alignleft,
  .post_single .single_content figure.alignleft {
    float: left;
    margin: 8px 24px 16px 0;
  }
  .post_single .single_content img.alignright,
  .post_single .single_content figure.alignright {
    float: right;
    margin: 8px 0 16px 24px;
  }
  .post_single .single_content figure,
  .post_single .single_content .wp-block-image {
    max-width: 100%;
  }
  .post_single .single_content figure img,
  .post_single .single_content .wp-block-image img {
    max-width: 100%;
  }
  .post_single .single_content figcaption,
  .post_single .single_content .wp-element-caption {
    margin-top: 8px;
    color: #6A7E7C;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.6;
    text-align: center;
  }
  .post_single .single_content table {
    width: 100%;
  }
  .post_single .single_content th,
  .post_single .single_content td {
    padding: 12px 18px;
    border: 1px solid #6A7E7C;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: left;
  }
  .post_single .single_content th {
    width: 150px;
    background: #6A7E7C;
    color: #fff;
    font-weight: 500;
  }
  .post_single .event_overview {
    margin-top: 36px;
  }
  .post_single .event_overview h3 {
    margin-bottom: 10px;
    color: #5EACA6;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.08em;
  }
  .post_single .event_overview table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
  }
  .post_single .event_overview th,
  .post_single .event_overview td {
    padding: 12px 18px;
    border: 1px solid #b5b5b5;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.5;
    vertical-align: middle;
  }
  .post_single .event_overview th {
    width: 200px;
    background: #6A7E7C;
    color: #fff;
    font-weight: 500;
    text-align: center;
  }
  .post_single .event_overview td {
    background: #fff;
    color: #1E3D3B;
    text-align: left;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
  }
  .post_single .single_article > .btn {
    margin-top: 80px;
  }
  .post_sidebar .post_sidebar_section + .post_sidebar_section {
    margin-top: 60px;
  }
  .post_sidebar .post_sidebar_section h3 {
    margin-bottom: 10px;
    color: #1E3D3B;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }
  .side_posts > li {
    border-bottom: 1px dashed #5EACA6;
  }
  .side_posts > li + li {
    margin-top: 10px;
  }
  .side_posts > li > a {
    display: block;
    padding-bottom: 10px;
  }
  .side_posts .side_posts_content {
    display: flex;
    min-width: 0;
    gap: 5px;
    flex: 1;
    flex-direction: column;
  }
  .side_posts time {
    color: #6A7E7C;
    font-family: "Barlow", sans-serif;
    font-size: 1.1rem;
    line-height: 1.5;
  }
  .side_posts strong {
    color: #5EACA6;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .side_posts small {
    color: #1E3D3B;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.4;
  }
  .side_posts .side_posts_tags {
    color: #9c836c;
  }
  .side_posts_related > li {
    border: 0;
    border-radius: 4px;
    background: #EDF3F2;
    overflow: hidden;
  }
  .side_posts_related > li + li {
    margin-top: 10px;
  }
  .side_posts_related > li > a {
    display: flex;
    min-height: 90px;
    gap: 15px;
    padding: 10px;
    align-items: center;
  }
  .side_posts_related .side_posts_image {
    width: 80px;
    height: 70px;
    flex: 0 0 80px;
    overflow: hidden;
    background: #d9d9d9;
  }
  .side_posts_related .side_posts_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .side_posts_related time,
  .side_posts_related small {
    display: none;
  }
  .side_posts_related strong {
    font-size: 1.6rem;
  }
  .side_tag_list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
  }
  .side_tag_list a {
    color: #9c836c;
    font-size: 1.2rem;
    line-height: 1.55;
  }
}
/* Smartphones (portrait and landscape) */
@media screen and (max-width: 780px) {
  #archive {
    padding-top: 15.3846153846vw;
  }
  #archive .event_list {
    display: flex;
    gap: 5.1282051282vw;
    flex-direction: column;
    padding: 0 5.1282051282vw;
  }
  #archive .event_list .event_item {
    min-width: 0;
    border: 1px solid #5EACA6;
    border-radius: 1.0256410256vw;
    background: #fff;
    overflow: hidden;
  }
  #archive .event_list .event_item > a {
    display: flex;
    height: 100%;
    flex-direction: column;
  }
  #archive .event_list .event_item > a:hover .post_image img {
    scale: 1.1;
  }
  #archive .event_list .event_item .post_image {
    width: 100%;
    height: 43.5897435897vw;
    overflow: hidden;
    background: #d9d9d9;
  }
  #archive .event_list .event_item .post_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.3s ease;
  }
  #archive .event_list .event_item .event_item_body {
    display: flex;
    min-height: inherit;
    padding: 5.1282051282vw;
    flex: 1;
    flex-direction: column;
  }
  #archive .event_list .event_item h3 {
    color: #5EACA6;
    font-size: 4.6153846154vw;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.08em;
  }
  #archive .event_list .event_item .event_item_excerpt {
    margin-top: 1.0256410256vw;
    color: #1E3D3B;
    font-size: 3.5897435897vw;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  #archive .event_list .event_item time {
    display: block;
    margin-top: auto;
    color: #6A7E7C;
    font-family: "Barlow", sans-serif;
    font-size: 2.5641025641vw;
    font-weight: 400;
    line-height: 1.5;
    text-align: right;
  }
  #archive .post_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 1.0256410256vw 2.5641025641vw;
    margin: 2.5641025641vw 0 5.1282051282vw;
  }
  #archive .post_tags span,
  #archive .post_tags a {
    color: #9c836c;
    font-size: 3.0769230769vw;
    font-weight: 500;
    line-height: 1.55;
  }
  #archive .posts_empty {
    padding: 15.3846153846vw 0;
    color: #6A7E7C;
    font-size: 3.8461538462vw;
    line-height: 1.6;
    text-align: center;
  }
  .post_single .post_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 1.0256410256vw 2.5641025641vw;
    margin: 2.5641025641vw 0 5.1282051282vw;
  }
  .post_single .post_tags span,
  .post_single .post_tags a {
    color: #9c836c;
    font-size: 3.0769230769vw;
    font-weight: 500;
    line-height: 1.55;
  }
  .post_single #breadcrumb {
    justify-content: flex-start;
    padding: 2.5641025641vw 0;
  }
  .post_single .single_layout {
    display: flex;
    gap: 0;
    padding-top: 5.1282051282vw;
    flex-direction: column;
  }
  .post_single .single_header time {
    display: block;
    margin-bottom: 2.5641025641vw;
    color: #6A7E7C;
    font-family: "Barlow", sans-serif;
    font-size: 2.8205128205vw;
    line-height: 1.5;
  }
  .post_single .single_header h2 {
    color: #5EACA6;
    font-size: 5.641025641vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .post_single .single_eyecatch {
    width: 100%;
    height: 51.2820512821vw;
    margin-top: 5.1282051282vw;
    overflow: hidden;
    background: #d9d9d9;
  }
  .post_single .single_eyecatch img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .post_single .single_content {
    margin-top: 5.1282051282vw;
    color: #1E3D3B;
    font-size: 3.8461538462vw;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.05em;
  }
  .post_single .single_content > * + * {
    margin-top: 5.1282051282vw;
  }
  .post_single .single_content > :first-child {
    margin-top: 0;
  }
  .post_single .single_content h1,
  .post_single .single_content h2,
  .post_single .single_content h3,
  .post_single .single_content h4,
  .post_single .single_content h5,
  .post_single .single_content h6 {
    color: #1E3D3B;
    font-weight: 700;
    letter-spacing: 0.05em;
  }
  .post_single .single_content h1 {
    margin: 10.2564102564vw 0 4.6153846154vw;
    padding-bottom: 2.5641025641vw;
    border-bottom: 0.5128205128vw solid #5EACA6;
    font-size: 6.1538461538vw;
    line-height: 1.5;
  }
  .post_single .single_content h2 {
    margin: 10.2564102564vw 0 4.6153846154vw;
    padding: 2.5641025641vw 3.0769230769vw;
    border-left: 1.0256410256vw solid #5EACA6;
    background: #EDF3F2;
    font-size: 5.3846153846vw;
    line-height: 1.5;
  }
  .post_single .single_content h3 {
    margin: 8.2051282051vw 0 3.5897435897vw;
    padding-bottom: 1.7948717949vw;
    border-bottom: 1px solid #5EACA6;
    font-size: 4.8717948718vw;
    line-height: 1.6;
  }
  .post_single .single_content h4 {
    margin: 7.1794871795vw 0 3.0769230769vw;
    color: #5EACA6;
    font-size: 4.358974359vw;
    line-height: 1.6;
  }
  .post_single .single_content h5 {
    margin: 6.1538461538vw 0 2.5641025641vw;
    font-size: 4.1025641026vw;
    line-height: 1.7;
  }
  .post_single .single_content h6 {
    margin: 5.1282051282vw 0 2.0512820513vw;
    color: #6A7E7C;
    font-size: 3.8461538462vw;
    line-height: 1.7;
  }
  .post_single .single_content p {
    font-size: 3.8461538462vw;
    font-weight: 400;
    line-height: 2;
  }
  .post_single .single_content p::after {
    display: block;
    clear: both;
    content: "";
  }
  .post_single .single_content strong,
  .post_single .single_content b {
    color: #1E3D3B;
    font-weight: 700;
  }
  .post_single .single_content em,
  .post_single .single_content i {
    font-style: italic;
  }
  .post_single .single_content ul,
  .post_single .single_content ol {
    margin: 5.1282051282vw 0;
    padding: 3.8461538462vw 3.8461538462vw 3.8461538462vw 9.7435897436vw;
    border-radius: 1.0256410256vw;
    background: #EDF3F2;
  }
  .post_single .single_content ul {
    list-style: disc;
  }
  .post_single .single_content ol {
    list-style: decimal;
  }
  .post_single .single_content li {
    padding-left: 1.0256410256vw;
    font-size: 3.8461538462vw;
    font-weight: 400;
    line-height: 1.8;
  }
  .post_single .single_content li + li {
    margin-top: 1.5384615385vw;
  }
  .post_single .single_content a {
    color: #5EACA6;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.7692307692vw;
    overflow-wrap: anywhere;
  }
  .post_single .single_content a:hover {
    color: #1E3D3B;
    text-decoration-color: #5EACA6;
  }
  .post_single .single_content img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .post_single .single_content img.alignnone,
  .post_single .single_content figure.alignnone {
    margin: 5.1282051282vw 0;
  }
  .post_single .single_content img.aligncenter,
  .post_single .single_content figure.aligncenter,
  .post_single .single_content img.alignleft,
  .post_single .single_content figure.alignleft,
  .post_single .single_content img.alignright,
  .post_single .single_content figure.alignright {
    float: none;
    margin: 5.1282051282vw auto;
  }
  .post_single .single_content figure,
  .post_single .single_content .wp-block-image {
    max-width: 100%;
  }
  .post_single .single_content figure img,
  .post_single .single_content .wp-block-image img {
    max-width: 100%;
  }
  .post_single .single_content figcaption,
  .post_single .single_content .wp-element-caption {
    margin-top: 2.0512820513vw;
    color: #6A7E7C;
    font-size: 3.0769230769vw;
    font-weight: 400;
    line-height: 1.6;
    text-align: center;
  }
  .post_single .single_content table {
    width: 100%;
  }
  .post_single .single_content th,
  .post_single .single_content td {
    padding: 2.5641025641vw;
    border: 1px solid #6A7E7C;
    font-size: 3.5897435897vw;
    line-height: 1.5;
    text-align: left;
  }
  .post_single .single_content th {
    width: 28%;
    background: #6A7E7C;
    color: #fff;
    font-weight: 500;
  }
  .post_single .event_overview {
    margin-top: 7.6923076923vw;
  }
  .post_single .event_overview h3 {
    margin-bottom: 2.5641025641vw;
    color: #5EACA6;
    font-size: 4.6153846154vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.08em;
  }
  .post_single .event_overview table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
  }
  .post_single .event_overview th,
  .post_single .event_overview td {
    padding: 2.5641025641vw;
    border: 1px solid #b5b5b5;
    font-size: 3.3333333333vw;
    font-weight: 400;
    line-height: 1.5;
    vertical-align: middle;
  }
  .post_single .event_overview th {
    width: 28%;
    background: #6A7E7C;
    color: #fff;
    font-weight: 500;
    text-align: center;
  }
  .post_single .event_overview td {
    background: #fff;
    color: #1E3D3B;
    text-align: left;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
  }
  .post_single .single_article > .btn {
    margin: 7.6923076923vw auto 0;
  }
  .post_sidebar {
    padding-top: 10.2564102564vw;
  }
  .post_sidebar .post_sidebar_section + .post_sidebar_section {
    margin-top: 10.2564102564vw;
  }
  .post_sidebar .post_sidebar_section h3 {
    margin-bottom: 2.5641025641vw;
    color: #1E3D3B;
    font-size: 4.6153846154vw;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }
  .side_posts > li {
    border-bottom: 1px dashed #5EACA6;
  }
  .side_posts > li + li {
    margin-top: 2.5641025641vw;
  }
  .side_posts > li > a {
    display: block;
    padding-bottom: 2.5641025641vw;
  }
  .side_posts .side_posts_content {
    display: flex;
    min-width: 0;
    gap: 1.2820512821vw;
    flex: 1;
    flex-direction: column;
  }
  .side_posts time {
    color: #6A7E7C;
    font-family: "Barlow", sans-serif;
    font-size: 2.8205128205vw;
    line-height: 1.5;
  }
  .side_posts strong {
    color: #5EACA6;
    font-size: 4.1025641026vw;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .side_posts small {
    color: #1E3D3B;
    font-size: 3.0769230769vw;
    font-weight: 400;
    line-height: 1.4;
  }
  .side_posts .side_posts_tags {
    color: #9c836c;
  }
  .side_posts_related > li {
    border: 0;
    border-radius: 1.0256410256vw;
    background: #EDF3F2;
    overflow: hidden;
  }
  .side_posts_related > li + li {
    margin-top: 2.5641025641vw;
  }
  .side_posts_related > li > a {
    display: flex;
    min-height: 23.0769230769vw;
    gap: 3.8461538462vw;
    padding: 2.5641025641vw;
    align-items: center;
  }
  .side_posts_related .side_posts_image {
    width: 20.5128205128vw;
    height: 17.9487179487vw;
    flex: 0 0 20.5128205128vw;
    overflow: hidden;
    background: #d9d9d9;
  }
  .side_posts_related .side_posts_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .side_posts_related time,
  .side_posts_related small {
    display: none;
  }
  .side_posts_related strong {
    font-size: 4.1025641026vw;
  }
  .side_tag_list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw 3.0769230769vw;
  }
  .side_tag_list a {
    color: #9c836c;
    font-size: 3.0769230769vw;
    line-height: 1.55;
  }
}