@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
@import url("https://nagano-hok.com/wp-content/css2/cocoon_nagano.css");
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
#header {
 height:80px;
}
}

#main a[href*="https://members.nagano-hok.com/"] {
     padding-left: 22px;
     background: url(https://nagano-hok.com/wp-content/uploads/ico/key_ico.gif)
     no-repeat 0 .2em;     
}

/*カラー変数*/
:root {
    --color-bg-blue:#9EC2C2;
	--color-bg-red:#CB5457;
	--color-bg-green:#859A93;
	--color-bg-pink:#D86F87;
	--color-bg-purple:#6F789D;
	--color-bg-orange:#D2986A;
	
	--color-hover-bg:#FDECED;
    --color-hover-text:#444949;
	
	--color-tbl-head:#9EC2C2;
	--color-tbl-line:black;
}

.entry-content table, 
.entry-content th, 
.entry-content td {
  background-color: transparent; /* 背景色をリセット */
  border: none;                  /* 枠線を消す */
  padding: 0 ;                   /* 余白をリセット */
}

/************************************
　ファイルリンクのアイコン表示
************************************/
#main a[href$=".xls"]:not(.wp-block-file__button) {
     padding-left: 22px;
     background: url(https://nagano-hok.com/wp-content/uploads/ico/xls_ico.gif) no-repeat 0 center;
}
#main a[href$=".xlsx"]:not(.wp-block-file__button) {
     padding-left: 22px;
     background: url(https://nagano-hok.com/wp-content/uploads/ico/xls_ico.gif) no-repeat 0 center;
}

#main a[href$=".xlsm"]:not(.wp-block-file__button) {
     padding-left: 22px;
     background: url(https://nagano-hok.com/wp-content/uploads/ico/xls_ico.gif) no-repeat 0 center;
}

#main a[href$=".doc"]:not(.wp-block-file__button) {
     padding-left: 22px;
     background: url(https://nagano-hok.com/wp-content/uploads/ico/doc_ico.gif) no-repeat 0 center;
}

#main a[href$=".docx"]:not(.wp-block-file__button) {
     padding-left: 22px;
     background: url(https://nagano-hok.com/wp-content/uploads/ico/doc_ico.gif) no-repeat 0 center;
}
#main a[href$=".pdf"]:not(.wp-block-file__button) {
    padding-left: 22px;
    background: url(https://nagano-hok.com/wp-content/uploads/ico/pdf_ico.gif) no-repeat 0 center;     
}

/************************************
　カテゴリラベル　
************************************/
.category_right
 {
   position:absolute;
   padding 1px;   
   margin-bottom:20px;
   display:flex;
   width:100%;
   justify-content:start;
   line-break:anywhere;
   margin-bottom:30px;
   white-space: pre-wrap;   
}

.category_right .cat-label {
    position: relative !important;
    display:inline-block;
    margin-top: 3px;
    margin-right:5px;
　　float:right;
    font-size: 11px;
    border: none; 
}

/*テキストフィット*/
.fit-,
.editor-styles-wrapper .fit- {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 10px;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}
/************************
h2 
*************************/
h2.wp-block-heading.h2-1{
  font-weight: 900;
  color: #fff;
  text-align: center;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  padding: 12px 20px;
  margin-bottom: 20px;
  background:var(--color-bg-blue);
  border-radius: 6px;
}

h2.wp-block-heading.h2-2{
    position: relative;
    background:var(--color-bg-blue);
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
    box-shadow: 0px 0px 0px 5px var(--color-bg-blue);
    border: solid 1px white;
    color: #FFFFFF;
    padding: 0.4em 1em;/*文字周りの余白*/
}

h2.wp-block-heading.h2-3 {
  position: relative;
  padding: 0.5em;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  background:var(--color-bg-blue);
  color: white;
}

h2.wp-block-heading.h2-3::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(149, 158, 155);
}

