/*
ゴールド　#836F30
ブルー　#365FB0
レッド　#D83936
ブラック　#211815
薄いゴールド　#EFE8D3
薄いブルー　#D3E0ED
薄いレッド　#EDD3D3
*/
body {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", メイリオ, sans-serif;
    color: #211815;
}
body a {
    color: #211815;
    text-decoration: underline;
}
body a:hover {
    color: #836F30;
    text-decoration: underline;
}
body a:hover img  {
    opacity: .7;
}
body .can-edit-frame a:hover {
    color: #211815;
}
.pc-none {
   display:none;
}
.sp-none {
	display: block;
}
@media (max-width: 768px) {
	.pc-none {
	   display: block;
	}
	.sp-none {
		display:none;
	}
}




.header-logo-area {
	margin: 1rem auto;
}
.header-logo-area img {
    max-height:50px;
    width: auto;
}
@media (max-width: 768px) {
	.header-logo-area img {
	    width: calc(100% - 60px);
	}
}
.header-catch-area {
    background-image: url("/themes/Users/tcrp-next/images/header_photo.png");
    margin-bottom: 2rem;
    background-size: cover;
}
.header-catch-area .header-eyecatch-area {
    max-width: 800px;
    margin: 5rem auto;
    text-align: center;
    background-color: #ffffffbb;
    padding: 1.5rem 0 1rem;
    box-shadow: 3px 3px 5px 8px rgba(0, 0, 0, 0.25);
}
.header-catch-area .header-eyecatch-area .title {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2rem;
    font-weight:700;
    padding: 1rem;
    margin-bottom: 1rem;
   position: relative;
   text-decoration: none;
  display: inline-block;
  line-height: 1.2;
}
.header-catch-area .header-eyecatch-area .title::after {
  content: '';
  position: absolute;
  width: 110%;
  height: 4px;
  background-color: #836F30;
  bottom: 1px;
  left: 50%;
  transform: translateX(-50%);
}
.header-catch-area .header-eyecatch-area .detail {
    /* スマホ・PC共通のスタイル */
    margin-bottom: 1rem;
    line-height: 2.0;
}
/* PC・タブレットなどの幅で適用されるスタイル（例: 最小幅768px以上） */
@media (min-width: 768px) {
    .header-catch-area .header-eyecatch-area .detail {
        font-family: 'Noto Sans JP', sans-serif; /* PC・タブレットで適用するフォントファミリー */
        font-weight: 700; /* PC・タブレットで適用する太字 */
        line-height: 2.0;
    }
}
.header-catch-area .header-eyecatch-area .link {
    margin: 1rem auto;
}
.header-catch-area .header-eyecatch-area .link a {
    text-decoration:none;
}
.header-catch-area .header-eyecatch-area .link .banner-btn {
    color:#FFF;
    background-color: #836F30;
    max-width: 300px;
    width: 100%;
    display:inline-block;
    padding: .5rem;
    margin: 1rem auto;
    background-image:url("/themes/Users/tcrp-next/images/triangle_right.png");
    background-position: bottom 4px right 4px;
    background-repeat: no-repeat;
    background-size: 8px;
    box-shadow: 4px 4px 3px rgba(0, 0, 0, 0.5);   /* （Xオフセット Yオフセット ぼかし半径 スプレッド半径 色） */
    transition: all 0.3s ease; /* スムーズなアニメーション */
}
.header-catch-area .header-eyecatch-area .link .banner-btn:hover {
    text-decoration:none;
    opacity: .8;
}
@media (max-width: 768px) {
	.header-catch-area {
	    background-image: none;
	    margin-bottom: 0;
	}
	.header-catch-area .header-eyecatch-area {
		margin: 0 auto;
		padding: 0;
		box-shadow: none;
	}
	.header-catch-area .header-eyecatch-area img {
	    width: 100%;
	}
	.header-catch-area .header-eyecatch-area .title {
		font-size: 1.2rem;
		width: calc(100% - 1rem);
		margin-bottom: .5rem;
        margin-top: .75rem;
	}
	.header-catch-area .header-eyecatch-area .title::after {
		width: 100%;
	}
	.header-catch-area .header-eyecatch-area .detail {
            width: calc(100% - 1rem);
	    margin: 0 .25rem;
	    line-height: 1.8;
    }
}





