    :root{

      --ink:#0b0f16;
         /* ��{�e�L�X�g�F */
      --bg:#fff;
         /* �[�����̔w�i�i���E�ρj */
      --panel:#101927;
         /* �p�l���̔w�i */
      --brand:#e0c169;
         /* ���n�A�N�Z���g */
      --accent:#e63946;
         /* CTA�� */
      --muted:#9fb0c9;
         /* �⏕�e�L�X�g */
      --line:#1b2739;
         /* �g�� */
      --shadow:0 4px 8px rgba(0,0,0,.35);

    
}
    h1,h2,h3{
	font-family:"Yu Mincho", "������", "Hiragino Mincho ProN", "Noto Serif JP", serif;
	letter-spacing:.02em
}

    /* �q�[���[ */
    .hero{
	position:relative;
	/*background:radial-gradient(1200px 600px at 75% -10%, #1a2a48 0%, rgba(26,42,72,0) 60%), linear-gradient(180deg,#0b1324 0%, #0b0f16 60%);
*/
}
    .hero .inner{
	max-width:1120px;
	margin:0 auto;
	padding:40px 50px 24px;
	display:grid;
	grid-template-columns:1.2fr 0.8fr;
	gap:28px
}

    .hero h1{
	font-size:clamp(28px,4.5vw,46px);
	line-height:1.2;
	margin:.6rem 0;
	color:#0f1828;
}
    .hero p.lead{
	color:#4466aa;
	line-height:1.8
}


    .hero-card{
	align-self:center;
	background:linear-gradient(180deg,#0f1828,#0b1221);
	border:1px solid #21314d;
	border-radius:14px;
	padding:14px;
	box-shadow:var(--shadow)
}
    .hero-card-inner{
	border:1px dashed #668090;
	border-radius:10px;
	padding:18px
}
    .hero-card h3{
	margin:0;
	font-size:1rem;
	color:#b9c7df
}
    .hero-card .fv{
	font-family:"Yu Mincho","������","Noto Serif JP",serif;
	font-size:1.6rem;
	margin:8px 0 4px;
	color:#fff
}
    .hero-card .small{
	font-size:.9rem;
	color:#97a9c5
}

.detail-btn {
  display: inline-block;
  margin-top: 12px;
  background: linear-gradient(135deg, #facc15, #f59e0b);
  color: #fff;
  font-size: 0.95rem;
  font-weight: 700;
  padding: 6px 12px;
  border-radius: 25px;
  text-decoration: none;
  box-shadow: 0 3px 6px rgba(0,0,0,0.2);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.detail-btn2 {
  display: inline-block;
  margin: 6px auto 10px;
  background: linear-gradient(135deg, #3b82f6, #06b6d4);
  color: #fff;
  font-size: 0.95rem;
  font-weight: 700;
  padding: 6px 12px;
  border-radius: 25px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.2);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.detail-btn:hover {
  opacity:0.8;
  transform: translateY(-2px);
  box-shadow: 0 5px 10px rgba(0,0,0,0.8);
}
.detail-btn2:hover {
  opacity:0.8;
  transform: translateY(-2px);
  box-shadow: 0 3px 5px rgba(0,0,0,0.8);
}

    /* �L�����y�[�� */
    .section{
	padding:40px 50px 24px;
	border-top:1px solid var(--line);
}
    .container{
	max-width:1120px;
	margin:0 auto
}
    .section h2{
	font-size:clamp(22px,3.2vw,32px);
	margin:0 0 8px;
	color:#0f1828;
}
    .sub{
	color:#111133;
	margin:0 0 18px
}
    .campaign{
	display:grid;
	grid-template-columns:0.4fr 0.6fr;
	gap:10px
}
    .panel{
	width:100%;
	border:1px solid #22324d;
	border-radius:14px;
	padding:14px;
	box-shadow:var(--shadow);
}
    .panel figure{
	margin:0
}
    .panel img{
	width:100%;
	height:auto;
	border-radius:10px;
	border:1px solid #2a3954
}
    .checklist{
	width:80%;
	display:relative;
	text-align:center;
	gap:10px;
	margin:8px auto 0px
}
    .check{
	font-size: 18px;
  	background: #fff8e1;       /* �ق�̂艩 */
  	padding: 6px 12px;
  	border-radius: 20px;
	color: #7c2d12;
	font-weight: 700;
	box-shadow: inset 0 0 0 1px rgba(249, 181, 0, .35);
}
    .check2{
	font-size: 18px;
  	background: #eee;       /* �D�F */
  	padding: 6px 12px;
  	border-radius: 10px;
	color: #444;
	font-weight: 700;
	box-shadow: inset 0 0 0 1px rgba(200, 200, 200, .35);
}
.plus-icon {
  font-size: 2rem;
  color: #f59e0b;
  text-shadow: 0 1px 2px rgba(0,0,0,0.2);
  font-weight: bold;
  line-height: 1;
  margin: 4px auto;
}

    .grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:20px
}

    /* �����L���O */
    .ranking{
	display:grid;
	grid-template-columns:0.75fr 1.25fr;
	gap:20px
}
    .ranking ol{
	margin:0;
	padding:0;
	list-style:none
}
    .ranking li{
	display:grid;
	grid-template-columns:40px 1.2fr 40px;
	gap:10px;
	align-items:center;
	background:#EEF;
	border:1px solid #23324d;
	border-radius:12px;
	padding:5px 12px;
	margin-bottom:10px
}
    .ranking .n{
	display:inline-grid;
	place-items:center;
	width:32px;
	height:32px;
	border-radius:50%;
	background:#fff;
	color:#1a1c22;
	font-weight:800;
}

    .ranking .count{
	text-align:right;
	font-weight:800
}
    .ranking figure{
	margin:0
}
    .ranking img{
	width:100%;
	height:auto;
	border-radius:10px;
	border:1px solid #2a3954
}

    /* ���сE�� */
    .cards{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:18px
}
    .card{
	border:1px solid #23324d;
	border-radius:12px;
	padding:16px
}

    /* �Œ�o�[ */
    .sticky-cta{
  	position: fixed;
  	bottom: 0;
	  right: 0;
	  left: 0;
	  margin: 0 auto;
	  width: 100%;
	z-index:60;
	background:linear-gradient(180deg,rgba(15,24,40,.1),rgba(15,24,40,.3));
	backdrop-filter:saturate(130%) blur(4px);
	border-top:1px solid #22324d
}
    .sticky-cta .wrap{
	padding:10px 20px
}

    /* �A�j���[�V���� */
    .reveal{
	opacity:0;
	transform:translateY(12px);
	transition:opacity .6s ease, transform .6s ease
}
    .reveal.show{
	opacity:1;
	transform:none
}
.catch {
  display: flex;
  align-items: center; /* �������S */
  justify-content: center; /* �������S */
}
.catch:before, .catch:after {
  border-top: 1px solid;
  content: "";
  width: 3em; /* ���̒��� */
}
.catch:before {
  margin-right: 1em; /* �����̉E�� */
}
.catch:after {
  margin-left: 1em; /* �����̍��� */
}

@media screen and (max-width: 767px){
.hero .inner{
	margin:0 auto;
	padding:15px;
	display:grid;
	grid-template-columns:1fr;
	gap:28px
}
    .hero-card{
	margin:0 auto;
	width: 80%;
	padding:6px;
}
    .hero-card-inner{
	border:1px dashed #668090;
	border-radius:10px;
	padding:12px
}
    .hero-card h3{
	font-size:1rem;
}
    .hero-card .fv{
	font-size:1.3rem;
}
    .section{
	padding:20px 20px 25px;
	border-top:1px solid var(--line);
}
.campaign{
	grid-template-columns:1fr
}
.ranking{
	grid-template-columns:1fr;
}
.grid{
	grid-template-columns:1fr
}
.cards{
	grid-template-columns:1fr;
}
}

@import url("https://fonts.googleapis.com/css?family=Oswald:300|Roboto:300,500");
.wrapper {
  margin: auto;
  padding: 4px;
}

.wrapper ul, li {
  margin: 0;
  padding: 0;
}

.wrapper a {
  color: #00ACC1;
}

.details-group {
  border: 2px solid #CFD8DC;
  border-radius: 5px;
  background-color: white;
}

.details {
  height: auto;
  overflow: hidden;
  border-bottom: 1px solid #CFD8DC;
  transition: height 100ms ease-in-out;
}

.details:last-child {
  border-bottom: 0;
}

.details__summary, .details__content {
  padding: 5px 16px;
}

.details__summary, .details__content img{
  text-align:center;
}

.details__summary {
  position: relative;
  list-style: none;
  text-align: center;
  outline: 0;
  cursor: pointer;
  font-size: 1.1rem;
  font-family: Oswald;
  text-transform: uppercase;
  transition: color 200ms ease-in-out;
}

.details__summary img{
  cursor:default;
}

[open] > .details__summary {
  color: #FF9900;
}
.details__summary::-webkit-details-marker {
  display: none;
}
.details__summary:before, .details__summary:after {
  content: "";
  position: absolute;
}
.details__summary:before {
  left: 18px;
  top: 50%;
  height: 2px;
  margin-top: -1px;
  width: 16px;
  background: #FF9900;
}
.details__summary:after {
  left: 26px;
  top: 50%;
  height: 16px;
  margin-top: -8px;
  width: 2px;
  margin-left: -1px;
  background: #FF9900;
  transition: all 200ms ease-in-out;
}

[open] .details__summary:after {
  opacity: 0;
  transform: translateY(25%);
}

.details__content {
    display: block;
    justify-content: center;
    align-items: start;
    gap: 0 !important;
}

/*---------table09---------*/
.table_design09 {
  position: relative;
  margin: 0 auto;
  border-collapse: collapse;
  table-layout: fixed;
  width: 90%;
  min-width: 700px
  text-align: center;
}
.table_design09 tr {
  background-color: #e6f1f6;
}

.table_design09 th {
  text-align: center;
  width: 20%;
  font-size: 12px;
  padding: 0.5rem;
  border-right: 1px solid #4d9bc1;
}
.table_design09 td {
  text-align: center;
  padding: 0.5em;
}




@media screen and (max-width: 767px){
.details-group {
  border: 2px solid #CFD8DC;
  border-radius: 3px;
}

.details__summary, .details__content {
  padding: 5px;
}

.details__summary {
  padding-left: 32px;
  font-size: 0.9rem;
}
.details__summary:before {
  left: 10px;
  top: 50%;
  height: 2px;
  margin-top: -1px;
  width: 12px;
}
.details__summary:after {
  left: 16px;
  height: 12px;
  margin-top: -6px;
  width: 2px;
}

/*---------table09---------*/

.table_design09 th {
  text-align: center;
  width: 25%;
  font-size: 12px;
}
.table_design09 td {
  font-size: 13px;
  text-align: center;
  padding: 0;
}

}
/*# sourceMappingURL=accordion.css.map */

 /*----------[PC�Ŕ�\��]--------------*/
.pcnot{
@media screen and (min-width:768px){
   display:none;
}
}

 /*----------[�X�}�z�Ŕ�\��]--------------*/
.smnot{
@media screen and (max-width:768px){
   display:none;
}
}