h2.wp-block-heading.h2-4 {
  font-weight:900;
  color: #ffffff;
  padding: 18px 24px;
  background: linear-gradient(90deg,var(--color-bg-blue) 0%, var(--color-bg-blue) 50%, #473927 50%, #473927 100%);
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}
/*h2 red */
h2.wp-block-heading.blue-{
    background:var(--color-bg-blue);
}
h2.wp-block-heading.h2-2.blue-{
    box-shadow: 0px 0px 0px 5px var(--color-bg-blue);
}
h2.wp-block-heading.h2-4.blue- {
    background: linear-gradient(90deg,var(--color-bg-blue) 0%, var(--color-bg-blue) 50%, #473927 50%, #473927 100%);
}

/*h2 red */
h2.wp-block-heading.red-{
    background:var(--color-bg-red);
}
h2.wp-block-heading.h2-2.red-{
    box-shadow: 0px 0px 0px 5px var(--color-bg-red);
}
h2.wp-block-heading.h2-4.red- {
    background: linear-gradient(90deg,var(--color-bg-red) 0%, var(--color-bg-red) 50%, #473927 50%, #473927 100%);
}
/*h2 green */
h2.wp-block-heading.green-{
    background:var(--color-bg-green);
}
h2.wp-block-heading.h2-2.green-{
    box-shadow: 0px 0px 0px 5px var(--color-bg-green);
}
h2.wp-block-heading.h2-4.green- {
    background: linear-gradient(90deg,var(--color-bg-green) 0%, var(--color-bg-green) 50%, #473927 50%, #473927 100%);
}

/*h2 pink */
h2.wp-block-heading.pink-{
    background:var(--color-bg-pink);
}
h2.wp-block-heading.h2-2.pink-{
    box-shadow: 0px 0px 0px 5px var(--color-bg-pink);
}
h2.wp-block-heading.h2-4.pink-{
    background: linear-gradient(90deg,var(--color-bg-pink) 0%, var(--color-bg-pink) 50%, #473927 50%, #473927 100%);
}

/*h2 purple */
h2.wp-block-heading.purple-{
    background:var(--color-bg-purple);
}
h2.wp-block-heading.h2-2.purple-{
    box-shadow: 0px 0px 0px 5px var(--color-bg-purple);
}
h2.wp-block-heading.h2-4.purple-{
    background: linear-gradient(90deg,var(--color-bg-purple) 0%, var(--color-bg-purple) 50%, #473927 50%, #473927 100%);
}
/*h2 orange */
h2.wp-block-heading.orange-{
    background:var(--color-bg-orange);
}
h2.wp-block-heading.h2-2.orange-{
    box-shadow: 0px 0px 0px 5px var(--color-bg-orange);
}
h2.wp-block-heading.h2-4.orange-{
    background: linear-gradient(90deg,var(--color-bg-orange) 0%, var(--color-bg-orange) 50%, #473927 50%, #473927 100%);
}
/************************
h3
*************************/

/* 見出し(h3)のリセット（左線・枠線の削除） */
h3.wp-block-heading.h3-1,
h3.wp-block-heading.h3-2,
h3.wp-block-heading.h3-3,
h3.wp-block-heading.h3-4 {
  padding: 0.3em 0 !important;
  border: none;
  border-left: none !important;
}

h3.wp-block-heading.h3-1{
border:none;
background:none;
border-bottom: 6px double #ABABAB;
}

h3.wp-block-heading.h3-2 {
    position: relative;
    padding:20px 20px !important;
    border:none;
}
h3.wp-block-heading.h3-2::before,
h3.wp-block-heading.h3-2::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height:6px;
    box-sizing: border-box;
}
h3.wp-block-heading.h3-2::before {
    top: 0;
    border-top: 2px solid #ABABAB;
    border-bottom: 1px solid;
    border-bottom-color:#ABABAB;
}
h3.wp-block-heading.h3-2::after {
    bottom: 0;
    border-top: 1px solid #ABABAB;
    border-bottom: 2px solid;
    border-bottom-color:#ABABAB;
}

h3.wp-block-heading.h3-3 {
  border:none;
  position: relative;
  padding: 20px 0px !important;
}

h3.wp-block-heading.h3-3:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #ABABAB, #ABABAB 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #ABABAB, #ABABAB 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

h3.wp-block-heading.h3-4 {
  border:none;
  background:none;
  padding: 0.3em 0;
  border-bottom: solid 5px;
  border-bottom-color:#ABABAB;
  position: relative;
}
h3.wp-block-heading.h3-4::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 5px #473927;
  bottom: -5px;
  width: 25%;
}

/* h3の色指定 */

h3.wp-block-heading.h3-1.blue-{
border-bottom-color:var(--color-bg-blue);
}
h3.wp-block-heading.h3-2.blue-::before {
    border-color:var(--color-bg-blue);
}
h3.wp-block-heading.h3-2.blue-::after {
    border-color:var(--color-bg-blue);
}
h3.wp-block-heading.h3-3.blue-:after {
  background-image: -webkit-repeating-linear-gradient(135deg, var(--color-bg-blue), var(--color-bg-blue) 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, var(--color-bg-blue), var(--color-bg-blue) 1px, transparent 2px, transparent 5px);
}
h3.wp-block-heading.h3-4.blue-{
border-bottom-color:var(--color-bg-blue);
}

h3.wp-block-heading.h3-1.red-{
border-bottom-color:var(--color-bg-red);
}
h3.wp-block-heading.h3-2.red-::before {
    border-color:var(--color-bg-red);
}
h3.wp-block-heading.h3-2.red-::after {
    border-color:var(--color-bg-red);
}
h3.wp-block-heading.h3-3.red-:after {
  background-image: -webkit-repeating-linear-gradient(135deg, var(--color-bg-red), var(--color-bg-red) 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, var(--color-bg-red), var(--color-bg-red) 1px, transparent 2px, transparent 5px);
}
h3.wp-block-heading.h3-4.red-{
border-bottom-color:var(--color-bg-red);
}

h3.wp-block-heading.h3-1.green-{
    border-bottom-color:var(--color-bg-green);
}
h3.wp-block-heading.h3-2.green-::before {
    border-color:var(--color-bg-green);
}
h3.wp-block-heading.h3-2.green-::after {
    border-color:var(--color-bg-green);
}
h3.wp-block-heading.h3-3.green-:after {
  background-image: -webkit-repeating-linear-gradient(135deg, var(--color-bg-green), var(--color-bg-green) 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, var(--color-bg-green), var(--color-bg-green) 1px, transparent 2px, transparent 5px);
}
h3.wp-block-heading.h3-4.green- {
  border-bottom-color:var(--color-bg-green);
}
h3.wp-block-heading.h3-4.green-{
    border-bottom-color:var(--color-bg-green);
}

h3.wp-block-heading.h3-1.pink-{
    border-bottom-color:var(--color-bg-pink);
}
h3.wp-block-heading.h3-2.pink-::before {
    border-color:var(--color-bg-pink);
}
h3.wp-block-heading.h3-2.pink-::after {
    border-color:var(--color-bg-pink);
}
h3.wp-block-heading.h3-3.pink-:after {
  background-image: -webkit-repeating-linear-gradient(135deg, var(--color-bg-pink), var(--color-bg-pink) 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, var(--color-bg-pink), var(--color-bg-pink) 1px, transparent 2px, transparent 5px);
}
h3.wp-block-heading.h3-4.pink- {
  border-bottom-color:var(--color-bg-pink);
}

h3.wp-block-heading.h3-1.purple-{
    border-bottom-color:var(--color-bg-purple);
}
h3.wp-block-heading.h3-2.purple-::before {
    border-color:var(--color-bg-purple);
}
h3.wp-block-heading.h3-2.purple-::after {
    border-color:var(--color-bg-purple);
}
h3.wp-block-heading.h3-3.purple-:after {
  background-image: -webkit-repeating-linear-gradient(135deg, var(--color-bg-purple), var(--color-bg-purple) 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, var(--color-bg-purple), var(--color-bg-purple) 1px, transparent 2px, transparent 5px);
}
h3.wp-block-heading.h3-4.purple-{
  border-bottom-color:var(--color-bg-purple);
} 

/************************
label 
*************************/
.label- {
    padding: 0.5em 1em;
    background:#dddddd;
    text-align:center;
} 

.label-.label-1{
  background:#ABABAB;
  box-shadow: 0px 0px 0px 5px #ABABAB;
  border: solid 1px #FFF;
  padding: 0.2em 0.5em;
  color:#FFF;
  text-align:center;
}

.label-.label-2{
  background:#ABABAB;
  box-shadow: 0px 0px 0px 5px #ABABAB;
  border: dashed 1px #FFF;
  padding: 0.2em 0.5em;
  color:#FFF;
  text-align:center;
}

.label-.label-4 {
    position: relative;
    padding: .5em .7em;
    border-radius: 10px;
    background-color:#ABABAB;
    color: #fff;
}
.label-.label-4::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 30px;
    width: 0;
    height: 0;
    border: 11px solid transparent;
    border-top: 11px solid #ABABAB;
}

.label-.label-3 {    
	display: block;
    width:-moz-fit-content;
    width:fit-content; 
    position: relative;
    padding: .5em 1.4em .5em 1em;
    background-color:#ABABAB;
    color: #FFF;
}

.label-.label-3::before {
    position: absolute;
    bottom: -1px;
    right: 9px;
    z-index: -1;
    transform: rotate(5deg);
    width: 70%;
    height: 50%;
    background-color: #d0d0d0;
    content: "";
    filter: blur(4px);
}

.label-.blue-{
	background-color:var(--color-bg-blue);
}
.label-.red-{
	background-color:var(--color-bg-red);
}
.label-.green-{
	background-color:var(--color-bg-green);
}
.label-.pink-{
	background-color:var(--color-bg-pink);
}
.label-.purple-{
	background-color:var(--color-bg-purple);
}
.label-.label-1.blue-,
.label-.label-2.blue-{
box-shadow: 0px 0px 0px 5px var(--color-bg-blue);
}
.label-.label-1.red-,
.label-.label-2.red-{
box-shadow: 0px 0px 0px 5px var(--color-bg-red);
}
.label-.label-1.green-,
.label-.label-2.green-{
box-shadow: 0px 0px 0px 5px var(--color-bg-green);
}
.label-.label-1.pink-,
.label-.label-2.pink-{
box-shadow: 0px 0px 0px 5px var(--color-bg-pink);
}
.label-.label-1.purple-,
.label-.label-2.purple-{
box-shadow: 0px 0px 0px 5px var(--color-bg-purple);
}

.label-.label-4.blue-::after {
	border-top: 11px solid var(--color-bg-blue);
}
.label-.label-4.red-::after {
	border-top: 11px solid var(--color-bg-red);
}
.label-.label-4.green-::after {
	border-top: 11px solid var(--color-bg-green);
}
.label-.label-4.pink-::after {
	border-top: 11px solid var(--color-bg-pink);
}
.label-.label-4.purple-::after {
	border-top: 11px solid var(--color-bg-purple);
}

/************************
Line
*************************/

.line- {
  border-bottom: solid 2px;
  border-color:#ABABAB;
  margin: 0 auto 50px;
  padding: 0 0 3px 0;
}

.dot- {  
  border-bottom: dotted 2px;
  border-color:#ABABAB;
  margin: 0 auto 50px;
  padding: 0 0 3px 0;
}

.w- {  
  border-bottom:double 3px;
  border-color:#ABABAB;
  margin: 0 auto 50px;
  padding: 0 0 3px 0;
}
.dia- {
	position: relative;
	padding:.5em .5em .5em 1.7em;
	border-bottom: 1px solid #ccc;
}
.dia-::after {
	position: absolute;
	top: .8em;
	left: .4em;
	z-index: 2;
	content: '';
	width: 12px;
	height: 12px;
	background-color:#ABABAB;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.multi- {
  position: relative;
  font-weight:bold;
  border-bottom: solid 3px;
  border-color: #6B5E56;
  margin: 0 auto 50px;
  padding: 5px 0 5px 0;
}
.multi-::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px;
  border-color:#dddddd;
  bottom: -3px;
  width: 30%;
}
.line-.blue- {
    border-color:var(--color-bg-blue);	
}
.line-.red- {
    border-color:var(--color-bg-red);	
}
.line-.green- {
    border-color:var(--color-bg-green);	
}
.line-.pink- {
    border-color:var(--color-bg-pink);	
}
.line-.purple- {
    border-color:var(--color-bg-purple);	
}

.line-.dia-.blue-::after {
	background-color:var(--color-bg-blue);
}
.line-.dia-.red-::after {
	background-color:var(--color-bg-red);
}
.line-.dia-.green-::after {
	background-color:var(--color-bg-green);
}
.line-.dia-.pink-::after {
	background-color:var(--color-bg-pink);
}
.line-.dia-.purple-::after {
	background-color:var(--color-bg-purple);
}
.line-.multi-{
	border-color:#ABABAB;
}
.line-.multi-.blue-::after {
	border-color:var(--color-bg-blue);
}
.line-.multi-.red-::after {
	border-color:var(--color-bg-red);
}
.line-.multi-.green-::after {
	border-color:var(--color-bg-green);
}
.line-.multi-.pink-::after {
	border-color:var(--color-bg-pink);
}
.line-.multi-.purple-::after {
	border-color:var(--color-bg-purple);
}

/************************
ボタンリンク
*************************/
.link- > a {  
  display: inline-block;
  cursor: pointer;
  line-height: normal;
  padding: 10px 20px;
  text-decoration: none;
  text-align: center;  
  position: relative;
  transition: opacity 0.5s ease; 
}
.link-:hover > a:hover {
  color: #fff;     
  text-decoration: none; 
  opacity: 0.3;
}

.wp-block-button.link-1 a{
  line-height: normal;
  padding: 10px 20px;
  transition:none;   
}
.wp-block-button.link-1.blue- a{
	background-color:var(--color-bg-blue)!important;
}
.wp-block-button.link-1.red- a{
	background-color:var(--color-bg-red)!important;
}
.wp-block-button.link-1.green- a{
	background-color:var(--color-bg-green)!important;
}
.wp-block-button.link-1.pink- a{
	background-color:var(--color-bg-pink)!important;
}
.wp-block-button.link-1.purple- a{
	background-color:var(--color-bg-purple)!important;
}
.wp-block-button.link-1 a:hover{
 background-color:#000;
 opacity:0.5;
 color:#FFF;
}

.wp-block-button.link-2 a {
  overflow: hidden;
  padding: 10px 20px; 
  color: #fff;
  border-radius: 0;
  background:#6B5E56;
  position: relative;
  /* z-index の代わりに新しい重ね合わせコンテキストを作成 */
  isolation: isolate;
  display: inline-block; /* 必要に応じて調整 */
}
.wp-block-button.link-2 a:hover{
	opacity:1;
}
.wp-block-button.link-2 a:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: transform .5s ease-in-out;
  transition: transform .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background:#000;
  /* 背景の上、かつテキストの下に配置するためマイナス値を設定 */
  z-index: -1; 
}
.wp-block-button.link-2 a:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);  
}

