@charset "utf-8";
/* CSS Document */

/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@400;500;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap'); */

.main-wrap {
	font-family: "Noto Sans", sans-serif;
}

.main-wrap a[target='_blank']:after {
	display: none;
}

.fontZenMaruGothic {
	font-family: "Zen Maru Gothic", sans-serif;
  	font-weight: 700;
}

.fontAnton {
	font-family: "Anton", sans-serif;
  	font-weight: 400;
}

@media (min-width: 768px) {
	.hover:hover {
		filter: alpha(opacity=70);
		-moz-opacity: 0.7;
		opacity: 0.7;
		transition-duration: 0.3s;
	}
}

/* --------------------------------------------- */
/* ▼モバイルファースト (全環境に共通のデザイン) */
/* --------------------------------------------- */

body {
	position: relative;
	color: #333 !important;
}

.pc {
	display: none;
}

.sp {
	display: block;
}

.pcBr {
	display: none;
}

.spBr {
	display: inline;
}

.fcRed {
	color: #E70D1E;
}
.ib {display: inline-block;}

.center {text-align: center !important;}
.right {text-align: right !important;}
.left {text-align: left !important;}

.auto_center {
	margin-left: auto;
	margin-right: auto;
	width: fit-content;
}

/*アキ*/
.mgt48 {margin-top: 48px !important;}
.mgt32 {margin-top: 32px !important;}
.mgt24 {margin-top: 24px !important;}
.mgt16 {margin-top: 16px !important;}
.mgt8 {margin-top: 8px !important;}
.mgt4 {margin-top: 4px !important;}
.mgt0 {margin-top: 0 !important;}

.relative_wrap {position: relative;}

.marker {
	background: linear-gradient(transparent 70%, #FFFF00 50%);
}

.indent {
	text-indent: -1em;
	padding-left: 1em;
}

/*---------------------*/

.logo {
	position: absolute;
    top: 8px;
    right: 8px;
    width: 200px;
}


/*---------------------*/

.contBtnFlex01 {
	display: flex;
	justify-content: space-between;
	margin-top: 3.2vw
}

.contBtnWrap03 .contBtnFlex01 {
	max-width: 1000px;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 3vw;
	row-gap: 32px;
}

.contBtnFlex01 li {
	width: 48%;
}

.contBtnBox01 {
	margin-top: 6.13vw;
}

.contBtnBox01 .p01 {
	color: #3576D9;
	font-size: 4.26vw;
	line-height: 1.75em;
	font-weight: bold;
}

.contBtnLink01 {
	margin-top: 5.86vw;
}

.contBtnLink01 a {
	color: #3576D9;
	font-size: 4.26vw;
	font-weight: bold;
}

.contText02.txt_Space {
	letter-spacing: 0em;
}

.contBlock .ttl {
    background-color: #fcd90e;
    border-radius: 8px;
    font-weight: bold;
    margin-bottom: 16px;
}

/*--2025/10/15--------------*/

.contIn900 {
	padding: 0px 30px;
}

.contBlock {
	background-color: #3D9DEB;
	padding: 60px 30px 30px;
}

.contBlockIn {
	position: relative;
	background-color: #ffffff;
	border: 2px solid #EAF5FF;
	border-radius: 16px;
	padding: 40px 30px 30px;
	text-align: center;
}

.contText01 {
    color: #333;
    background-color: #FCD90D;
    border-radius: 90px;
    padding: 12px 84px;
    font-size: 26px;
    line-height: 1.3em;
    font-weight: bold;
    white-space: nowrap;
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
}

.contText01 .s01 {
	font-size: 40px;
}

.contText02 {
	font-size: 32px;
	line-height: 1.3em;
	font-weight: bold;
	margin-bottom: 30px;
}

.contText03 {
	font-size: 32px;
	line-height: 1.5em;
	font-weight: bold;
}

.contPriceBox01 {
    padding: 18px 0px 32px;
    display: flex;
    justify-content: space-between;
}

.contText04 {
    color: #E70D1E;
    font-size: 94px;
    line-height: 0.8em;
    font-weight: bold;
    text-align: left;
    margin-top: -56px;
}

.contText04 .s01 {
	color: #333333;
	font-size: 40px;
}


.contLine01 {
	width: 100%;
	height: 2px;
	background-color: #CCCCCC;
	margin: 0px auto 30px;
}

.contText05 {
	font-size: 25px;
	line-height: 1.5em;
	font-feature-settings: "palt";
	margin-bottom: 16px;
}

.contText06 {
	font-size: 25px;
	line-height: 1.3em;
	font-feature-settings: "palt";
}


/*----------------------*/

.contBlock01 {
	background-color: #EAF5FF;
	padding: 60px 40px;
}

.contH301 {
    color: #3D9DEB;
    font-size: 46px;
    line-height: 1.3em;
    font-weight: bold;
    text-align: center;
    margin-bottom: 48px;
    letter-spacing: 0em;
}

.contH301 .s01 {
	display: block;
	text-align: center;
	margin-bottom: 15px;
}

.contH301 .s01 img {
	width: 64px;
	height: auto;
}

.contBox01 {
	background-color: #ffffff;
	border: 2px solid #3D9DEB;
	border-radius: 16px;
	padding: 30px 30px 40px;
	max-width: 640px;
	margin: 16px auto 0;
}

.text28_15_n {
	font-size: 28px;
	line-height: 1.5em;
}

.block01Tit01 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
}

