@charset "UTF-8";

/* 変数
============================================================================================================ */
:root {
  --base-transition-duration: .3s;
  --base-transition: var(--base-transition-duration) ease-in-out;
  --sp_rate: (100vw / 750);
  --theme-gold: #a58f5f;
}

@media screen and (max-width: 640px) {
  .mod_main {
    margin-top: 0;
  }
}

/* Common Item
============================================================================= */
@media print, screen and (min-width: 641px) {
  [class*=_w-pc-] {
    margin-left: auto;
    margin-right: auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 100%;
  }
  ._w-pc-1100 {
    width: 11rem;
  }
  ._w-pc-1200 {
    width: 12rem;
  }
  ._w-pc-1300 {
    width: 13rem;
  }
  ._w-pc-1400 {
    width: 14rem;
  }
}
@media screen and (max-width: 640px) {
  ._pd-sp-30 {
    padding-left: 0.3rem;
    padding-right: 0.3rem;
  }
  ._nm-sp-30 {
    margin-left: -0.3rem;
    margin-right: -0.3rem;
  }
}
._bg-img {
  background-size: cover;
  background-position: center top;
}
@media print, screen and (min-width: 641px) {
  ._bg-img {
    background-image: url(/hakodate/img/company/bg_img_pc.png);
  }
}
@media screen and (max-width: 640px) {
  ._bg-img {
    background-image: url(/hakodate/img/company/bg_img_sp.png);
  }
}
._bg-img._01 {
  background-color: #EEEBE3;
}
._bg-img._02 {
  background-color: #D8D2C6;
}

._bg01 {
  background-color: #EEEBE3;
}

._section-heading01 {
  text-align: center;
  line-height: 1;
}
._section-heading01 > span {
  display: block;
}
._section-heading01 > .en {
  font-family: "Noto Serif Display", serif;
  font-weight: 400;
  font-size: 0.7rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 640px) {
  ._section-heading01 > .en {
    font-size: 0.45rem;
  }
}
._section-heading01 > .jp {
  margin-top: 0.2rem;
  font-size: 0.3rem;
  letter-spacing: 0.05em;
  font-family: "source-han-serif-japanese", serif;
  font-weight: 500;
}
@media screen and (max-width: 640px) {
  ._section-heading01 > .jp {
    margin-top: 0.12rem;
    font-size: 0.19rem;
  }
}

._r-catch01 {
  margin-top: 0.4rem;
  margin-bottom: 0.7rem;
  font-size: 0.22rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-family: "source-han-serif-japanese", serif;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 640px) {
  ._r-catch01 {
    margin-top: 0.2rem;
    margin-bottom: 0.5rem;
    font-size: 0.14rem;
    line-height: 1.85;
  }
}

.company_container {
  padding-top: 1rem;
  color: #464237;
}
@media screen and (max-width: 640px) {
  .company_container {
    padding-top: 0.5rem;
  }
}
.company_container * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.company_container img {
  display: block;
  max-width: 100%;
  height: auto;
}

/* news-list-container
============================================================================= */
.news-list-container {
  margin-top: 0.5rem;
  padding: .6rem 1rem .2rem;
  background-color: #FFFFFF;
}
@media screen and (max-width: 640px) {
  .news-list-container {
    margin: 8vw 4vw 0;
    padding: 4vw;
  }
}

.category-tab {
  display: flex;
  margin-bottom: 0.6rem;
}
.category-tab a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  text-align: center;
  font-size: 0.18rem;
  line-height: 1.3;
  font-weight: 500;
  border-bottom: 2px solid #DAD9D7;
  color: #DAD9D7;
  opacity: 1 !important;
}
.category-tab a.current {
  color: #464237;
  border-bottom-color: #A98A5B;
}
@media print, screen and (min-width: 641px) {
  .category-tab li {
    width: 100%;
  }
  .category-tab li + li {
    margin-left: 8px;
  }
}
@media (hover) {
  .category-tab a {
    transition: color var(--base-transition), border var(--base-transition);
  }
  .category-tab a:hover {
    color: #464237;
    border-bottom-color: #A98A5B;
  }
}
@media screen and (max-width: 640px) {
  .category-tab {
    flex-wrap: wrap;
    margin-left: -4vw;
    margin-bottom: 0.1rem;
    padding: 4vw;
  }
  .category-tab li {
    width: calc(100% / 3 - 4vw);
    margin-left: 4vw;
    margin-bottom: 4vw;
  }
  .category-tab a {
    height: 32px;
    font-size: 0.13rem;
  }
}

