@charset "UTF-8";

/* CSS Document */
/* BIZ-MYHISTORY CSS 2024061601 */
/*#bs4navbar, .navbar-collapse {
background-color: #abc !important;
}*/


/* COMMON */
/* body {
  background-color: #f6f6ff;
} */

/* .navbar {
  background-color: #f6f6ffee;
} */

hr {
  border-top: solid 1px #ddd;
}

a {
  text-decoration: none !important;
}

.bg-black a {
  color: #fff !important;
}

a:hover {
  text-decoration: underline !important;
}

.content a {
  font-family: "ryo-gothic-plusn", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 700;
  font-style: normal;
}

.content a:after {
  /*background: linear-gradient(transparent 70%, #ffff68 0%);*/
  content: ' \f0a9';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 5px;
}

/* LIST */
.list-style-none {
  list-style-type: none;
}

/* SINGLE */
.single-part,
.list-part {
  background-color: #eaeaff;
  padding: 30px;
}

/* /SINGLE */
.read-more {
  font-size: 0.8rem;
  color: #909090;
}

.no-gutters {
  margin: 0;
  padding: 0;
}

.no-gutters>.col,
.no-gutters>[class*="col-"] {
  margin: 0;
  padding: 0;
}

/* BAR */
.bar-gray {
  border: solid 1px #909090;
}

.underbar,
.bb {
  border-bottom: solid 1px #000000;
}

.bt-gl {
  border-top: solid 1px #cecece;
}

.underbar-2 {
  border-bottom: solid 2px #000000;
}

.underbar-green {
  border-bottom: solid 1px #2BA23A;
}

.underbar-purple {
  border-bottom: solid 1px #E9E5E9;
}

.underbar-white {
  border-bottom: 1px solid #fff;
}

.underbar-blue {
  border-bottom: solid 1px #00bfff;
}

.underbar-blue-2 {
  border-bottom: solid 2px #00bfff;
}

/* /BAR */
/* BADGE */
.badge-primary,
.back-primary {
  background-color: #6495ed !important;
  color: #fff;
}

.back-white,
.side-part aside:first-child {
  background-color: #fff;
}

.back-white80 {
  background-color: rgba(255, 255, 255, 0.8);
}

.back-dark {
  background-color: #000;
  color: #fff;
}

.badge-warning,
.back-warning {
  background-color: #db7093 !important;
  color: #fff !important;
}

.badge-light,
.back-light {
  background-color: #fff !important;
  color: #777 !important;
}

/* /BADGE */
/* BUTTON */
.btn-noborder {
  border: none;
}

button {
  padding: 10px;
  border: solid 1px #909090;
  background-color: #FFF;
  color: #909090;
  font-size: 1.3rem !important;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

button:hover,
button.active {
  background-color: darkslateblue;
  color: #fff;
}

/* /BUTTON */
/* FONT */
.minchou-ryo-200 {
  font-family: "ryo-text-plusn", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-weight: 200;
  font-style: normal;
}

.minchou-ryo-400 {
  font-family: "ryo-text-plusn", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-weight: 400;
  font-style: normal;
}

.gothic-ryo-200 {
  font-family: "ryo-gothic-plusn", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 200;
  font-style: normal;
}

.gothic-ryo-400 {
  font-family: "ryo-gothic-plusn", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 400;
  font-style: normal;
}

.gothic-ryo-700 {
  font-family: "ryo-gothic-plusn", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 700;
  font-style: normal;
}

.minchou-han-200 {
  font-family: "source-han-serif-japanese", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-weight: 200;
  font-style: normal;
}

.minchou-tbud-500 {
  font-family: ".tk-tbudmincho-std", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-weight: 500;
  font-style: normal;
}

.minchou-tbud-900 {
  font-family: ".tk-tbudmincho-std", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-weight: 900;
  font-style: normal;
}

.minchou-ten-400 {
  font-family: ten-mincho, serif;
  font-weight: 400;
  font-style: normal;
}

.shippori-mincho {
  font-family: "Shippori Mincho B1", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.zen-kaku-gothic-new-400 {
  font-family: "Zen Kaku Gothic New";
  font-weight: 400;
  font-style: normal;
}

.text-s {
  font-size: 0.8rem;
}

.text-ss {
  font-size: 0.7rem;
}

.line-height-1 {
  line-height: 1rem;
}

.badge {
  font-weight: 100 !important;
}

/** FONT **/
.icon::before,
.icon::after,
.widget li::before,
footer .widget li::before {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}

/*** PREV ***/
.prev a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f137";
  margin-right: 0.8rem;
}

.next a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f138";
  margin-left: 0.8rem;
}

/*** /PREV ***/
/*** LIST ***/
.side-part .widget li::before,
footer .widget li::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  margin-right: 0.5rem;
}