.block01Tit01 .p01.mb30 {
	margin-bottom: 20px;
}

.block01Tit01 .p01.mb30 {
	margin-bottom: 30px;
}

.block01Tit01 .p01 img {
	width: auto;
	height: 192px;
}

.block01Tit01 .p02 {
	font-size: 40px;
	line-height: 1.5em;
	font-weight: bold;
}

.block01Tit01 .p02 .s01 {
	color: #3D9DEB;
}

.contUl01 {
	margin-top: 24px;
}

.contUl01 li {
	font-size: 24px;
	line-height: 1.5em;
	text-indent: -1em;
	padding-left: 1em;
}


.text32_175_n {
	font-size: 32px;
	line-height: 1.5em;
}

.contPcWrap01,
.main-contents {
	/* ヘッダーの高さ分を指定 */
  scroll-margin-top: 136px;
}

/*----------------------*/

.contBlock03 {
	padding: 60px 30px;
}

.contAncWrap01 {
	display: flex;
	gap: 30px;
	margin-bottom: 55px;
}

.contH401 {
	text-align: center;
}

.contH401 img {
	width: auto;
	height: 266px;
}

.block03Box01 {
	background-color: #FFFEF5;
	border: 2px solid #CCCCCC;
	padding: 30px 30px 30px;
}

.contDl01 {
	margin-bottom: 30px;
}

.contDl01 dt {
	font-size: 32px;
	line-height: 1.75em;
	font-weight: bold;
	margin-bottom: 6px;
}

.textLink01 {
	color: #3D9DEB !important;
	text-decoration: underline;
	font-weight: bold;
}

.block03Box02 {
	margin-top: 8px;
}

.text24_15_n {
	font-size: 24px;
	line-height: 1.5em;
}

.tableWrap01 {
	margin-top: 16px;
}

.contTable01 {
	width: 100%;
	margin-top: 16px;
	font-size: 24px;
	line-height: 1.35em;
}

.contTable01 th {
	border: 2px solid #CCCCCC;
	background-color: #F5F5F5;
	text-align: center;
	vertical-align: middle;
	padding: 13px;
}

.contTable01 td {
	border: 2px solid #CCCCCC;
	background-color: #ffffff;
	text-align: center;
	vertical-align: middle;
	padding: 13px;
}

.bold {
	font-weight: bold;
}

.text40_14_b {
	font-size: 40px;
	line-height: 1.4em;
	font-weight: bold;
}

.mb12 {
	margin-bottom: 12px;
}

.alc {
	text-align: center;
}

/*----------------------*/


.main-contents {
	margin-bottom: 100px;
}

.main-contents .section-head {
	font-weight: 700;
	letter-spacing: 0.052em;
	color: #074c91;
	font-size: 32px;
	font-feature-settings: "palt";
	line-height: 1.4;
}