.frame-design-none.card.mb-3 {
	margin-bottom: 0 !important;
}
@media (max-width: 768px) {
	.menus-hamburger > .container {
		padding-left: 0;
		padding-right: 0;
	}
	.hamburger-menu {
		background-color: transparent;
	}
	.hamburger-menu .navbar {
		padding: 0;
	}
	.hamburger-menu .navbar-light .navbar-toggler {
		border-color: #211815;
		color: #211815;
		border: 0;
		padding: 10px;
		width: 50px;
		height: 50px;
		border-radius: 10px;
		background-color: #FFF;
		z-index: 13;
		margin: 0 15px 0 auto;
		position: absolute;
		top: -50px;
		right: 0;
	}
	.hamburger-menu .navbar-light .navbar-toggler-icon {
		background-color: #211815;
	}
	.hamburger-menu .navbar-toggler-icon:nth-of-type(1) {top: 14px;height: 3px;}
	.hamburger-menu .navbar-toggler-icon:nth-of-type(2) {top: 22px;height: 3px;}
	.hamburger-menu .navbar-toggler-icon:nth-of-type(3) {top: 30px;height: 3px;}
	.hamburger-menu .hamburger-accordion-block {
		color: #211815;
	}
	.hamburger-menu .hamburger-accordion[aria-expanded="false"]:after,
	.hamburger-menu .hamburger-accordion-block[aria-expanded="false"]:after {
		color: #211815;
		top: -12px;
		right: 1rem;
		font-size: 2rem;
	}
	.hamburger-menu .hamburger-accordion[aria-expanded="true"]:after,
	.hamburger-menu .hamburger-accordion-block[aria-expanded="true"]:after {
		color: #211815;
		top: -5px;
		right: 1rem;
		font-size: 1.5rem;
	}
	.hamburger-menu .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
		top: 23px;
	}
	.hamburger-menu .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
		top: 23px;
	}
	#grobalNav {
		background-color: #E1E1E1;
		z-index: 12;
		position: absolute;
		top: 0;
		width: 100%;
		padding: 15px;
	}
	#grobalNav .nav-item a {
		position: static;
		color: #211815;
	}
}