.wp-block-button.link-2.blue- a {
	background:var(--color-bg-blue)!important;
}
.wp-block-button.link-2.red- a {
	background:var(--color-bg-red)!important;
}
.wp-block-button.link-2.green- a {
	background:var(--color-bg-green)!important;
}
.wp-block-button.link-2.pink- a {
	background:var(--color-bg-pink)!important;
}
.wp-block-button.link-2.purple- a {
	background:var(--color-bg-purple)!important;
}

.wp-block-button.link-3.blue- a:hover,
.wp-block-button.link-3.red- a:hover,
.wp-block-button.link-3.green- a:hover,
.wp-block-button.link-3.pink- a:hover,
.wp-block-button.link-3.purple- a:hover{
		background:var(--color-hover-bg);	
    color:var(--color-hover-text);
}

.wp-block-button.link-3.blue- a{
	background:var(--color-bg-blue);
}
.wp-block-button.link-3.red- a {
	background:var(--color-bg-red);
}
.wp-block-button.link-3.green- a {
	background:var(--color-bg-green);
}
.wp-block-button.link-3.pink- a {
	background:var(--color-bg-pink);
}
.wp-block-button.link-3.purple- a {
	background:var(--color-bg-purple);
}

/************************
ラベルリンク
*************************/
.label-.labellink- {
	padding: 0 !important;
}
.label-.labellink- a{
	text-decoration: none;
	display: block; /* カード全体をクリック可能にし、背景色を全体の領域に適用 */
	width: 100%;
	height: 100%;
	padding: 1em 1em;
}
.label-.labellink- a:hover{
	text-decoration: none;
	background:var(--color-hover-bg);	
    color:var(--color-hover-text);
	border:solid 1px black;
}