.select-item {
	margin-top: 60px;
}

.select-item h3 {
	font-weight: 700;
	letter-spacing: 0.08em;
	position: relative;
	margin: 0 0 30px 0;
	padding: 0 0 0 70px;
	font-size: 44px;
	line-height: 1.2;
}

.select-item h3::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 58px;
	margin: 0 12px 0 0;
	background: url("../img/ind_sel2_art_cap_ico.png") no-repeat center/contain;
}

.select-item .wrap {
	border: 8px solid #0096e7;
}

.select-item .wrap.smart {
	color: #0096e7;
}

.select-item .title {
	box-sizing: border-box;
	padding: 42px 30px 36px;
}

.select-item .title h4 {
	width: 454px;
	margin: auto;
}

.select-item .title .fee {
	letter-spacing: 0.048em;
	display: grid;
	place-content: center;
	width: 454px;
	height: 36px;
	margin: 25px auto 0;
	color: #004da2;
	font-size: 22px;
	background-color: #f0f4f9;
}

.select-item .link {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px 22px 38px;
	background-color: #f5f5f5;
}

.select-item .link h5 {
	font-weight: 700;
	letter-spacing: 0.016em;
	position: relative;
	display: flex;
	align-items: center;
	gap: 25px;
	margin-bottom: 40px;
	color: #000;
	font-size: 48px;
	line-height: 1.4;
}

.select-item .wrap.smart .link h5::before {
	content: "";
	width: 174px;
	height: 178px;
	background-image: url(../img/ind_sel2_ico_01.png);
}