/* 左カラム */
#ccRightArea .plugin-menus .card,
#ccLeftArea .plugin-menus .card {
	border: 1px solid #211815;
	border-radius: 0;
}
#ccRightArea .plugin-menus .card-body,
#ccLeftArea .plugin-menus .card-body {
	padding: 0 .75rem 1.25rem;
}
#ccRightArea .plugin-menus .card-body > .list-group,
#ccLeftArea .plugin-menus .card-body > .list-group {
	border-radius: 0;
	border: 0;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item {
	border: 0;
	color: #211815 ;
	padding: .5rem .75rem .5rem 1.25rem;
	margin: 10px 0;
	line-height: 1.25;
	text-decoration: none;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item .fa-minus,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item .fa-minus,
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item .fa-chevron-right,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item .fa-chevron-right {
    display:none;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item:before,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item:before {
  content: "";
  position: absolute;
  top: calc(50% - 0.25rem);
  left: .25rem;
  width: 9px;
  height: 9px;
  background-image: url('/themes/Users/tcrp-next/images/triangle_gold.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

#ccRightArea .plugin-menus .card-body > .list-group .list-group-item:after,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item:after {
    content: "";
    position: absolute;
    display: block;
    border: 1px solid #000;
    bottom: -10px;
    width: 100%;
    left: 0;
    border-top: 0;
}

#ccRightArea .plugin-menus .card-body > .list-group .list-group-item.depth-1,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item.depth-1 {
	padding-left: 2rem;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item.depth-1:before,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item.depth-1:before {
  left: 1rem;
}

#ccRightArea  .plugin-menus .card-body > .list-group .list-group-item.depth-2,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item.depth-2 {
	padding-left: 2.25rem;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item.depth-2:before,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item.depth-2:before {
  left: 1.25rem;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item:hover,
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item.active ,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item:hover,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item.active {
	background-color: #836F30;
	text-decoration: none;
	color: #FFF ;
}
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item:hover:before,
#ccRightArea .plugin-menus .card-body > .list-group .list-group-item.active:before,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item:hover:before,
#ccLeftArea .plugin-menus .card-body > .list-group .list-group-item.active:before {
  background-image: url('/themes/Users/tcrp-next/images/triangle_white.png');
}

/* TOPページ*/
/* メインコンテンツ */
.top-main-contents .card-body {
    background-image: url(/themes/Users/tcrp-next/images/maincontents.png);
    background-position: center top 2rem;
    background-repeat: no-repeat;
    background-size: auto;
    padding-top: 3rem !important;
}
.top-main-contents .card-body .col-md-6 {
  padding-top: 15px;
}


.top-main-contents .card-body img {
    width: 100%;
    margin-bottom: 1rem;
}

@media (max-width: 768px) {
    .top-main-contents .card-body {
        padding-top: 3rem !important;
    }
    .top-main-contents .card-body .col-md-6 {
        padding-top: 15px !important;
    }
}

/* NEWS */
.plugin-tabs.top-news .card-body {
    background-image: url(/themes/Users/tcrp-next/images/topnews.png);
    background-position: center top 4rem;
    background-repeat: no-repeat;
    background-size: auto;
    padding-top: 8rem !important;
}
.plugin-tabs .nav-tabs {
    position: relative;
    border-color: #211815;
}
.plugin-tabs .nav-tabs .nav-item:before{
    content: "";
    border: 1px solid #211815;
    border-right: 0;
    position: absolute;
    height: 1rem;
    top: .6rem;
    z-index: -1;
}
.plugin-tabs .nav-tabs .nav-item.nav-item:first-of-type:before {
   display:none;
}
.plugin-tabs .nav-tabs .nav-link {
    margin-right: -1px;
    padding: .25rem 1.5rem;
    text-decoration: none;
}
.plugin-tabs .nav-tabs .nav-link.active,
.plugin-tabs .nav-tabs .nav-link:hover {
    background-color: #FFF;
    border-color: #211815 #211815 #FFFF;
}
@media (max-width: 768px) {
	.plugin-tabs.top-news .card-body {
		background-position: center top 2rem;
	    padding-top: 6rem !important;
	}
	.plugin-tabs .nav-tabs .nav-link {
	    padding: .25rem .5rem;
	}
}

/* タブを使う時のプラグインヘッダーを隠す */
.tab-header-none h1.bg-none:not(.can-edit-frame) {
  display: none;
}
.tab-header-none {
	margin-bottom: 4rem;
}

.whatsnews-onerow .card .badge {
    border-radius: 0;
    margin: 0 .5rem 0 1rem !important;
    min-width: 80px;
}
/* 新着の行 */
.whatsnews-onerow article:first-of-type {
    margin-top: .75rem;
}
.whatsnews-onerow article {
    margin-top: .25rem;
}
.whatsnews-onerow article a {
    text-decoration: none;
}
@media (max-width: 768px) {
	.whatsnews-onerow article {
	    margin-top: .5rem;
	}
}


/* サイト共通フレーム設定  */
 .card {
    border : 0;
}
 .card .card-header {
    border: 0;
    border-radius: unset;
    background-color: #836F30;
    color: #FFF;
    background-image: url(/themes/Users/tcrp-next/images/square_title.png);
    background-position: top 1.1rem left 1rem;
    background-repeat: no-repeat;
    background-size: 1rem;
    padding: .75rem 1rem 1rem 2.75rem;
    position: relative;
}
 .card .card-header:not(.can-edit-frame):before {
    content: "";
    position: absolute;
    display: block;
    border: 1px solid #FFF;
    width: calc(100% - 1.5rem);
    border-top: 0;
    left: 50%;
    transform: translateX(-50%);
    bottom: .5rem;
}
 .card .card-body {
    padding: 1.25rem 0;
}

header h2 { /* ブログタイトル */
    font-size: 1.25rem;
    font-weight: bold;
}
h1,h2,h3,h4 {
    font-size: 1rem;
}
 .card .card-body h1 {
    color: #211815;
    background-color: #EFE8D3;
    padding: .55rem .75rem;
    border-left: 16px solid #FFF;
    position: relative;
}
 .card .card-body h1:before {
    content: "";
    background-image: url(/themes/Users/tcrp-next/images/bar_gold.png);
    background-size: contain;
    width: 9px;
    position: absolute;
    left: -16px;
    height: 100%;
    top: 0;
}
/* フレーム青 */
.blue .card .card-header {
    background-color: #365FB0;
}
 .card .card-body.blue h1 {
    background-color: #D3E0ED;
}
 .card .card-body.blue h1:before {
    background-image: url(/themes/Users/tcrp-next/images/bar_blue.png);
}
/* フレーム赤 */
.red .card .card-header {
    background-color: #D83936;
}
 .card .card-body.red h1 {
    background-color: #EDD3D3;
}
 .card .card-body.red h1:before {
    background-image: url(/themes/Users/tcrp-next/images/bar_red.png);
}


/* ブログ */
.plugin-blogs .card-body .badge {
    border-radius: 0;
    margin: 0 .5rem;
    min-width: 80px;
}




/* フッターエリア */
#ccFooterArea {
   padding-top: 1.5rem !important;
   background-color: whitesmoke;
}
#ccFooterArea .banner a {
    margin-right: .5rem;
    display: inline-block;
}
#ccFooterArea .banner a img {
    border: 1px solid darkgray;
}
.footer_link a {
    position: relative;
    font-size: .9rem;
    padding-left: 20px;
    display: inline-block;
    text-decoration: none;
}
.footer_link a:before {
    content: "";
    background-image: url(/themes/Users/tcrp-next/images/triangle_black.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 10px;
    position: absolute;
    left: .5rem;
    top: 50%;
    transform: translateY(-50%);
}
#fbottom {
    font-size: .7rem;
}



