@charset "utf-8";

:root {
  /* 色 */
  --main-dark-area-bg-color: blue;
  --main-dark-area-text-color: #fff;

  /* 枠線の色（空値もスキン・カスタマイザーで上書きするための意図的な初期値） */
  --main-contents-border-color: ;

  /* カード枠線の色 */
  --main-card-border-color: navy;
  /* 影の色 */
  --main-border-shadow-color: blue;

  /* 枠線の丸み */

  --theme-border-radius-section: 5px;
  --theme-border-radius-button: 9999px;

  --theme-border-radius-small-parts: 5px;

  --theme-border-radius-avatar: 9999px;

  /* コアブロック黒 */

  /* カラム column */
	--theme-root-main-column-width: 800px;

  /* 余白 spacing */
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;

  /* レイアウト layout */
  --theme-container-padding-x: clamp(1rem, 3vw, 2rem);
  --theme-column-gap:  clamp(0.75rem, 1.5vw, 1.5rem);

  /* 文字 typography */
  --theme-text-line-height: 1.9;
  --theme-heading-line-height: 1.45;
  --theme-sidebar-text-line-height: 1.75;
  --theme-sidebar-heading-line-height: 1.45;

  /* ヘッダー header */
  --theme-header-min-height: 64px;

  }

/* 装飾アイコンを非表示 */
.hide-decorative-icons .icon-font-date-published::before,
.hide-decorative-icons .icon-font-date-modified::before,
.hide-decorative-icons .icon-font-home::before,
.hide-decorative-icons .single-post-category::before,
.hide-decorative-icons .icon-font-category::before,
.hide-decorative-icons .single-post-tags::before,
.hide-decorative-icons .icon-font-tag::before,
.hide-decorative-icons .icon-font-author::before,
.hide-decorative-icons .icon-font-calendar::before,
.hide-decorative-icons .icon-font-archive::before {
	content: none;
}

.taxonomy-archive-description {
	margin: 1rem 0 1.5rem;
	line-height: 1.8;
	overflow-wrap: anywhere;
}
.taxonomy-archive-description > :last-child {
	margin-bottom: 0;
}

body{
		overflow-x: hidden;
		background-size: cover;
		font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", Meiryo, sans-serif;
		}
body.has-body-background-video {
	isolation: isolate;
}
.body-background-video {
	position: fixed;
	inset: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}
input[type="submit"]{
	padding:10px  20px;
}
.row {
margin: 0;
}
@media (max-width: 768px) {
.col-md-4{
	margin-top: 30px;
}
	.row{
--bs-gutter-x: 0;	}
}
h1{
text-decoration: none;
vertical-align:middle;
}

@media screen and (max-width: 600px) {
	body {
		overflow-wrap: break-word;
	}
}

a:where(:link, :visited) {
	color: inherit;
}

.container{
max-width: 1200px;
margin-right: auto;
margin-left: auto;
}

.single-post-category a{
	white-space: nowrap;
}

.site-brand {
margin: 0;
padding: 0;
}
.sitename {
font-size: 26px;
font-style: normal;
font-weight: 700;
line-height: 40px;
text-decoration: none;
white-space: nowrap;
}
.site-brand > a {
display: flex;
align-items: center;
max-height: 40px;
color: inherit;
text-decoration: none;
padding: 0;
margin: 0;
}
.site-brand > a:hover,
.site-brand > a:focus,
.site-brand > a:active,
.site-brand > a:visited {
text-decoration: none;
}
a .link-line-none {
text-decoration: none;
}
.float_none {
clear: both;
margin: 0;
}
img .noimg-150x150 {
width: 150px;
height: 150px;
object-fit: cover;
margin: 0;
padding: 0;
}
.noimg-320x180 {
width: 100%;
object-fit: cover;
margin: 0;
padding: 0;
}
.article-img-320x180{
width: 100%;
object-fit: cover;
margin: 0;
padding: 0;
}

/******************************************************************
Required WordPress CSS
*******************************************************************/

.sidebar .wp-block-latest-comments{
padding-left: 0;
}
.aligncenter {
display: block;
margin-right: auto;
margin-left: auto;
}

.alignleft {
float: left;
margin-right: 10px;
margin-bottom: 10px;
}

.alignright {
float: right;
margin-left: 10px;
margin-bottom: 10px;
}

.wp-caption {
display: block;
padding-top: 4px;
border: 1px solid #ccc;
text-align: center;
max-width: 100%;
margin-top: 2px;

}

.wp-caption-text {
display: inline-block;
font-size: 90%;
margin: 2px;
}

img[class*="wp-image-"], img[class*="attachment-"] {
width: 100%;
max-width: 100%;
height: auto;
}

.wp-block-image img{
	width: 100%;
}
.gallery-caption ,.wp-caption-text {
font-size: 90%;
}

.alignfull{
    width: 100vw;
    margin: 0 calc(50% - 50vw);

}

div.alignwide{
	max-width: 100%;
}

/*******************************************************
ウィジェット
********************************************************/
/* wpカレンダー */
#wp-calendar {
background-color: #fff;
}
.wp-calendar-nav{
margin-bottom: 25px;
background-color: #fff;
}
#wp-calendar #today {
background: floralwhite;
}

.wp-calendar-table caption{
caption-side:top ;
text-align: center;
background-color: #fff;
border: 1px solid gainsboro;
padding: 5px;
}
/* アーカイブ */
.wp-block-archives select{
padding: 5px;
width: 100%;
max-width: 100%;
}
.wp-block-archives{
margin-bottom: 20px;
}
.wp-block-categories select {
	padding: 5px;
	width: 100%;
	max-width: 100%;
}
/* タグクラウド */
.widget_tag_cloud >.is-style-outline a{
display: flex;
width: 100%;
flex: 1;
white-space: nowrap;
text-align: center;
}

.sidebar ul {
list-style-type: none;
padding-left:0;
}
.sidebar a{
text-decoration: none;
}
.sidebar ul li{
padding-top:5px;
padding-bottom: 5px;
}
.sidebar ul li ul{
padding-left:20px;
}

.widget_recent_comments ol {
padding-left: 0;
}
.widget_recent_comments >.has-avatars li{
border:1px solid gainsboro;
padding: 5px;
}
/* Text meant only for screen readers. */
.screen-reader-text {
clip: rect(1px, 1px, 1px, 1px);
position: absolute !important;
height: 1px;
width: 1px;
overflow: hidden;
}

.sidebar .wp-block-latest-posts__featured-image{
float: left;
padding-right: 10px;
}
.sidebar .wp-block-latest-posts__featured-image li{
clear: both;
}

.screen-reader-text:focus {
background-color: #eee;
clip: auto !important;
color: #444;
display: block;
font-size: 1em;
height: auto;
left: 5px;
line-height: normal;
padding: 15px 23px 14px;
text-decoration: none;
top: 5px;
width: auto;
z-index: 100000;
}

/* ======================================== */
/* ヘッダー header */
/* ======================================== */
.site-header{
	width: 100%;

	z-index: 10;
	background-size: cover;
}

/********************************************************
フッターfooter
********************************************************/
#footer {
margin: 0;
}
footer {
	width: 100%;
}
.footer-container {
	width:100%;
}
.site-footer {
width: 100%;
}

.site-footer a {
	text-decoration: none;
}

.hover-action.link-text-hover .site-footer a:hover {
	opacity: 0.88;
}

@media (min-width: 769px) {
	.site-footer.has-footer-fixed-menu-pc{
	padding-bottom: 4.5rem;
	}
}
@media (max-width: 768px) {
	.site-footer.has-footer-fixed-menu-mobile{
	padding-bottom: 4.5rem;
	}
}
/********************************************************
フッターメニュー
********************************************************/
.footer-menu-standard{

margin: 0;
padding: 5px;

align-items: center;
}

.footer-menu-standard ul{
	display: flex;
	justify-content: flex-end;

	margin-bottom: 0;
}

.footer-menu-standard li {
padding: 0 20px;
display: inline;
text-decoration:none;
}
.footer-menu-standard a {
	text-decoration:none;
}
.footer-menu-border-leftright li {
	border-left: solid 1px currentColor;
}
.footer-menu-border-leftright li:last-child {
	border-right: solid 1px currentColor;
}
.footer-menu-border-median li:not(:last-child) {
	border-right: solid 1px currentColor;
}
.footer-menu-position-start ul {
	justify-content: flex-start;
}
.footer-menu-position-center ul {
	justify-content: center;
}
.footer-menu-position-around ul {
	justify-content: space-around;
}
.footer-menu-position-around li {
	text-align: center;
}

.footer-menu-standard li ul {
display: none;
}
.footer-menu-standard .menu-item-description {
display: block;
padding: 3px 10px;
}
li.menu-item-description {
	display: block;

	}

@media (max-width: 768px) {
.footer-menu-standard ul{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}
.footer-menu-standard ul li {
	border-left: none;
	border-right: none;
	width: 100%;
	padding: 5px;
}
.footer-menu-standard a {
	width: 100%;
}
}

/********************************************************
フッター固定メニュー
********************************************************/
.footer-fixed-menu {
	position: fixed;
	left:0;
	right:0;
	width: auto;
	bottom: 0;

	z-index: 1000;
}

.footer-fixed-menu-section ul{
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	margin-bottom: 0;
	padding-left: 0;

}

.footer-fixed-menu-section li {
	display: flex;

justify-content: center;
height: auto;
align-items: stretch;
width: 100%;
}
.footer-fixed-menu-section a:hover {
	opacity: 1;
}

.footer-fixed-menu-item {
list-style-type: none;
	text-decoration: none;
text-align: center;

	display: flex;
	flex-direction: column;
	width: 100%;
padding: 10px;
height: 100%;
margin: auto;
justify-content: center;
}

.footer-fixed-menu-section li ul{

	display: none;

}
/* ======================================== */
/* コンタクトオプション contact option */
/* ======================================== */
.header-contact {
	display: flex;

}

.header-contact-section {
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 height: auto;
 font-size: large;
 line-height: 1.5;
 margin-left: 25px;
 width: fit-content;
}
.header-contact-contents {
	text-decoration: none;
	width: 100%;
 padding: 5px 25px;
white-space: nowrap;

 text-align: center;

}

.header-contact-document,
.header-contact-address{
	margin-left: 10px;

}
.header-contact-contents,
.contact-document-contents,
.contact-address-contents {
	--header-cta-text-color: var(--main-dark-area-text-color);
	--header-cta-bg-color: var(--main-dark-area-bg-color);
	--header-cta-border-color: var(--header-cta-text-color);
	text-decoration: none;
	flex-direction: column;
	display: flex;
	min-width: fit-content;
	width: 200px;
	padding: 5px 25px;
	white-space: nowrap;
	justify-content: center;
	align-items: center;
	text-align: center;
	height: 60px;
}
.header-contact-contents {
	background-color: #0073aa;
}
.contact-document-contents {
	background-color: #f39800;
}
.contact-address-contents {
	background-color: #0073aa;
}
.header-contact-contents,
.contact-document-contents,
.contact-address-contents {
	color: var(--header-cta-text-color);
	border-color: var(--header-cta-border-color);
	background-color: var(--header-cta-bg-color);
}
a.header-contact-contents:hover,
a.contact-document-contents:hover,
a.contact-address-contents:hover{
	opacity: 1;
}

.header-contact-description,
.contact-document-description,
.contact-address-description {
	font-size: small;
	width: 100%;
	white-space: nowrap;
}
.display-right-absolute {
position: fixed;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  align-items: center;
  justify-content: center;
  top: 0;
  top: 50vh;
  right: 0;

  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 100;
  gap: 0;
  border-radius: 0;
  flex-direction: column;
  justify-content: center;
}

.display-right-absolute .header-contact-document,
.display-right-absolute .header-contact-address{
	margin-left: 0;

}
.display-right-absolute .contact-document-contents,
.display-right-absolute .contact-address-contents {

	min-width: fit-content;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;

  width: 3.5rem !important;
  height: auto;
  padding: 15px;
  font-weight: 600;
  margin-left: 0;
}
.display-right-absolute .contact-document-description,
.display-right-absolute .contact-address-description {
	width: fit-content;

  height: auto;
}
@media (max-width: 768px) {
	.header-contact-section {
		display: none;
	}
}
/*******************************************************
メニュー PC
********************************************************/

@media (min-width: 769px) {
/* メニューバーの装飾 */
.wide-menu{
	width: 100%;
}
.wide-menu .global-nav,
.wide-menu .global-menu{
	width: 100%;
	display: flex;
	justify-content: space-around;
}
.wide-menu .global-menu > li{
	flex: 1;
}

.drawer {
padding: 0px;
}

.drawer-center-title {
	width: 100%;
}
.global-menu ul{
	list-style-type: none;

}
ul.global-menu {
padding-left: 0;
text-align: center;
display: table;
margin-bottom: 0;
margin-top: 0;
}

/* メインメニュー項目の装飾 */
ul.global-menu > li {
display: table-cell;
list-style-type: none;
position: relative;
z-index: 3;
text-align: center;
border-top: 3px solid transparent;
border-bottom: 3px solid transparent;
transition: border-bottom-color 0.18s ease;
}

/* 現在位置はホバー設定にかかわらず表示する */
ul.global-menu > li.current-menu-item,
ul.global-menu > li.current-menu-parent,
ul.global-menu > li.current-menu-ancestor,
ul.global-menu > li.current_page_item,
ul.global-menu > li.current_page_parent,
ul.global-menu > li.current_page_ancestor {
		border-bottom-color: currentColor;
}

/* hover はカスタマイザーの全体停止とグローバルメニュー下線の個別停止に従う */
.hover-action.global-menu-hover-underline ul.global-menu > li:hover {
	border-bottom-color: currentColor;
}

/* focus は従来どおりカスタマイザーの「ホバーアクション全体停止」に従う */
.hover-action ul.global-menu > li:focus-within {
	border-bottom-color: currentColor;
}

ul.global-menu li > a {
color: inherit;
text-decoration: none;
display: flex;
justify-content: center;
align-items: center;
}

/* ▼サブメニューは、表示しておく */
ul.global-menu ul {
display: none;
}
/* サブメニューの装飾 */
ul.global-menu ul {
display: none;
margin: 0px;
padding: 0px;
position: absolute;
top: 100%;
}

/* サブメニューがある場合に開く処理 */
/* ※サブメニューが1階層しか存在しない場合の記述 */
ul.global-menu li:hover > ul {
	display: block;
}
/* サブメニュー項目の装飾 */
ul.global-menu ul li {

display: block;
position: relative;
white-space: nowrap;
width: 100%;
border: none;
border-top: none;
border-bottom: none;
margin-left: 0px;
text-shadow: none;
text-align: left;
font-weight: normal;
padding: 5px;

}

ul.global-menu ul li > a {
	display: block;
height: auto;
}

.hover-action ul.global-menu ul li > a:hover {
	opacity: 0.88;
}

/* ▼3階層目以降(孫メニュー以降)の装飾 */
/* ※下ではなく横(右)に表示します。 */
ul.global-menu ul ul {
margin: 0px;
padding: 0px;
display: none;
position: absolute;
top: 0px;
left: 100%;

}
}

/* =======================================
メニュー はみ出し自動調整
======================================= */
@media (min-width: 769px) {

  /* キーボード操作時もサブメニューを開く */
  ul.global-menu li:focus-within > ul {
    display: block;
  }

  /*
   * 第2階層メニューが右にはみ出す場合
   * 親メニューの右端に揃える
   */
  ul.global-menu > li.is-submenu-left > ul {
    left: auto;
    right: 0;
  }

  /*
   * 第3階層以降が右にはみ出す場合
   * 左側へ開く
   */
  ul.global-menu ul li.is-submenu-left > ul {
    left: auto;
    right: 100%;
  }
}

/*******************************************************
メニュー mobile
********************************************************/
/* ここから下がハンバーガーメニュー に関するCSS */
.drawer-hidden {
display: none;
}
@media (max-width: 768px) {
/* チェックボックスを非表示 */
/* ハンバーガーアイコン外枠 */
.drawer-open {
display: flex;
height: 3.8rem;
width: 3.8rem;
justify-content: center;
align-items: center;
position: absolute;
top: 0rem;
right: 0rem;
color: #F8F8F8;
border: 1px solid #F8F8F8;

z-index: 100;
cursor: pointer;
color: #000;
padding: 0;
background: transparent;
font: inherit;
}

/* 初期状態のアイコン(menu) */
.drawer-open span:before {
font-size: 2rem;
display: inline-block;
content: "\f0c9";
font-family: "WhiteDress Icons";
font-weight: 900;

}

/* アイコンがクリックされたら初期アイコンを非表示 */
.drawer-open[aria-expanded="true"] span::before {
display:none;
}

/* アイコンがクリックされたら「閉じる」アイコンを表示 */
.drawer-open[aria-expanded="true"] span::after {
font-size: 2rem;
display: inline-block;
transition: 0.5s;
content: '\f00d';
font-family: "WhiteDress Icons";
font-weight: 900;
}
/* メニュー(非表示中)*/
.drawer-content {
width: 100%;
height: 100%;
position: fixed;
top: 0;
right: 100%;
left: auto;
z-index: 50;
background: #F8F8F8;
transition: 0.5s;
margin: 0;
padding-top: 5rem;
visibility: hidden;
}

body.admin-bar .drawer-open {
top: 46px;
}

body.admin-bar .drawer-content {
top: 46px;
height: calc(100% - 46px);
}

body.admin-bar.home #header.hero-header-overlay.hero-header-fullscreen-all .drawer-open,
body.admin-bar.home #header.hero-header-fixed.hero-header-fullscreen-all .drawer-open {
top: 0;
}

/* アイコンがクリックされたらメニューを表示 */
.drawer-open[aria-expanded="true"] ~ .drawer-content {
left: 0;
right: auto;
visibility: visible;
}

ul.global-menu {
width: auto;
margin: 0px;
padding: 0px 0px 0px 0px;
}

/* メインメニュー項目の装飾 */
ul.global-menu li {
list-style-type: none;
position: relative;
text-align: left;
text-shadow: none;
}
ul.global-menu li > a {
color: inherit;
text-decoration: none;
display: block;
}

/* サブメニューの装飾 */
ul.global-menu ul {
display: block;
margin: 0px;
padding: 0px;

}