/************************
ボタンリンク サークルリンク
*************************/
/* 1. ボタン全体の親要素 */
.wp-block-button.circle- {
  display: inline-block;
}
/* 2. リンク要素（サークル化） 
   ※.circle- と .wp-block-button__link の間にスペース（半角）が必要です */
.wp-block-button.circle- .wp-block-button__link {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100px !important;
  height: 100px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  font-size: 15px;
  color: #fff !important;  
  text-align: center;
  box-sizing: border-box;
  transition: opacity 0.5s ease;
}
/* 3. ホバー処理 */
.wp-block-button.circle- a:hover {
  text-decoration: none;	
  opacity: 0.6;
}
/* 4. 背景色の指定（追加部分）*/
.wp-block-button.circle-.blue- .wp-block-button__link {
  background-color: var(--color-bg-blue) !important;
}
.wp-block-button.circle-.red- .wp-block-button__link {
  background-color: var(--color-bg-red) !important;
}
.wp-block-button.circle-.green- .wp-block-button__link {
  background-color: var(--color-bg-green) !important;
}
.wp-block-button.circle-.pink- .wp-block-button__link {
  background-color: var(--color-bg-pink) !important;
}
.wp-block-button.circle-.purple- .wp-block-button__link {
  background-color: var(--color-bg-purple) !important;
}
/************************
ボタンリンク 正方形リンク
*************************/
.wp-block-button.square- {
  display: inline-block;
}
.wp-block-button.square- .wp-block-button__link {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100px !important;
  height: 100px !important;
  padding: 0 !important;
  font-size: 15px;
  color:#fff !important;
  text-align: center;
  box-sizing: border-box;
	transition: opacity 0.5s ease;
}
.wp-block-button.square- a:hover{
  text-decoration: none;	
	opacity: 0.6;
}
.wp-block-button.square-.blue- .wp-block-button__link {
  background-color: var(--color-bg-blue) !important;
}
.wp-block-button.square-.red- .wp-block-button__link {
  background-color: var(--color-bg-red) !important;
}
.wp-block-button.square-.green- .wp-block-button__link {
  background-color: var(--color-bg-green) !important;
}
.wp-block-button.square-.pink- .wp-block-button__link {
  background-color: var(--color-bg-pink) !important;
}
.wp-block-button.square-.purple- .wp-block-button__link {
  background-color: var(--color-bg-purple) !important;
}

