@charset "UTF-8";
#header {background-color: rgba(255,255,255,1);}
#page_header{background-image: url("../img/header_img_pc.webp");}
#page_header_news{background-image: url("../img/header_img_02_pc.webp");}

.border_tb_h2{font-size: 2.2em;border-bottom: solid 2px #004d84;border-top: solid 2px #004d84;padding: 0.4em 0 0.4em 0.6em;}
.box-item04{width: 20%;display: inline-block;margin:5% 0 0%;height: auto;}

    :root{
      --blue:#1e88e5;
      --text:#111;
      --line:#d9d9d9;
      --bg:#fff;
      --tap:44px;
    }

    body{
      background:var(--bg);
      color:var(--text);
    }

    .wrap{
      max-width: 900px;
      margin: 0 auto;
      padding: 20px 16px 40px;
    }

    .section{
       padding-top: 18px;
      margin-top: 18px;
    }

    .section__head{
      display:flex;
      align-items:center;
      gap:14px;
      padding-bottom: 12px;
		border-bottom: 1px solid var(--line);
    }

    .section__no{
      min-width: 42px;
      font-weight: 800;
      font-size: 28px;
      color: var(--blue);
      letter-spacing: .02em;
    }

    .section__title{
      margin:0;
      flex:1;
      font-size: 22px;
      font-weight: 800;
    }

    .toggle{
      width: var(--tap);
      height: var(--tap);
      border: none;
      background: transparent;
      cursor: pointer;
      display:grid;
      place-items:center;
      border-radius: 10px;
    }
    .toggle:focus-visible{
      outline: 3px solid rgba(30,136,229,.35);
      outline-offset: 2px;
    }

    /* ＋アイコン（CSS） */
    .toggle__icon{
      width: 22px;
      height: 22px;
      position: relative;
    }
    .toggle__icon::before,
    .toggle__icon::after{
      content:"";
      position:absolute;
      left:50%;
      top:50%;
      width: 22px;
      height: 3px;
      background: var(--blue);
      border-radius: 999px;
      transform: translate(-50%, -50%);
    }
    .toggle__icon::after{
      transform: translate(-50%, -50%) rotate(90deg);
      transition: transform .2s ease;
    }

    /* 開いている時：＋→× */
    .section.is-open .toggle__icon::after{
      transform: translate(-50%, -50%) rotate(0deg);
    }

    .items{
      display:none; /* jQueryのslideToggle用 */
    }

    .item{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding: 14px 6px;
      border-bottom: 1px solid var(--line);
      text-decoration:none;
      color:inherit;
    }

    .item__left{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:0;
    }

    .item__bullet{
      width: 12px;
      height: 12px;
      background: var(--blue);
      border-radius: 2px;
      flex: 0 0 auto;
    }

    .item__text{
      font-size: 16px;
      font-weight: 700;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .item__arrow{
      width: 10px;
      height: 10px;
      border-right: 3px solid var(--blue);
      border-top: 3px solid var(--blue);
      transform: rotate(45deg);
      flex: 0 0 auto;
      margin-right: 6px;
    }

    .item:hover{
      background: rgba(30,136,229,.06);
    }

    /* breakpoint 640px */
    @media (max-width: 639px){
      .wrap{ padding: 16px 12px 32px; }
      .section__no{ font-size: 24px; min-width: 38px; }
      .section__title{ font-size: 20px; }
      .item{ padding: 13px 4px; }
      .item__text{ font-size: 15px; }
    }

    @media (min-width: 640px){
      .wrap{ padding: 28px 20px 56px; }
      .section__no{ font-size: 30px; min-width: 46px; }
      .section__title{ font-size: 24px; }
    }

/* 詳細ページCSS */
.border_b_h2{font-size: 2.2em;border-bottom: solid 2px #000000;padding: 0.4em 0 0.4em 0.6em;}
.border_b_h2 span{color:#0086cf;margin-right: 0.6em;font-size:1.3em;}
.sub-title_h3{font-size: 1.8em;margin: 1em 0;}
/* 会社概要表
  ********************************************** */
.company_info{width: 100%;margin: 0 auto;padding-bottom: 0em;}
.company_info dl {
  display: flex;
  flex-wrap: wrap;
	width: 100%;
	margin: 5% 0 0%;
	padding: 0;
	border-top: solid 1px #999999;
}
.company_info dt {
  width: 20%;
  padding: 20px 5%;
 margin: 0 0 0 0;
  display: flex;
  align-items: center;
  justify-content: left;
	border-bottom: solid 1px #999999;
	font-size: 1em;
	font-weight: bold;
	background-color: #eeeeee;
}
.company_info dd {
  width: 62%;
  padding: 20px 5% 20px 3%;
  margin: 0 0 0 0;
	border-bottom: solid 1px #999999;
	font-size: 1em;
	text-align: left;
	line-height: 1.8em;
}
.post_wrap{margin: 4em 0;}

.wp-block-image img {
    width: 100%;
	margin-bottom:2em;
}





/*
===================================================
 tb タブレット解像度
===================================================
*/
@media screen and (max-width:1000px) {

	}
/*
===================================================
 sp スマホ解像度
===================================================
*/
@media screen and (max-width:640px) {
#page_header{background-image: url("../img/header_img_sp.webp");}
#page_header_news{background-image: url("../img/header_img_02_sp.webp");}
.border_tb_h2{font-size: 1.6em;border-bottom: solid 2px #004d84;border-top: solid 2px #004d84;padding: 0.4em 0 0.4em 0.6em;}	
/* 会社概要表
  ********************************************** */
.company_info{
width: 100%;
  height: auto;
margin: 0 auto;
}
.company_info dl {
  display: flex;
  flex-wrap: wrap;
	width: 100%;
	margin: 10% auto 0%;
	padding: 0;
}
.company_info dt {
  width: 96%;
  padding: 2% 2% 0%;
  margin: 0 0 0px 0;
display: flex;
  align-items: center;
  justify-content: left;
border-bottom: none;
}
.company_info dd {
  width: 96%;
  padding: 1% 2% 2%;
  margin: 0 0 0px 0;
border-bottom: solid 1px #999999;
}

/* 詳細ページCSS */
.border_b_h2{font-size: 1.6em;border-bottom: solid 2px #000000;padding: 0.4em 0 0.4em 0.6em;}
.sub-title_h3{font-size: 1.3em;margin: 0.6em 0;}
.wp-block-image img {
    width: 100%;
	margin-bottom:1em;
}
}