/* サブメニューがある場合に開く処理 */
/* ※サブメニューが1階層しか存在しない場合の記述 */
ul.global-menu li:hover > ul {
		display: block;
		position: relative;
}
/* サブメニュー項目の装飾 */
ul.global-menu ul li {
white-space: nowrap;
width: 100%;
font-weight: normal;
}
ul.global-menu ul li > a {
padding-left: 20px;
}
/* 3階層目以降(孫メニュー以降)の装飾 */
/* モバイルではホバーに依存せず全階層を縦に表示します。 */
ul.global-menu ul ul {
margin: 0px;
padding: 0px;
display: block;
position: static;
}

/* モバイルでは長いメニュー名を折り返します。 */
ul.global-menu ul li {
white-space: normal;
}

ul.global-menu li > a {
overflow-wrap: anywhere;
word-break: break-word;
}

/* 全階層表示時に階層構造が分かるようにします。 */
ul.global-menu ul ul li > a {
padding-left: 40px;
}

ul.global-menu ul ul ul li > a {
padding-left: 60px;
}
}

@media (min-width: 601px) and (max-width: 768px) {
body.admin-bar.home #header.hero-header-overlay.hero-header-fullscreen-tablet-up .drawer-open,
body.admin-bar.home #header.hero-header-fixed.hero-header-fullscreen-tablet-up .drawer-open {
top: 0;
}
}

/* 中央配置の時のセンタリング */
.global-center-menu{
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

/* 検索との兼ねあい----------------- */
.drawer {
 display: flex;
 flex-direction: column;
}
.drawer-content {
	display: flex;
}

.menu-all-pages-container {
	flex: 1;
}
/* 検索との兼ねあい----------------- */

@media (max-width: 768px) {
.drawer-content {
	display: block;
}
}

.search-button-section {
	align-items: center;
	justify-content: center;
	margin: auto;
	padding: 0 15px;

}
@media (max-width: 768px) {
.search-button-section {
	display: none;

}
}

.search-button {
	border: none;

	background-color: transparent;
	font-size: 20px;

	color: initial;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0;
	border-radius: 50%;

}
.search-mobile {
	display: none;
	}
@media (max-width: 768px) {
	.search-mobile {
		display: block;

	padding: .5rem 1rem;
	}
}

.search-form {
	display: flex;

}
.search-input-label {
	display: flex;
	flex: 1;
}
:where(.search-form){
	overflow: hidden;
    padding: 0 !important;
    margin: 4px 0;
}

.search-submit{
    margin-left: 0;
}
.search-input{
    padding-left: .5rem;
}

.search-input {
	  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.search-submit {
	  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;

  color: #212529;
  background-color: transparent;
  border: 1px solid transparent;

  color: var(--main-dark-area-text-color);
  border-color: var(--main-dark-area-text-color);
  background-color: var(--main-dark-area-bg-color);

  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;

}

.search-modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 5555;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.search-modal::backdrop {
  background-color: rgba(0,0,0,.6);
}
.search-window {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);

    z-index: 2;
    max-width: 400px;
    width: 100%;
}

.search-close-button:hover {
    opacity: 0.7;
}
.search-close-button {
    display: block;
    width: 100%;
    border: 0;
    padding: 0;
    line-height: 40px;
    text-align: center;
    cursor: pointer;
	font: inherit;
	background-color: transparent;
	color: #fff;

}

.drawer-open:focus-visible,
.search-button:focus-visible,
.search-close-button:focus-visible,
.search-input:focus-visible,
.search-submit:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.drawer-open:focus-visible {
  outline-offset: -2px;
}

/* =================================== */
/* ポップアップメッセージ popup_message_widget */
/* =================================== */

.popup-message {
  position: fixed;

  left:0;
  bottom:0;
  width: 100%;
  height: 100%;

  height: fit-content;
  z-index: 4000;

  visibility: hidden;

}

.popup-message-popup {
	left: 0;
	top: 0;
	bottom: auto;
	opacity: 0;
	visibility: hidden;
	width: 100%;
	height: 100%;
	transition: .6s;
	transform: none;
	-webkit-transform: none;
	-ms-transform: none;
}
.popup-message.is-show ,
.popup-message-popup.is-show {

  opacity: 1;
  visibility: visible;

}
@media screen and (max-width: 600px) {
	.popup-message-none-phone {
		display: none;
	}
}

.popup-message-window {
	position: absolute;

	z-index: 2;
	max-width: 400px;
	width: 100%;
}
.popup-message-center-10-seconds {
	position: absolute;
	left: 50%;
	top: 50%;

	transform: translate(-50%, -50%);
	z-index: 2;
}
.popup-message-leftbottom {
    left: 15px;
    bottom: 20px;
}
.popup-message-rightbottom {
    right: 15px;
    bottom: 20px;
}

div#popupMessageClose:hover {
    opacity: 0.7;
}

.popup-message-popup .popup-message-close-button {
color: #ffffff;
}
.popup-message-close-button {

	font-size: small;
	display: block;
	width: 100%;
    line-height: 30px;
    text-align: center;
    cursor: pointer;

}

.popup-message-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.6);
  z-index: 1;
  cursor: pointer;
}

/* =================================== */
/* SNSシェアボタン */
/* =================================== */
@media (min-width: 769px) {
	.sns-share-section {
		padding: 0;
		display: flex;
	}
	.sns-share-button{
		text-align: right;
		display: inline;
		width: 100%;
		flex-wrap: wrap;
		flex: 1;
	}
}

.sns-share-section{
display: flex;
flex-wrap: wrap;
margin: 1rem 0;
padding: 5px 0px;
	gap: 2px;

}
.display-left-absolute,
.sns-share-single-leftside,
.sns-share-page-leftside{
	position: fixed;
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	align-items: center;
	justify-content: center;
	top: 50vh;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform:translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index: 1;
	gap: 0;
	border-radius: 0;
flex-direction: column;
}
.sns-share-single-rightside,
.sns-share-page-rightside{

	display: flex;
	flex-wrap: wrap;
	padding: 0;
	align-items: center;
	justify-content: center;

	right: 0;

	z-index: 1;
	gap: 0;
	border-radius: 0;
flex-direction: column;
}

.display-right-absolute .sns-share-section{

	display: flex;
	flex-wrap: wrap;
	padding: 0;
	align-items: center;
	justify-content: center;

	right: 0;

	z-index: 1;
	gap: 0;
	border-radius: 0;
flex-direction: column;
}
.sns-share-single-leftside>.sns-share-button,
.sns-share-single-rightside>.sns-share-button,
.sns-share-page-leftside>.sns-share-button,
.sns-share-page-rightside>.sns-share-button{
	border-radius: 0 !important;
	padding: 0 !important;
	width: 3rem !important;
height: 3rem !important;
flex: none !important;
}

.display-right-absolute .sns-share-button{
	border-radius: 0 !important;
	padding: 0 !important;
	width: 3.5rem !important;
height: 3.5rem !important;
flex: none !important;
}
.sns-share-button{
border: solid 1px transparent;

flex: 1 1 80px;
text-align: center;
justify-content: center;
align-items: center;
line-height: 1.5;
  font-weight: 400;
  text-decoration: none;
  padding: .375rem 0;
  font-size: 1rem;
transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;

}

.sns-share-section .btn:focus {
box-shadow:none;
}

