/* ==========右にdoga固定=============================== */ 
.doga {
 position: fixed;
 width: 100%;
 max-width: 300px; /* 必要なら最大幅を指定 */
 bottom: -130px;
 right: 0px;
 z-index: 1; 
 margin: 0 auto;
 padding-top: 56.25%; /* 16:9 のアスペクト比 */
}
.doga iframe {
  position: absolute;
  top: 0;
//  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}


/* ==========右に30日固定画像追加=============================== */ 
.zotei {  
position: fixed;
max-width: 100%;
bottom: 0px;
right: 0px;
z-index: 1;
}

/* ==========黄色下線、数値が低いほど太くなる========================== */
    .under1 {
      background: linear-gradient(transparent  50%, #ffff00  50%);
    }

/* ==========gbp（セミナー案内）固定================================== */
.gbp { 
position: fixed;
//position:absolute;
max-width: 100%;
//top:650px;
bottom: 50px;
right: 0px;
//z-index: 999;
z-index: 1;
}


body{}
#menu-smartmenu{
display:none;
}

/*-------------------画像ローテーション-----------------------------------*/
.container {
	position: relative;
	top: -600px; /*上部位置調整*/
	left: -394px;/*左右位置調整*/
	width: 1920px;
	/*max-width: 100%;*/	/*1920pxまで広げたいから削除*/
	height: 450px;
}

.chimage {			/*（注）imageは共通コード、他画像も影響されてしまうためアレンジ*/
	position: absolute;
	/*bottom:4000px;*/
	/*bottom:0px;*/
	width: 100%;
	/*z-index: 100;*/
	opacity: 0;
	animation: change-img-anim 12s infinite;	/*4程度で切り替わり*/
}
.chimage:nth-of-type(1) {
  animation-delay: 0s;
}
.chimage:nth-of-type(2) {
  animation-delay: 4s;
}
.chimage:nth-of-type(3) {
  animation-delay: 8s;
}

@keyframes change-img-anim {
  0%{ opacity: 0;}
  25%{ opacity: 1;}
  100%{ opacity: 0;}
}

/*-------------------右下に動画固定-----------------------------------*/
.fixed_btn { 
	width: 300px;
	height: 200px;
position: fixed;
bottom: -48px;
right: 5px;
z-index: 999;		/フッターの下に隠れないように最前面へ表示*/
/*padding: 6px 40px;*/
}

/*-------------------denko固定-----------------------------------*/
.fixed_btn2 { 
position: fixed;
bottom: 400px;
right: 5px;
padding: 10px 20px;
z-index: 999;	/フッターの下に隠れないように最前面へ表示*/
}

/*-------------------メインヘッダへのYouTube埋め込み-----------------------------------*/
.douga {
     position: relative;
	top: -30px; /*上部位置調整*/
	//top: -4247px; /*上部位置調整*/
	//left: -394px;/*左右位置調整*/
	//width: 1920px;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.douga iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 61%;
}

/*-------------------セミナー情報のリスト部-----------------------------------*/
.list-design {
width: 450px;
border-top: 2px solid #ECECEC;
  border-bottom: 2px solid #ECECEC;
  list-style-type: disc;
  margin: 20px 0;
  padding: 11px 20px 20px 35px;
}
.list-design li {
  margin-top: 10px;
}

/*-------------------セミナー情報の見出し部（h5）-----------------------------------*/
h5 {
width: 500px;
  padding: 0.5em;/*文字周りの余白*/
  color: #000000;/*文字色*/
  background: #ECECEC;/*背景色*/
  border-left: solid 5px #343434;/*左線（実線 太さ 色）*/
}


/*-------------------ハッシュタグ群（投稿に表示）-----------------------------------*/
.hastags-wrapper .hashtags{
	margin: .25rem 0;
	padding: 0rem 1.0rem;
	display: flex;
	gap: .5rem;
}

/* ハッシュタグリスト（ハッシュタグページに表示） */
.hashtags-list h3{
	font-size: 1.0rem;
	margin: .5rem 0 1rem;
}
.hashtags-list h3 .hashtag{
	margin: auto .5rem;
//	margin: auto 1.5rem;
	padding: .25rem .5rem;
	border: 1px solid gray;
	font-weight: bold;
	background-color: #ffffff;
	color: #1D2086;
}
.hashtags-list ul{
	margin: 1rem 0 1rem 1rem;
}
.hashtags-list ul li{
	list-style-type: circle;
	margin: .5rem 0;
}
.hashtags-list ul li a{
	color: black;
}
.hashtags-list ul li a:hover{
	opacity: .5;
}

/* ハッシュタグ共通 */
.hashtag a{
//	margin: 0 0 0 1.0rem;
	font-size: 0.9rem;	/*--フォントサイズ--*/
	font-weight: bold;
	display: inline-block;
	padding: .25rem 0.5rem;
	border: 1px solid gray;
//	background-color: darkgray;
	background-color: #ffffff;
//	color: white;
	color: #1D2086;

}
.hashtag a:hover{
	opacity: .5;
	text-decoration: none;
}

/* ==========インデックス（目次）追加========================== */
.index-wrapper {
  margin: 0 auto;
  padding: 1rem;
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  font-size: 0.95rem;
  line-height: 1.6;
//  max-width: 32rem;
  max-width: 20rem;
margin-bottom: 1em;
}

.index-wrapper ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.index-wrapper li {
  margin: 0.25rem 0;
  cursor: pointer;
}

.index-wrapper li.level-1 {
  font-weight: bold;
  margin-left: 0;
}

.index-wrapper li.level-2 {
  font-weight: normal;
  margin-left: .5rem;
  color: #444;
}

.index-wrapper li.level-3 {
  font-style: italic;
  margin-left: 1rem;
  color: #666;
}

.index-wrapper li:hover {
  text-decoration: underline;
}
.index-wrapper {
  padding: 1rem;
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  font-size: 0.95rem;
  line-height: 1.6;
  max-width: 880px;
  margin-bottom: 1.5em;
}

.index-wrapper ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.index-wrapper li {
  margin: 0.25rem 0;
  cursor: pointer;
}

.index-wrapper li.level-1 {
  font-weight: bold;
  margin-left: 0;
}

.index-wrapper li.level-2 {
  font-weight: normal;
  margin-left: 1.5rem;
  color: #444;
}

.index-wrapper li.level-3 {
  margin-left: 3rem;
  color: #666;
}

.index-wrapper li:hover {
  text-decoration: underline;
}




/*******************************************/
.office-banner{
  width:100%;
  background:
    linear-gradient(
      135deg,
      #eef3ff 0%,
      #dbe5ff 45%,
      #c9d4fc 100%
    );

  border-top: 1px solid #b9c7f5;
  border-bottom: 1px solid #b9c7f5;

  padding: 16px 20px;
  box-sizing:border-box;

  position:relative;
  overflow:hidden;
}

/* うっすら装飾 */
.office-banner::before{
  content:"";
  position:absolute;
  top:-40px;
  right:-40px;

  width:140px;
  height:140px;

  background:rgba(255,255,255,0.25);
  border-radius:50%;
}

.office-banner-inner{
  max-width:1200px;
  margin:0 auto;
  text-align:center;
  position:relative;
  z-index:2;
}

.office-banner-sub{
  display:block;

  font-size:12px;
  letter-spacing:0.18em;

  color:#5b6ca8;

  margin-bottom:6px;

  font-weight:600;
}

.office-banner-title{
  color:#243a84;

  font-size:24px;
  font-weight:700;

  letter-spacing:0.05em;
  line-height:1.3;
}

/* スマホ */
@media screen and (max-width:768px){

  .office-banner{
    padding:14px 12px;
  }

  .office-banner-sub{
    font-size:10px;
    margin-bottom:4px;
  }

  .office-banner-title{
    font-size:24px;
    line-height:1.4;
  }

}

/*******************************************/
.office-banner2{
  width:100%;
  position:relative;
  overflow:hidden;
  box-sizing:border-box;

  padding:10px 16px;

  background:
    linear-gradient(
      135deg,
      #eef3ff 0%,
      #d8e3ff 50%,
      #c9d4fc 100%
    );

  border-top:1px solid #bccaf5;
  border-bottom:1px solid #bccaf5;
}

/* 左上装飾 */
.office-banner2::before{
  content:"";
  position:absolute;

  top:-35px;
  left:-35px;

  width:110px;
  height:110px;

  background:rgba(255,255,255,0.28);

  border-radius:50%;
}

/* 右下装飾 */
.office-banner2::after{
  content:"";
  position:absolute;

  right:-30px;
  bottom:-30px;

  width:90px;
  height:90px;

  background:rgba(255,255,255,0.20);

  border-radius:50%;
}

/* 中央ライン装飾 */
.office-banner2-inner{
  position:relative;
  z-index:2;

  max-width:1200px;
  margin:0 auto;

  text-align:center;
}

.office-banner2-inner::after{
  content:"";
  display:block;

  width:60px;
  height:2px;

  margin:6px auto 0;

  background:
    linear-gradient(
      to right,
      transparent,
      #5d73c7,
      transparent
    );
}

.office-banner2-title{

  color:#243a84;

  font-size:24px;

  font-weight:700;

  letter-spacing:0.08em;

  line-height:1.3;
}

/* スマホ */
@media screen and (max-width:768px){

  .office-banner2{
    padding:8px 10px;
  }

  .office-banner2-title{
    font-size:19px;
  }

  .office-banner2-inner::after{
    width:45px;
    margin-top:5px;
  }

}

/*******************************************/
.office-banner3{
  width:100%;
  box-sizing:border-box;

  padding:12px 18px;

  background:
    linear-gradient(
      135deg,
      #edf2ff 0%,
      #d8e3ff 100%
    );

  border-left:6px solid #4f67c7;

  box-shadow:
    0 2px 10px rgba(0,0,0,0.05);

  position:relative;

  overflow:hidden;
}

.office-banner3::after{
  content:"";

  position:absolute;

  top:0;
  right:0;

  width:120px;
  height:100%;

  background:
    linear-gradient(
      to left,
      rgba(255,255,255,0.25),
      transparent
    );
}

.office-banner3-title{

  position:relative;
  z-index:2;

  color:#243a84;

  font-size:24px;

  font-weight:700;

  letter-spacing:0.08em;

  line-height:1.3;
}

/* スマホ */
@media screen and (max-width:768px){

  .office-banner3{
    padding:10px 12px;
    border-left:4px solid #4f67c7;
  }

  .office-banner3-title{
    font-size:19px;
  }

}
/*******************************************/
.office-banner4{

  width:100%;

  box-sizing:border-box;

  padding:12px 18px;

  border-radius:14px;

  background:
    rgba(201,212,252,0.75);

  backdrop-filter: blur(6px);

  border:
    1px solid rgba(255,255,255,0.5);

  box-shadow:
    0 4px 18px rgba(61,86,173,0.10);

  position:relative;

  overflow:hidden;
}

.office-banner4::before{

  content:"";

  position:absolute;

  top:-30px;
  right:-30px;

  width:90px;
  height:90px;

  background:
    rgba(255,255,255,0.22);

  border-radius:50%;
}

.office-banner4-title{

  position:relative;
  z-index:2;

  color:#243a84;

  font-size:24px;

  font-weight:700;

  letter-spacing:0.08em;

  line-height:1.3;

  text-align:center;
}

/* スマホ */
@media screen and (max-width:768px){

  .office-banner4{
    padding:10px 12px;
    border-radius:10px;
  }

  .office-banner4-title{
    font-size:19px;
  }

}
/*******************************************/
.office-banner5{
  width:100%;
  box-sizing:border-box;

  padding:12px 20px;

  background:
    linear-gradient(
      135deg,
      #eef3ff 0%,
      #c9d4fc 55%,
      #b7c6fb 100%
    );

  border-left:7px solid #28008a;
  border-right:1px solid #9dadf0;

  position:relative;
  overflow:hidden;
}

/* 斜めのシャープ装飾 */
.office-banner5::before{
  content:"";
  position:absolute;
  top:0;
  right:-40px;

  width:180px;
  height:100%;

  background:rgba(40,0,138,0.10);

  transform:skewX(-28deg);
}

/* 細いライン装飾 */
.office-banner5::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;

  width:100%;
  height:2px;

  background:
    linear-gradient(
      to right,
      #28008a,
      #5d73c7,
      transparent
    );
}

.office-banner5-title{
  position:relative;
  z-index:2;

  color:#1f3278;

  font-size:23px;
  font-weight:700;

  letter-spacing:0.09em;
  line-height:1.3;

  text-align:center;
}

/* スマホ */
@media screen and (max-width:768px){

  .office-banner5{
    padding:10px 12px;
    border-left:5px solid #28008a;
  }

  .office-banner5::before{
    width:120px;
    right:-50px;
  }

  .office-banner5-title{
    font-size:18px;
  }

}