/************************
カウンタリスト
*************************/
/* リスト全体のリセットと余白設定 */
ol.counter-  {
  list-style: none;
  counter-reset: custom-counter;
  padding-left: 0;
  margin-left: 0;
}
/* 各リスト項目のスタイル */
ol.counter- > li {
  position: relative;
  display: flex;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px dashed #ccc
	!important;
  counter-increment: custom-counter;
}
/* 青色の円と白抜き数字の設定 */
ol.counter- > li::before {
  content: counter(custom-counter);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  margin-right: 12px;
  background-color:#ABABAB;
  color: #ffffff;
  border-radius: 50%;
  font-size: 20px;
  font-weight: bold;
  flex-shrink: 0;
}
ol.counter-.blue-> li::before {
	background-color:var(--color-bg-blue)!important;
}
ol.counter-.red-> li::before {
	background-color:var(--color-bg-red)!important;
}
ol.counter-.green-> li::before {
	background-color:var(--color-bg-green)!important;
}
ol.counter-.pink-> li::before {
	background-color:var(--color-bg-pink)!important;
}
ol.counter-.purple-> li::before {
	background-color:var(--color-bg-purple)!important;
}

/************************
タブリスト
*************************/
/* --- タブリストのレイアウト調整 --- */
.wp-block-tab-list {
  display: flex !important;
  width: 100%;
  gap: 4px !important; /* タブ間のわずかな隙間（2px?6px程度で調整可） */
}
/* --- 通常のタブ --- .wp-block-tab-list*/
.tab- button[role="tab"] {
   /* flex: 1;均等幅に広げる */
  min-width:120px;/*均等サイズ*/
  text-align: center;
  background-color: #f0f0f0 !important;
  color: #333333 !important;
  border: none;
  padding: 10px 12px; /* パディング */
  font-size: 14px !important; /* フォントサイズを小さく設定（標準は16px前後） */
  cursor: pointer;
  transition: all 0.3s ease;
}
/* --- ホバー時 --- */
.tab- button[role="tab"]:hover {
  background-color: #e5e5e5 !important;
}
/* --- アクティブ（選択中）のタブ --- */
.tab- button[role="tab"][aria-selected="true"] {
  background-color: #0073aa !important;
  color: #ffffff !important;
  font-weight: bold;
}
.tab- .wp-block-paragraph{
	padding:10px 20px;
}
.tab-.blue- button[role="tab"][aria-selected="true"] {
  background-color:var(--color-bg-blue) !important;
}
.tab-.red- button[role="tab"][aria-selected="true"] {
  background-color:var(--color-bg-red) !important;
}
.tab-.green- button[role="tab"][aria-selected="true"] {
  background-color:var(--color-bg-green) !important;
}
.tab-.pink- button[role="tab"][aria-selected="true"] {
  background-color:var(--color-bg-pink) !important;
}
.tab-.purple- button[role="tab"][aria-selected="true"] {
  background-color:var(--color-bg-purple) !important;
}
/************************
アコーディオン
*************************/
.openbox- .wp-block-paragraph{
	padding:10px 20px;
}
/* 1. 見出し(h3)のリセット（左線・枠線の削除） */
.openbox- .wp-block-accordion-heading,
.openbox- .wp-block-accordion-heading * {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 1rem !important;
  font-weight: normal !important;
  line-height: 1.4 !important;
  border: none !important;
  border-left: none !important;
  outline: none !important;
}
/* 2. ボタン要素をFlexboxにして1行に並べる */
.openbox- .wp-block-accordion-heading__toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 20px 20px !important;       /* ← ここで全体の余白（上下8px 左右16px）を調整 */
  background-color:var(--color-bg-blue) !important; /* 背景色：青 */
  color: #fff !important;           /* 文字色：白 */
  text-decoration: none !important;
  box-sizing: border-box !important;
  min-height: auto !important;
}
/* 3. テキスト部分の設定（余白をリセットして折り返しを防止） */
.openbox- .wp-block-accordion-heading__toggle-title {
  display: inline-block !important;
  padding: 0 !important;              /* 重複していたpaddingを解除 */
  font-size: 16px !important;
  color: #fff !important;
  flex: 1 !important;                 /* テキスト領域を自動で広げる */
  text-align: left !important;
}
/* 4. アイコン（+マーク）の設定（改行を阻止） */
.openbox- .wp-block-accordion-heading__toggle-icon {
  display: inline-block !important;
  color: #fff !important;
  margin-left: 8px !important;        /* テキストとアイコンの間の余白 */
  white-space: nowrap !important;      /* 改行を防止 */
  font-size: 16px !important;
}
/* 5. ホバー時の処理 */
/*
.openbox- .wp-block-accordion-heading__toggle:hover,
.openbox- .wp-block-accordion-heading__toggle:hover * {
  text-decoration: none !important;
  background-color: #000 !important;
  color: #fff !important;
}
*/
.openbox- .wp-block-accordion-heading__toggle:hover,
.openbox- .wp-block-accordion-heading__toggle:hover *,
.openbox-.blue- .wp-block-accordion-heading__toggle:hover,
.openbox-.blue- .wp-block-accordion-heading__toggle:hover *,
.openbox-.red- .wp-block-accordion-heading__toggle:hover,
.openbox-.red- .wp-block-accordion-heading__toggle:hover *,
.openbox-.green- .wp-block-accordion-heading__toggle:hover,
.openbox-.green- .wp-block-accordion-heading__toggle:hover *,
.openbox-.pink- .wp-block-accordion-heading__toggle:hover,
.openbox-.pink- .wp-block-accordion-heading__toggle:hover *,
.openbox-.purple- .wp-block-accordion-heading__toggle:hover,
.openbox-.purple- .wp-block-accordion-heading__toggle:hover *{
  text-decoration: none !important;
  background-color: #000 !important;
  color: #fff !important;
}

