@charset "Shift_JIS";

/*--------------------------------------------------------
  フルCSSプロフェッショナルテンプレート部品設定
--------------------------------------------------------*/

.hpb-parts-cnt-style
{
    border-color: #666666;
}

.hpb-parts-hl-style
{
    border-color: #8362cc;
	background-image:none !important;
    padding: 9px 8px 7px !important;
}

.hpb-parts-cbox-style
{
    border-color: #cccccc;
}

.hpb-parts-hr-style
{
    border-color: #cccccc;
}

.hpb-parts-pbox-style
{
    border-color: #cccccc;
}
.hpb-parts-pbox-style h4
{
    padding: 0px;
}

.hpb-parts-blist-style
{
    border-color: #cccccc;
    background-color: #f3f3f3;
}
a.hpb-parts-blist-style:link
{
    color: #8362cc;
}
a.hpb-parts-blist-style:visited
{
    color: #8362cc;
}
a.hpb-parts-blist-style:hover
{
    color: #8362cc;
	background-color:#e6e6e6;
}
a.hpb-parts-blist-style:active
{
    color: #8362cc;
	background-color:#e6e6e6;
}


/* 表のフォントとサイズを変更 */
.custom-table {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem; /* または 16px や 1.1em など */
}

.custom-table th,
.custom-table td {
  border: none !important;
}


.custom-table td {
  width: 110px; /* 任意の幅に調整できます */
}

/*--------------------------------------------------------
  ユーザー設定スタイル
--------------------------------------------------------*/
.uni{
  font-size: 28px;
  font-family: AR丸ゴシック体E;
   padding: 1px 13px 10px 13px;
  text-align: left;
}

.koshu{
  font-size: 42px;
  font-family: AR丸ゴシック体E;
    padding: 1px 15px 10px 35px;
  text-align: left;
}



 .sp-break-eigo {
     font-size: 0.9em;


  }


/* スマホ用（画面幅600px以下）の文字サイズ調整 */
@media screen and (max-width: 600px) {
.uni{
    font-size: 1.6em;
    padding: 8px 0px 4px 0px;
  }
}

/* スマホ用（画面幅600px以下）の文字サイズ調整 */
@media screen and (max-width: 600px) {
 .koshu{
      font-size: 2.4em;
      padding: 5px 0px 0px 22px;
     line-height: 1.4;
  }
}

/* スマホ（例: 768px以下）で改行 */
@media screen and (max-width: 768px) {
  .sp-break-eigo {
    display: block;
   font-size: 0.8em;


  }
}




.pho{
    float:right;
    background: white;
    padding:8px 8px 8px 8px;
    margin:15px 0px 0px 30px;
}

.photo{
   
 
   margin: 0px 10px 0px 4px
}



.gaiyo{
  font-size: 1.4em;
  font-family: Noto Sans JP;
}


.suuji{
 font-weight:bold;
 font-size:1.2em;
 
}






/* スマホ用（画面幅600px以下）の文字サイズ調整 */
@media screen and (max-width: 600px) {
  .gaiyo {
    font-size: 1.4em;
    padding-left: 6px; 
   
  }
}