.news-list-list a {
  display: block;
  text-decoration: none;
}
.news-list-list a:not([href]) {
  pointer-events: none;
}
.news-list-list a .ph {
  position: relative;
  margin-bottom: 0.2rem;
  padding-top: calc(600 / 900 * 100%);
}
.news-list-list a .ph img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-list-list a .info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: .15rem;
}
.news-list-list a .info > * {
  margin-right: 5px;
  margin-bottom: 5px;
}
.news-list-list a .info time {
  margin-right: 10px;
}
.news-list-list a .cat {
  min-width: 70px;
  margin-top: 2px;
  padding: 0 10px;
  background-color: #A98A5B;
  color: #fff;
  font-size: .14rem;
  text-align: center;
}
.news-list-list a h3 {
  margin-top: 5px;
  font-size: .22rem;
  line-height: 1.72;
  letter-spacing: 0.05em;
  font-family: "source-han-serif-japanese", serif;
  font-weight: 500;
}
@media print, screen and (min-width: 641px) {
  .news-list-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .news-list-list article {
    width: calc((100% - .5rem) / 2);
    margin-bottom: 0.8rem;
  }
}
@media screen and (max-width: 640px) {
  .news-list-list article {
    margin-bottom: 0.5rem;
  }
  .news-list-list a .ph {
    margin-bottom: 0.1rem;
  }
  .news-list-list a .info {
    font-size: .12rem;
  }
  .news-list-list a .cat {
    padding: 0 6px 1px;
    font-size: .11rem;
  }
  .news-list-list a h3 {
    margin-top: 5px;
    font-size: .17rem;
    line-height: 1.64;
  }
}


.news-pickup {
  position: relative;
  z-index: 3;
}
.news-pickup-title {
  position: absolute;
  font-family: "Noto Serif Display", serif;
  font-weight: 400;
  font-size: 0.54rem;
  letter-spacing: 0.05em;
  color: #A58F5F;
  line-height: 1;
  pointer-events: none;
  z-index: 10;
}