/* ゴールド系 */
.btn-primary {
  background-color: #836F30;
  border-color: #836F30;
  color: #fff;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary.active {
  background-color: #6e5c27;
  border-color: #6e5c27;
}

/* ブルー系 */
.btn-info {
  background-color: #365FB0;
  border-color: #365FB0;
  color: #fff;
}
.btn-info:hover,
.btn-info:active,
.btn-info.active {
  background-color: #2b4e91;
  border-color: #2b4e91;
}

/* レッド系 */
.btn-danger {
  background-color: #D83936;
  border-color: #D83936;
  color: #fff;
}
.btn-danger:hover,
.btn-danger:active,
.btn-danger.active {
  background-color: #b22e2b;
  border-color: #b22e2b;
}

/* ブラック系 */
.btn-dark {
  background-color: #211815;
  border-color: #211815;
  color: #fff;
}
.btn-dark:hover,
.btn-dark:active,
.btn-dark.active {
  background-color: #1a1311;
  border-color: #1a1311;
}

/* 薄いゴールド系 */
.btn-warning {
  background-color: #EFE8D3;
  border-color: #EFE8D3;
  color: #836F30;
}
.btn-warning:hover,
.btn-warning:active,
.btn-warning.active {
  background-color: #e2dac0;
  border-color: #e2dac0;
}

/* 薄いブルー系 */
.btn-secondary {
  background-color: #D3E0ED;
  border-color: #D3E0ED;
  color: #365FB0;
}
.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary.active {
  background-color: #c0d3e6;
  border-color: #c0d3e6;
}

/* 薄いレッド系 */
.btn-light {
  background-color: #EDD3D3;
  border-color: #EDD3D3;
  color: #D83936;
}
.btn-light:hover,
.btn-light:active,
.btn-light.active {
  background-color: #e1c0c0;
  border-color: #e1c0c0;
}

/* テキスト入力とテキストエリア */
input[type="text"]:focus,
textarea:focus,
.form-control:focus {
  border-color: #836F30;
  box-shadow: 0 0 0 0.2rem rgba(131, 111, 48, 0.25);
}

/* セレクトボックス */
select:focus,
.form-select:focus {
  border-color: #836F30;
  box-shadow: 0 0 0 0.2rem rgba(131, 111, 48, 0.25);
}

/* チェックボックス・ラジオボタン（Bootstrapカスタム） */
.form-check-input:checked {
  background-color: #836F30;
  border-color: #836F30;
}
.form-check-input:focus {
  box-shadow: 0 0 0 0.2rem rgba(131, 111, 48, 0.25);
}