/*** /LIST ***/
/*** 外部リンク ***/
.link a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0ac";
  margin-left: 0.8rem;
}

/*** /外部リンク ***/
/*** SEARCH ***/
.search-submit:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f002";
  margin-left: 0.8rem;
}

/*** /SEARCH ***/
/** FONT AWESOME **/
/* /FONT */
/* BUTTON */
.btn-maru {
  display: inline-block;
  text-decoration: none;
  background: rgba(255, 0, 0, 1);
  color: #FFF;
  width: 100px;
  height: 100px;
  line-height: 20px;
  border-radius: 50%;
  text-align: center;
  vertical-align: middle;
  overflow: hidden;
  transition: .4s;
}

/*.btn-maru:hover{
background: #668ad8;
}*/
/* BUTTON CSS ANIMATION */
/* BASIC */
.menu-trigger,
.menu-trigger-acrd,
.menu-trigger span,
.menu-trigger-acrd span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}

.menu-trigger,
.menu-trigger-acrd {
  position: relative;
  width: 20px;
  height: 20px;
  margin-left: auto;
}

.menu-trigger span,
.menu-trigger-acrd span {
  position: absolute;
  top: -5px;
  left: 0px;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: translate(0, 0) rotate(-45deg);
  transform: translate(0, 0) rotate(-45deg);
  -webkit-animation: 2s infinite;
  animation: 2s infinite;
  box-sizing: border-box;
}

/* ACTIVE */
.menu-trigger.active span,
.menu-trigger-acrd.active span {
  -webkit-transform: translate(0, 10px) rotate(-225deg);
  transform: translate(0, 10px) rotate(-225deg);
  -webkit-animation: 2s infinite;
  animation: 2s infinite;
}

/* ARROW BUTTON */
._container {
  margin: 20px;
}

._toggle-button {
  cursor: pointer;
  display: inline-block;
  margin-bottom: 10px;
}