.news-pickup article a {
  position: relative;
  display: block;
  text-decoration: none;
}
.news-pickup article a:not([href]) {
  pointer-events: none;
}
.news-pickup article a .ph {
  position: relative;
  padding-top: calc(600 / 900 * 100%);
}
.news-pickup article a .ph img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-pickup article a .info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: .15rem;
}
.news-pickup article a .info > * {
  margin-right: 5px;
  margin-bottom: 5px;
}
.news-pickup article a .info time {
  margin-right: 10px;
}
.news-pickup article a .cat {
  min-width: 70px;
  margin-top: 2px;
  padding: 0 10px;
  background-color: #A98A5B;
  color: #fff;
  font-size: .14rem;
  text-align: center;
}
.news-pickup article a h3 {
  margin-top: 5px;
  font-size: .24rem;
  line-height: 1.72;
  letter-spacing: 0.05em;
  font-family: "source-han-serif-japanese", serif;
  font-weight: 500;
}
.news-pickup .arrow {
  position: absolute;
  cursor: pointer;
  z-index: 10;
}
.news-pickup .arrow::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 12px;
	height: 12px;
	border-top: 2px solid #A58F5F;
	border-right: 2px solid #A58F5F;
	transform-origin: 100% 0;
	transform: rotate(45deg);
}
.news-pickup .arrow.l {
  transform: scaleX(-1);
}
.news-pickup ._only .swiper-slide {
	margin: 0 auto;
}
.news-pickup ._only  + .arrow {
	display: none;
}
.news-pickup ._only  + .arrow + .arrow {
	display: none;
}
.news-pickup ._only article a .text {
	opacity: 1;
	margin-bottom: 0;
}
@media print, screen and (min-width: 641px) {
  .news-pickup {
    overflow: hidden;
    padding: 80px 0;
  }
  .news-pickup::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: #fff;
    width: 13rem;
    margin: 0 auto;
    z-index: -1;
  }
  .news-pickup-title {
    right: 0;
    left: 0;
    top: 50px;
    width: 9.4rem;
    margin: 0 auto;
  }
  .news-pickup .slide {
    overflow: visible;
  }
  .news-pickup article {
    width: 9rem;
    margin: 0 .25rem;
  }
  .news-pickup article a .text {
    position: absolute;
    left: -1px;
    bottom: -.5rem;
    width: 7.4rem;
    height: 1.5rem;
    padding: 20px 30px;
    background-color: #fff;
    opacity: 0;
    transition: opacity .4s;
  }
  .news-pickup article.swiper-slide-active a .text,
  .news-pickup article.swiper-slide-duplicate-active a .text {
    opacity: 1;
  }
  .news-pickup article a h3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .news-pickup .arrow {
    top: 80px;
    bottom: 80px;
    width: 0.5rem;
  }
  .news-pickup .arrow.l {
    right: calc(50% + 4.5rem);
  }
  .news-pickup .arrow.r {
    left: calc(50% + 4.5rem);
  }
}
@media screen and (max-width: 640px) {
  .news-pickup {
    padding: 30px 0;
    background-color: #fff;
  }
  .news-pickup-title {
    left: 5vw;
    top: 0;
    font-size: 0.27rem;
    transform: translateY(-50%);
  }

  .news-pickup article a {
    padding: 0 4vw;
  }
  .news-pickup article a .text {
    margin-bottom: 20px;
    padding: 20px 4vw;
  }
  .news-pickup article a .info {
    font-size: .12rem;
  }
  .news-pickup article a .cat {
    padding: 0 6px 1px;
    font-size: .11rem;
  }
  .news-pickup article a h3 {
    margin-top: 5px;
    font-size: .17rem;
    line-height: 1.64;
  }
  .news-pickup .arrow {
    top: 30px;
    width: 30px;
    height: calc(92vw * 2/3);
  }
  .news-pickup .arrow::before {
    right: 10px;
    border-color: #fff;
  }
  .news-pickup .arrow.l {
    left: 4vw;
  }
  .news-pickup .arrow.r {
    right: 4vw;
  }
}
.news-pickup .dots {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 10;
}
.news-pickup .dots .swiper-pagination-bullet {
  width: 46px;
  height: 3px;
  border-radius: 0;
  background-color: #D9D9D9;
  opacity: 1;
}
.news-pickup .dots .swiper-pagination-bullet-active {
  background-color: #B3986F;
}
@media print, screen and (min-width: 641px) {
  .news-pickup .dots {
    position: absolute;
    left: auto;
    width: auto;
    right: calc(50% - 6.5rem + 60px);
    bottom: 0;
    height: 80px;
  }
}
@media screen and (max-width: 640px) {
  .news-pickup .dots {
    justify-content: center;
    bottom: auto;
  }
}