/* チェックボックス・ラジオボタン（ネイティブ） */
input[type="checkbox"]:focus,
input[type="radio"]:focus {
  outline: 2px solid #836F30;
  outline-offset: 1px;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  accent-color: #836F30;
}

.badge-info {
    background-color: #365FB0;
    color: #fff;
    border-radius: 0;
    margin: 0 .5rem 0 1rem !important;
    min-width: 40px;
}

.btn-gold-outline {
  background-color: #fff;
  border: 2px solid #8b743b;
  color: #8b743b;
  border-radius: 0.5rem;
  padding: 1rem 2rem;
  transition: background-color 0.3s, color 0.3s;
}
.btn-gold-outline:hover {
  background-color: #EFE8D3;
  color: #8b743b;
}

/* */
.bk-blue {
	background-color: #D3E0ED;
	margin: 1rem 15px 1rem;
	padding: 1rem;
	/*background-image:url("/themes/Users/tcrp-next/images/attention.png");*/
    background-position: center;
    background-repeat: no-repeat;
}
.bk-blue .bk-white {
	background-color: #FFF;
    border-radius: .5rem;
    padding: 1rem;
}
.bk-blue ul {
	padding-left: 1.5rem;
	margin-bottom: .5rem;
}
.bk-blue ul li {
	margin-bottom: .5rem;
}
.attention {
	border : 1px solid #D83936;
	padding: 1rem;
	color: #D83936;
	border-radius: .5rem;
	background
	background-color: #FFF;
}

/* https://hpsc-totalconditioning.jpnsport.go.jp/archive/research#frame-36 氏名欄 (2番目の列) */
#frame-36 .table td:nth-child(2) {
  width: 150px;
  min-width: 120px;
}

/* https://hpsc-totalconditioning.jpnsport.go.jp/about */
.key-point-box {
  border: 3px solid #836F30;
  margin-top: 30px;
  padding: 10px;
  padding-top: 40px; /* Key Pointラベルの高さと余白を考慮して上部に余白を追加 */
  background-color: white; /* 枠線の中身の背景を白に（またはtransparent） */
  position: relative;
  border-radius: 15px; /* 角丸をより強調する */
}

.key-point-box::before {
  content: "実施のポイント";
  position: absolute;
  top: -18px; /* Adjust to position above the box */
  left: 20px; /* Adjust as needed for horizontal positioning */
  background-color: white; /* Key Pointの文字部分の背景を白に（またはtransparent） */
  color: #836F30; /* Key Pointの文字色をゴールドに */
  padding: 5px 10px;
  font-weight: bold;
  z-index: 1; /* 枠線の上に表示されるようにする */
}

/* プロジェクト概要ページ概要文：https://hpsc-totalconditioning.jpnsport.go.jp/project */
.project-overview-container {
    line-height: 1.7;
}

.project-overview-container h1 {
    margin-top: 35px;
    margin-bottom: 15px;
    padding-left: 10px;
}

.project-overview-container h3 {
    margin-top: 30px;
    margin-bottom: 15px;
}

.project-overview-container p {
    margin-bottom: 1em;
}

.project-overview-container ul {
    list-style: disc;
    padding-left: 20px;
    margin-bottom: 1.5em;
}

.project-overview-container ul li {
    position: relative;
    padding-left: 0;
    margin-bottom: 0.8em;
}

.project-overview-container strong {
    color: #365FB0;
    font-weight: 600;
}

.project-overview-container .definition-box {
    background-color: #D3E0ED;
    border-left: 5px solid #365FB0;
    padding: 15px 20px;
    margin-top: 30px;
    margin-bottom: 30px;
    border-radius: 5px;
}

.project-overview-container .definition-box h3 {
    color: #365FB0;
    margin-top: 0;
}

.project-overview-container .definition-box p {
    margin-bottom: 0.5em;
    padding-left: 10px;
}

.project-overview-container .formal-names {
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px dashed #e0e0e0;
    color: #666;
}

.project-overview-container .formal-names p {
    margin-bottom: 0.5em;
}