.openbox-.blue- .wp-block-accordion-heading__toggle {
	background-color:var(--color-bg-blue) !important; 
}
.openbox-.red- .wp-block-accordion-heading__toggle {
	background-color:var(--color-bg-red) !important; 
}
.openbox-.green- .wp-block-accordion-heading__toggle {
	background-color:var(--color-bg-green) !important;
}
.openbox-.pink- .wp-block-accordion-heading__toggle {
	background-color:var(--color-bg-pink) !important;
}
.openbox-.purple- .wp-block-accordion-heading__toggle {
	background-color:var(--color-bg-purple) !important;
}
/************************
ボックス 
*************************/
.box- {
	padding:15px 20px;
	border-width:1px;
	border-style:solid;
	border-color:#ABABAB;
}

.box-.blue-{
	border-width:5px;
	border-color:var(--color-bg-blue) !important;
}
.box-.red-{
	border-width:5px;
	border-color:var(--color-bg-red) !important; 
}
.box-.green- {
	border-width:5px;
	border-color:var(--color-bg-green) !important;
}
.box-.pink- {
	border-width:5px;
	border-color:var(--color-bg-pink) !important;
}
.box-.purple- {
	border-width:5px;
	border-color:var(--color-bg-purple) !important;
}

.box-.shadow-{
	box-shadow: 2px 2px 4px gray;
}