.wp-pagenavi {
  display: flex;
  justify-content: center;
  margin-top: 0.5rem;
  font-family: "overpass-variable", sans-serif;
  font-size: 0.18rem;
  line-height: 1;
  font-weight: 700;
}
.wp-pagenavi > * {
  position: relative;
	display: flex;
  justify-content: center;
  align-items: center;
	width: 38px;
	height: 38px;
	text-decoration: none;
  color: #A2A09B;
  opacity: 1 !important;
  padding-top: 4px;
}
.wp-pagenavi .current {
  color: #464237;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  overflow: hidden;
  justify-content: flex-start;
  text-indent: -9999em;
}
.wp-pagenavi .previouspostslink::before,
.wp-pagenavi .nextpostslink::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 16px;
	width: 4px;
	height: 4px;
	border-top: 2px solid;
	border-right: 2px solid;
	transform-origin: 100% 0;
	transform: rotate(45deg);
}
.wp-pagenavi .previouspostslink {
  transform: scaleX(-1);
  margin-right: 5px;
}
.wp-pagenavi .nextpostslink {
  margin-left: 5px;
}
@media (hover) {
  .wp-pagenavi a {
    transition: color var(--base-transition);
  }
  .wp-pagenavi a:hover {
    color: #464237;
  }
}
@media screen and (max-width: 640px) {
  .wp-pagenavi {
    margin-top: 0.3rem;
    font-size: 0.17rem;
  }
  .wp-pagenavi > * {
    width: 30px;
    height: 30px;
  }
  .wp-pagenavi .previouspostslink::before,
  .wp-pagenavi .nextpostslink::before {
    width: 6px;
    height: 6px;
  }
}

.news-side {
  margin-top: 0.8rem;
  padding: 0.5rem 0 .8rem;
  background-color: #fff;
  font-size: 0.18rem;
  letter-spacing: 0.05em;
}
.news-side dt {
  margin-bottom: 20px;
  padding-bottom: 8px;
  font-family: "Noto Serif Display", serif;
  font-weight: 500;
  font-size: 0.32rem;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #464237;
}
.news-side .archive li {
  margin-bottom: 0.2em;
}
.news-side .category {
  display: flex;
  flex-wrap: wrap;
}
.news-side .category li {
  margin: 0 5px 10px 0;
}
.news-side .category a {
  display: block;
  min-width: 70px;
  padding: 0 10px;
  background-color: #A98A5B;
  color: #fff;
  font-size: .14rem;
  text-align: center;
}
@media print, screen and (min-width: 641px) {
  .news-side {
    display: flex;
    justify-content: center;
  }
  .news-side dl {
    width: 3rem;
    margin: 0 .4rem;
  }
}
@media screen and (max-width: 640px) {
  .news-side {
    margin: 0.5rem 4vw 0;
    padding: 5vw 8vw 15vw;
    font-size: 0.12rem;
  }
  .news-side dt {
    font-size: 0.21rem;
  }
  .news-side dl + dl {
    margin-top: 0.5rem;
  }
  .news-side .category a {
    font-size: .12rem;
    padding: 2px 8px;
  }
}


.news-detail-container {
  padding: 1rem 2rem;
  background-color: #fff;
  letter-spacing: 0.05em;
}
.news-detail-container > header {
  margin-bottom: 40px;
}
.news-detail-container > header .info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: .15rem;
}
.news-detail-container > header .info > * {
  margin-right: 5px;
  margin-bottom: 5px;
}
.news-detail-container > header .info time {
  margin-right: 10px;
}
.news-detail-container > header .cat {
  margin-top: 2px;
}
.news-detail-container > header .cat a {
  display: block;
  min-width: 70px;
  margin-top: 2px;
  padding: 0 10px;
  background-color: #A98A5B;
  color: #fff;
  font-size: .14rem;
  text-align: center;
}
.news-detail-container > header h2 {
  margin-top: 5px;
  font-size: .3rem;
  line-height: 1.67;
  letter-spacing: 0.05em;
  font-family: "source-han-serif-japanese", serif;
  font-weight: 500;
}

.news-detail-img {
  margin: 0 -.5rem 60px;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .news-detail-container {
    display: flex;
    flex-direction: column;
    padding: 0 0 30px;
    margin: -.2rem 4vw 0;
  }
  .news-detail-container > header {
    margin-bottom: 30px;
    padding: 30px 4vw;
    border-bottom: 1px solid #F1EEE9;
  }
  .news-detail-container > header .info {
    font-size: .12rem;
  }
  .news-detail-container > header .cat a {
    margin-top: 0;
    padding: 1px 6px;
    font-size: .11rem;
  }
  .news-detail-container > header h2 {
    margin-top: 5px;
    font-size: .18rem;
  }

  .news-detail-img {
    margin: 0;
    order: -1;
  }
}