.select-item .link .three-divisions {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.select-item .link .three-divisions li a {
	font-weight: 700;
	letter-spacing: 0.048em;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 120px;
	font-size: 26px;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}

.select-item .link .three-divisions li.l1 a,
.select-item .link .three-divisions li.l2 a {
	color: #fff;
	background-color: #0096e7;
}

.select-item .link .three-divisions li a::before {
	content: "";
	width: 24px;
	height: 24px;
	margin-right: 15px;
	background: url(../img/_arr_link.png) no-repeat center/contain;
}

.select-item .link .three-divisions li a {
	font-weight: 700;
	letter-spacing: 0.048em;
	font-size: 26px;
	line-height: 1.2;
	text-align: center;
}

.select-item .link .three-divisions li a {
	font-weight: 700;
	letter-spacing: 0.048em;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 120px;
	font-size: 26px;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}

.select-item .link .three-divisions li.l3 a {
	display: grid;
	grid-template: "icon main" auto "icon sub" auto/80px auto;
	gap: 3px 20px;
	color: #004da2;
	text-align: left;
	background-color: #fff;
	border: 2px solid #cfcfcf;
}

.select-item .link .three-divisions li a {
	font-weight: 700;
	letter-spacing: 0.048em;
	font-size: 26px;
	line-height: 1.2;
	text-align: center;
}

.select-item .link .three-divisions li.l3 a {
	color: #004da2;
	text-align: left;
}

.select-item .link .three-divisions li.l3 a::before {
	-ms-grid-row: 1;
	-ms-grid-row-span: 3;
	-ms-grid-column: 1;
	content: "";
	grid-area: icon;
	width: 80px;
	height: 80px;
	margin-right: 0;
	background: url(../img/exapp_icon_01.png) no-repeat center/contain;
}

.select-item .link .three-divisions li.l3 .main {
	-ms-grid-row: 1;
	-ms-grid-column: 3;
	grid-area: main;
	align-self: end;
	font-size: 28px;
}

.select-item .link .three-divisions li.l3 .sub {
	-ms-grid-row: 3;
	-ms-grid-column: 3;
	grid-area: sub;
	align-self: start;
	font-size: 22px;
	font-weight: 400;
}

.select-item .title .text {
	letter-spacing: 0.048em;
	margin-top: 22px;
	font-size: 24px;
	line-height: 1.5;
	text-align: center;
}

.select-item .link h5 {
	font-weight: 700;
	letter-spacing: 0.016em;
	position: relative;
	display: flex;
	align-items: center;
	gap: 25px;
	margin-bottom: 40px;
	color: #000;
	font-size: 48px;
	line-height: 1.4;
}

.select-item .wrap.express .link h5::before {
	content: "";
	width: 150px;
	height: 152px;
	background-image: url(../img/ind_sel2_ico_02.png);
	translate: 0 -8px;
}

.select-item .wrap.express {
	border: 8px solid #004da2;
}

.select-item .express .link .three-divisions li.l1 a,
.select-item .express .link .three-divisions li.l2 a {
	color: #fff;
	background-color: #004da2;
}

.select-item .link .three-divisions li.l4 a {
	color: #fff;
	background-color: #4c4c4c;
}






.listBlock{margin-top: 32px;}


.AgeGroup {
    background-color: #f1f1f1;
    display: inline;
    padding: 4px 24px;
    font-size: 24px !important;
    border-radius: 40px;
}

.contPriceSample {
    border: 1px #333 solid;
    border-radius: 10px;
    padding: 16px;
    margin-top: 24px;
}

.contPriceSample .ttl {
    font-weight: 400;
    background-color: #f1f1f1;
    border-radius: 30px;
	margin-bottom: 8px;
}


.underline {text-decoration: underline;}

/* -------------------------------------------- */
/* ▼table */
/* -------------------------------------------- */
/* テーブルを包むコンテナ：ここでスクロールを制御 */
        .table-container {
            max-width: 800px;
            margin: 20px auto;
            overflow-x: auto; /* 横スクロールを許可 */
            padding-bottom: 15px; /* スクロールバーとセルの間の余白 */
            -webkit-overflow-scrolling: touch; /* iOSでの滑らかなスクロール */
			position: relative;
        }
		

        /* スクロールバー全体のデザイン */
        .table-container::-webkit-scrollbar {
			-webkit-appearance: none; /* デフォルトのスタイルを無効化 */
		    display: block; /* 常に表示を試みる */
            height: 12px; /* スクロールバーの高さ */
        }
        
        /* スクロールバーの通り道（トラック） */
        .table-container::-webkit-scrollbar-track {
            background: #fff;
            border-radius: 10px;
            border: 1px solid #e0e0e0; /* 罫線を追加 */
        }
        
        /* スクロールバーのつまみ（ハンドル） */
        .table-container::-webkit-scrollbar-thumb {
            background: #ccc;
            border-radius: 10px;
			border: 2px solid #f1f1f1; /* つまみの周囲に余白を作ってスッキリさせる */
        }

		

        table {
            width: 100%;
            min-width: 1580px; /* スマホ時に縮小されすぎないよう最小幅を固定 */
            border-collapse: collapse;
            font-family: sans-serif;
            font-size: 24px;
            text-align: center;
            table-layout: fixed; /* 列の幅を均等に保つ */
			
        }

        th, td {
            border: 1px solid #ccc;
            padding: 12px 5px;
            /* --- 天地センターと行間の設定 --- */
            vertical-align: middle; /* 上下中央揃え */
            text-align: center;     /* 左右中央揃え */
            line-height: 1.3;       /* 改行時の行間（お好みで1.2〜1.5程度に調整） */
            word-break: break-all;  /* 必要に応じてセル内で改行を許可 */
        }

        /* ヘッダー・セルの配色設定 */
        .header-label {
				background-color: #f1f1f1;
				font-weight: bold;
				width: 100px;
				text-align: center;
			}
        .upbound-header { 
			background-color: #EAF5FF; 
			font-weight: bold;
		}
        .upbound-cell { 
			background-color: #EAF5FF;
		 }
        .downbound-header { 
			background-color: #FFFBE3; 
			font-weight: bold;
		}
        .downbound-cell { background-color: #FFFBE3; }
        
        .date-cell { 
			font-weight: bold; 
			height: 75px;
		}
        .deadline-cell { 
			color: #E70D1E; 
			font-weight: bold;
			background-color: #fff;
			height: 75px;
		 }

		.bg_Wh {background-color: #fff;}
        

		.scroll-hint-text {
        font-size: 16px !important;
    }
	.scroll-hint-icon {
    top: calc(50% - 60px) !important;
	    left: calc(50% - 80px) !important;
    width: 180px !important;
}


/* -------------------------------------------- */
/* ▼タブレット用デザインとして付け足すデザイン */
/* -------------------------------------------- */
@media (min-width: 768px) {

	.pc {
		display: block;
	}

	.sp {
		display: none;
	}

	.pcBr {
		display: inline;
	}

	.spBr {
		display: none;
	}

	.contIn764 {
		max-width: 764px;
		margin: auto;
		position: relative;
	}

	.contIn980 {
		max-width: 980px;
		margin: auto;
		position: relative;
	}

	div.main-wrap {
		width: auto;
	}

	.dispInBlock {
		display: inline-block;
	}

	/*---------------------*/


	
	
	.contBtnFlex01 {
		display: flex;
		justify-content: space-between;
		margin-top: 12px;
	}

	.contBtnFlex01 li {
		width: 48%;
	}

	.contBtnBox01 {
		margin-top: 24px;
	}

	.contBtnBox01 .p01 {
		color: #3576D9;
		font-size: 16px;
		line-height: 1.75em;
		font-weight: bold;
	}

	.contBtnLink01 {
		margin-top: 24px;
	}

	.contBtnLink01 a {
		color: #3576D9;
		font-size: 16px;
		font-weight: bold;
	}

	/*----------------*/

	.contBtnWrap03 .contBtnFlex01 {
		justify-content: center;
		max-width: 1000px;
		flex-wrap: wrap;
		margin: 12px auto 0;
		row-gap: 56px;
	}

	.contBtnWrap03 .contBtnFlex01 li {
		width: 323px;
		margin: 0px 12px;
	}

	.contBtn08_text {
		font-size: 18px;
	}

	/*--------------------*/

	

	.mainPcIn {
        display: flex;
        align-items: center;
        justify-content: center;
        background-image: url(../img/main_deco01.png);
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: 980px auto;
        height: 440px;
        box-sizing: border-box;
        padding-bottom: 16px;
    }

	.mainTit01 img {
		width: 950px;
		height: auto;
	}

	.mainPcWrap01::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-image: url(../img/bg.png);
        background-repeat: repeat;
        display: block;
        background-size: 1.5%;
        z-index: -1;
    }

	.logo {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 140px;
}


	/*--2025/10/15--------------*/

	.contIn900 {
		padding: 0px 30px;
	}

	.contBlock {
		background-color: #3D9DEB;
		padding: 94px 0px 64px;
	}

	.contBlockIn {
		width: 640px;
		margin: auto;
		position: relative;
		background-color: #ffffff;
		border: 2px solid #EAF5FF;
		border-radius: 16px;
		padding: 40px 30px 30px;
		text-align: center;
	}

	.contText01 {
        color: #333;
        background-color: #FCD90D;
        border-radius: 70px;
        padding: 6px 110px;
        font-size: 24px;
        line-height: 1.3em;
        font-weight: bold;
        white-space: nowrap;
        position: absolute;
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
    }

	.contText01 .s01 {
		font-size: 40px;
	}

	.contText02 {
		font-size: 20px;
		line-height: 1.5em;
		font-weight: bold;
		margin-bottom: 30px;
	}

	.contText03 {
		font-size: 20px;
		line-height: 1.5em;
		font-weight: bold;
	}

	.contPriceBox01 {
        padding: 68px 0px 20px;
        display: flex;
        justify-content: center;
        gap: 48px;
    }

	.contText04 {
		color: #E70D1E;
		font-size: 56px;
		line-height: 1.0em;
		font-weight: bold;
	}

	.contText04 .s01 {
		color: #333333;
		font-size: 20px;
	}

	

	.contLine01 {
		width: 100%;
		height: 2px;
		background-color: #CCCCCC;
		margin: 0px auto 30px;
	}

	.contText05 {
		font-size: 16px;
		line-height: 1.5em;
		margin-bottom: 16px;
	}

	.contText06 {
		font-size: 16px;
		line-height: 1.3em;
	}

	/*----------------------*/

	.contBlock01 {
		background-color: #EAF5FF;
		padding: 60px 40px;
	}

	.contH301 {
		color: #3D9DEB;
		font-size: 32px;
		line-height: 1.3em;
		font-weight: bold;
		text-align: center;
		margin-bottom: 48px;
	}

	.contH301 .s01 {
		display: block;
		text-align: center;
		margin-bottom: 15px;
	}

	.contH301 .s01 img {
		width: 64px;
		height: auto;
	}

	.text28_15_n {
		font-size: 14px;
		line-height: 1.5em;
	}

	.block01Tit01 {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 30px;
		margin-bottom: 16px;
	}

	.block01Tit01 .p01.mb30 {
		margin-bottom: 0px;
	}

	.block01Tit01 .p01.mb30 {
		margin-bottom: 0px;
	}

	.block01Tit01 .p01 img {
		width: auto;
		height: 96px;
	}

	.block01Tit01 .p02 {
		font-size: 20px;
		line-height: 1.5em;
		font-weight: bold;
	}

	.block01Tit01 .p02 .s01 {
		color: #3D9DEB;
	}

	.contUl01 {
		margin-top: 10px;
	}

	.contUl01 li {
		font-size: 14px;
		line-height: 1.5em;
		text-indent: -1em;
		padding-left: 1em;
	}

	.contPcWrap01 {
		width: 720px;
		margin: auto;
	}

	.text32_175_n {
		font-size: 16px;
		line-height: 1.75em;
	}


	/*----------------------*/

	.contBlock03 {
		padding: 60px 30px;
	}

	.contAncWrap01 {
		display: flex;
		justify-content: center;
		gap: 30px;
		margin-bottom: 55px;
	}

	.contH401 {
		text-align: center;
	}

	.contH401 img {
		width: auto;
		height: 266px;
	}

	.block03Box01 {
		background-color: #FFFEF5;
		border: 2px solid #CCCCCC;
		padding: 48px 30px 60px;
	}

	.contDl01 {
		margin-bottom: 20px;
	}

	.contDl01 dt {
		font-size: 16px;
		line-height: 1.75em;
		font-weight: bold;
		margin-bottom: 6px;
	}

	.textLink01 {
		color: #3D9DEB !important;
		text-decoration: underline;
	}

	.block03Box02 {
		margin-top: 10px;
	}

	.text24_15_n {
		font-size: 12px;
		line-height: 1.5em;
	}

	.tableWrap01 {
		margin-top: 8px;
	}

	.contTable01 {
		width: auto;
		margin-top: 8px;
		font-size: 12px;
		line-height: 1.35em;
	}

	.contTable01 th {
		border: 2px solid #CCCCCC;
		background-color: #F5F5F5;
		text-align: center;
		vertical-align: middle;
		padding: 6px;
	}

	.contTable01 td {
		border: 2px solid #CCCCCC;
		background-color: #ffffff;
		text-align: center;
		vertical-align: middle;
		padding: 6px;
	}

	.bold {
		font-weight: bold;
	}

	.text40_14_b {
		font-size: 20px;
		line-height: 1.4em;
		font-weight: bold;
	}

	.mb12 {
		margin-bottom: 12px;
	}

	.alc {
		text-align: center;
	}

	.textPc28 {
		font-size: 28px;
	}

	.contIn900 {
		width: 900px;
		margin-left: auto;
		margin-right: auto;
	}

	/*------------------------*/

	.main-contents img {
		max-width: 100%;
		width: auto;
		height: auto;
	}

	.main-contents {
		margin-bottom: 100px;
	}

	.main-contents .section-head {
		font-weight: 700;
		letter-spacing: 0.052em;
		color: #074c91;
		font-size: 32px;
		font-feature-settings: "palt";
		line-height: 1.4;
	}

	.select-item {
		margin-top: 60px;
	}

	.select-item h3 {
		font-weight: 700;
		letter-spacing: 0.08em;
		position: relative;
		margin: 0 0 30px 0;
		padding: 0 0 0 70px;
		font-size: 28px;
		line-height: 1.2;
	}

	.select-item h3::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: 58px;
		margin: 0 12px 0 0;
		background: url("../img/ind_sel2_art_cap_ico.png") no-repeat center/contain;
	}

	.select-item .wrap {
		border: 8px solid #0096e7;
		display: flex;
	}

	.select-item .wrap.smart {
		color: #0096e7;
	}

	.select-item .title {
		box-sizing: border-box;
		width: 322px;
		padding: 20px 28px;

	}

	.select-item .title h4 {
		width: auto;
		margin: auto;
	}

	.select-item .title .fee {
		letter-spacing: 0.048em;
		display: grid;
		place-content: center;
		width: auto;
		height: 36px;
		margin: 25px auto 0;
		color: #004da2;
		font-size: 22px;
		background-color: #f0f4f9;
	}

	.select-item .link {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 40px 22px 38px;
		background-color: #f5f5f5;
	}

	.select-item .link h5 {
		font-weight: 700;
		letter-spacing: 0.016em;
		position: relative;
		display: flex;
		align-items: center;
		gap: 25px;
		margin-bottom: 40px;
		color: #000;
		font-size: 48px;
		line-height: 1.4;
	}

	.select-item .wrap.smart .link h5::before {
		content: "";
		width: 70px;
		height: 70px;
		background-image: url(../img/ind_sel2_ico_01.png);
		background-size: 70px auto;
	}

	.select-item .link .three-divisions {
		display: flex;
		flex-direction: column;
		gap: 20px;
		width: 100%;
	}

	.select-item .link .three-divisions li a {
		font-weight: 700;
		letter-spacing: 0.048em;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: 120px;
		font-size: 26px;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
	}

	.select-item .link .three-divisions li.l1 a,
	.select-item .link .three-divisions li.l2 a {
		color: #fff;
		background-color: #0096e7;
	}

	.select-item .link .three-divisions li a::before {
		content: "";
		width: 24px;
		height: 24px;
		margin-right: 15px;
		background: url(../img/_arr_link.png) no-repeat center/contain;
	}

	.select-item .link .three-divisions li a {
		font-weight: 700;
		letter-spacing: 0.048em;
		font-size: 26px;
		line-height: 1.2;
		text-align: center;
	}

	.select-item .link .three-divisions li a {
		font-weight: 700;
		letter-spacing: 0.048em;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: 120px;
		font-size: 26px;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
	}

	.select-item .link .three-divisions li.l3 a {
		display: grid;
		grid-template: "icon main" auto "icon sub" auto/80px auto;
		gap: 3px 20px;
		color: #004da2;
		text-align: left;
		background-color: #fff;
		border: 2px solid #cfcfcf;
	}

	.select-item .link .three-divisions li a {
		font-weight: 700;
		letter-spacing: 0.048em;
		font-size: 26px;
		line-height: 1.2;
		text-align: center;
	}

	.select-item .link .three-divisions li.l3 a {
		color: #004da2;
		text-align: left;
	}

	.select-item .link .three-divisions li.l3 a::before {
		-ms-grid-row: 1;
		-ms-grid-row-span: 3;
		-ms-grid-column: 1;
		content: "";
		grid-area: icon;
		width: 80px;
		height: 80px;
		margin-right: 0;
		background: url(../img/exapp_icon_01.png) no-repeat center/contain;
	}

	.select-item .link .three-divisions li.l3 .main {
		-ms-grid-row: 1;
		-ms-grid-column: 3;
		grid-area: main;
		align-self: end;
		font-size: 18px;
	}

	.select-item .link .three-divisions li.l3 .sub {
		-ms-grid-row: 3;
		-ms-grid-column: 3;
		grid-area: sub;
		align-self: start;
		font-size: 22px;
		font-weight: 400;
	}

	.select-item .title .text {
		margin-top: 22px;
		font-size: 14px;
		line-height: 1.5;
		text-align: center;
		letter-spacing: -0.02em;
	}

	.select-item .link h5 {
		font-weight: 700;
		letter-spacing: 0.016em;
		position: relative;
		display: flex;
		align-items: center;
		gap: 25px;
		margin-bottom: 40px;
		color: #000;
		font-size: 26px;
		line-height: 1.4;
	}

	.select-item .wrap.express .link h5::before {
		content: "";
		width: 88px;
		height: 88px;
		background-image: url(../img/ind_sel2_ico_02.png);
		background-size: 88px auto;
		translate: 0 -8px;
	}

	.select-item .wrap.express {
		border: 8px solid #004da2;
	}

	.select-item .express .link .three-divisions li.l1 a,
	.select-item .express .link .three-divisions li.l2 a {
		color: #fff;
		background-color: #004da2;
	}

	.select-item .link .three-divisions li.l4 a {
		color: #fff;
		background-color: #4c4c4c;
	}


	.select-item .wrap {
		display: grid;
		grid-template-columns: 322px 1fr;
		align-items: center;
	}

	.select-item .link .three-divisions {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
		width: 100%;
	}

	.select-item .link .three-divisions li a {
		font-weight: 700;
		letter-spacing: 0.048em;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: 60px;
		font-size: 18px;
		font-feature-settings: "palt";
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
		transition: opacity 0.5s;
	}

	.select-item .link .three-divisions li.l3 {
		grid-column: span 2;
	}

	.select-item .link .three-divisions li.l3 a {
		color: #004da2;
		background-color: #fff;
		border: 1px solid #cfcfcf;
	}

	.select-item .link .three-divisions li.l3 a::before {
		content: "";
		width: 40px;
		height: 40px;
		margin-right: 10px;
	}

	.select-item .link .three-divisions li a {
		font-weight: 700;
		letter-spacing: 0.048em;
		font-size: 18px;
		font-feature-settings: "palt";
		line-height: 1.2;
		text-align: center;
	}

	.select-item .link .three-divisions li.l3 .sub {
		font-size: 14px;
		font-weight: 400;
	}


	.contAncWrap01 a img {
		width: 200px;
		height: auto;
	}

	/* -------------------------------------------- */
/* ▼table */
/* -------------------------------------------- */
/* テーブルを包むコンテナ：ここでスクロールを制御 */
        .table-container {
            max-width: 800px;
            margin: 20px auto;
            overflow-x: auto; /* 横スクロールを許可 */
            padding-bottom: 15px; /* スクロールバーとセルの間の余白 */
            -webkit-overflow-scrolling: touch; /* iOSでの滑らかなスクロール */
        }

		table {
            width: 100%;
            min-width: 640px; /* スマホ時に縮小されすぎないよう最小幅を固定 */
            border-collapse: collapse;
            font-family: sans-serif;
            font-size: 12px;
            text-align: center;
            table-layout: fixed; /* 列の幅を均等に保つ */
			
        }

		.header-label {
    background-color: #f1f1f1;
    font-weight: bold;
    width: 56px;
    text-align: center;
}

.date-cell { 
			font-weight: bold; 
			height: 45px;
		}
        .deadline-cell { 
			color: #E70D1E; 
			font-weight: bold;
			background-color: #fff;
			height: 45px;
		 }
        

		 .AgeGroup {
    background-color: #f1f1f1;
    display: inline;
    padding: 0px 20px;
    font-size: 14px !important;
    border-radius: 40px;
}
.contText04 {
        color: #E70D1E;
        font-size: 54px;
        line-height: 0.6em;
        font-weight: bold;
        display: flex;
        align-items: center;
        gap: 10px;
    }
	.contPriceSample {
    border: 1px #333 solid;
    border-radius: 10px;
    padding: 24px;
    margin-top: 24px;
}

}

/* ------------------------------------ */
/* ▼PC用デザインとして付け足すデザイン */
/* ------------------------------------ */

@media (min-width: 1024px) {

	.contPcFlex01 {
		display: flex;
		gap: 16px;
		max-width: 1280px;
		margin: 0 auto;
	}

	.contBox01 {
		background-color: #ffffff;
		border: 2px solid #3D9DEB;
		border-radius: 16px;
		padding: 30px 30px 40px;
		margin-top: 16px;
		width: 33%;
	}
}