.sns-share-brand-text-color{
color:white;
}
.sns-share-brand-bg-color{
background-color:white;
}
/* SNSシェアボタン 背景色ブランドカラー */
.sns-share-brand-text-color.sns-btn-twitter {background-color: #0F1419;}
.sns-share-brand-text-color.sns-btn-facebook {background-color: #3b5998;}
.sns-share-brand-text-color.sns-btn-hatena-bookmark {background-color: #00a4de;}
.sns-share-brand-text-color.sns-btn-line {background-color: #00b900;}
.sns-share-brand-text-color.sns-btn-pinterest {background: #bd081c;}
.sns-share-brand-text-color.sns-btn-linkedin {background-color: #0077b5;}
.sns-share-brand-text-color.sns-btn-copy {background-color: #696969;}
.sns-share-brand-text-color.sns-btn-instagram {background-color: #cf2e92;}
.sns-share-brand-text-color.sns-btn-youtube {background-color: #da1725;}
.sns-share-brand-text-color.sns-btn-twitch {background-color: #6441a4;}
.sns-share-brand-text-color.sns-btn-github {background-color: #4183c4;}
.sns-share-brand-text-color.sns-btn-codepen {background-color: #000;}
.sns-share-brand-text-color.sns-btn-feedly {background-color: #6CC655;}
.sns-share-brand-text-color.sns-btn-rss {background-color:#ee802f;}
.sns-share-brand-text-color.sns-btn-tiktok {background-color:#000000;}
/* SNSシェアボタン 背景色ブランドカラー:hover */
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-twitter {color: #0F1419;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-facebook {color: #3b5998;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-hatena-bookmark {color: #00a4de;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-line {color: #00b900;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-pinterest {color: #bd081c;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-linkedin {color: #0077b5;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-copy {color: #696969;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-instagram {color: #cf2e92;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-youtube {color: #da1725;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-twitch {color: #6441a4;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-github {color: #4183c4;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-codepen {color: #000;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-feedly {color: #6CC655;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-rss {color:#ee802f;}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible).sns-btn-tiktok {color:#000000;}
/* SNSシェアボタン 文字色ブランドカラー */
.sns-share-brand-bg-color.sns-btn-twitter {color: #0F1419;}
.sns-share-brand-bg-color.sns-btn-facebook {color: #3b5998;}
.sns-share-brand-bg-color.sns-btn-hatena-bookmark {color: #00a4de;}
.sns-share-brand-bg-color.sns-btn-line {color: #00b900;}
.sns-share-brand-bg-color.sns-btn-pinterest {color: #bd081c;}
.sns-share-brand-bg-color.sns-btn-linkedin {color: #0077b5;}
.sns-share-brand-bg-color.sns-btn-copy {color: #696969;}
.sns-share-brand-bg-color.sns-btn-instagram {color: #cf2e92;}
.sns-share-brand-bg-color.sns-btn-youtube {color: #da1725;}
.sns-share-brand-bg-color.sns-btn-twitch {color: #6441a4;}
.sns-share-brand-bg-color.sns-btn-github {color: #4183c4;}
.sns-share-brand-bg-color.sns-btn-codepen {color: #000;}
.sns-share-brand-bg-color.sns-btn-feedly {color: #6CC655;}
.sns-share-brand-bg-color.sns-btn-rss {color:#ee802f;}
.sns-share-brand-bg-color.sns-btn-tiktok {color:#000000;}
/* SNSシェアボタン 背景色ブランドカラー:hover */
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-twitter {background-color: #0F1419;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-facebook {background-color: #3b5998;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-hatena-bookmark {background-color: #00a4de;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-line {background-color: #00b900;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-pinterest {background-color: #bd081c;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-linkedin {background-color: #0077b5;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-copy {background-color: #696969;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-instagram {background-color: #cf2e92;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-youtube {background-color: #da1725;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-twitch {background-color: #6441a4;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-github {background-color: #4183c4;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-codepen {background-color: #000;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-feedly {background-color: #6CC655;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-rss {background-color:#ee802f;}
.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible).sns-btn-tiktok {background-color:#000000;}
/* SNSシェアボタン ブランドカラー */
.sns-share-brand-border-color.sns-btn-twitter {border:solid 1px #0F1419;}
.sns-share-brand-border-color.sns-btn-facebook {border:solid 1px #3b5998;}
.sns-share-brand-border-color.sns-btn-hatena-bookmark {border:solid 1px #00a4de;}
.sns-share-brand-border-color.sns-btn-line {border:solid 1px #00b900;}
.sns-share-brand-border-color.sns-btn-pinterest {border:solid 1px #bd081c;}
.sns-share-brand-border-color.sns-btn-linkedin {border:solid 1px #0077b5;}
.sns-share-brand-border-color.sns-btn-copy {border:solid 1px #696969;}
.sns-share-brand-border-color.sns-btn-instagram {border:solid 1px #cf2e92;}
.sns-share-brand-border-color.sns-btn-youtube {border:solid 1px #da1725;}
.sns-share-brand-border-color.sns-btn-twitch {border:solid 1px #6441a4;}
.sns-share-brand-border-color.sns-btn-github {border:solid 1px #4183c4;}
.sns-share-brand-border-color.sns-btn-codepen {border:solid 1px #000;}
.sns-share-brand-border-color.sns-btn-feedly {border:solid 1px #6CC655;}
.sns-share-brand-border-color.sns-btn-rss {border:solid 1px  #ee802f;}
.sns-share-brand-border-color.sns-btn-tiktok {border:solid 1px  #000000;}

.hover-action.hover-color-inversion .sns-share-brand-bg-hover:is(:hover, :focus-visible){
color:white;
}
.hover-action.hover-color-inversion .sns-share-brand-text-hover:is(:hover, :focus-visible){
background-color:white;
}
.sns-share-brand-border-color{
border: solid 1px transparent;
}
/* =================================== */
/* SNSフォローボックス */
/* =================================== */
.sns-follow-box {
	position: relative;
	display: flex;
	width: 100%;
	height: 250px;

	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 20px;
	z-index: 0;

}
.sns-follow-box a{
	text-decoration: none;
}
.sns-follow-box-figure {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin: 0;
}
.sns-follow-box-media {
	position: absolute;
	width: 100%;
	max-width: 100%;

	object-fit: cover;
	z-index: 0;
	height: 25px;
	height: 100% !important;
	top:0;
	left:0;
}
.sns-follow-box-contents {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 15px;
	align-items: center;
	text-align: center;
	z-index: 1;
}
.sns-follow-box-absolute {
	position: absolute;
top:  50%;
left: 50%;
width: 90%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
z-index: 1;
text-align: center;
margin: auto;
}
.sns-follow-box .sns-follow-box-section{
	display: flex;
	gap:15px;
	flex-wrap: wrap;
}
.sns-follow-box .sns-follow-button{
	display: flex;
 width: 2.5rem;
 height: 2.5rem;
 justify-content: center;
 align-items: center;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.sns-follow-brand-text-color>.sns-follow-button{
color:white;
}
.sns-follow-brand-bg-color>.sns-follow-button{
background-color:white;
}
/* SNSフォローボタン 背景色ブランドカラー */
.sns-follow-brand-text-color>.sns-btn-twitter {background-color: #0F1419;}
.sns-follow-brand-text-color>.sns-btn-facebook {background-color: #3b5998;}
.sns-follow-brand-text-color>.sns-btn-hatena-bookmark {background-color: #00a4de;}
.sns-follow-brand-text-color>.sns-btn-line {background-color: #00b900;}
.sns-follow-brand-text-color>.sns-btn-pinterest {background-color: #bd081c;}
.sns-follow-brand-text-color>.sns-btn-linkedin {background-color: #0077b5;}
.sns-follow-brand-text-color>.sns-btn-copy {background-color: #696969;}
.sns-follow-brand-text-color>.sns-btn-instagram {background-color: #cf2e92;}
.sns-follow-brand-text-color>.sns-btn-youtube {background-color: #da1725;}
.sns-follow-brand-text-color>.sns-btn-twitch {background-color: #6441a4;}
.sns-follow-brand-text-color>.sns-btn-github {background-color: #4183c4;}
.sns-follow-brand-text-color>.sns-btn-codepen {background-color: #000;}
.sns-follow-brand-text-color>.sns-btn-feedly {background-color: #6CC655;}
.sns-follow-brand-text-color>.sns-btn-rss {background-color:#ee802f;}
.sns-follow-brand-text-color>.sns-btn-tiktok {background-color:#000000;}
.sns-follow-brand-text-color>.sns-btn-amazon {background-color:#ff9900;}
.sns-follow-brand-text-color>.sns-btn-rakuten {background-color:#bf0000;}
/* SNSフォローボタン 背景色ブランドカラー:hover */
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-twitter:is(:hover, :focus-visible)  {color: #0F1419;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-facebook:is(:hover, :focus-visible)  {color: #3b5998;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-hatena-bookmark:is(:hover, :focus-visible)  {color: #00a4de;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-line:is(:hover, :focus-visible)  {color: #00b900;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-pinterest:is(:hover, :focus-visible)  {color: #bd081c;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-linkedin:is(:hover, :focus-visible)  {color: #0077b5;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-copy:is(:hover, :focus-visible)  {color: #696969;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-instagram:is(:hover, :focus-visible)  {color: #cf2e92;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-youtube:is(:hover, :focus-visible)  {color: #da1725;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-twitch:is(:hover, :focus-visible)  {color: #6441a4;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-github:is(:hover, :focus-visible)  {color: #4183c4;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-codepen:is(:hover, :focus-visible)  {color: #000;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-feedly:is(:hover, :focus-visible)  {color: #6CC655;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-rss:is(:hover, :focus-visible)  {color:#ee802f;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-tiktok:is(:hover, :focus-visible)  {color:#000000;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-amazon:is(:hover, :focus-visible)  {color:#ff9900;}
.hover-action.hover-color-inversion .sns-follow-brand-text-hover>.sns-btn-rakuten:is(:hover, :focus-visible)  {color:#bf0000;}
/* SNSフォローボタン 文字色ブランドカラー */
.sns-follow-brand-bg-color>.sns-btn-twitter {color: #0F1419;}
.sns-follow-brand-bg-color>.sns-btn-facebook {color: #3b5998;}
.sns-follow-brand-bg-color>.sns-btn-hatena-bookmark {color: #00a4de;}
.sns-follow-brand-bg-color>.sns-btn-line {color: #00b900;}
.sns-follow-brand-bg-color>.sns-btn-pinterest {color: #bd081c;}
.sns-follow-brand-bg-color>.sns-btn-linkedin {color: #0077b5;}
.sns-follow-brand-bg-color>.sns-btn-copy {color: #696969;}
.sns-follow-brand-bg-color>.sns-btn-instagram {color: #cf2e92;}
.sns-follow-brand-bg-color>.sns-btn-youtube {color: #da1725;}
.sns-follow-brand-bg-color>.sns-btn-twitch {color: #6441a4;}
.sns-follow-brand-bg-color>.sns-btn-github {color: #4183c4;}
.sns-follow-brand-bg-color>.sns-btn-codepen {color: #000;}
.sns-follow-brand-bg-color>.sns-btn-feedly {color: #6CC655;}
.sns-follow-brand-bg-color>.sns-btn-rss {color:#ee802f;}
.sns-follow-brand-bg-color>.sns-btn-tiktok {color:#000000;}
.sns-follow-brand-bg-color>.sns-btn-amazon {color:#ff9900;}
.sns-follow-brand-bg-color>.sns-btn-rakuten {color:#bf0000;}
/* SNSフォローボタン 背景色ブランドカラー:hover */
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-twitter:is(:hover, :focus-visible) {background-color: #0F1419;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-facebook:is(:hover, :focus-visible) {background-color: #3b5998;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-hatena-bookmark:is(:hover, :focus-visible) {background-color: #00a4de;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-line:is(:hover, :focus-visible) {background-color: #00b900;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-pinterest:is(:hover, :focus-visible) {background-color: #bd081c;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-linkedin:is(:hover, :focus-visible) {background-color: #0077b5;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-copy:is(:hover, :focus-visible) {background-color: #696969;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-instagram:is(:hover, :focus-visible) {background-color: #cf2e92;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-youtube:is(:hover, :focus-visible) {background-color: #da1725;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-twitch:is(:hover, :focus-visible) {background-color: #6441a4;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-github:is(:hover, :focus-visible) {background-color: #4183c4;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-codepen:is(:hover, :focus-visible) {background-color: #000;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-feedly:is(:hover, :focus-visible) {background-color: #6CC655;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-rss:is(:hover, :focus-visible) {background-color:#ee802f;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-tiktok:is(:hover, :focus-visible) {background-color:#000000;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-amazon:is(:hover, :focus-visible) {background-color:#ff9900;}
.hover-action.hover-color-inversion .sns-follow-brand-bg-hover>.sns-btn-rakuten:is(:hover, :focus-visible) {background-color:#bf0000;}
/* SNSフォローボタン ブランドカラー */
.sns-follow-brand-border-color>.sns-btn-twitter {border:solid 1px #0F1419;}
.sns-follow-brand-border-color>.sns-btn-facebook {border:solid 1px #3b5998;}
.sns-follow-brand-border-color>.sns-btn-hatena-bookmark {border:solid 1px #00a4de;}
.sns-follow-brand-border-color>.sns-btn-line {border:solid 1px #00b900;}
.sns-follow-brand-border-color>.sns-btn-pinterest {border:solid 1px #bd081c;}
.sns-follow-brand-border-color>.sns-btn-linkedin {border:solid 1px #0077b5;}
.sns-follow-brand-border-color>.sns-btn-copy {border:solid 1px #696969;}
.sns-follow-brand-border-color>.sns-btn-instagram {border:solid 1px #cf2e92;}
.sns-follow-brand-border-color>.sns-btn-youtube {border:solid 1px #da1725;}
.sns-follow-brand-border-color>.sns-btn-twitch {border:solid 1px #6441a4;}
.sns-follow-brand-border-color>.sns-btn-github {border:solid 1px #4183c4;}
.sns-follow-brand-border-color>.sns-btn-codepen {border:solid 1px #000;}
.sns-follow-brand-border-color>.sns-btn-feedly {border:solid 1px #6CC655;}
.sns-follow-brand-border-color>.sns-btn-rss {border:solid 1px #ee802f;}
.sns-follow-brand-border-color>.sns-btn-tiktok {border:solid 1px #000000;}
.sns-follow-brand-border-color>.sns-btn-amazon {border:solid 1px #ff9900;}
.sns-follow-brand-border-color>.sns-btn-rakuten {border:solid 1px #bf0000;}

.hover-action.hover-color-inversion .sns-follow-brand-bg-hover .sns-follow-button:is(:hover, :focus-visible){

color:white;
}

.hover-action.hover-color-inversion .sns-follow-brand-text-hover .sns-follow-button:is(:hover, :focus-visible) {
background-color:white;
}
.sns-follow-brand-border-color{
border: solid 1px transparent;
}

/* =================================== */
/* SNSアイコン カラー */
/* =================================== */
/* SNSアイコン ブランドカラー */
.sns-color-twitter {color: #0F1419;}
.sns-color-facebook {color: #3b5998;}
.sns-color-hatena-bookmark {color: #00a4de;}
.sns-color-line {color: #00b900;}
.sns-color-pinterest {color: #bd081c;}
.sns-color-linkedin {color: #0077b5;}
.sns-color-copy {color: #696969;}
.sns-color-instagram {color: #cf2e92;}
.sns-color-youtube {color: #da1725;}
.sns-color-twitch {color: #6441a4;}
.sns-color-github {color: #4183c4;}
.sns-color-codepen {color: #000;}
.sns-color-feedly {color: #6CC655;}
.sns-color-rss {color:#ee802f;}
.sns-color-tiktok {color:#000000;}
.sns-color-amazon-list {color:#ff9900;}
.sns-color-rakuten-room {color:#bf0000;}

a:hover.sns-color-twitter {color: #0F1419;}
a:hover.sns-color-facebook {color: #3b5998;}
a:hover.sns-color-hatena-bookmark {color: #00a4de;}
a:hover.sns-color-line {color: #00b900;}
a:hover.sns-color-pinterest {color: #bd081c;}
a:hover.sns-color-linkedin {color: #0077b5;}
a:hover.sns-color-copy {color: #696969;}
a:hover.sns-color-instagram {color: #cf2e92;}
a:hover.sns-color-youtube {color: #da1725;}
a:hover.sns-color-twitch {color: #6441a4;}
a:hover.sns-color-github {color: #4183c4;}
a:hover.sns-color-codepen {color: #000;}
a:hover.sns-color-feedly {color: #6CC655;}
a:hover.sns-color-rss {color:#ee802f;}
a:hover.sns-color-tiktok {color:#000000;}
a:hover.sns-color-amazon-list {color:#ff9900;}
a:hover.sns-color-rakuten-room {color:#bf0000;}
/* ================================ */
/* ページネーション */
/* ================================ */
nav.pagination {
	margin-top: 1rem;
	margin-bottom: 1.5rem;
}

.comments-pagination,
.pagination .nav-links {
	display: flex;
	width: 100%;
	justify-content: center;
	flex-wrap: wrap;
	gap: 5px;
}
nav .page-numbers {
	--pagination-text-color: var(--main-dark-area-bg-color);
	--pagination-bg-color: var(--main-dark-area-text-color);
	--pagination-border-color: var(--pagination-text-color);
	text-decoration: none;
	font-size: 16px;
	display: inline-flex;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	border: solid 1px var(--pagination-border-color);
	justify-content: center;
	align-items: center;
	color: var(--pagination-text-color);
	background-color: var(--pagination-bg-color);
}
.pagination a {
	font-weight: bold;
}
.firstpagination::before {
	content: "\f100";
	font-size: small;
}
.prevpagination::before {
	content: "\f104";
	font-size: small;
}
.nextpagination::before {
	content: "\f105";
	font-size: small;
}
.lastpagination::before {
	content: "\f101";
	font-size: small;
}
/* ================================ */
/*  */
/* ================================ */
.sticky-navigation {
position: -webkit-sticky;
position: sticky;
top:0;
z-index: 400;
}
/* ================================ */
/* キャンペーンバー */
/* ================================ */
.campaign-bar {
max-width: 100%;
padding: 8px;
text-align: center;
font-size: 15px;
color: #000;
background-color: #F4FA58;
}
.campaign-bar-small {
font-size: 13px;
}
.campaign-bar-bold {
font-weight: bold;
}
.campaign-bar-timer {
display: none;
}
.campaign-link{

padding: 2px;
padding-left: 15px;
padding-right: 15px;
border: solid 1px transparent;
margin-left: 10px;
margin-right: 10px;
height: auto;
text-decoration: none;
color: inherit;

}

.campaign-link:active {
	transform: translateY(1px);
}
@media (max-width: 768px) {
  .campaign-bar.display-none-mobile {
    display: none !important;
  }
}
/* ================================ */
/* ページ送り */
/* ================================ */
.page-feed {
display: flex;
flex-direction: row;
}

.page-feed a{
color: initial;
}
.page-feed a:hover{
color: initial;
}

@media (max-width: 768px) {
.page-feed {
		flex-direction: column;
	}
}

.page-feed-box {
box-sizing: border-box;
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
padding: 5px;
text-decoration: none;
display: flex;
align-items: flex-start;
position: relative;
}
.page-feed-border-leftright {
	border-left: solid 1px var(--main-card-border-color);
	border-right: solid 1px var(--main-card-border-color);
}
.page-feed-border-updown {
	border-top: solid 1px var(--main-card-border-color);
	border-bottom: solid 1px var(--main-card-border-color);
}
.page-feed-image-section{
position: relative;
flex: 0 0 120px;
}
.page-feed-figure {
	width: 120px;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	margin: 0;
}
.page-feed-box img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	margin: 0;
}
.page-feed-prev-absolute{
	position: absolute;
	top:0;
	left:0;
	padding: 2px 6px;
	width: fit-content;
	height: auto;
	font-size: small;
	display: flex;
	align-items: center;
	line-height: 1;
}
.page-feed-next-absolute{
	position: absolute;
	top:0;
	right:0;
	padding: 2px 6px;
	width: fit-content;
	height: auto;
	font-size: small;
	display: flex;
	align-items: center;
	line-height: 1;
}
.page-feed-prev-center {
	text-align: right;
	width: 100%;
	height: fit-content;
}
.page-feed-prev {
	text-align:right;
	flex-direction: row;
}

.page-feed-prev.page-feed-prev-arrow {
	padding-left: 20px;
 }
.page-feed-prev-arrow::before {
	box-sizing: border-box;
	color: var(--main-dark-area-text-color);
	background-color: var(--main-dark-area-bg-color);
	border-top-left-radius: inherit;
	border-bottom-left-radius: inherit;
	position: absolute;
	content: "\f104";
	top: 0;
	left:0;
	width: 15px;
	height: 100%;
	padding: 5px;
	align-items: center;
	display: flex;
	font-family: 'WhiteDress Icons';
  font-style: normal;
  font-weight: 900;
  justify-content: center;
}
.page-feed-next {
	display: flex;
	text-align:left;
	flex-direction: row-reverse;
}
.page-feed-next.page-feed-next-arrow{
	padding-right: 20px;
}

.page-feed-next-arrow::before {
	box-sizing: border-box;
	color: var(--main-dark-area-text-color);
	background-color: var(--main-dark-area-bg-color);
	border-top-right-radius: inherit;
	border-bottom-right-radius: inherit;
	position: absolute;
	content: "\f105";
	top: 0;
	right:0;
	width: 15px;
	height: 100%;
	padding: 5px;
	align-items: center;
	display: flex;
	font-family: 'WhiteDress Icons';
  font-style: normal;
  font-weight: 900;
    justify-content: center;

}
.page-feed-text{
	flex: 1;
	align-items: flex-start;
	padding-right: 5px;
	padding-left: 5px;
}

.page-feed-prev-title {
	text-align: left;
	overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
.page-feed-next-center {
	text-align: left;
}
.page-feed-next-title {
	text-align: right;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

/* ================================ */
/* コメント欄 */
/* ================================ */
.commentlist {
list-style-type: none;
padding-left : 0;
}
.comment-lists-section .commentmetadata{
 font-size: small;
}
.comment-title {
	margin-bottom: 1rem;
}
.comment-body {
padding: 10px;
margin: 10px;
}

.children {
list-style-type: none;
}

.commentlist .reply {
text-align: right;
}

.comment-respond {
padding: 10px;
margin: 10px;

}

.comment-reply-title {
	margin-bottom: 20px;
}
.comment-respond p{
margin-top: 10px;
}
.comment-form-square-line .comment-respond {
border: solid 1px #cccccc;
margin-left: 0;
margin-right: 0;
}
.comment-form-updown-line .comment-respond {
border: solid 1px #cccccc;
border-left: none;
border-right: none;
}
.comment-respond #comment {
width: 100%;
border: solid 1px #cccccc;
}

.comment-form #author{
width: 100%;
display: block;
border: solid 1px #cccccc;
}
.comment-form #email{
width: 100%;
display: block;
border: solid 1px #cccccc;
}

.comment-respond #url {
width: 100%;
display: block;
border: solid 1px #cccccc;
}

.comment-respond #submit {
margin: 25px auto;
display: inline-block;
color: var(--main-dark-area-text-color);
background-color: var(--main-dark-area-bg-color);
border: solid 1px var(--main-dark-area-text-color);
padding: 5px 5px;
font-size: 1.2em;
width: 100%;
max-width: 100%;}
.comment-respond #submit:hover {

border-color: var(--main-dark-area-text-color);
}
.form-submit{
text-align: center;
}

/* ================================ */
/* トップナビゲーションバー */
/* ================================ */
.top-navigation-bar{
width: 100%;
}

.top-navigation-section {
	display: flex;
	justify-content: space-between;
	gap: 10px;
}
.top-navigation-section.has-navigation-right-only {
	justify-content: flex-end;
}
.top-navigation-left-box{
display: inline-flex;
gap: 10px;
text-align: left;
}
.top-navigation-right-box{
display: flex;
gap: 10px;

}

.sns-follow-icon a{
text-decoration: none;
}
.navigation-bar-follow-box{
 display: flex;
 gap: 5px;
}
.navigation-bar-follow-box > .sns-follow-button {
	color: inherit;
}

.hover-action .navigation-bar-follow-opacity>a {
	transition: opacity 0.3s;
}
.hover-action .navigation-bar-follow-opacity>a:hover {
	opacity: 0.88;
}

/********************************************************
タイトル
*********************************************************/
.text-end{
margin: 0;
padding: 0;
margin-left: 0;
padding-left: 0;
}
time{
margin: 0;
padding: 0;
margin-left: 0;
padding-left: 0;
}

.title-top-navigation-section {
display: flex;
justify-content: space-between;
flex-flow: row;
align-items: center;

}
@media (min-width: 769px) {
	.title-top-navigation-section .site-brand > a,
	.title-top-navigation-section .custom-logo {
		max-height: 60px;
	}
	.title-type-menu-right {
		min-height: 96px;
	}
	.title-type-menu-right > .title-navigation-content-row,
	.title-type-menu-left > .title-navigation-content-row {
		display: flex;
		width: 100%;
		justify-content: space-between;
		align-items: flex-start;
	}
	.title-type-menu-right .title-navigation-left-box {
		box-sizing: border-box;
		width: 100%;
	}
	.title-type-menu-right ul.global-menu > li > a {
		/* height: 70px; */
		padding: 6.5px;
		align-items: center;
		box-sizing: border-box;
	}

	.title-type-menu-left {
		min-height: 96px;
	}
	.title-type-menu-left .title-navigation-left-box {
		box-sizing: border-box;
	}
	.title-type-menu-left ul.global-menu > li > a {
		/* height: 70px; */
		padding: 6.5px;
		align-items: center;
		box-sizing: border-box;
	}
	.title-type-menu-right.has-title-top-catchphrase .title-navigation-right-box,
	.title-type-menu-left.has-title-top-catchphrase .title-navigation-right-box {
		align-self: flex-end;
	}

	.title-type-center .title-navigation-right-box {
		width: 100%;
	}

	.title-type-contact .title-navigation-right-box {
		width: 100%;
	}
}
.justify-content-none {
justify-content: flex-start;
}

.title-navigation-left-box{
display: flex;
justify-content: flex-start;
align-items: center;
margin-right: 10px;

}
.title-brand-box {
display: flex;
flex-direction: column;
justify-content: center;
}
.site-catchphrase,
.top-navigation-catchphrase {
white-space: nowrap;
}
.title-type-menu-right .title-brand-box {
flex-direction: column;
align-items: flex-start;
text-align: left;
}
.title-type-menu-right .title-brand-box h1,
.title-type-menu-right .title-brand-box .sitename,
.title-type-menu-right .title-brand-box .site-catchphrase {
width: 100%;
}
.title-type-menu-left .title-brand-box {
flex-direction: column;
align-items: flex-start;
text-align: left;
}
.title-type-menu-left .title-brand-box h1,
.title-type-menu-left .title-brand-box .sitename,
.title-type-menu-left .title-brand-box .site-catchphrase {
width: 100%;
}
.title-type-contact-box .title-brand-box {
flex-direction: column;
align-items: flex-start;
text-align: left;
}
.title-type-contact-box .title-brand-box h1,
.title-type-contact-box .title-brand-box .sitename,
.title-type-contact-box .title-brand-box .site-catchphrase {
width: 100%;
}
@media (min-width: 769px) {
	.site-brand + .site-catchphrase {
		margin-top: 4px;
	}
}
.title-type-center-box .title-brand-box {
width: 100%;
align-items: center;
text-align: center;
}
.title-type-center-box .title-brand-box h1,
.title-type-center-box .title-brand-box .sitename,
.title-type-center-box .title-brand-box .site-catchphrase {
width: 100%;
text-align: center;
}
.title-type-center-box .site-brand > a {
justify-content: center;
}
.custom-logo {
	max-width: 100%;
	max-height: 40px;
	object-fit: cover;
}
.title-navigation-right-box{
display: flex;
text-align: right;
justify-content: center;
align-content: center;
align-items: center;
}
.title-navigation-right-box .nav{
		display: flex;
	  text-align: center;
		}
.title-type-menu-left {
	flex-direction: row;

}
.title-type-menu-left .title-navigation-right-box{
	width: 100%;
	justify-content: space-between;
	margin-left: 20px;
}
.title-type-menu-right {
	flex-direction: row;

}
.title-type-menu-right .title-navigation-right-box{
	width: 100%;
	justify-content: flex-end;
	margin-left: 20px;
}
.title-type-contact,
.title-type-center{
	flex-flow: column;
}
.title-type-center-box{
	text-align: center;
	justify-content: center;
	margin: auto;
	margin-top: 15px;
	margin-bottom: 15px;
}

.title-type-contact-box{
	display: flex;
	width: 100%;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	margin: auto;
	margin-top: 15px;
	margin-bottom: 15px;
	margin-left: 25px;
  margin-right: 25px;
  padding-left: 25px;
  padding-right: 25px;
}
.title-type-contact-box .header-contact {
	margin-left: auto;
}

.title-fullwide-margin{
	margin-left: 25px;
	margin-right: 25px;
}
.title-fullwide-padding{
	padding-left: 25px;
	padding-right: 25px;
}
@media (max-width: 768px) {
	.title-top-navigation-section {
		display: flex;
		flex-flow: column;
	}

	.title-navigation-left-box{
		display: inline-block;
		vertical-align: top;
		text-align:left;
		width: 100%;
		height: auto;
		margin: 10px 0;
		padding: 0 10px;
	}
	.title-navigation-left-box.mobile-title-center {
		width: auto;
		text-align: center;
	}
	.title-type-center .title-navigation-left-box{
		width: auto;

	}
}

.title-navigation{
width: 100%;

height: fit-content;
padding: 0;
margin-right: auto;
margin-left: auto;
}

.header-type-fixed-sticky {
	position: fixed;
	top: -1000px;
	width: 100%;

	text-align: center;
	box-sizing: border-box;
	transition: .5s;
	z-index: 1000;
	text-align: center;

}
.header-type-fixed-sticky > .title-top-navigation-section
{
	width: 100%;
}

.header-type-fixed-sticky.is-show {
	top: 0;
	left: 0;
	right: 0;

}
@media (max-width: 768px) {
	.header-type-fixed-sticky{
		display: none;
	}
}

/********************************************************
記事一覧 旧
*********************************************************/
.eyecatch-float-box-320 {
width: 50%;
height: 50%;
max-width: 320px;
padding: 5px;
object-fit: cover;
}

.eyecatch-float-box-320x180 {
width: 50%;
height: 50%;
max-width: 320px;
max-height: 180px;
padding: 5px;
object-fit: cover;
}
.eyecatch-float-box-150x150 {
width: 50%;
height: 50%;
max-width: 150px;
padding: 5px;
object-fit: cover;
}

.eyecatch-float-box-card {
height: 24vh;
padding: 5px;
}
.card-body>figure{
	margin: 0;
}

.card a{
text-decoration: none;

}

.card-max{
max-width: 650px;
}

.contents-img {
padding: 0.2em 0;
text-align: center;
background: #e1f3ff;
}

.full-width {
margin-left: calc(-50vw + 50%);
margin-right: calc(-50vw + 50%);
}

/********************************************************
カラムの設定
*********************************************************/
.contents-container{
	margin-right: auto;
	margin-left: auto;
	margin-top: 0;
	margin-bottom: 0;
	padding-inline: var(--theme-container-padding-x);
	}

.column-container
{

display: flex;

flex-direction: row;
width: 100%;
align-items: flex-start;
}
.column-container > * {
	box-sizing: border-box;
}

.main-container {
flex: 0 1 var(--theme-root-main-column-width);
min-width: 0;
padding: 0;
}
.sidebar-container {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
}
.main-section {
	width: 100%;
}

/* カラム左寄せ時も、縦積みではメインを先に表示する */
@media (max-width: 1150px) {
  .column-container {
    flex-direction: column !important;
  }

  .main-container,
  .sidebar-container {
    width: 100%;
    flex-basis: auto;
  }
}

@media (max-width: 600px) {
	.contents-container {
		padding-inline: 0;
	}
}
/********************************************************
カテゴリーとタグと時間など装飾
*********************************************************/
.single-meta-section {
	display: flex;
	flex-direction: row;
	align-items: center;

	margin: 0;
	padding: 0;
	justify-content: flex-start;
	gap:10px;
	font-size: small;
	flex-wrap: wrap;
	margin: 1rem 0;
}

.single-category-section,
.single-tags-section,
.single-time-section,
.single-author-section,
.page-time-section,
.page-author-section,
.articles-category-section,
.articles-tags-section,
.articles-time-section,
.articles-author-section{
	display: flex;
	gap: 5px;
	white-space: nowrap;
	align-items: center;
	padding: 0;
	margin: 0;
	font-size: small;
}

.label-item-small {

	text-decoration: none;
	font-size: small;
	flex-wrap: wrap;
	white-space:nowrap;
	line-height: 1;
}
.label-item-small a{
	color: inherit;
	text-decoration: none;

}

.label-color-category {
	color: var(--main-dark-area-text-color);
	background-color: var(--main-dark-area-bg-color);
	border: solid 1px currentColor;
	padding: 3px 10px;
	line-height: 1;
}
.label-color-tags {
	color: var(--main-dark-area-bg-color);
	background-color: var(--main-dark-area-text-color);
	border: solid 1px currentColor;
	padding: 3px 10px;
	line-height: 1;
}

/********************************************************
記事一覧 アーカイブ
*********************************************************/

/* 区切り線（2列デザインでは先頭行の2件に上線を表示） */
@media (min-width: 769px) {
	.article-list.article-list-column-two:has(.design-border-separator-line-updown) > .design-border-separator-line-updown:nth-child(2) {
		border-top-style: solid;
		border-top-width: 1px;
	}
}

/* =========================== */
/* 記事一覧 アーカイブページ */
/* =========================== */
.article-list {
	display: grid;
	grid-template-columns: 1fr;
	align-items: stretch;
	max-width: 100%;
}

.articles-post-class {
	min-width: 0;
	height: 100%;
}

a.list-articles-card {
	color: initial;
}

.list-articles-card {
	display: flex;
	width: 100%;
	height: 100%;
	min-width: 0;
	overflow: hidden;
	text-decoration: none;
}

.articles-posted-card-image-zone,
.articles-posted-card-figure-zone {
	width: 100%;
	min-width: 0;
	margin: 0;
	overflow: hidden;
}

.articles-posted-card-image-item {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.articles-card-text-section {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.articles-posted-card-title-item {
	display: -webkit-box;
	margin: 0;
	overflow: hidden;
	font-size: 1.5em;
	line-height: 1.5;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.articles-category-section,
.articles-tags-section,
.articles-time-section,
.articles-author-section,
.articles-card-primary-meta,
.articles-card-secondary-meta,
.articles-card-taxonomy-meta,
.articles-card-byline-meta {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: .5rem;
	flex-wrap: wrap;
}

.articles-category-item,
.articles-tags-item,
.articles-time-section time {
	white-space: nowrap;
}

.articles-author-section {
	margin-left: auto;
}

.articles-posted-card-excerpt-section {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.articles-posted-card-excerpt-section > :first-child {
	margin-top: 0;
}

.articles-posted-card-excerpt-section > :last-child {
	margin-bottom: 0;
}

.articles-posted-card-button-section {
	--read-more-text-color: var(--main-dark-area-text-color);
	--read-more-bg-color: var(--main-dark-area-bg-color);
	display: flex;
	justify-content: center;
	width: 100%;
	margin-top: auto;
	border: solid 1px transparent;
	padding: 10px;
	text-align: center;
	color: var(--read-more-text-color);
	border-color: var(--read-more-text-color);
	background-color: var(--read-more-bg-color);
}

/* スタンダード横型 */
.card-design-standard-horizontal {
	align-items: flex-start;
	gap: 1rem;
	padding: 1rem;
}
.card-design-standard-horizontal .articles-posted-card-image-zone {
	flex: 0 0 32%;
	width: 32%;
}
.card-design-standard-horizontal .articles-card-text-section {
	gap: .5rem;
}
.card-design-standard-horizontal .articles-posted-card-excerpt-section {
	-webkit-line-clamp: 2;
}
.card-design-standard-horizontal .articles-card-primary-meta,
.card-design-standard-horizontal .articles-card-secondary-meta {
	justify-content: space-between;
}

@media (max-width: 768px) {
	.card-design-standard-horizontal {
		flex-direction: column;
	}
	.card-design-standard-horizontal .articles-posted-card-image-zone {
		flex-basis: auto;
		width: 100%;
	}
}

/* タイトルトップ横型 */
.card-design-title-top-horizontal {
	flex-direction: column;
	gap: 1rem;
	padding: 1rem;
}
.card-design-title-top-horizontal > .articles-posted-card-title-item {
	width: 100%;
}
.card-design-title-top-horizontal .articles-card-horizontal-body {
	display: flex;
	align-items: flex-start;
	width: 100%;
	gap: 1rem;
}
.card-design-title-top-horizontal .articles-posted-card-image-zone {
	flex: 0 0 40%;
	width: 40%;
}
.card-design-title-top-horizontal .articles-card-text-section {
	gap: .5rem;
}

@media (max-width: 768px) {
	.card-design-title-top-horizontal .articles-card-horizontal-body {
		flex-direction: column;
	}
	.card-design-title-top-horizontal .articles-posted-card-image-zone {
		flex-basis: auto;
		width: 100%;
	}
}

/* メディア横型 */
.card-design-media-horizontal {
	align-items: flex-start;
	gap: 1rem;
	padding: 1rem;
}
.card-design-media-horizontal .articles-posted-card-image-zone {
	flex: 0 0 40%;
	width: 40%;
}
.card-design-media-horizontal .articles-card-text-section {
	gap: .5rem;
}
.card-design-media-horizontal .articles-card-byline-meta {
	justify-content: flex-end;
	margin-top: auto;
}

@media (max-width: 600px) {
	.card-design-media-horizontal {
		flex-direction: column;
	}
	.card-design-media-horizontal .articles-posted-card-image-zone {
		flex-basis: auto;
		width: 100%;
	}
}

/* タイトルトップ縦型 */
.card-design-title-top-vertical {
	flex-direction: column;
	gap: .75rem;
	padding: 1rem;
}
.card-design-title-top-vertical > .articles-card-byline-meta {
	justify-content: flex-end;
}
.card-design-title-top-vertical .articles-card-text-section {
	gap: .75rem;
}

/* カテゴリートップ縦型 */
.card-design-category-top-vertical {
	flex-direction: column;
	gap: .75rem;
	padding: 1rem;
}
.card-design-category-top-vertical .articles-card-text-section {
	gap: .75rem;
}
.card-design-category-top-vertical .articles-time-section,
.card-design-category-top-vertical .articles-author-section {
	justify-content: flex-end;
}

/* ボトムオーバーレイ型 */
.article-list.article-design-bottom-overlay,
.article-list.article-design-full-overlay {
	gap: var(--space-lg);
}
.card-design-bottom-overlay {
	position: relative;
	flex-direction: column;
}
.card-design-bottom-overlay .articles-card-text-section {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: auto;
	gap: .5rem;
	padding: 2.5rem 1rem 1rem;
	background: linear-gradient(transparent, var(--main-dark-area-bg-color));
	color: var(--main-dark-area-text-color);
}
.card-design-bottom-overlay .articles-card-byline-meta {
	justify-content: flex-end;
}
.card-design-bottom-overlay .articles-card-text-section.without-eyecatch {
	position: static;
	width: 100%;
	padding: 1rem;
	background: none;
	color: inherit;
}

/* フルオーバーレイ型 */
.article-list.article-design-full-overlay {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.card-design-full-overlay {
	position: relative;
	min-height: 320px;
}
.card-design-full-overlay .articles-posted-card-image-zone {
	position: relative;
	min-height: inherit;
}
.card-design-full-overlay .articles-posted-card-figure-zone,
.card-design-full-overlay .articles-posted-card-image-item {
	height: 100%;
	min-height: inherit;
}
.card-design-full-overlay .articles-category-section {
	position: absolute;
	top: 1rem;
	left: 1rem;
	z-index: 1;
}
.card-design-full-overlay .articles-card-text-section {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	gap: .5rem;
	padding: 2.5rem 1rem 1rem;
	background: linear-gradient(transparent, var(--main-dark-area-bg-color));
	color: var(--main-dark-area-text-color);
}
.card-design-full-overlay .articles-card-byline-meta {
	justify-content: flex-end;
}
.card-design-full-overlay > .articles-card-text-section.without-eyecatch {
	position: static;
	min-height: 320px;
	gap: .5rem;
	padding: 1rem;
	background: none;
	color: inherit;
}
@media (max-width: 768px) {
	.article-list.article-design-full-overlay {
		grid-template-columns: 1fr;
	}
}

/* コンパクトメディア型 */
.card-design-compact-media {
	align-items: flex-start;
	gap: .5rem;
	padding: .5rem;
}
.card-design-compact-media .articles-posted-card-image-zone {
	flex: 0 1 160px;
	width: clamp(120px, 22%, 160px);
}
.card-design-compact-media .articles-card-text-section {
	gap: .35rem;
}
.card-design-compact-media .articles-posted-card-title-item,
.card-design-compact-media .articles-posted-card-excerpt-section {
	-webkit-line-clamp: 2;
}
.card-design-compact-media .articles-posted-card-title-item {
	font-size: 1.25em;
}
.card-design-compact-media .articles-card-primary-meta,
.card-design-compact-media .articles-card-secondary-meta {
	font-size: .875em;
}

@media (max-width: 600px) {
	.card-design-compact-media {
		flex-direction: column;
	}
	.card-design-compact-media .articles-posted-card-image-zone {
		flex-basis: auto;
		width: 100%;
	}
}

/* クリーンカード型 */
.article-list.article-design-clean-card {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.card-design-clean-card {
	flex-direction: column;
	padding: 1rem;
}
.card-design-clean-card .articles-card-text-section {
	gap: .75rem;
	padding-top: 1rem;
}
.card-design-clean-card .articles-posted-card-excerpt-section {
	-webkit-line-clamp: 3;
}
@media (max-width: 768px) {
	.article-list.article-design-clean-card {
		grid-template-columns: 1fr;
	}
}

/* マガジン型 */
.article-list.article-design-magazine {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.article-list.article-design-magazine > .articles-post-class:first-child {
	grid-column: 1 / -1;
}
.card-design-magazine {
	flex-direction: column;
	padding: 1rem;
}
.card-design-magazine .articles-card-text-section {
	gap: .75rem;
	padding-top: 1rem;
}
.card-design-magazine .articles-posted-card-excerpt-section {
	-webkit-line-clamp: 2;
}
.article-list.article-design-magazine > .articles-post-class:first-child .articles-posted-card-title-item {
	font-size: 1.8em;
}
.article-list.article-design-magazine > .articles-post-class:first-child .articles-posted-card-excerpt-section {
	-webkit-line-clamp: 3;
}

@media (max-width: 768px) {
	.article-list.article-design-magazine {
		grid-template-columns: 1fr;
	}
	.article-list.article-design-magazine > .articles-post-class:first-child {
		grid-column: auto;
	}
}

/* オーバーラップカード型 */
.article-list.article-design-overlap-card {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.card-design-overlap-card {
	flex-direction: column;
	overflow: visible;
}
.card-design-overlap-card .articles-card-text-section {
	position: relative;
	width: calc(100% - 2rem);
	margin: -2rem auto 0;
	gap: .75rem;
	padding: 1rem;
	background: var(--theme-min-contents-bg-color, inherit);
}
.card-design-overlap-card .articles-card-text-section.without-eyecatch {
	width: 100%;
	margin-top: 0;
}

@media (max-width: 768px) {
	.article-list.article-design-overlap-card {
		grid-template-columns: 1fr;
	}
}

/* ------------------------- */
/* 記事一覧 カラム数 */
/* ------------------------- */
.article-list-column-two {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.article-list-column-one {
	display: grid;
	grid-template-columns: 1fr;
}

/********************************************************
投稿ページ固定ページ
*********************************************************/
.archive-category-item,
.single-category-item {
	white-space: nowrap;
}
.page-feed-figure.is-full-eyecatch {
	height: 100px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-feed-figure.is-full-eyecatch img {
	height: 100%;
	width: auto;
	max-width: none;
	object-fit: contain;
}

.articles-posted-card-figure-zone.is-full-eyecatch {
	aspect-ratio: 16 / 9;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.articles-posted-card-figure-zone.is-full-eyecatch img {
	height: 100%;
	width: auto;
	max-width: none;
	object-fit: contain;
}

.page-post-contents>h1,h2,h3,h4,h5,h6{
	margin-bottom: 5px;
}
.page-post-contents>h1,h2,h3,h4,h5,h6{
	margin-bottom: 5px;
}

.design-imagein-absolute-top {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  padding: 10px;
}

/********************************************************
著者プロフィールBOX設定
*********************************************************/
.posted-by-author {
padding: 0;
margin-bottom: 25px;
overflow: hidden;
}
.posted-by-about-me {
	width: 100%;
	padding: 10px;

	margin-bottom: 0;
}
.posted-by-about-me{
white-space: nowrap;
}
.posted-by-contents{
overflow: hidden;
display: flex;
flex-direction: row;
padding: 10px;
background-size:cover;
gap: 10px;
}

.posted-by-icon-box{

	padding: 10px;
	object-fit: cover;
	display: flex;
	flex-direction: column;
	gap: 5px;

align-items: flex-start;
}

.posted-by-author-icon-contents{
max-width: 100%;
}
.posted-by-figure {
	margin: 0;
	width: 100%;
	text-align: center;
}
.posted-by-author-icon-contents .avatar{
border-radius: var(--theme-border-radius-avatar);
}
.posted-by-author-name {
	text-align: left;
	display: block;
	width: 100%;
  font-size: large;
  font-weight: bold;
  text-decoration: none;
}
.posted-by-author-name-center {
	text-align: center;
}
.posted-by-author-name a {
	text-decoration:none;
}
.hover-action.link-text-hover .posted-by-author-name a:hover {
	opacity: 0.88;
}

.posted-by-text-box{
	overflow: hidden;

	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 10px;
	justify-content:space-between;
	gap: 5px;

}

@media (max-width: 768px) {

.posted-by-contents{
	flex-direction: column;
}
}

.posted-by-author-follow-button{
	display: flex;
	gap: 5px;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-top: 5px;
}

.posted-by-author-follow-button>.sns-follow-button{
	text-decoration: none;

	display: flex;
  width: 2rem;
  height: 2rem;
  justify-content: center;
  align-items: center;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.posted-by-follow-text-color>.sns-follow-button{
color:white;
}
.posted-by-follow-bg-color>.sns-follow-button{
background-color:white;
}
/* SNSシェアボタン 背景色ブランドカラー */
.posted-by-follow-text-color>.sns-btn-twitter {background-color: #0F1419;}
.posted-by-follow-text-color>.sns-btn-facebook {background-color: #3b5998;}
.posted-by-follow-text-color>.sns-btn-hatena-bookmark {background-color: #00a4de;}
.posted-by-follow-text-color>.sns-btn-line {background-color: #00b900;}
.posted-by-follow-text-color>.sns-btn-pinterest {background: #bd081c;}
.posted-by-follow-text-color>.sns-btn-linkedin {background-color: #0077b5;}
.posted-by-follow-text-color>.sns-btn-copy {background-color: #696969;}
.posted-by-follow-text-color>.sns-btn-instagram {background-color: #cf2e92;}
.posted-by-follow-text-color>.sns-btn-youtube {background-color: #da1725;}
.posted-by-follow-text-color>.sns-btn-twitch {background-color: #6441a4;}
.posted-by-follow-text-color>.sns-btn-github {background-color: #4183c4;}
.posted-by-follow-text-color>.sns-btn-codepen {background-color: #000;}
.posted-by-follow-text-color>.sns-btn-feedly {background-color: #6CC655;}
.posted-by-follow-text-color>.sns-btn-rss {background-color:#ee802f;}
.posted-by-follow-text-color>.sns-btn-tiktok {background-color:#000000;}
.posted-by-follow-text-color>.sns-btn-amazon {background-color:#ff9900;}
.posted-by-follow-text-color>.sns-btn-rakuten {background-color:#bf0000;}
/* SNSシェアボタン 背景色ブランドカラー:hover */
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-twitter:is(:hover, :focus-visible)  {color: #0F1419;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-facebook:is(:hover, :focus-visible)  {color: #3b5998;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-hatena-bookmark:is(:hover, :focus-visible)  {color: #00a4de;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-line:is(:hover, :focus-visible)  {color: #00b900;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-pinterest:is(:hover, :focus-visible)  {color: #bd081c;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-linkedin:is(:hover, :focus-visible)  {color: #0077b5;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-copy:is(:hover, :focus-visible)  {color: #696969;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-instagram:is(:hover, :focus-visible)  {color: #cf2e92;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-youtube:is(:hover, :focus-visible)  {color: #da1725;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-twitch:is(:hover, :focus-visible)  {color: #6441a4;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-github:is(:hover, :focus-visible)  {color: #4183c4;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-codepen:is(:hover, :focus-visible)  {color: #000;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-feedly:is(:hover, :focus-visible)  {color: #6CC655;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-rss:is(:hover, :focus-visible)  {color:#ee802f;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-tiktok:is(:hover, :focus-visible)  {color:#000000;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-amazon:is(:hover, :focus-visible)  {color:#ff9900;}
.hover-action.hover-color-inversion .posted-by-follow-text-hover>.sns-btn-rakuten:is(:hover, :focus-visible)  {color:#bf0000;}
/* SNSシェアボタン 文字色ブランドカラー */
.posted-by-follow-bg-color>.sns-btn-twitter {color: #0F1419;}
.posted-by-follow-bg-color>.sns-btn-facebook {color: #3b5998;}
.posted-by-follow-bg-color>.sns-btn-hatena-bookmark {color: #00a4de;}
.posted-by-follow-bg-color>.sns-btn-line {color: #00b900;}
.posted-by-follow-bg-color>.sns-btn-pinterest {color: #bd081c;}
.posted-by-follow-bg-color>.sns-btn-linkedin {color: #0077b5;}
.posted-by-follow-bg-color>.sns-btn-copy {color: #696969;}
.posted-by-follow-bg-color>.sns-btn-instagram {color: #cf2e92;}
.posted-by-follow-bg-color>.sns-btn-youtube {color: #da1725;}
.posted-by-follow-bg-color>.sns-btn-twitch {color: #6441a4;}
.posted-by-follow-bg-color>.sns-btn-github {color: #4183c4;}
.posted-by-follow-bg-color>.sns-btn-codepen {color: #000;}
.posted-by-follow-bg-color>.sns-btn-feedly {color: #6CC655;}
.posted-by-follow-bg-color>.sns-btn-rss {color:#ee802f;}
.posted-by-follow-bg-color>.sns-btn-tiktok {color:#000000;}
.posted-by-follow-bg-color>.sns-btn-amazon {color:#ff9900;}
.posted-by-follow-bg-color>.sns-btn-rakuten {color:#bf0000;}
/* SNSシェアボタン 背景色ブランドカラー:hover */
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-twitter:is(:hover, :focus-visible) {background-color: #0F1419;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-facebook:is(:hover, :focus-visible) {background-color: #3b5998;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-hatena-bookmark:is(:hover, :focus-visible) {background-color: #00a4de;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-line:is(:hover, :focus-visible) {background-color: #00b900;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-pinterest:is(:hover, :focus-visible) {background-color: #bd081c;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-linkedin:is(:hover, :focus-visible) {background-color: #0077b5;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-copy:is(:hover, :focus-visible) {background-color: #696969;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-instagram:is(:hover, :focus-visible) {background-color: #cf2e92;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-youtube:is(:hover, :focus-visible) {background-color: #da1725;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-twitch:is(:hover, :focus-visible) {background-color: #6441a4;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-github:is(:hover, :focus-visible) {background-color: #4183c4;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-codepen:is(:hover, :focus-visible) {background-color: #000;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-feedly:is(:hover, :focus-visible) {background-color: #6CC655;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-rss:is(:hover, :focus-visible) {background-color:#ee802f;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-tiktok:is(:hover, :focus-visible) {background-color:#000000;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-amazon:is(:hover, :focus-visible) {background-color:#ff9900;}
.hover-action.hover-color-inversion .posted-by-follow-bg-hover>.sns-btn-rakuten:is(:hover, :focus-visible) {background-color:#bf0000;}
/* SNSシェアボタン ブランドカラー */
.posted-by-follow-border-color>.sns-btn-twitter {border:solid 1px #0F1419;}
.posted-by-follow-border-color>.sns-btn-facebook {border:solid 1px #3b5998;}
.posted-by-follow-border-color>.sns-btn-hatena-bookmark {border:solid 1px #00a4de;}
.posted-by-follow-border-color>.sns-btn-line {border:solid 1px #00b900;}
.posted-by-follow-border-color>.sns-btn-pinterest {border:solid 1px #bd081c;}
.posted-by-follow-border-color>.sns-btn-linkedin {border:solid 1px #0077b5;}
.posted-by-follow-border-color>.sns-btn-copy {border:solid 1px #696969;}
.posted-by-follow-border-color>.sns-btn-instagram {border:solid 1px #cf2e92;}
.posted-by-follow-border-color>.sns-btn-youtube {border:solid 1px #da1725;}
.posted-by-follow-border-color>.sns-btn-twitch {border:solid 1px #6441a4;}
.posted-by-follow-border-color>.sns-btn-github {border:solid 1px #4183c4;}
.posted-by-follow-border-color>.sns-btn-codepen {border:solid 1px #000;}
.posted-by-follow-border-color>.sns-btn-feedly {border:solid 1px #6CC655;}
.posted-by-follow-border-color>.sns-btn-rss {border:solid 1px #ee802f;}
.posted-by-follow-border-color>.sns-btn-tiktok {border:solid 1px #000000;}
.posted-by-follow-border-color>.sns-btn-amazon {border:solid 1px #ff9900;}
.posted-by-follow-border-color>.sns-btn-rakuten {border:solid 1px #bf0000;}

.hover-action.hover-color-inversion .posted-by-follow-bg-hover .sns-follow-button:is(:hover, :focus-visible){

color:white;
}

.hover-action.hover-color-inversion .posted-by-follow-text-hover .sns-follow-button:is(:hover, :focus-visible) {
background-color:white;
}

/********************************************************
関連記事
*********************************************************/
.related-article a{
 text-decoration: none;
}

.related-contents{
	display: flex;
	align-items: flex-start;
height: auto;
position: relative;
gap: var(--space-md);
	padding: var(--space-md);
}
.related-border-separator-middle {
	border-bottom: solid 1px var(--main-card-border-color);
}
.related-border-separator-middle:last-child {
	border-bottom: none;
}
.related-border-separator-updown {
	border-bottom: solid 1px var(--main-card-border-color);
}
.related-border-separator-updown:first-child {
	border-top: solid 1px var(--main-card-border-color);
}

.related-article-vertical{
	padding: 0;
	padding-bottom: .5rem;
}
.related-article-vertical .related-text-contents {
	padding: 0 .5rem;
}

.related-layout-vertical {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
@media (max-width: 768px) {
	.related-article-slider .swiper-wrapper {
		flex-direction: column;
		transform: none !important;
		gap: 1rem;
	}

	.related-article-slider .swiper-slide {
		width: 100% !important;
		margin-right: 0 !important;
	}

	.related-article-slider .swiper-slide-duplicate {
		display: none;
	}

	.related-article-slider .swiper-button-prev,
	.related-article-slider .swiper-button-next,
	.related-article-slider .swiper-pagination {
		display: none;
	}
}

.related-figure {
width: 100%;
margin-bottom: 0;
	overflow: hidden;
}

.related-figure.is-full-eyecatch {
	height: 140px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.related-figure.is-full-eyecatch img {
	height: 100%;
	width: auto;
	max-width: none;
	object-fit: contain;
}

.related-layout-vertical .related-figure{
	width: 250px;
}

.related-text-contents {
width: 100%;
}
.related-item-title {
font-size: 14px;
}
.related-item-excerpt {
	font-size: medium;
}
.related-layout-vertical a {
text-decoration: none;
}
.related-layout-vertical .related-text-contents {
	align-self: flex-start;
	margin-top: 0;
	padding-top: 0;
}
.related-layout-vertical .related-item-title {
	margin-top: 0;
	padding-top: 0;
	line-height: 1.35;
}
.related-item-title{
font-size: 18px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}

.related-meta-section {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: .5em;
	flex-wrap: wrap;
	font-size: small;
}
.related-time-section {
	display: flex;
	align-items: center;
	gap: .5em;
	text-align: right;
}
.related-side-by-side{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}

/********************************************************
ピックアップスライダー
********************************************************/
.theme-pickup-slider-container {
	width: 100%;
	margin-top: 20px;
	margin-bottom: 25px;
	padding-top: 20px;
	padding-bottom: 20px;
}

.theme-pickup-slider {
width: 100%;
height: 100%;
align-items: center;
}

.theme-pickup-slider-section{
justify-content: space-between;
}

.swiper-slide {
height: auto;
}
.theme-pickup-slider-title{
	--pickup-title-bg-color: transparent;
	height: 100%;
	margin: 0;
	padding: .5rem;
	background-color: var(--pickup-title-bg-color);
}

.theme-pickup-slider-item {
	--pickup-item-bg-color: transparent;
	--pickup-border-color: var(--main-card-border-color);
text-align: center;
border: 1px solid var(--pickup-border-color);
	background-color: var(--pickup-item-bg-color);
justify-content: center;
overflow: hidden;
}

.theme-pickup-slider-item a{
text-decoration: none;

}
.swiper-pagination-bullets {
position: static;
margin-top: 16px;
}

.hero-slider .hero-slider-pagination.swiper-pagination-bullets {
position: absolute;
left: 0;
right: 0;
bottom: 40px;
margin-top: 0;
z-index: 3;
}

.hero-integrated-section:has(.hero-media-section-scroll)
  .hero-slider .hero-slider-pagination.swiper-pagination-bullets {
bottom: 72px;
}

@media (max-width: 768px) {
  .hero-integrated-section:has(.hero-media-section-scroll)
    .hero-slider .hero-slider-pagination.swiper-pagination-bullets {
  bottom: 80px;
  }
}

/********************************************************
ピックアップスライダー
********************************************************/

/********************************************************
目次
********************************************************/
.toc-details{
position: relative;
transition: all .5s ease;
overflow: hidden;
width: 80%;
border: solid 1px var(--main-contents-border-color);
border-radius: var(--theme-border-radius-section);
background: transparent;
box-shadow: none;
margin: 60px auto 50px;
z-index: 0;
}
.toc-summary{
position: relative;
display: flex;
align-items: center;
width: 100%;

padding: 10px;

font-size: 1.5em;
font-weight: bold;
transition: all .3s ease;
cursor: pointer;
justify-content: center;
text-align: center;
z-index: 1;
}

.toc-details > .wp-block-list {
margin-block: 0;
padding-inline: var(--space-2xl);
padding-block-end: var(--space-lg);
}

/* 	目次開閉ボタン */
.toc-summary::after {
	content: '+';
	position: absolute;
	transform: translateY(-50%);
	-webkit-transform: translateY( -50%);
	-ms-transform: translateY( -50%);
	top: 50%;
	right: 1rem;
	transition: transform 0.5s;
	font-size: 30px;
	padding-bottom: 10px;
}
.toc-details[open] .toc-summary::after {
	transform: translateY(-50%) rotate(45deg);
}

/********************************************************
メニュー アイテム　menu
********************************************************/
.menu-item-description  {
display: block;
font-size: 77%;
}

/********************************************************
パンくずリスト
********************************************************/
.breadcrumb-section {
 font-size: small;
}
.breadcrumb {
	margin-top: 0;
	margin-bottom: 0;
}

.breadcrumb a {
	text-decoration: none;
}

.breadcrumb li:after {
content: '\003e';
margin-left: 10px;
margin-right: 10px;
opacity: 0.8;
}
.hover-action.link-text-hover .breadcrumb a:hover {
	opacity: 0.88;
}
.breadcrumb li:last-child:after {
content: "";
}

/********************************************************
コピーライト
********************************************************/
.copyright {
width: 100%;
text-align: center;
}

/********************************************************
ローディングアニメーション
********************************************************/
/********************************************************
ローディングアニメーション
********************************************************/
/********************************************************
ローディングアニメーション
********************************************************/
/********************************************************
ローディングアニメーション
********************************************************/

/* =========================================================
  1. 初期色

  初期背景：白
  初期文字：グレー
  デザイン別に背景色・文字色は固定しない
  カスタマイザー側の #loading が勝てるように弱く指定
========================================================= */

:where(#loading.wd-loading) {
  background-color: #ffffff;
  color: #333333;
}

/* =========================================================
  2. 共通レイアウト
========================================================= */

#loading.wd-loading {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#loading.wd-loading.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* カスタマイザーの transition:none が勝てるように弱く指定 */
:where(#loading.wd-loading) {
  transition:
    opacity 700ms ease,
    visibility 700ms ease;
}

#loading.wd-loading.loaded,
#loading.wd-loading.is-active.loaded {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#loading.wd-loading,
#loading.wd-loading * {
  box-sizing: border-box;
}

#loading.wd-loading span {
  display: block;
}

#loading.wd-loading .wd-loading-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

#loading.wd-loading .wd-loading-frame {
  position: absolute;
  inset: 24px;
  z-index: 2;
  pointer-events: none;
}

#loading.wd-loading .wd-loading-visual,
#loading.wd-loading .wd-loading-content,
#loading.wd-loading .wd-loading-progress {
  position: relative;
  z-index: 3;
}

#loading.wd-loading .wd-loading-visual {
  width: 100px;
  height: 100px;
  margin: 0;
  color: currentColor;
}

#loading.wd-loading .wd-loading-content {
  display: grid;
  gap: 5px;
  justify-items: center;
  text-align: center;
  letter-spacing: 0.08em;
}

#loading.wd-loading .wd-loading-icon {
  display: block;
  color: currentColor;
}

#loading.wd-loading .wd-loading-text {
  display: block;
  font-size: 0.86rem;
  line-height: 1.4;
}

/* 初期文字点滅あり */
:where(#loading.wd-loading) .wd-loading-text {
  animation: wd-loading-text-blink 1.7s ease-in-out infinite;
}

#loading.wd-loading .wd-loading-name {
  display: block;
  font-size: 0.72rem;
  line-height: 1.4;
  opacity: 0.68;
}

#loading.wd-loading .wd-loading-logo {
  display: block;
}

#loading.wd-loading .wd-loading-logo img {
  max-width: 150px;
  max-height: 48px;
  width: auto;
  height: auto;
}

/* =========================================================
  3. パーツ初期非表示
========================================================= */

#loading.wd-loading .wd-loading-bg-layer,
#loading.wd-loading .wd-loading-bg-glow,
#loading.wd-loading .wd-loading-frame,
#loading.wd-loading .wd-loading-orb,
#loading.wd-loading .wd-loading-orb-core,
#loading.wd-loading .wd-loading-orb-glow,
#loading.wd-loading .wd-loading-ring,
#loading.wd-loading .wd-loading-ring-item,
#loading.wd-loading .wd-loading-dots,
#loading.wd-loading .wd-loading-dot,
#loading.wd-loading .wd-loading-lines,
#loading.wd-loading .wd-loading-line,
#loading.wd-loading .wd-loading-bars,
#loading.wd-loading .wd-loading-bar,
#loading.wd-loading .wd-loading-particles,
#loading.wd-loading .wd-loading-particle,
#loading.wd-loading .wd-loading-progress,
#loading.wd-loading .wd-loading-progress-bar {
  display: none;
}

/* =========================================================
  4. loading_dots
========================================================= */

#loading.wd-loading.loading_dots .wd-loading-visual {
  width: 150px;
  height: 48px;
}

#loading.wd-loading.loading_dots .wd-loading-dots {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

#loading.wd-loading.loading_dots .wd-loading-dot {
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 9999px;
  background-color: currentColor;
  opacity: 0.25;
  animation: wd-loading-dots-dot 1.12s ease-in-out infinite;
}

#loading.wd-loading.loading_dots .wd-loading-dot1 {
  animation-delay: 0s;
}

#loading.wd-loading.loading_dots .wd-loading-dot2 {
  animation-delay: 0.1s;
}

#loading.wd-loading.loading_dots .wd-loading-dot3 {
  animation-delay: 0.2s;
}

#loading.wd-loading.loading_dots .wd-loading-dot4 {
  animation-delay: 0.3s;
}

#loading.wd-loading.loading_dots .wd-loading-dot5 {
  animation-delay: 0.4s;
}

#loading.wd-loading.loading_dots .wd-loading-dot6 {
  animation-delay: 0.5s;
}

@keyframes wd-loading-dots-dot {
  0%,
  80%,
  100% {
    transform: translateY(0) scale(0.82);
    opacity: 0.25;
  }

  40% {
    transform: translateY(-11px) scale(1);
    opacity: 1;
  }
}

@keyframes wd-loading-text-blink {
  0%,
  100% {
    opacity: 0.48;
  }

  50% {
    opacity: 1;
  }
}

/* =========================================================
  5. loading_ring
========================================================= */

#loading.wd-loading.loading_ring .wd-loading-visual {
  width: 108px;
  height: 108px;
}

#loading.wd-loading.loading_ring .wd-loading-ring,
#loading.wd-loading.loading_ring .wd-loading-orb {
  display: block;
}

#loading.wd-loading.loading_ring .wd-loading-ring {
  position: absolute;
  inset: 7px;
  border-radius: 9999px;
  border: 2px solid rgba(128, 128, 128, 0.22);
  border-top-color: currentColor;
  border-right-color: currentColor;
  animation: wd-loading-ring-rotate 0.95s linear infinite;
}

#loading.wd-loading.loading_ring .wd-loading-ring::before {
  content: "";
  position: absolute;
  inset: 14px;
  border-radius: inherit;
  border: 1px solid currentColor;
  opacity: 0.22;
  animation: wd-loading-ring-inner 1.8s ease-in-out infinite;
}

#loading.wd-loading.loading_ring .wd-loading-ring::after {
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: inherit;
  border: 1px solid currentColor;
  opacity: 0.12;
  animation: wd-loading-ring-halo 1.8s ease-in-out infinite;
}

#loading.wd-loading.loading_ring .wd-loading-orb {
  position: absolute;
  inset: 42px;
  border-radius: 9999px;
  background-color: currentColor;
  opacity: 0.22;
  animation: wd-loading-ring-orb 1.45s ease-in-out infinite;
}

#loading.wd-loading.loading_ring .wd-loading-content {
  gap: 5px;
  letter-spacing: 0.1em;
}

#loading.wd-loading.loading_ring .wd-loading-text {
  font-size: 0.82rem;
  line-height: 1.4;
  text-transform: uppercase;
}

#loading.wd-loading.loading_ring .wd-loading-name {
  font-size: 0.7rem;
  line-height: 1.4;
  opacity: 0.62;
}

@keyframes wd-loading-ring-rotate {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes wd-loading-ring-inner {
  0%,
  100% {
    transform: scale(0.86);
    opacity: 0.18;
  }

  50% {
    transform: scale(1.08);
    opacity: 0.38;
  }
}

@keyframes wd-loading-ring-halo {
  0%,
  100% {
    transform: scale(0.94);
    opacity: 0.1;
  }

  50% {
    transform: scale(1.12);
    opacity: 0.24;
  }
}

@keyframes wd-loading-ring-orb {
  0%,
  100% {
    transform: scale(0.72);
    opacity: 0.14;
  }

  50% {
    transform: scale(1.22);
    opacity: 0.32;
  }
}

/* =========================================================
  6. loading_glow
========================================================= */

#loading.wd-loading.loading_glow .wd-loading-visual {
  width: 132px;
  height: 132px;
}

#loading.wd-loading.loading_glow .wd-loading-bg-glow,
#loading.wd-loading.loading_glow .wd-loading-orb,
#loading.wd-loading.loading_glow .wd-loading-particles,
#loading.wd-loading.loading_glow .wd-loading-particle {
  display: block;
}

#loading.wd-loading.loading_glow .wd-loading-bg-glow {
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 9999px;
  transform: translate(-50%, -50%);
  background:
    radial-gradient(
      circle,
      currentColor 0%,
      transparent 68%
    );
  opacity: 0.08;
}

#loading.wd-loading.loading_glow .wd-loading-bg-glow1 {
  width: 360px;
  height: 360px;
  animation: wd-loading-glow-bg 3s ease-in-out infinite;
}

#loading.wd-loading.loading_glow .wd-loading-bg-glow2 {
  width: 540px;
  height: 540px;
  animation: wd-loading-glow-bg 4.2s ease-in-out infinite reverse;
}

#loading.wd-loading.loading_glow .wd-loading-orb {
  position: absolute;
  inset: 25px;
  border-radius: 48% 52% 58% 42% / 44% 48% 52% 56%;
  background-color: currentColor;
  opacity: 0.16;
  animation: wd-loading-glow-orb 2.4s ease-in-out infinite;
}

#loading.wd-loading.loading_glow .wd-loading-particles {
  position: absolute;
  inset: 0;
}

#loading.wd-loading.loading_glow .wd-loading-particle {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 9999px;
  background-color: currentColor;
  opacity: 0.2;
  animation: wd-loading-glow-particle 2.8s ease-in-out infinite;
}

#loading.wd-loading.loading_glow .wd-loading-particle1 {
  left: 10%;
  top: 28%;
  animation-delay: 0s;
}

#loading.wd-loading.loading_glow .wd-loading-particle2 {
  left: 76%;
  top: 18%;
  animation-delay: 0.2s;
}

#loading.wd-loading.loading_glow .wd-loading-particle3 {
  left: 88%;
  top: 62%;
  animation-delay: 0.4s;
}

#loading.wd-loading.loading_glow .wd-loading-particle4 {
  left: 22%;
  top: 74%;
  animation-delay: 0.6s;
}

#loading.wd-loading.loading_glow .wd-loading-particle5 {
  left: 48%;
  top: 6%;
  animation-delay: 0.8s;
}

#loading.wd-loading.loading_glow .wd-loading-particle6 {
  left: 58%;
  top: 86%;
  animation-delay: 1s;
}

#loading.wd-loading.loading_glow .wd-loading-particle7 {
  left: 4%;
  top: 54%;
  animation-delay: 1.2s;
}

#loading.wd-loading.loading_glow .wd-loading-particle8 {
  left: 92%;
  top: 36%;
  animation-delay: 1.4s;
}

#loading.wd-loading.loading_glow .wd-loading-content {
  gap: 6px;
  letter-spacing: 0.12em;
}

#loading.wd-loading.loading_glow .wd-loading-text {
  font-family: serif;
  font-size: 0.94rem;
  line-height: 1.5;
}

#loading.wd-loading.loading_glow .wd-loading-name {
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  opacity: 0.68;
}

@keyframes wd-loading-glow-bg {
  0%,
  100% {
    transform: translate(-50%, -50%) scale(0.9);
    opacity: 0.05;
  }

  50% {
    transform: translate(-50%, -50%) scale(1.08);
    opacity: 0.14;
  }
}

@keyframes wd-loading-glow-orb {
  0%,
  100% {
    border-radius: 48% 52% 58% 42% / 44% 48% 52% 56%;
    transform: rotate(0deg) scale(0.96);
    opacity: 0.14;
  }

  50% {
    border-radius: 58% 42% 44% 56% / 52% 44% 56% 48%;
    transform: rotate(14deg) scale(1.05);
    opacity: 0.24;
  }
}

@keyframes wd-loading-glow-particle {
  0%,
  100% {
    transform: translateY(0) scale(0.8);
    opacity: 0.12;
  }

  50% {
    transform: translateY(-14px) scale(1);
    opacity: 0.44;
  }
}

/* =========================================================
  7. loading_progress
========================================================= */

#loading.wd-loading.loading_progress .wd-loading-visual {
  width: min(320px, 70vw);
  height: 58px;
}

#loading.wd-loading.loading_progress .wd-loading-frame,
#loading.wd-loading.loading_progress .wd-loading-lines,
#loading.wd-loading.loading_progress .wd-loading-line,
#loading.wd-loading.loading_progress .wd-loading-progress,
#loading.wd-loading.loading_progress .wd-loading-progress-bar {
  display: block;
}

#loading.wd-loading.loading_progress .wd-loading-frame {
  inset: 28px;
  opacity: 0.55;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line {
  position: absolute;
  display: block;
  background-color: currentColor;
  opacity: 0.22;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line-top,
#loading.wd-loading.loading_progress .wd-loading-frame-line-bottom {
  left: 0;
  width: 100%;
  height: 1px;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line-top {
  top: 0;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line-bottom {
  bottom: 0;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line-left,
#loading.wd-loading.loading_progress .wd-loading-frame-line-right {
  top: 0;
  width: 1px;
  height: 100%;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line-left {
  left: 0;
}

#loading.wd-loading.loading_progress .wd-loading-frame-line-right {
  right: 0;
}

#loading.wd-loading.loading_progress .wd-loading-lines {
  position: absolute;
  inset: 0;
  display: grid;
  gap: 10px;
  align-content: center;
}

#loading.wd-loading.loading_progress .wd-loading-line {
  position: relative;
  height: 2px;
  overflow: hidden;
  border-radius: 9999px;
  background-color: rgba(128, 128, 128, 0.28);
}

#loading.wd-loading.loading_progress .wd-loading-line::before {
  content: "";
  display: block;
  width: 44%;
  height: 100%;
  border-radius: inherit;
  background-color: currentColor;
  animation: wd-loading-progress-line 1.35s ease-in-out infinite;
}

#loading.wd-loading.loading_progress .wd-loading-line2::before {
  animation-delay: 0.14s;
}

#loading.wd-loading.loading_progress .wd-loading-line3::before {
  animation-delay: 0.28s;
}

#loading.wd-loading.loading_progress .wd-loading-progress {
  width: min(340px, 72vw);
  height: 1px;
  margin-top: 6px;
  overflow: hidden;
  border-radius: 9999px;
  background-color: rgba(128, 128, 128, 0.25);
}

#loading.wd-loading.loading_progress .wd-loading-progress-bar {
  width: 38%;
  height: 100%;
  border-radius: inherit;
  background-color: currentColor;
  animation: wd-loading-progress-line 1.5s ease-in-out infinite;
}

#loading.wd-loading.loading_progress .wd-loading-content {
  gap: 5px;
  letter-spacing: 0.16em;
}

#loading.wd-loading.loading_progress .wd-loading-text {
  font-size: 0.78rem;
  line-height: 1.4;
  text-transform: uppercase;
}

#loading.wd-loading.loading_progress .wd-loading-name {
  font-size: 0.68rem;
  line-height: 1.4;
  opacity: 0.55;
}

@keyframes wd-loading-progress-line {
  0% {
    transform: translateX(-120%);
  }

  50% {
    transform: translateX(80%);
  }

  100% {
    transform: translateX(240%);
  }
}

/* =========================================================
  8. ロゴ
========================================================= */

#loading.wd-loading .custom-logo-link {
  display: inline-block;
}

/* =========================================================
  9. 動きを減らす設定
========================================================= */

@media (prefers-reduced-motion: reduce) {
  #loading.wd-loading,
  #loading.wd-loading *,
  #loading.wd-loading::before,
  #loading.wd-loading::after {
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
    transition-duration: 0.01ms;
  }
}
/********************************************************
トップへ戻るボタン
********************************************************/
.back-to-top-box{
display: flex;
justify-content: flex-end;
}

.back-to-top{
display: flex;
flex-direction: row;
flex-wrap: wrap;
bottom: 3.5rem;
right:2.5rem;
z-index: 100;
text-decoration: none;
justify-content: center;
align-items: center;
border: solid 1px transparent;
width: 50px;
height: 50px;

position: fixed;
opacity: 0;
visibility: hidden;
pointer-events: none;
}

.back-to-top[data-back-to-top-fixed="true"]{
	--back-to-top-text-color: var(--main-dark-area-bg-color);
	--back-to-top-bg-color: var(--main-dark-area-text-color);
	--back-to-top-border-color: var(--back-to-top-text-color);
color: var(--back-to-top-text-color);
border-color: var(--back-to-top-border-color);
background-color: var(--back-to-top-bg-color);
border-radius: var(--theme-border-radius-small-parts);
}

.back-to-top[data-back-to-top-fixed="false"]{
position: static;
opacity: 1;
visibility: visible;
pointer-events: auto;
flex-wrap: nowrap;
gap: 0.5em;
width: auto;
height: auto;
white-space: nowrap;
}

.back-to-top.is-visible{
opacity: 1;
visibility: visible;
pointer-events: auto;
}

.back-to-top::before {
	display: block;
    margin: auto;
    font-family: 'WhiteDress Icons';
    font-weight: 900;
    content: '\f077';
    font-size: 15px;
    text-align: center;
}

.back-to-top[data-back-to-top-fixed="false"]::before {
	font-size: 0.75em;
}

@media (max-width: 768px) {
	.back-to-top{
		bottom: 1rem;
		right: 1rem;
	}
}

@media (min-width: 769px) {
	.site-footer.has-footer-fixed-menu-pc .back-to-top{
		bottom: calc(4.5rem + 1rem);
	}
}
@media (max-width: 768px) {
	.site-footer.has-footer-fixed-menu-mobile .back-to-top{
		bottom: calc(4.5rem + 1rem);
	}
}

/********************************************************
追従サイドバー
********************************************************/
.right_sidebar_sticky_widget{
top:1rem;
}

/********************************************************
ヒーロースライダー
********************************************************/
.hero-slider{
margin-bottom: 20px;
}
.hero-integrated-section {
	position: relative;
	width: 100%;
	height: calc(100vh - var(--hero-header-offset, 70px));
	height: calc(100dvh - var(--hero-header-offset, 70px));
	min-height: 320px;
	overflow: hidden;
	color: #ffffff;
}
.hero-integrated-section.is-fullscreen {
	height: 100vh;
	height: 100dvh;
}
.hero-integrated-section .hero-video-layer,
.hero-integrated-section .hero-image-layer,
.hero-integrated-section .hero-slider-layer {
	position: absolute;
	inset: 0;
}
.hero-integrated-section .hero-video-layer,
.hero-integrated-section .hero-image-layer {
	z-index: 0;
}
.hero-integrated-section .hero-slider-layer {
	z-index: 1;
	margin-bottom: 0;
}
.hero-integrated-section .hero-slider,
.hero-integrated-section .hero-slider-contents,
.hero-integrated-section .hero-slider-item {
	height: 100%;
}
.hero-integrated-section .hero-slider {
	margin-bottom: 0;
}
.hero-integrated-section .hero-header-media {
	display: block;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: 100%;
	object-fit: cover;
	z-index: 0;
}
.hero-integrated-section.has-hero-video .hero-slider-item-img {
	position: relative;
	z-index: 0;
}
.hero-integrated-section .hero-media-section-scroll {
	z-index: 2;
}
.hero-slider-item{
display: flex;
position: relative;
width: 100%;
z-index: 0;
overflow-wrap:break-word;
text-align: center;
height: 100%;
}
.hero-slider-item.no-hero-slider-image {
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-slider-item.no-hero-slider-image .hero-slider-text-section {
  position: static;
  top: auto;
  left: auto;
  transform: none;
  -webkit-transform: none;
  -ms-transform: none;
  width: 100%;
  padding: 40px 45px;
  margin: 0 auto;
}

.hero-slider-item.no-hero-slider-image .hero-slider-text-contents {
  max-width: 960px;
  margin: 0 auto;
}
.hero-slider-text-contents {
  display: inline-block;
  max-width: min(100%, 960px);
  padding: clamp(18px, 3vw, 32px) clamp(20px, 4vw, 48px);
  color: var(--hero-slider-text-color, inherit);
  text-align: var(--hero-slider-text-align, inherit);
  background-color: var(--hero-slider-text-bg-color, transparent);
  border: var(--hero-slider-text-border, 0);
}

.hero-slider .hero-slider-button-prev,
.hero-slider .hero-slider-button-next {
	color: var(--hero-slider-text-color, var(--swiper-navigation-color, var(--swiper-theme-color)));
}
.hero-slider .hero-slider-pagination {
	color: var(--hero-slider-text-color, inherit);
}
.hero-slider .hero-slider-pagination .swiper-pagination-bullet {
	background-color: var(--hero-slider-text-color, var(--swiper-pagination-bullet-inactive-color, #000));
}
.hero-slider .hero-slider-pagination .swiper-pagination-bullet-active {
	background-color: var(--hero-slider-text-color, var(--swiper-pagination-color, var(--swiper-theme-color)));
}

@media (max-width: 768px) {
  .hero-slider-text-contents {
    max-width: 100%;
  }
}
.hero-slider-item-img{
width: 100%;
height: 100%;
object-fit: cover;
}
.hero-slider-text-section {
	color: var(--hero-slider-text-color, #fff);
	position: absolute;
top:  50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
font-size: larger;
z-index: 1;
text-align: center;

margin: auto;
  width: 100%;
  padding:5px 45px;
}
.hero-slider.swiper-initialized .hero-slider-item .hero-slider-text-section {
opacity: 0;
visibility: hidden;
pointer-events: none;
}
.hero-slider.swiper-initialized .hero-slider-item.swiper-slide-active .hero-slider-text-section,
.hero-slider.swiper-initialized .hero-slider-item.swiper-slide-duplicate-active .hero-slider-text-section {
opacity: 1;
visibility: visible;
pointer-events: auto;
}

.hero-slider-item-title {
font-size: 26px;
}

.hero-slider-item-text {
	margin-top: 18px;
	margin-bottom: 25px;
}
.hero-slider-item-button {
	display: inline-block;
	margin-top: 25px;
	color: var(--hero-slider-button-text-color, #fff);
	padding: 5px 50px;
	text-decoration: none;
	font-size: 18px;
	border: solid 1px var(--hero-slider-button-border-color, #fff);
	border-radius: var(--hero-slider-button-border-radius, 0);
	background-color: var(--hero-slider-button-bg-color, transparent);
}
.hover-action .hero-slider-item-button {
	transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}
.hover-action .hero-slider-item-button:hover {
	color: var(--hero-slider-button-hover-text-color, var(--hero-slider-button-text-color, #fff));
	border-color: var(--hero-slider-button-hover-border-color, var(--hero-slider-button-border-color, #fff));
	background-color: var(--hero-slider-button-hover-bg-color, var(--hero-slider-button-bg-color, transparent));
	opacity: var(--hero-slider-button-hover-opacity, 0.88);
	text-decoration: none;
}
.hover-action .hero-slider-item-button:active {
	transform: translateY(1px);
}
.hero-slider-item-button:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}
/********************************************************
カスタムヘッダー
********************************************************/
/* 全画面ヒーローの透明ヘッダー切り替え */
#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up),
#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up) .top-navigation-bar,
#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up) .campaign-bar {
	transition: background-color 240ms ease, box-shadow 240ms ease;
}
#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up) :is(
	.sitename a,
	.site-catchphrase,
	.top-navigation-bar,
	.top-navigation-bar a,
	.drawer-open,
	.search-button,
	.campaign-bar,
	.campaign-bar-text,
	.campaign-link,
	.header-contact-contents,
	.contact-document-contents,
	.contact-address-contents
) {
	transition: color 240ms ease, background-color 240ms ease, border-color 240ms ease;
}
@media (prefers-reduced-motion: reduce) {
	#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up),
	#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up) .top-navigation-bar,
	#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up) .campaign-bar,
	#header:is(.hero-header-fullscreen-all, .hero-header-fullscreen-pc, .hero-header-fullscreen-tablet-up) :is(
		.sitename a,
		.site-catchphrase,
		.top-navigation-bar,
		.top-navigation-bar a,
		.drawer-open,
		.search-button,
		.campaign-bar,
		.campaign-bar-text,
		.campaign-link,
		.header-contact-contents,
		.contact-document-contents,
		.contact-address-contents
	) {
		transition: none;
	}
}

#header.hero-header-transparent.hero-header-fullscreen-all,
#header.hero-header-transparent.hero-header-fullscreen-all .top-navigation-bar,
#header.hero-header-transparent.hero-header-fullscreen-all .campaign-bar {
	background: transparent;
	background-image: none;
	box-shadow:none;
}
#header.hero-header-transparent.hero-header-fullscreen-all .campaign-bar,
#header.hero-header-transparent.hero-header-fullscreen-all .campaign-bar-text,
#header.hero-header-transparent.hero-header-fullscreen-all .campaign-link {
	color: var(--hero-header-text-color, #fff);
}
#header.hero-header-transparent.hero-header-fullscreen-all .campaign-link {
	background: transparent;
}
@media (min-width: 769px) {
	#header.hero-header-transparent.hero-header-fullscreen-pc,
	#header.hero-header-transparent.hero-header-fullscreen-pc .top-navigation-bar,
	#header.hero-header-transparent.hero-header-fullscreen-pc .campaign-bar {
		background: transparent;
		background-image: none;
		box-shadow:none;
	}
	#header.hero-header-transparent.hero-header-fullscreen-pc .campaign-bar,
	#header.hero-header-transparent.hero-header-fullscreen-pc .campaign-bar-text,
	#header.hero-header-transparent.hero-header-fullscreen-pc .campaign-link {
		color: var(--hero-header-text-color, #fff);
	}
	#header.hero-header-transparent.hero-header-fullscreen-pc .campaign-link {
		background: transparent;
	}
}
@media (min-width: 601px) {
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .top-navigation-bar,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .campaign-bar {
		background: transparent;
		background-image: none;
		box-shadow:none;
	}
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .campaign-bar,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .campaign-bar-text,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .campaign-link {
		color: var(--hero-header-text-color, #fff);
	}
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .campaign-link {
		background: transparent;
	}
}

#header.hero-header-transparent.hero-header-fullscreen-all,
#header.hero-header-transparent.hero-header-fullscreen-all .sitename a,
#header.hero-header-transparent.hero-header-fullscreen-all .site-catchphrase,
#header.hero-header-transparent.hero-header-fullscreen-all .top-navigation-bar,
#header.hero-header-transparent.hero-header-fullscreen-all .top-navigation-bar a,
#header.hero-header-transparent.hero-header-fullscreen-all .drawer-open,
#header.hero-header-transparent.hero-header-fullscreen-all .search-button,
#header.hero-header-transparent.hero-header-fullscreen-all a.header-contact-contents,
#header.hero-header-transparent.hero-header-fullscreen-all a.header-contact-contents:hover,
#header.hero-header-transparent.hero-header-fullscreen-all a.contact-document-contents,
#header.hero-header-transparent.hero-header-fullscreen-all a.contact-document-contents:hover,
#header.hero-header-transparent.hero-header-fullscreen-all a.contact-address-contents,
#header.hero-header-transparent.hero-header-fullscreen-all a.contact-address-contents:hover {
	color: var(--hero-header-text-color, #fff);
}
#header.hero-header-transparent.hero-header-fullscreen-all .top-navigation-bar .navigation-bar-follow-box > a {
	color: var(--hero-header-text-color, #fff) !important;
}
@media (min-width: 769px) {
	#header.hero-header-transparent.hero-header-fullscreen-all ul.global-menu > li {
		color: var(--hero-header-text-color, #fff);
		background-color: transparent;
	}
}
@media (min-width: 769px) {
	#header.hero-header-transparent.hero-header-fullscreen-pc,
	#header.hero-header-transparent.hero-header-fullscreen-pc .sitename a,
	#header.hero-header-transparent.hero-header-fullscreen-pc .site-catchphrase,
	#header.hero-header-transparent.hero-header-fullscreen-pc .top-navigation-bar,
	#header.hero-header-transparent.hero-header-fullscreen-pc .top-navigation-bar a,
	#header.hero-header-transparent.hero-header-fullscreen-pc .drawer-open,
	#header.hero-header-transparent.hero-header-fullscreen-pc .search-button,
	#header.hero-header-transparent.hero-header-fullscreen-pc a.header-contact-contents,
	#header.hero-header-transparent.hero-header-fullscreen-pc a.header-contact-contents:hover,
	#header.hero-header-transparent.hero-header-fullscreen-pc a.contact-document-contents,
	#header.hero-header-transparent.hero-header-fullscreen-pc a.contact-document-contents:hover,
	#header.hero-header-transparent.hero-header-fullscreen-pc a.contact-address-contents,
	#header.hero-header-transparent.hero-header-fullscreen-pc a.contact-address-contents:hover,
	#header.hero-header-transparent.hero-header-fullscreen-pc ul.global-menu > li {
		color: var(--hero-header-text-color, #fff);
	}
	#header.hero-header-transparent.hero-header-fullscreen-pc ul.global-menu > li {
		background-color: transparent;
	}
	#header.hero-header-transparent.hero-header-fullscreen-pc .top-navigation-bar .navigation-bar-follow-box > a {
		color: var(--hero-header-text-color, #fff) !important;
	}
}
@media (min-width: 601px) {
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .sitename a,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .site-catchphrase,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .top-navigation-bar,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .top-navigation-bar a,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .drawer-open,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .search-button,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up a.header-contact-contents,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up a.header-contact-contents:hover,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-document-contents,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-document-contents:hover,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-address-contents,
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-address-contents:hover {
		color: var(--hero-header-text-color, #fff);
	}
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up .top-navigation-bar .navigation-bar-follow-box > a {
		color: var(--hero-header-text-color, #fff) !important;
	}
}
@media (min-width: 769px) {
	#header.hero-header-transparent.hero-header-fullscreen-tablet-up ul.global-menu > li {
		color: var(--hero-header-text-color, #fff);
		background-color: transparent;
	}
}

body.home #header.hero-header-overlay.hero-header-fullscreen-all {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
}
body.home #header.hero-header-fixed.hero-header-fullscreen-all {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
}
body.admin-bar.home #header.hero-header-overlay,
body.admin-bar.home #header.hero-header-fixed {
	top: 32px;
}
/* WordPress管理バー固有：狭い画面では管理バーが46pxになる */
@media (max-width: 782px) {
	body.admin-bar.home #header.hero-header-overlay,
	body.admin-bar.home #header.hero-header-fixed {
		top: 46px;
	}
}
@media (min-width: 769px) {
	body.home #header.hero-header-overlay.hero-header-fullscreen-pc {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
	}
	body.home #header.hero-header-fixed.hero-header-fullscreen-pc {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
	}
	body.admin-bar.home #header.hero-header-overlay.hero-header-fullscreen-pc,
	body.admin-bar.home #header.hero-header-fixed.hero-header-fullscreen-pc {
		top: 32px;
	}
}
@media (min-width: 769px) and (max-width: 782px) {
	body.admin-bar.home #header.hero-header-overlay.hero-header-fullscreen-pc,
	body.admin-bar.home #header.hero-header-fixed.hero-header-fullscreen-pc {
		top: 46px;
	}
}
@media (min-width: 601px) {
	body.home #header.hero-header-overlay.hero-header-fullscreen-tablet-up {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
	}
	body.home #header.hero-header-fixed.hero-header-fullscreen-tablet-up {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
	}
	body.admin-bar.home #header.hero-header-overlay.hero-header-fullscreen-tablet-up,
	body.admin-bar.home #header.hero-header-fixed.hero-header-fullscreen-tablet-up {
		top: 32px;
	}
}
@media (min-width: 601px) and (max-width: 782px) {
	body.admin-bar.home #header.hero-header-overlay.hero-header-fullscreen-tablet-up,
	body.admin-bar.home #header.hero-header-fixed.hero-header-fullscreen-tablet-up {
		top: 46px;
	}
}

.hero-media-section-scroll{
	color: #ffffff;
	display: block;
	position: absolute;
bottom:30px;
left:50%;
transform: translatex(-50%);
  -webkit-transform:
translatex(-50%);
  -ms-transform: translatex(-50%);
  font-size: small;
}
.hover-action .hero-media-section-scroll:hover{
	color: #ffffff;
opacity: 0.9;
}
.hero-media-section-scroll::before{
	position: absolute;
	content: "/f103";;
	color: #ffffff;
    font-family: "WhiteDress Icons";
content: "\f103";
font-weight: 900;
bottom:15px;
left:50%;
font-size: 24px;
transform: translatex(-50%);
  -webkit-transform:
translatex(-50%);
  -ms-transform: translatex(-50%);
}

.bg-color-transparent {
	background-color: transparent !important;
	box-shadow: none !important
}

.hero-header-transparent.hero-header-fullscreen-all .title-navigation-right-box{background-color:transparent;}
.hero-header-transparent.hero-header-fullscreen-all a.header-contact-contents,.hero-header-transparent.hero-header-fullscreen-all a.header-contact-contents:hover {background-color:transparent;}
.hero-header-transparent.hero-header-fullscreen-all a.contact-document-contents,.hero-header-transparent.hero-header-fullscreen-all a.contact-document-contents:hover {background-color:transparent;}
.hero-header-transparent.hero-header-fullscreen-all a.contact-address-contents,.hero-header-transparent.hero-header-fullscreen-all a.contact-address-contents:hover {background-color:transparent;}
.hero-header-transparent.hero-header-fullscreen-all .drawer-center-title .search-button-section{background-color:transparent;}
@media (min-width: 769px){
	.hero-header-transparent.hero-header-fullscreen-pc .title-navigation-right-box{background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-pc a.header-contact-contents,.hero-header-transparent.hero-header-fullscreen-pc a.header-contact-contents:hover {background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-pc a.contact-document-contents,.hero-header-transparent.hero-header-fullscreen-pc a.contact-document-contents:hover {background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-pc a.contact-address-contents,.hero-header-transparent.hero-header-fullscreen-pc a.contact-address-contents:hover {background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-pc .drawer-center-title .search-button-section{background-color:transparent;}
}
@media (min-width: 601px){
	.hero-header-transparent.hero-header-fullscreen-tablet-up .title-navigation-right-box{background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-tablet-up a.header-contact-contents,.hero-header-transparent.hero-header-fullscreen-tablet-up a.header-contact-contents:hover {background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-document-contents,.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-document-contents:hover {background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-address-contents,.hero-header-transparent.hero-header-fullscreen-tablet-up a.contact-address-contents:hover {background-color:transparent;}
	.hero-header-transparent.hero-header-fullscreen-tablet-up .drawer-center-title .search-button-section{background-color:transparent;}
}
@media (min-width: 769px){
	.hero-header-transparent.hero-header-fullscreen-all .search-button,
	.hero-header-transparent.hero-header-fullscreen-pc .search-button,
	.hero-header-transparent.hero-header-fullscreen-tablet-up .search-button{background-color:transparent;}
}

/********************************************************
動画section
********************************************************/

.header-animation {
animation: slide-anime 3s 3s linear forwards;
}

@keyframes site-header-anime {
0% {
	transform: translateX(0px);
}

100% {
	transform: translateX(300px);
}
}

/********************************************************
ピックアップスライダー
********************************************************/
.theme-pickup-slider-item img{
	width: 100%;
}

/********************************************************
WordPress 調整　editor-style.css
********************************************************/
.sidebar label{
font-weight:normal;
padding: 5px 10px ;
}
.breadcrumb li{
	line-height:2.2

}
.sidebar .widget :is(ul, ol) {
	padding-left: 0;
}
.sidebar .widget :is(ul, ol) :is(ul, ol) {
	padding-left: 1.25em;
}
/********************************************************
プラグイン contactform7
********************************************************/
.wpcf7-form p{
	width:100%;
}
.wpcf7-form label{
	width:100%;
}
.wpcf7-form-control{
	display:block;
}
.wpcf7-textarea{
	width:100%;
}
.wpcf7-submit{
		width:100%;
}

/********************************************************
CSS調整
********************************************************/
.lise-of-article-title {
margin-bottom: 10px;
}

/********************************************************
CSSデザイン
********************************************************/
/* 最大2行 */
.up-to-lines{
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	}

	.rows-high-2{
	height: calc( 1.8em * 2 );
	line-height: 1.8;
}

.contents-omit{
max-width: 50%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.design-contents-border {
	border:solid 1px var(--main-dark-area-text-color);
}
.design-border-padding-square {
	border:solid 1px var(--main-card-border-color);
	padding: 10px;
}

.design-border-square {
	border:solid 1px var(--main-contents-border-color);
}

.list-articles-card.design-border-square {
	border-color: var(--main-card-border-color);
}

/* 上下線 */
.design-border-updownline {
	border:solid 1px var(--main-contents-border-color);
	border-left: none;
	border-right:none;
}
/* 左右線 */
.design-border-leftlightline {
	border:solid 1px  var(--main-contents-border-color);
	border-top: none;
	border-bottom:none;
}
/* 区切り線 中間線 */
.design-border-separator-updown-line-middle {
	border: none;
	border-bottom:solid 1px  var(--main-contents-border-color);
}
.design-border-separator-updown-line-middle:last-child {
	border: none;
}

.design-border-separator-leftright-line-middle {
	border: none;
	border-right:solid 1px var(--main-contents-border-color);
}
.design-border-separator-leftright-line-middle:last-child {
	border: none;
}
/* 区切り線 上下線 PC*/
.design-border-separator-line-updown {
	border: none;
	border-bottom:solid 1px var(--main-contents-border-color);
}
.design-border-separator-line-updown:first-child {
	border-top:solid 1px  var(--main-contents-border-color);
}

.design-title-label-absolute {
	display: flex;
	flex-direction: column;
	padding: 25px;
	position: absolute;
	width: 80%;
	height: 60%;

	top:50%;
	left:50%;
	transform: translate(-50%, -50%);
	text-align: center;
	outline: solid 1px #fff;
	outline-offset: -5px;
	align-items: center;
  	justify-content: center;
		  color: var(--main-dark-area-text-color);
	outline-color:  var(--main-dark-area-text-color);
	background-color: var(--main-dark-area-bg-color);
}
.design-outline-solid {
	outline: solid 1px var(--main-dark-area-text-color);
	outline-offset: -5px;
}
.font-size-small {
	font-size: small;
}

.design-text-align-left {
	text-align: left;
	justify-content: flex-start;
}
.design-text-align-center {
	text-align: center;
	justify-content: center;
}
.design-text-align-right {
	text-align: right;
	justify-content: flex-end;
}

.design-flex-row {
display: flex;
flex-direction: row;
}
.design-flex-column {
	display: flex;
flex-direction: column;
}
.design-align-items-right {
	align-items: flex-end;
}

.design-absolute-bottom {
	position: absolute;
	bottom:0;
}

@media (min-width: 769px) {
	/* モバイル非表示 */
	.display-none-pc {
		display: none;
	}
}

@media (max-width: 768px) {
	/* モバイル非表示 */
	.display-none-mobile {
		display: none;
	}
}
@media (max-width: 600px) {
	/* スマホ非表示 */
	.display-none-phone {
		display: none;
	}
}

/********************************************************
CSSデザイン レイヤーパターン
********************************************************/
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-minimum-dark,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-minimum-light,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-small-dark,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-medium-dark {
	position: relative;
	overflow: hidden;
}

:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid::after,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-minimum-dark::after,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-minimum-light::after,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-small-dark::after,
:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-medium-dark::after {
	position: absolute;
	content: "";
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 1;
}

.toc-details:is(
	.design-layer-grid,
	.design-layer-grid-minimum-dark,
	.design-layer-grid-minimum-light,
	.design-layer-grid-small-dark,
	.design-layer-grid-medium-dark
)::after {
	z-index: 0;
}

.toc-details:is(
	.design-layer-grid,
	.design-layer-grid-minimum-dark,
	.design-layer-grid-minimum-light,
	.design-layer-grid-small-dark,
	.design-layer-grid-medium-dark
) .toc-summary,
.toc-details:is(
	.design-layer-grid,
	.design-layer-grid-minimum-dark,
	.design-layer-grid-minimum-light,
	.design-layer-grid-small-dark,
	.design-layer-grid-medium-dark
) > .wp-block-list {
	position: relative;
	z-index: 1;
}

:where(.single-media-section, .page-media-section, .sns-follow-box-figure) > :where(img, video) {
	position: relative;
	z-index: 0;
	display: block;
}

:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid::after {
	background-color: rgba(15, 15, 15, 1);
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 20px 20px;
}

:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-minimum-dark::after {
	opacity: 0.1;
	background-color: rgba(255, 255, 255, 1);
	background-image:
		linear-gradient(rgba(0, 0, 0, 1) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0, 0, 0, 1) 1px, transparent 1px);
	background-size: 2px 2px;
}

:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-minimum-light::after {
	opacity: 0.1;
	background-color: rgba(0, 0, 0, 1);
	background-image:
		linear-gradient(rgba(255, 255, 255, 1) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 1) 1px, transparent 1px);
	background-size: 2px 2px;
}

:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-small-dark::after {
	opacity: 0.1;
	background-color: rgba(255, 255, 255, 1);
	background-image:
		linear-gradient(rgba(0, 0, 0, 1) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0, 0, 0, 1) 1px, transparent 1px);
	background-size: 3px 3px;
}

:where(.single-media-section, .page-media-section, .hero-integrated-section, .toc-details, .sns-follow-box-figure).design-layer-grid-medium-dark::after {
	opacity: 0.1;
	background-color: rgba(255, 255, 255, 1);
	background-image:
		linear-gradient(rgba(0, 0, 0, 1) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0, 0, 0, 1) 1px, transparent 1px);
	background-size: 5px 5px;
}
/********************************************************
CSSデザイン マウスオーバーアクション
********************************************************/
:where(.single-content-section, .page-content-section) :where(p, li, dd, blockquote, figcaption, td, th) a {
	text-decoration: underline;
}

.hover-action :where(.single-content-section, .page-content-section) :where(p, li, dd, blockquote, figcaption, td, th) a {
	transition: color 160ms ease, opacity 160ms ease;
}

.hover-action.link-text-hover :where(.single-content-section, .page-content-section) :where(p, li, dd, blockquote, figcaption, td, th) a:hover,
.hover-action.link-text-hover .sidebar a:hover,
.hover-action.link-text-hover .footer-menu-standard a:hover {
	opacity: 0.88;
}

:where(.single-content-section, .page-content-section, .sidebar) a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.hover-action.hover-color-inversion nav .page-numbers {
	transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.hover-action.hover-color-inversion nav a.page-numbers:hover {
	color: var(--pagination-bg-color);
	border-color: var(--pagination-text-color);
	background-color: var(--pagination-text-color);
}

nav a.page-numbers:focus-visible {
	color: var(--pagination-text-color);
	border-color: var(--pagination-text-color);
	background-color: var(--pagination-bg-color);
	outline: 2px solid var(--pagination-text-color);
	outline-offset: 2px;
}

nav a.page-numbers:active {
	color: var(--pagination-bg-color);
	border-color: var(--pagination-text-color);
	background-color: color-mix(in srgb, var(--pagination-text-color) 85%, #000);
}

nav .page-numbers.current {
	color: var(--pagination-bg-color);
	border-color: var(--pagination-text-color);
	background-color: var(--pagination-text-color);
	font-weight: bold;
	cursor: default;
}
.hover-action nav a.page-numbers :is(.firstpagination, .prevpagination, .nextpagination, .lastpagination)::before {
	display: inline-block;
	transition: transform 160ms ease-out;
}

.hover-action nav a.page-numbers:hover :is(.firstpagination, .prevpagination)::before {
	transform: translateX(-1px);
}

.hover-action nav a.page-numbers:hover :is(.nextpagination, .lastpagination)::before {
	transform: translateX(1px);
}

.hover-action .search-button {
	transition: color 160ms ease, background-color 160ms ease;
}

.hover-action .search-button:hover {
	color: var(--main-dark-area-text-color);
	background-color: rgba(127, 127, 127, .12);
	background-color: color-mix(in srgb, currentColor 12%, transparent);
}

.search-button:active {
	background-color: rgba(127, 127, 127, .2);
	background-color: color-mix(in srgb, currentColor 20%, transparent);
}

.hover-action.hover-color-inversion :is(a.header-contact-contents, a.contact-document-contents, a.contact-address-contents) {
	transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, transform 80ms ease;
}

.hover-action.hover-color-inversion :is(a.header-contact-contents, a.contact-document-contents, a.contact-address-contents):hover {
	color: var(--header-cta-bg-color);
	border-color: var(--header-cta-text-color);
	background-color: var(--header-cta-text-color);
}

:is(a.header-contact-contents, a.contact-document-contents, a.contact-address-contents):active {
	transform: translateY(1px);
}

.hover-action.hover-color-inversion .articles-posted-card-button-section {
	transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.hover-action.hover-color-inversion .list-articles-card:hover .articles-posted-card-button-section {
	color: var(--read-more-bg-color);
	border-color: var(--read-more-text-color);
	background-color: var(--read-more-text-color);
}

.hover-action .theme-pickup-slider-item,
.hover-action .theme-pickup-slider-item img,
.hover-action .theme-pickup-slider-title {
	transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease-out;
}

.hover-action .theme-pickup-slider-item:hover {
	border-color: currentColor;
}

.hover-action .theme-pickup-slider-item:hover img {
	transform: scale(1.03);
}

.hover-action .theme-pickup-slider-item:hover .theme-pickup-slider-title {
	background-color: rgba(127, 127, 127, .1);
	background-color: color-mix(in srgb, currentColor 10%, var(--pickup-title-bg-color));
}

.hover-action.hover-color-inversion .back-to-top[data-back-to-top-fixed="true"] {
	transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.hover-action.hover-color-inversion .back-to-top[data-back-to-top-fixed="true"]:hover {
	color: var(--back-to-top-bg-color);
	border-color: var(--back-to-top-bg-color);
	background-color: var(--back-to-top-text-color);
}

.hover-action .back-to-top::before {
	transition: transform 160ms ease-out;
}

.hover-action .back-to-top:hover::before {
	transform: translateY(-2px);
}

.back-to-top:active::before {
	transform: translateY(0);
}

.footer-fixed-menu-section .menu-item a {
	--footer-fixed-item-bg-color: transparent;
}

.hover-action .footer-fixed-menu-section .menu-item a {
	transition: background-color 160ms ease;
}

.hover-action .footer-fixed-menu-section .menu-item a:hover {
	background-color: rgba(127, 127, 127, .14);
	background-color: color-mix(in srgb, currentColor 14%, var(--footer-fixed-item-bg-color));
}

.footer-fixed-menu-section .menu-item a:active {
	background-color: rgba(127, 127, 127, .22);
	background-color: color-mix(in srgb, currentColor 22%, var(--footer-fixed-item-bg-color));
}

:is(nav a.page-numbers, .search-button, a.header-contact-contents, a.contact-document-contents, a.contact-address-contents, .campaign-link, .wp-block-button__link, .wp-element-button, input[type="submit"], button[type="submit"], .sns-share-button, .sns-follow-button, .list-articles-card, .theme-pickup-slider-item a, .swiper-button-prev, .swiper-button-next, .swiper-pagination-bullet, .back-to-top, .footer-menu-standard a, .footer-fixed-menu-section .menu-item a):focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

:is(.wp-block-button__link, .wp-element-button, input[type="submit"], button[type="submit"], .btn, .btn-link):active {
	transform: translateY(1px);
}

.hover-action .hover-action-floatup  {
	transition: transform 180ms ease-out;
}
.hover-action .hover-action-floatup:hover {
	transform: translateY(-2px);
}

.hover-action .list-articles-card-hover-floatup{
	transition: 0.3s;

}
.hover-action .list-articles-card:hover .list-articles-card-hover-floatup {
	transform: translateY(-3px);
}

.hover-action .list-articles-card:hover .list-articles-card-hover-shadow {
	box-shadow: 2px 2px 3px var(--main-contents-border-color);
}

.hover-action .hover-action-shadow-square {
	transition: transform 180ms ease-out, box-shadow 180ms ease-out, border-color 180ms ease-out;
}

.hover-action .hover-action-shadow-square:hover {
	box-shadow: 0px 0px 5px var(--main-border-shadow-color);
}
.hover-action .hover-action-shadow-rightbottom {
	transition: transform 180ms ease-out, box-shadow 180ms ease-out, border-color 180ms ease-out;
}

.hover-action .hover-action-shadow-rightbottom:hover {
	box-shadow: 2px 2px 2px var(--main-border-shadow-color);
}

.hover-action .hover-action-opacity {
	transition: 0.3s;
}
.hover-action .hover-action-opacity:hover {
	opacity: 0.75;
}
.hover-action .hover-action-outline-solid:hover {
	outline: solid 1px inherit;
	outline-offset: 5px;
}

/* 記事一覧・関連記事・記事前後送りのカードフィードバック */
.hover-action :where(.list-articles-card, .related-contents, .page-feed-box) {
	transition: transform 180ms ease-out, box-shadow 180ms ease-out, border-color 180ms ease-out;
}

.hover-action :where(.articles-posted-card-image-item[class*="card-image-hover-"], .related-contents[class*="card-image-hover-"] .related-thumbnail, .page-feed-box[class*="card-image-hover-"] img) {
	transition: opacity 180ms ease-out, transform 180ms ease-out, filter 180ms ease-out;
}

.hover-action :where(.articles-posted-card-title-item, .related-item-title, .page-feed-prev-title, .page-feed-next-title) {
	transition: color 180ms ease-out;
}

.hover-action .list-articles-card:hover .articles-posted-card-image-item.card-image-hover-opacity,
.hover-action .related-contents.card-image-hover-opacity:hover .related-thumbnail,
.hover-action .page-feed-box.card-image-hover-opacity:hover img {
	opacity: 0.88;
}

.hover-action .list-articles-card:hover .articles-posted-card-image-item.card-image-hover-zoom {
	transform: scale(1.03);
}

.hover-action .list-articles-card:hover .articles-posted-card-title-item,
.hover-action .related-contents:hover .related-item-title,
.hover-action .page-feed-box:hover :where(.page-feed-prev-title, .page-feed-next-title) {
	color: var(--main-accent-color);
}

/* 横型カードと小型カードは、一覧の縦型カードより動きを控えめにする。 */
.hover-action :where(.card-design-standard-horizontal, .card-design-title-top-horizontal, .card-design-media-horizontal, .card-design-compact-media).hover-action-floatup:hover,
.hover-action .related-contents.hover-action-floatup:hover,
.hover-action .page-feed-box.hover-action-floatup:hover {
	transform: translateY(-1px);
}

.hover-action :where(.related-contents, .page-feed-box).hover-action-shadow-square:hover {
	box-shadow: 0 0 3px var(--main-border-shadow-color);
}

.hover-action :where(.related-contents, .page-feed-box).hover-action-shadow-rightbottom:hover {
	box-shadow: 1px 1px 2px var(--main-border-shadow-color);
}

.hover-action :where(.card-design-standard-horizontal, .card-design-title-top-horizontal, .card-design-media-horizontal, .card-design-compact-media):hover .articles-posted-card-image-item.card-image-hover-zoom,
.hover-action .related-contents.card-image-hover-zoom:hover .related-thumbnail,
.hover-action .page-feed-box.card-image-hover-zoom:hover img {
	transform: scale(1.02);
}

/* オーバーレイ型は、暗転設定時に画像を少し暗くして文字との対比を保つ。 */
.hover-action :where(.card-design-bottom-overlay, .card-design-full-overlay):hover .articles-posted-card-image-item.card-image-hover-darken {
	filter: brightness(0.88);
}

.hover-action :where(.card-design-bottom-overlay, .card-design-full-overlay):hover .articles-posted-card-title-item {
	color: inherit;
}

/* 記事前後送りの矢印は、それぞれ移動先の方向へわずかに動かす。 */
.hover-action :where(.page-feed-prev-arrow, .page-feed-next-arrow)::before {
	transition: transform 180ms ease-out;
}

.hover-action .page-feed-prev-arrow:hover::before {
	transform: translateX(-2px);
}

.hover-action .page-feed-next-arrow:hover::before {
	transform: translateX(2px);
}

@media (prefers-reduced-motion: reduce) {
	.hover-action :where(.hover-action-floatup, .hover-action-shadow-square, .hover-action-shadow-rightbottom, .list-articles-card, .related-contents, .page-feed-box),
	.hover-action :where(.articles-posted-card-image-item[class*="card-image-hover-"], .related-contents[class*="card-image-hover-"] .related-thumbnail, .page-feed-box[class*="card-image-hover-"] img),
	.hover-action :where(.page-feed-prev-arrow, .page-feed-next-arrow)::before {
		transition-duration: 0.01ms;
	}
	.hover-action :where(nav .page-numbers, nav .page-numbers i::before, .search-button, a.header-contact-contents, a.contact-document-contents, a.contact-address-contents, .articles-posted-card-button-section, .theme-pickup-slider-item, .theme-pickup-slider-item img, .theme-pickup-slider-title, .back-to-top, .back-to-top::before, .footer-menu-standard a, .footer-fixed-menu-section .menu-item a) {
		transition-duration: 0.01ms;
	}
}

/* Entry header block parts */
.entry-header-block {
	position: relative;
	margin-bottom: 1.5rem;
}

.entry-header-block.entry-header-cover {
	margin-bottom: 0;
}

.entry-header-cover .single-header-section,
.entry-header-cover .page-header-section {
	margin-top: 0;
	margin-bottom: 0;
}

.entry-header-block .entry-header-meta {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem 1rem;
	align-items: center;
	margin-top: .75rem;
}

/* Related article selectable layouts */
.related-layout-two-column-card {
	display: grid;
	grid-template-columns: repeat(2, minmax(15px, 1fr));
	gap: 1rem;
	padding: 5px;
}
.related-layout-compact-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(15px, 1fr));
	gap: .75rem;
	padding: 5px;
}
.related-layout-compact-list .related-contents {
	align-items: flex-start;
	flex-direction: row;
	padding: .5rem;
}
.related-layout-compact-list .related-figure {
	flex: 0 0 96px;
	width: 96px;
}
.related-layout-compact-list .related-item-title {
	font-size: 15px;
}
.related-layout-featured-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(15px, 1fr));
	gap: 1rem;
	padding: 5px;
}
.related-layout-featured-grid .is-featured {
	grid-row: span 2;
}
.related-layout-featured-grid .is-featured .related-item-title {
	font-size: 22px;
}
.related-layout-slider {
	display: flex;
	padding: 5px;
}

@media (max-width: 768px) {
	.related-layout-vertical,
	.related-layout-two-column-card,
	.related-layout-compact-list,
	.related-layout-featured-grid,
	.related-layout-slider {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}
	.related-layout-compact-list .related-contents {
		align-items: stretch;
		flex-direction: column;
	}
	.related-layout-compact-list .related-figure {
		flex: initial;
		width: 100%;
	}
	.related-layout-featured-grid .is-featured {
		grid-row: auto;
	}
}

.thumbnail-ratio-1200x675,
.thumbnail-ratio-1200x630 {
	overflow: hidden;
}

.thumbnail-ratio-1200x675 {
	aspect-ratio: 1200 / 675;
}

.thumbnail-ratio-1200x630 {
	aspect-ratio: 1200 / 630;
}

.thumbnail-ratio-1200x675 img,
.thumbnail-ratio-1200x630 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* =========================================
Entry header selectable designs
========================================= */
.entry-header-simple,
.entry-header-cover {
	position: relative;
}
.entry-header-simple .entry-header-simple-inner,
.entry-header-simple .entry-header-text-area {
	display: flex;
	flex-direction: column;
}
.entry-header-simple .entry-header-text-area {
	gap: .4rem;
}
.entry-header-simple .entry-title,
.entry-header-cover .entry-title {
	font-size: 30px;
	line-height: 1.3;
	order: initial;
	flex-basis: auto;
	margin: 0;
}
.entry-header-simple .entry-header-meta,
.entry-header-cover .entry-header-meta,
.entry-header-bottom-meta .entry-header-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5rem 1rem;
	margin: 0;
	font-size: small;
}
.entry-header-simple .entry-header-author,
.entry-header-bottom-meta .entry-header-author {
	align-self: flex-end;
}
.entry-header-simple .entry-header-date-author {
	justify-content: flex-end;
}
.entry-header-simple .single-media-section,
.entry-header-simple .page-media-section {
	position: relative;
	margin: 1rem 0 0;
}
.entry-header-block .single-title-header-media,
.entry-header-block .page-title-header-media {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.entry-header-pattern-simple-media-top .single-media-section,
.entry-header-pattern-simple-media-top .page-media-section,
.entry-header-pattern-split-media .single-media-section,
.entry-header-pattern-split-media .page-media-section,
.entry-header-pattern-overlap-card .single-media-section,
.entry-header-pattern-overlap-card .page-media-section {
	margin: 0 0 1rem;
}
.entry-header-pattern-simple-meta-bottom .entry-header-dates {
	justify-content: flex-start;
}
.entry-header-bottom-meta {
	display: flex;
	flex-direction: column;
	gap: .75rem;
	margin: 1rem 0 1.5rem;
}
.entry-header-bottom-meta .entry-header-taxonomy,
.entry-header-bottom-meta .entry-header-author {
	justify-content: flex-end;
}
.entry-header-pattern-split-media .entry-header-split-inner {
	display: grid;
	grid-template-columns: minmax(0, 45%) minmax(0, 55%);
	align-items: stretch;
}
.entry-header-pattern-split-media.entry-header-no-media .entry-header-split-inner {
	grid-template-columns: 1fr;
}
.entry-header-pattern-split-media .single-media-section,
.entry-header-pattern-split-media .page-media-section {
	margin: 0;
	min-height: 280px;
}
.entry-header-pattern-split-media .entry-header-text-area {
	justify-content: center;
	padding: 2rem;
}
.entry-header-pattern-overlap-card .entry-header-overlap-card {
	position: relative;
	z-index: 2;
	width: min(92%, 960px);
	margin: -70px auto 0;
	padding: 1.5rem;
	background: var(--main-area-bg-color, #fff);
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}
.entry-header-pattern-overlap-card.entry-header-no-media .entry-header-overlap-card {
	width: 100%;
	margin-top: 0;
}
.entry-header-cover {
	height: 250px;
	margin-right: 0;
	margin-left: 0;
	overflow: hidden;
	background: var(--main-dark-area-bg-color);
	color: var(--main-dark-area-text-color);
}
.entry-header-cover.entry-header-pattern-cover-slim {
	height: 150px;
}
.entry-header-cover .entry-header-cover-media {
	position: absolute;
	inset: 0;
	z-index: 0;
	margin: 0;
}
.entry-header-cover .entry-header-cover-media::after {
	position: absolute;
	inset: 0;
	content: "";
	background: rgba(0, 0, 0, .3);
}
.entry-header-cover .entry-header-cover-container {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	height: 100%;
}
.entry-header-cover .entry-header-cover-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: .4rem;
	width: 100%;
	color: inherit;
	text-align: center;
}
.entry-header-cover .entry-header-cover-meta,
.entry-header-cover .entry-header-taxonomy {
	justify-content: center;
}
.entry-header-cover .entry-header-taxonomy a {
	color: inherit;
}
.entry-header-pattern-cover-side-panel .entry-header-cover-content {
	width: min(45%, 560px);
	padding: 1.5rem;
	background: color-mix(in srgb, var(--main-dark-area-bg-color) 78%, transparent);
	text-align: left;
}
.entry-header-pattern-cover-side-panel .entry-header-cover-meta,
.entry-header-pattern-cover-side-panel .entry-header-taxonomy {
	justify-content: flex-start;
}
.entry-header-pattern-cover-bottom-line .entry-header-cover-content {
	display: grid;
	grid-template-rows: 1fr auto 1fr;
	align-items: center;
	height: 100%;
}
.entry-header-pattern-cover-bottom-line .entry-title {
	grid-row: 2;
	align-self: center;
}
.entry-header-pattern-cover-bottom-line .entry-header-cover-bottom-meta {
	grid-row: 3;
	align-self: end;
	justify-content: center;
	padding-bottom: 1rem;
}
@media (max-width: 768px) {
	.entry-header-pattern-split-media .entry-header-split-inner {
		grid-template-columns: 1fr;
	}
	.entry-header-pattern-split-media .single-media-section,
	.entry-header-pattern-split-media .page-media-section {
		min-height: 0;
	}
	.entry-header-pattern-split-media .entry-header-text-area {
		padding: 1rem 0;
	}
	.entry-header-pattern-cover-side-panel .entry-header-cover-content {
		width: 100%;
	}
	.entry-header-pattern-overlap-card .entry-header-overlap-card {
		margin-top: -50px;
	}
	.entry-header-pattern-overlap-card.entry-header-no-media .entry-header-overlap-card {
		margin-top: 0;
	}
}