.prevnext_paging {
  position: relative;
  margin: 1rem auto 0;
}
.prevnext_paging:last-child {
  padding-bottom: 0.8rem;
}
.prevnext_paging .back {
  width: 42%;
  margin: 0 auto;
  font-weight: 500;
}
.prevnext_paging .back a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 60px;
  background-color: #A58F5F;
  color: #fff;
  font-size: .16rem;
}
.prevnext_paging .back a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 16px;
	width: 4px;
	height: 4px;
	border-top: 2px solid;
	border-right: 2px solid;
	transform-origin: 100% 0;
	transform: rotate(45deg);
}
.prevnext_paging .a_prev,
.prevnext_paging .a_next {
  position: absolute;
  top: 0;
  width: 29%;
}
.prevnext_paging .a_prev a,
.prevnext_paging .a_next a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 60px;
  font-size: .16rem;
}
.prevnext_paging .a_prev {
  left: 0;
}
.prevnext_paging .a_prev a::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 4px;
	border-top: 2px solid;
	border-left: 2px solid;
	transform-origin: 0 0;
	transform: rotate(-45deg);
}
.prevnext_paging .a_next {
  right: 0;
}
.prevnext_paging .a_next a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 4px;
	height: 4px;
	border-top: 2px solid;
	border-right: 2px solid;
	transform-origin: 100% 0;
	transform: rotate(45deg);
}
@media print, screen and (min-width: 641px) {
  .prevnext_paging {
    width: 510px;
  }
}
@media screen and (max-width: 640px) {
  .prevnext_paging {
    margin: .5rem 4vw 0;
  }
  .prevnext_paging:last-child {
    padding-bottom: .5rem;
  }
  .prevnext_paging .back a {
    height: 50px;
    font-size: .13rem;
  }
  .prevnext_paging .a_prev a,
  .prevnext_paging .a_next a {
    height: 50px;
    font-size: .13rem;
  }
}




/**
 * 5.0 Alignment
 * ----------------------------------------------------------------------------
 */

.alignleft {
	float: left;
	margin: 7px 24px 7px 0;
}

.alignright {
	float: right;
	margin: 7px 0 7px 24px;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 7px auto;
}

blockquote.alignleft,
blockquote.alignright {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 17px;
	width: 50%;
}

blockquote.alignleft p,
blockquote.alignright p {
	margin-bottom: 17px;
}

@media print, screen and (max-width:640px) {
	.alignleft,
	.alignright {
		display: block;
		float: none;
		margin: 7px auto;
	}
}

/**
 * 6.0 Tables
 * ----------------------------------------------------------------------------
 */

.mceItemTable {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-width: 1px 0 0 1px;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 14px;
	line-height: 1.2857142857;
	margin-bottom: 24px;
	width: 100%;
}

.mceItemTable th,
.mceItemTable caption {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-width: 0 1px 1px 0;
	font-weight: 700;
	padding: 8px;
	text-align: left;
	text-transform: uppercase;
	vertical-align: baseline;
}

.mceItemTable td {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-width: 0 1px 1px 0;
	font-family: Lato, sans-serif;
	font-size: 14px;
	padding: 8px;
	vertical-align: baseline;
}


/**
 * 6.5 Gallery
 * -----------------------------------------------------------------------------
 */

.gallery {
	margin-bottom: 20px;
}

.gallery-item {
	float: left;
	margin: 0 4px 4px 0;
	overflow: hidden;
	position: relative;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 48%;
	max-width: -webkit-calc(50% - 4px);
	max-width:         calc(50% - 4px);
}

.gallery-columns-3 .gallery-item {
	max-width: 32%;
	max-width: -webkit-calc(33.3% - 4px);
	max-width:         calc(33.3% - 4px);
}