.box-.dot-{
	border:dotted;
}
.box-.w-{
	border:double;
}
/************************
タブボックス 
*************************/
/* 1. 外枠（グループブロック本体）の設定 */
.wp-block-group.tabbox- {
  position: relative !important;
  margin-top: 3em !important;
  margin-bottom: 2em !important;
  padding: 1.2em 1em 1em !important;
  background-color: transparent !important;
  border-radius: 0 8px 8px 8px !important; /* タブの右下側などに合わせて角丸を調整 */
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), 0 0 1px rgba(0, 0, 0, 0.1) inset !important;
  box-sizing: border-box !important;
}

/* 2. タブタイトル（h6要素）の設定 */
.wp-block-group.tabbox- h6.wp-block-heading {
  position: absolute !important;
  top: -28px !important;                 /* タブの高さに合わせて枠線上に配置 */
  left: -4px !important;                  /* 左枠線の太さ分だけ左へ寄せる */
  height: 28px !important;
  margin: 0 !important;
  padding: 2px 12px !important;
  font-size:18x !important;             /* 文字サイズ */
  font-weight: bold !important;
  line-height: 24px !important;
  color: #fff !important;                 /* 文字色：白 */
  border-radius: 8px 8px 0 0 !important; /* タブ上の角丸 */
  box-sizing: border-box !important;
  background-color:#ABABAB;
}
/* 3. 本文（p要素）の調整 */
.wp-block-group.tabbox- p.wp-block-paragraph {
  margin: 0 !important;                   /* 不要な上下余白をリセット */
}
/* --- カラー指定（bg-red クラス用） --- */
/* 外枠の色 */
.wp-block-group.tabbox- {
  border: 4px solid #ABABAB;
}
/* 色 */
.wp-block-group.tabbox-.blue- {
  border-color:var(--color-bg-blue) !important;
}
.wp-block-group.tabbox-.blue- h6.wp-block-heading{
	background-color: var(--color-bg-blue) !important;
}
.wp-block-group.tabbox-.red- {
  border-color:var(--color-bg-red) !important;
}
.wp-block-group.tabbox-.red- h6.wp-block-heading{
	background-color: var(--color-bg-red) !important;
}
.wp-block-group.tabbox-.green- {
  border-color:var(--color-bg-green) !important;
}
.wp-block-group.tabbox-.green- h6.wp-block-heading{
	background-color: var(--color-bg-green) !important;
}
.wp-block-group.tabbox-.pink- {
  border-color:var(--color-bg-pink) !important;
}
.wp-block-group.tabbox-.pink- h6.wp-block-heading{
	background-color: var(--color-bg-pink) !important;
}
.wp-block-group.tabbox-.purple- {
  border-color:var(--color-bg-purple) !important;
}
.wp-block-group.tabbox-.purple- h6.wp-block-heading{
	background-color: var(--color-bg-purple) !important;
}
/* ========================================
   テーブル
   ======================================== */ 
.wp-block-table.tbl- th{
 background-color:var(--color-tbl-head);
}
.wp-block-table.tbl- table{
	border:solid 2px var(--color-tbl-line) ;
}

