@charset "utf-8";
.text-block {
    /* 表示形式：文字の長さに合わせる */
    display: inline-block;

    /* 色・フォント設定 */
    background-color: #00478b;
    color: #ffffff;
    font-family: "YakuHanJP", Zen Old Mincho;
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.06em;
    text-align: left;

    /* 余白・形 */
    padding: 12px 20px;
    margin: 0;
    border-radius: 2px;
    box-sizing: border-box;

    /* リセット・その他 */
    border: 0;
    vertical-align: baseline;
    list-style: none;
}


.text-right-span {
  display: block; /* blockにすることで親要素の端まで広がり、右寄せが可能になります */
  text-align: right;
}

.text-right-span {
  display: block; /* blockにすることで親要素の端まで広がり、右寄せが可能になります */
  text-align: right;
}

.text-right-span {
  display: block; /* blockにすることで親要素の端まで広がり、右寄せが可能になります */
  text-align: right;
}

.text-right-span {
  display: block; /* blockにすることで親要素の端まで広がり、右寄せが可能になります */
  text-align: right;
}

/* 親要素：文字サイズとフォントを優先し、太字を解除 */
.box {
    --mainColor: #00478b; 
    --paleColor: #f9f6f7; 
    --black: #262626;     
    --ja: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "YuGothic M", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    
    padding: 20px 30px;
    background-color: var(--paleColor);
    border-radius: 12px;
    width: 100%;
    box-sizing: border-box;
    font-family: var(--ja);
    color: var(--black);
    
    line-height: 1.5;
    letter-spacing: 0.01em;
    /* 全体の太さを標準に固定 */
    font-weight: normal; 
}

/* 「親子で移動」セクション */
.arrow-container {
    margin-bottom: 20px; 
    padding-bottom: 10px;
    border-bottom: 2px solid rgba(0,0,0,0.1); /* 文字が細くなったので線も少し細く調整 */
}

.arrow {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 2.8rem;
    color: var(--black);
    /* 太字解除 */
    font-weight: normal; 
}

.arrow::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 18px 0 18px; 
    border-color: #b81c22 transparent transparent transparent;
    margin-right: -4px; 
}

/* コンテンツタイトル（足寄など） */
.article-content h3 {
    font-size: 2.8rem;
    margin: 0 0 15px 0; 
    position: relative;
    padding-left: 22px;
    line-height: 1.1;
    /* 太字解除 */
    font-weight: normal; 
}

.article-content h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%; 
    width: 6px; 
    background: var(--mainColor);
}

/* 各行のリスト（春、初夏など） */
.box dl {
    display: flex;
    align-items: center; 
    margin-bottom: 12px; 
}

/* ラベル（春、初夏） */
.box dt {
    background-color: var(--mainColor);
    color: #fff;
    width: 200px;
    padding: 8px 15px; 
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px; 
    font-size: 1.5rem;
    flex-shrink: 0;
    margin-right: 15px;
    /* 太字解除 */
    font-weight: normal; 
}