.gallery-columns-4 .gallery-item {
	max-width: 23%;
	max-width: -webkit-calc(25% - 4px);
	max-width:         calc(25% - 4px);
}

.gallery-columns-5 .gallery-item {
	max-width: 19%;
	max-width: -webkit-calc(20% - 4px);
	max-width:         calc(20% - 4px);
}

.gallery-columns-6 .gallery-item {
	max-width: 15%;
	max-width: -webkit-calc(16.7% - 4px);
	max-width:         calc(16.7% - 4px);
}

.gallery-columns-7 .gallery-item {
	max-width: 13%;
	max-width: -webkit-calc(14.28% - 4px);
	max-width:         calc(14.28% - 4px);
}

.gallery-columns-8 .gallery-item {
	max-width: 11%;
	max-width: -webkit-calc(12.5% - 4px);
	max-width:         calc(12.5% - 4px);
}

.gallery-columns-9 .gallery-item {
	max-width: 9%;
	max-width: -webkit-calc(11.1% - 4px);
	max-width:         calc(11.1% - 4px);
}

.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n),
.gallery-columns-3 .gallery-item:nth-of-type(3n),
.gallery-columns-4 .gallery-item:nth-of-type(4n),
.gallery-columns-5 .gallery-item:nth-of-type(5n),
.gallery-columns-6 .gallery-item:nth-of-type(6n),
.gallery-columns-7 .gallery-item:nth-of-type(7n),
.gallery-columns-8 .gallery-item:nth-of-type(8n),
.gallery-columns-9 .gallery-item:nth-of-type(9n) {
	margin-right: 0;
}

.gallery-columns-1.gallery-size-medium figure.gallery-item:nth-of-type(1n+1),
.gallery-columns-1.gallery-size-thumbnail figure.gallery-item:nth-of-type(1n+1),
.gallery-columns-2.gallery-size-thumbnail figure.gallery-item:nth-of-type(2n+1),
.gallery-columns-3.gallery-size-thumbnail figure.gallery-item:nth-of-type(3n+1) {
	clear: left;
}

.gallery-caption {
	background-color: rgba(0, 0, 0, 0.7);
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	color: #fff;
	font-size: 12px;
	line-height: 1.5;
	margin: 0;
	max-height: 50%;
	opacity: 0;
	padding: 6px 8px;
	position: absolute;
	bottom: 0;
	left: 0;
	text-align: left;
	width: 100%;
}

.gallery-caption:before {
	content: "";
	height: 100%;
	min-height: 49px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.gallery-item:hover .gallery-caption {
	opacity: 1;
}

.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}


/**
 * 6.8 Attachments
 * -----------------------------------------------------------------------------
 */

.attachment .content-sidebar,
.attachment .post-thumbnail {
	display: none;
}

.attachment .entry-content {
	padding-top: 0;
}

.attachment footer.entry-meta {
	text-transform: none;
}

.entry-attachment .attachment {
	margin-bottom: 24px;
}

.wp-caption {
	background: transparent;
	border: none;
	color: #767676;
	margin: 0 0 24px 0;
	max-width: 474px;
	padding: 0;
	text-align: left;
}

.wp-caption.alignleft {
	margin: 7px 14px 7px 0;
}

.wp-caption.alignright {
	margin: 7px 0 7px 14px;
}

.wp-caption.aligncenter {
	margin: 7px 0;
}

.wp-caption-dt {
	margin: 0;
}

.wp-caption .wp-caption-text,
.wp-caption-dd {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	margin: 9px 0;
	padding: 0 10px 0 0; /* Avoid the caption to overflow the width of the image because wp-caption has 10px wider width */
	text-align: left;
}

.mceTemp + ul,
.mceTemp + ol {
	list-style-position: inside;
}