.amikake{
     background:linear-gradient(#C4C6FF,#F7F7FF);
     background-color:#C4C6FF;
     font-family: Noto Sans JP;
     font-size: 1.8em;
     color: darkblue;
     font-weight:bold;
     
position: relative;
  padding-left: 18px; /* バーと文字の間隔 */
  font-weight: bold; /* 見出しっぽく強調 */
  margin: 1em 0;
}

.amikake-1{
     background:linear-gradient(#d2d2de,#F7F7FF);
     
     font-family: Noto Sans JP;
     font-size: 1.4em;
     color: darkblue;
     font-weight:bold;
     
position: relative;
  padding-left: 10px; /* バーと文字の間隔 */
  font-weight: bold; /* 見出しっぽく強調 */
  margin: 1em 0;
}

.amikake-2{
     
     background: #dfdfe4;
     font-family: Noto Sans JP;
     font-size: 1.4em;
     color: darkblue;
     font-weight:bold;
     
position: relative;
  padding-left: 18px; /* バーと文字の間隔 */
  font-weight: bold; /* 見出しっぽく強調 */
  margin: 1em 0;
}


/* 擬似要素で縦バーを作成 */
.amikake::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 4px; /* バーの横幅 */
  background-color: #4B0082; /* 濃い紫 */
  border-radius: 3px; /* 角を少し丸める */
}

/* スマホ対応（画面幅600px以下） */
@media (max-width: 600px) {
  .amikake{
    
    padding-left: 8px; /* スマホでは少し狭く */
    padding-right: 8px;
    font-size: 1.4em; /* 見やすく */
  }
  .amikake::before {
    width: 3px; /* バーを細く */
    
  }
}


/* 右側の縦バーを追加 */
.amikake::after {
  content: "";
  position: absolute;
  right: 0; /* 右端に配置 */
  top: 0;
  height: 100%;
  width: 4px; /* バーの横幅 */
  background-color: #4B0082; /* 濃い紫 */
  border-radius: 3px; /* 角を少し丸める */
}

/* スマホ対応（画面幅600px以下） */
@media (max-width: 600px) {
  .amikake::after {

   
    width: 3px; /* バーを細く */
    
  }
}





/* スマホ対応（画面幅600px以下） */
@media (max-width: 600px) {
  .amikake-1, .amikake-2 {
    padding-left: 2.2em; /* スマホでは少し狭く */
       text-indent: -1.8em; /* ラベル（受賞：など） 
   font-size: 1.4em; /* 見やすく */
  }
}



@media screen and (max-width: 568px) {
     .amikake
	{ background-color:#dfe1ff;
	}	
}

.bunya{
   
     background-color: #C4C6FF;
     font-family: Noto Sans JP;
     font-size: 1.3em;
     color:darkblue;
    border-radius: 4px;
    padding: 5px 1px;5px,1px;
    margin:15px 15px;
  
}

.ad{
  font-size: 1.4em !important;
  font-family: Noto Sans JP !important;
}


#year-map a {
  display: block !important;
  background-color: #9999FF !important;
  color: #fff !important;
}



/* スマホ用（画面幅600px以下）の文字サイズ調整 */
@media screen and (max-width: 600px) {
  .ad{
    font-size: 1.3em;
    padding-left: 14px;
     
  }
}


@media screen and (max-width: 568px) {
  .image-row {
    display: flex;
    flex-direction: column;
    align-items: center;      /* 画像を中央に揃える */
    gap: 20px;
    width: 100%;
  }
}


/* スマホ用（画面幅600px以下）の文字サイズ調整 */
@media screen and (max-width: 600px) {
 #hpb-footerMain p{
    font-size: 0.7em;
  }
}

/* 紫ボタン風リンク */
#year-map a {
  display: block;
  background-color: #9999FF; /* 紫色 */
  color: #fff;
  text-decoration: none;
  padding: 15px 10px;
 margin:15px 20px;
  border-radius: 4px;
  font-weight: bold;
  text-align: center;
  transition: background-color 0.3s;
}

/* ホバー時の色変化 */
#year-map a:hover {
  background-color: #8080FF; /* 少し明るい紫 */
 transform: scale(1.01);
}



@media screen and (max-width: 568px) {
	
      #hpb-nav li
	{
		 font-size: 1.2em;
	}
	
}

#banner a {
    display: block;
    width: 200px;
    height: 100px;
    background-size: cover;
    transition: filter 0.3s ease;
}

#banner a:hover {
    filter: brightness(120%);
      transform: scale(1.01);
}

/* TOPホバー時の色変化 */
#pagetop a:hover {
  
  transform: scale(1.2);
}


/* =======================================================
  レスポンシブル設定
======================================================= */
@media screen and (max-width: 568px) {
	
	.hpb-parts-hl-style
	{
		border-top-color: #8362cc !important;
		background-color: #FFFFFF !important;
	}
	
}