/* プロジェクト概要ページ年表：https://hpsc-totalconditioning.jpnsport.go.jp/project */
.timeline-container {
    max-width: 900px;
    margin: 50px auto;
    position: relative;
    padding: 20px 0;
}

/* タイムラインの垂直線 */
.timeline-container::before {
    content: '';
    position: absolute;
    width: 2px;
    background-color: #ccc;
    top: 0;
    bottom: 0;
    left: 100px;
}

/* 各タイムライン項目（年と内容のコンテナ） */
.timeline-item {
    position: relative;
    margin-bottom: 30px;
    padding-left: 150px;
    min-height: 50px;
}

/* 各タイムライン項目の丸点 */
.timeline-item::before {
    content: '';
    position: absolute;
    width: 14px;
    height: 14px;
    background-color: #365FB0;
    border-radius: 50%;
    left: 95px;
    top: 14px;
    transform: translateY(-50%);
    border: 2px solid #fff;
    z-index: 1;
}

/* 年表示 */
.timeline-year {
    position: absolute;
    left: 0;
    top: 0;
    width: 80px;
    text-align: right;
    font-weight: bold;
    font-size: 1.2em;
    color: #555;
    padding-right: 20px;
}

/* タイムライン項目の内容ボックス */
.timeline-content {
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    position: relative;
}

/* 内容ボックス内の見出し */
.timeline-content h3 {
    margin-top: 0;
    color: #365FB0;
    font-size: 1.1em;
    font-weight: bold;
}

/* 内容ボックス内のリスト（デフォルトスタイルをリセット） */
.timeline-content ul {
    list-style: none;
    padding-left: 0;
}

/* 内容ボックス内のリストアイテム */
.timeline-content ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 5px;
}

/* 1層目のリストアイテムの装飾（黒丸） */
.timeline-content > ul > li::before {
    content: '●';
    color: #365FB0;
    position: absolute;
    left: 0;
    top: 0;
}

/* 2層目以降のリストアイテムの装飾 */
.timeline-content ul ul li::before {
    content: '・';
    color: #888;
    font-size: 0.8em;
}

/* 内容ボックス内の段落 */
.timeline-content p {
    margin-bottom: 10px;
}

/* トータルコンディショニングとは？：https://hpsc-totalconditioning.jpnsport.go.jp/about */
/* content-section 内の要素に適用されるスタイル */
.content-section {
    line-height: 1.7; /* 行間を広げて読みやすく */
    color: #333;
    padding: 30px 40px; /* セクション内の余白 */
    background-color: #ffffff; /* セクションの背景色（例） */
    border-radius: 8px; /* 角を丸くする（例） */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05); /* 軽い影（例） */
}

/* 段落 */
.content-section p {
    font-size: 1.1em; /* 本文のフォントサイズ */
    margin-bottom: 1.5em; /* 段落間の余白 */
}

/* h2 見出し */
.content-section h2 {
    font-size: 1.8em;
    color: #34495e; /* 少し濃いめの色 */
    border-bottom: 2px solid #ecf0f1; /* セクション区切り */
    padding-bottom: 10px;
    margin-top: 3em; /* 上部の余白を大きく */
    margin-bottom: 1em;
}

/* h3 見出し */
.content-section h3 {
    font-size: 1.4em;
    color: #34495e;
    margin-top: 2.5em;
    margin-bottom: 1em;
}

/* 箇条書きリスト */
.content-section ul {
    list-style-type: disc; /* リストのスタイル */
    margin-left: 25px; /* 左側にインデント */
    margin-bottom: 1.5em;
    padding: 0;
}

.content-section ul li {
    margin-bottom: 0.8em;
    font-size: 1.05em;
}

/* 箇条書き内の太字テキスト */
.content-section ul li b {
    color: #2980b9; /* 強調色 */
}

/* レスポンシブデザインの調整 */
@media (max-width: 768px) {
    .content-section {
        padding: 20px 25px; /* パディングを調整 */
    }

    .content-section h2 {
        font-size: 1.5em;
    }

    .content-section h3 {
        font-size: 1.2em;
    }

    .content-section p,
    .content-section ul li {
        font-size: 1em;
    }
}

@media (max-width: 480px) {
    .content-section {
        padding: 15px 20px;
    }

    .content-section h2 {
        font-size: 1.4em;
    }
}