details .slide-content {
  overflow: hidden;
  /* max-height: 0; */
  /* transition: max-height 0.3s ease-out; */
  /* height: 0; */
  /*margin-top: 0px;
  opacity: 0;
  padding: 0;
  transition: all .6s ease-out; */
  animation-name: fadeout;
  animation-duration: 0.8s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

@keyframes fadeout {
  0% {
    opacity: 1;
    height: 100%;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    height: 0;
    transform: translateY(-20px);
  }
}

details[open] .slide-content {
  /*.slide-content.expanded*/
  /* max-height: 100%; */
  /* height: auto; */
  /* margin-top: 16px;
  opacity: 1;
  padding: 16px 5px 0 20px;
  transition: all .4s ease-out; */
  animation-name: fadein;
  animation-duration: 0.5s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

@keyframes fadein {
  0% {
    opacity: 0;
    height: 0;
    transform: translateY(0);
  }

  100% {
    opacity: 1;
    height: auto;
    transform: translateY(20px);
  }
}

/* detailタグ　summaryタグ　でアコーディオン表示対応 */
details {
  --arrow-size: 18px;
  --anime-speed: 0.3s;
}

details summary {
  box-sizing: border-box;
  position: relative;
  display: block;
  font-weight: 700;
  /* padding: 1.5em calc(var(--arrow-size) + 3em) 1.5em 3.5em; */
  /* background: #fff;
  border: 1px solid #84b1de; */
  cursor: pointer;
}

details summary::-webkit-details-marker {
  /* iOSで表示されるデフォルトの三角形アイコンを消す */
  display: none;
}

/* ※本来はafter要素の装飾で十分だが、iOSだと疑似要素に「transition」が効かないので、通常のタグを装飾 */
details summary .arrow-accordion {
  position: absolute;
  right: 1.5em;
  bottom: 10px;
  display: block;
  width: var(--arrow-size);
  height: calc(var(--arrow-size) * 0.6);
  /*aspect-ratio: 1/0.6;*/
  /* ※追記 Windows版Chrome124にてaspect-ratioを指定した要素と、position: absoluteの位置調整の組み合わせに不具合が発生したため、height値をcalcの計算に切り替え */
  margin: auto;
  background: #0a64be;
  clip-path: polygon(100% 13%, 50% 100%, 0 13%, 8% 0, 50% 73%, 92% 0);
  transition: transform var(--anime-speed);
}

details .arrow-accordion2nd {
  position: relative;
  top: 0;
  right: 1.5em;
  bottom: 0;
  display: block;
  width: var(--arrow-size);
  height: calc(var(--arrow-size) * 0.6);
}

details[open] summary .arrow-accordion {
  transform: rotate(180deg);
}

/* LAYOUT */
.img-fluid {
  width: 100%;
}

/* Responsive images */
.entry-content img,
.comment-content img,
.widget img {
  max-width: 100%;
  /* Fluid images for posts, comments, and widgets */
  height: auto;
}

/* WORDPRESS 縦長表示対応 */
.wp-block-image img {
  max-width: 100％;
  height: auto;
}

/* IEレイアウト崩れ対策 */
.kakomi1 {
  padding: 20px 30px 20px 30px;
  /*border: solid 1px #00bfff;*/
  border-radius: 1rem 0 0 0;
  background-color: #fff;
}

/* スクロールスナップ */
.scroll-snap {
  scroll-snap-type: x mandatory;
}

.scroll-snap>* {
  scroll-snap-align: start;
}

/* 横スクロールエリアだけグローバルパディングをゼロにする */
.no-global-padding {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.no-global-padding .has-global-padding {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.kakomi1 h3 {
  color: #00bfff;
  border-bottom: solid 1px #00bfff;
}

.kiji-wrap {
  background-color: #fff;
  margin-bottom: 4rem;
  padding-bottom: 1rem;
}

.kiji {
  background-color: rgba(255, 255, 255, 1);
}

.kiji .row,
.accordion-close {
  background-color: #fafafa;
}

.max-height-8 {
  max-width: auto;
  max-height: 300px;
}

.people-photo {
  border-radius: 75px;
  -moz-border-radius: 75px;
  -webkit-border-radius: 75px;
}

.people-photo-m {
  border-radius: 150px;
  -moz-border-radius: 150px;
  -webkit-border-radius: 150px;
}

.text-sub {
  margin-top: -0.5rem;
  font-size: 1rem;
}

.blog {
  margin-bottom: 0.7rem;
}

.blog h6 {
  margin-bottom: 0;
}

.sns a {
  margin-right: 20px;
}

/** BIJOSAIJO **/
.bijosaijo-wrap table tr {
  font-size: 0.9rem;
  /* line-height: 1rem; */
}

.bijosaijo-wrap table td div {
  padding: 0.1rem 0.2rem 0.1rem 1rem;
}

@media (min-width: 768px) {
  .bijosaijo-wrap table tr {
    /* font-size: 1rem; */
    /* line-height: 1rem; */
  }
}

.year {
  background-color: rgba(255, 255, 255, 0.8);
  border-bottom: solid 3px #f6f6ff;
}

.year.head {
  background-color: rgba(255, 255, 255, 1);
  border-bottom: solid 3px #f6f6ff;
}

.bijo {
  background-color: rgba(255, 0, 0, 0.1);
  border-bottom: solid 3px #f6f6ff;
}

.saijo {
  background-color: rgba(50, 150, 200, 0.1);
  border-bottom: solid 3px #f6f6ff;
}

.bijo.head {
  padding: 5px;
  background-color: rgba(255, 0, 0, 0.2);
}

.saijo.head {
  padding: 5px;
  background-color: rgba(50, 150, 200, 0.2);
}

/** /BIJOSAIJO **/

/** 忘れ得ぬ人々 **/
.post {
  /* height: 100vh; */
  /* セクションの高さを画面全体に設定 */
  /* padding: 20px; */
  position: relative;
  /* sticky 要素の基準にする */
}

.post summary {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  /* ヘッダーが上部に固定される */
  background-color: white;
  /* padding: 10px; */
  /* font-size: 24px; */
  /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
  z-index: 10;
}

.hitobito .conteiner {
  background-color: #000;
  color: #fff;
}

.hitobito .image-container {
  width: 150px;
  overflow: hidden;
  text-align: center;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.hitobito .image-container img {
  width: 100%;
  height: auto;

}

.hitobito .image-container.loaded {
  opacity: 1;
}

.hitobito .summary {
  width: 200px;
}

/* 興味あるエピソード episode */
.square-crop-50 img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  /* はみ出す部分を隠す */
  object-position: center;
  /* 上下中央に切る */
  display: block;
  /* 不要な隙間を消す */
}

.episode-img {
  position: relative;
  top: -10px;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.episode-img.loaded {
  opacity: 1;
}

.episode-bu {
  min-height: 250px;
  position: relative;
}

.episode-bu button {
  position: absolute;
  right: 15px;
  bottom: 15px;
}

.epsd-result .kou h3 {
  font-size: 1.2rem;
}

@media (min-width: 768px) {
  .epsd-result .kou h3 {
    font-size: 1.3rem;
  }
}

.epsd-result .item h4 {
  font-size: 1.1rem;
}

@media (min-width: 768px) {
  .epsd-result .item h4 {
    font-size: 1.2rem;
  }
}

/** LAYOUT **/

/* PARTS */
/* /PARTS */
/** /COMMON **/
/* MENU */
/* /MENU */
/* GLOBAL MENU */
.global {
  /*background-color: #ffffffaa;*/
}

.global li {
  padding-left: 0rem;
}

.global li a {
  display: block;
  padding: 3px 5px 3px 5px;
  font-size: 0.9rem;
  color: #000000CC !important;
  letter-spacing: 0.1rem;
  position: relative;
  z-index: 2;
  border-bottom: 2px solid #fff;
  line-height: 30px;
  /* メニューの高さ */
}

.global a>span {
  /* display: block;
  font-size: 0.7rem;
  margin-left: 0px;
  メニュー英語 */
}

.global li a:hover {
  font-stretch: expanded;
  color: #000000cc !important;
}

.global li a::after {
  position: absolute;
  bottom: 2px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #333;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
}

.global li a:hover::after {
  bottom: -4px;
  opacity: 1;
  visibility: visible;
}

.global li a.active {
  border-bottom: 2px solid #000000cc !important;
  box-sizing: border-box;
}

@media (min-width: 991.98px) {

  .global ul,
  .global ol {
    /*min-height: 60px;
    display: table;
    width: 100%;*/
    margin: 0 auto;
    table-layout: fixed;
    font-size: 1.0rem;
    /* MENU FONT SIZE*/
    line-height: 1rem;
  }

  .global li {
    /* display: table-cell;
    width: 160px;
    padding: 10px 10px;
    text-align: center; */
  }

  #menu-main,
  #menu-sub_menu_toujousha {
    width: 100%;
  }
}

/* / GLOBAL MENU */
/* SUB-MENU */
.sub-menu .container .navbar {
  max-height: 42px;
}

.sub-menu {
  background-color: #f0f0f0;
}

.sub-menu .container .col {
  height: 52px;
}

.sub-menu p {
  margin: 0;
}

.sub-menu .row,
.sub-menu .col,
.sub-menu .navbar-nav {
  width: 100%;
}

/* / SUB-MENU */
/** SIDE **/
.side-part .widget,
footer .widget li {
  margin-bottom: 20px;
  /*border: 1px solid #ccc;*/
  /*border-radius: 4px;
    text-align: center;*/
}

.side-part .widget ul,
footer .widget ul {
  list-style-type: none;
}

.side-part .widget li,
footer .widget li {
  font-size: 0.8rem;
}

.side-part .widget li a,
footer .widget li a {
  text-indent: -50px;
}

.side-part .widget label,
footer .widget label {
  margin-top: 10px;
}

.side-part .widget .err {
  width: 95%;
  border-top: #000 dotted;
  background-color: #FFeeee;
}

.side-part .widget .button_div {
  /*padding: 10px;*/
}

.side-part .widget-title,
footer .widget-title {
  padding: 5px;
  border-bottom: solid 1px #ccc;
  font-size: 1rem;
}

.side-part .widget_search,
footer .widget_search {
  padding: 10px;
}

/** /SIDE **/

/* PAGE */
/* PAGE */
/** CARD **/
/*.card {
    border: solid 2px #39B54A;
  }
  .card-title {
    color: #39B54A;
  }*/
/** /CARD **/
/* FOOTER */
footer p {
  font-size: 0.8rem;
}

/* /FOOTER */
/** POST **/
/*/投稿*/
/* WIDGET */
footer .widget a {
  font-size: medium;
}

/** SITEORIGINE WIDGET **/
.pb-title {
  margin-bottom: 0;
  padding: 0px 0px;
  background-color: #f8f8f8;
}

.widget-title {
  font-family: "ryo-gothic-plusn", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 400;
  font-style: normal;
  border-bottom: solid 1px #E9E5E9;
}

.side-part .info,
footer .info {
  padding: 10px;
}

@media (min-width: 768px) {
  .pb-title {
    padding: 50px;
  }
}

/** /SITEORIGINE WIDGET **/

/* JQUERY */
/* ACORDION */
.accordion-close {
  display: none;
}

.accordion-card-header p {
  cursor: pointer;
  padding: 10px;
}

/* /ACORDION */
/* /JQUERY */
/* YOUTUBE */
/* RESPONSIVE EMBEDS */
.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* /YOUTUBE */

/** BREADCRUMB **/
.breadcrumbs {
  padding: 0px 0 3px 35px;
  background-color: #fff;
  font-family: "ryo-gothic-plusn", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 200;
  font-size: 0.8rem;
}

/** /BREADCRUMB **/

/** POPULER POSTS **/
.popular-posts li {
  margin-bottom: 5px;
}

/** /POPULER POSTS **/

/* Google */
.grecaptcha-badge {
  visibility: hidden;
}

/* /Google */