/* 本文テキスト */
.box dd {
    margin: 0;
    font-size: 1.8rem;
    color: #000;
    /* 太字解除 */
    font-weight: normal; 
}
#c1 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c1 h1,
#c1 div {
	text-align: center;
}
#c3 {
	clear: both;
	margin: 5px 0 40px 0;
	padding:    ;
}
#c5 {
	clear: both;
	margin: 0 0 15px 0;
	padding:    ;
}
#c5 h2,
#c5 div {
	text-align: left;
}
#c4 {
	clear: both;
	margin: 0 0 30px 0;
	padding:    ;
}
#c4 h3,
#c4 div {
	text-align: left;
}
#c39 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c39 a.itext, #c39 img, #c39 video {
	width: 800px;
	height: 373px;
}
#c6 {
	clear: both;
	margin: 40px 0 30px 0;
	padding:    ;
}
#c6 h3,
#c6 div {
	text-align: left;
}
#c9 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c9 h3,
#c9 div {
	text-align: left;
}
#c20 {
	clear: both;
	margin: 40px 0 30px 0;
	padding:    ;
}
#c20 h3,
#c20 div {
	text-align: left;
}
#c13 {
	clear: both;
	margin: 50px 0 0 0;
	padding:    ;
}
#c14 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c14 a.itext, #c14 img, #c14 video {
	width: 800px;
	height: 450px;
}
#c15 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c17 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c17 h3,
#c17 div {
	text-align: left;
}
#c19 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c29 {
	clear: both;
	margin: 40px 0 30px 0;
	padding:    ;
}
#c29 h3,
#c29 div {
	text-align: left;
}
#c30 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c31 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c31 h3,
#c31 div {
	text-align: left;
}
#c32 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c33 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c33 a.itext, #c33 img, #c33 video {
	width: 800px;
	height: 567px;
}
#c34 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c21 {
	clear: both;
	margin: 50px 0 15px 0;
	padding:    ;
}
#c21 h2,
#c21 div {
	text-align: left;
}
#c22 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c22 dl dt {
	width: 25%;
}
#c22 dl dd {
	width: 75%;
}
#c23 {
	clear: both;
	margin: 50px 0 15px 0;
	padding:    ;
}
#c23 h2,
#c23 div {
	text-align: left;
}
#c24 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c24 {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}
#c24 > div.box {
	box-sizing: border-box;
	overflow: hidden;
}
#c25 {
	clear: both;
	margin: 40px 0 30px 0;
	padding:    ;
}
#c25 h3,
#c25 div {
	text-align: left;
}
#c38 {
	clear: both;
	margin: 0 0 70px 0;
	padding:    ;
}
#c38 h3,
#c38 div {
	text-align: left;
}
#c40 {
	clear: both;
	margin: 40px 0 30px 0;
	padding:    ;
}
#c40 h3,
#c40 div {
	text-align: left;
}
#c41 {
	clear: both;
	margin: 0 0 70px 0;
	padding:    ;
}
#c41 h3,
#c41 div {
	text-align: left;
}
#c37 {
	clear: both;
	margin: 40px 0 30px 0;
	padding:    ;
}
#c37 h2,
#c37 div {
	text-align: left;
}
#c26 {
	clear: both;
	margin: 0 0 30px 0;
	padding:    ;
}
#c26 h3,
#c26 div {
	text-align: left;
}
#c27 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c27 dl dt {
	width: 20%;
}
#c27 dl dd {
	width: 80%;
}
#c28 {
	display: none;
	float: ;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
#c1 {
}
#c3 {
	margin: 5px 0 35px 0;
}
#c5 {
}
#c4 {
}
#c39 {
}
#c6 {
}
#c9 {
}
#c20 {
}
#c13 {
	margin: 80px 0 0 0;
}
#c14 {
}
#c15 {
}
#c17 {
}
#c19 {
}
#c29 {
}
#c30 {
}
#c31 {
}
#c32 {
}
#c33 {
}
#c34 {
}
#c21 {
}
#c22 {
}
#c23 {
}
#c24 {
}
#c24 {
}
#c25 {
}
#c38 {
}
#c40 {
}
#c41 {
}
#c37 {
}
#c26 {
}
#c27 {
}
#c28 {
	display: none;
}
}
@media screen and (max-width: 640px) {
#c1 {
}
#c3 {
	margin: 5px 0 30px 0;
}
#c5 {
}
#c4 {
}
#c39 {
}
#c6 {
}
#c9 {
}
#c20 {
}
#c13 {
	margin: 60px 0 0 0;
}
#c14 {
}
#c15 {
}
#c17 {
}
#c19 {
}
#c29 {
}
#c30 {
}
#c31 {
}
#c32 {
}
#c33 {
}
#c34 {
}
#c21 {
}
#c22 {
}
#c23 {
}
#c24 {
}
#c24 {
}
#c25 {
}
#c38 {
}
#c40 {
}
#c41 {
}
#c37 {
}
#c26 {
}
#c27 {
}
#c28 {
	display: none;
	float: none;
}
}