/* .entry_body
============================================================================================================ */
.entry_body {
  font-size: 0.16rem;
  line-height: 2;
}
.entry_body img {
	max-width: 100%;
	height: auto;
}
.entry_body p {
	margin: 0 0 1.4em;
}
.entry_body ul,
.entry_body ol {
	margin: 0 0 1.4em 1.3333em;
}
.entry_body ul {
	list-style: disc;
}
.entry_body ol {
	list-style: decimal;
}
.entry_body li > ul,
.entry_body li > ol {
	margin-bottom: 0;
}
.entry_body dl {
	margin-bottom: 1.4em;
}
.entry_body dt {
	font-weight: bold;
}
.entry_body dd {
	margin-bottom: 1.4em;
}
.entry_body p:last-child,
.entry_body dl:last-child,
.entry_body ul:last-child,
.entry_body ol:last-child {
	margin-bottom: 0;
}

.entry_body h1,
.entry_body h2,
.entry_body h3,
.entry_body h4,
.entry_body h5,
.entry_body h6 {
	clear: both;
	font-weight: 700;
	margin: 2em 0 1em;
}

.entry_body h1 {
	font-size: 200%;
	line-height: 1.5;
}

.entry_body h2 {
  padding-bottom: 5px;
  border-bottom: 1px solid #A58F5F;
  font-size: .26rem;
  line-height: 1.67;
  letter-spacing: 0.05em;
  font-family: "source-han-serif-japanese", serif;
  font-weight: 500;
}

.entry_body h3 {
  font-size: .2rem;
  line-height: 1.67;
  color: #857451;
}

.entry_body h4 {
	font-size: 108%;
	line-height: 1.6;
}

.entry_body h5 {
	font-size: 100%;
}

.entry_body h6 {
	font-size: 90%;
	line-height: 1.5;
}

.entry_body h1:first-child,
.entry_body h2:first-child,
.entry_body h3:first-child,
.entry_body h4:first-child,
.entry_body h5:first-child,
.entry_body h6:first-child {
	margin-top: 0;
}

.entry_body .cassette-img-text {
	display: flex;
	gap: .3rem;
	align-items: flex-start;
}
.entry_body .cassette-img-text.ph_r {
	flex-direction: row-reverse;
}
.entry_body .cassette-img-text .ph,
.entry_body .cassette-img-text .text {
	width: calc((100% - .3rem) / 2);
}
.entry_body .cassette-img-caption {
	display: grid;
	gap: .2rem;
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}
.entry_body .cassette-img-caption.ph2 {
	grid-template-columns: repeat(2, 1fr);
}
.entry_body .cassette-img-caption.ph3 {
	grid-template-columns: repeat(3, 1fr);
}
.entry_body .cassette-img-caption li {
	list-style: none;
}
.entry_body .cassette-img-caption span {
	display: block;
	margin-top: .08rem;
	font-size: .14rem;
}
.entry_body .cassette-strong {
	margin-bottom: .3rem;
	padding: .3rem;
	background-color: #F1EEE8;
}
.entry_body .cassette-strong > :last-child {
	margin-bottom: 0;
}

.entry_body cite,
.entry_body dfn,
.entry_body em,
.entry_body i {
	font-style: italic;
}
.entry_body mark,
.entry_body ins {
	border: 0;
	color: inherit;
	text-decoration: none;
}

.entry_body blockquote{
	margin: 0;
	padding: .5rem;
	background-color: #F1EEE8;
}

@media screen and (max-width: 640px) {
  .entry_body {
    padding: 0 8vw;
    font-size: 0.13rem;
  }
  .entry_body h2 {
    padding-bottom: 10px;
    font-size: .2rem;
  }
  .entry_body h3 {
    font-size: .15rem;
  }
  .entry_body .cassette-img-text,
  .entry_body .cassette-img-text.ph_r {
	display: block;
  }
  .entry_body .cassette-img-text .ph,
  .entry_body .cassette-img-text .text {
	width: 100%;
  }
  .entry_body .cassette-img-caption.ph3 {
	grid-template-columns: 1fr;
  }
  .entry_body blockquote{
	margin: 0;
	padding: 0.3rem;
    width: calc(100% + 0.3rem);
    margin-left: -0.15rem;
  }
}
