#hokenryou{
	padding-bottom: 100px;
}
#hokenryou .inner{
	background-color:rgba(255,255,255,0.5);
	border-radius: 10px;
	padding:50px 10px;
	margin-top:80px;
}

#hokenryou .main,
#hokenryou .title{
	width:min(100%,1100px);
	margin:0 auto;
}

/*---------------------------

	レスポンシブ

---------------------------*/

@media screen and (min-width: 0) and (max-width: 430px){
	#hokenryou .inner{
		padding:10px 5px 30px 5px;
		margin-top:50px;
	}
	#hokenryou .main{
		padding:0 5px;
	}
}
/*-----------------------------------



	保険料性別表題・フォーム



-----------------------------------*/

#hokenryou .title{
	margin:0 auto 30px auto;
	border-radius: 10px;
	text-align: center;
	padding:0 10px 10px 10px;
}

#hokenryou .title h4{
	font-size:3rem;
	color:#fff;
	font-weight: 800;
	display: inline-block;
	position: relative;
	line-height: 1;
	padding:15px 0;
}

#hokenryou .title h4::first-letter{
	letter-spacing: 1em;
}

#hokenryou .title h4 .ico{
	width:80px;
	line-height: 0;
	position: absolute;
	bottom:0;;
	left:-150px;
}

#hokenryou .title h4 .ico img{
	width: 100%;
	height: auto;
}


/*---------------------------

	レスポンシブ

---------------------------*/

@media screen and (min-width: 0) and (max-width: 430px){

	#hokenryou .title{
		width:100%;
	}
	#hokenryou .title h4{
		font-size:2.8rem;
		padding:8px 0;
	}
	
	#hokenryou .title h4 .ico{
		width:60px;
		left:-80px;
	}
}


/*--------------------------

	男性 題名

--------------------------*/

#men .title{
	background: #009DE4;
background: -webkit-linear-gradient(bottom, rgba(0, 157, 228, 1) 0%, rgba(0, 157, 228, 1) 100%);
background: -o-linear-gradient(bottom, rgba(0, 157, 228, 1) 0%, rgba(0, 157, 228, 1) 100%);
background: linear-gradient(to top, rgba(0, 157, 228, 1) 0%, rgba(0, 157, 228, 1) 100%);	
}

#men .title h4{
	text-shadow:2px 2px 0 #006DA2, -2px -2px 0 #006DA2,
              -2px 2px 0 #006DA2, 2px -2px 0 #006DA2,
              0px 2px 0 #006DA2,  0 -2px 0 #006DA2,
              -2px 0 0 #006DA2, 2px 0 0 #006DA2;
}

#women .title{
	background: #FD2481;
	background: -webkit-linear-gradient(bottom, rgba(253, 36, 129, 1) 0%, rgba(253, 60, 141, 1) 100%);
	background: -o-linear-gradient(bottom, rgba(253, 36, 129, 1) 0%, rgba(253, 60, 141, 1) 100%);
	background: linear-gradient(to top, rgba(253, 36, 129, 1) 0%, rgba(253, 60, 141, 1) 100%);
}

#women .title h4{
	text-shadow:2px 2px 0 #9D0144, -2px -2px 0 #9D0144,
              -2px 2px 0 #9D0144, 2px -2px 0 #9D0144,
              0px 2px 0 #9D0144,  0 -2px 0 #9D0144,
              -2px 0 0 #9D0144, 2px 0 0 #9D0144;
}


#hokenryou .selectitem{
	width:100%;
	background-color: #fff;
	border-radius:10px;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.6) inset;
	padding:30px 10px;
	display: flex;
	justify-content: center;
	gap:10px;
}

#hokenryou .selectitem table{
	border-collapse:separate;
	border-spacing:5px 10px;
}

#hokenryou .selectitem th{
	line-height: normal;
	padding:5px 15px;
	color:#fff;
	font-size:1.2rem;
	font-weight: 700;
	border-radius: 5px;
}

#men  .selectitem th{
	background-color: #009BE2;
}

#women  .selectitem th{
	background-color: #FD2481;
}

#hokenryou .selectitem td{
	text-align: left;
}

/*--------------------------


	年齢セレクト	


--------------------------*/

#hokenryou .yearchoise select{
	width:300px;
	 position: relative;
}

#hokenryou .yearchoise label{
	width:100%;
	max-width:300px;
    position: relative;
}

#hokenryou .yearchoise label::before,
#hokenryou .yearchoise label::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

#hokenryou .yearchoise label::before {
	    content: '';
	 right: 0;
    display: inline-block;
    width: 2.8em;
    height: 2.8em;
    border-radius: 0 5px 5px 0;
	background-color: rgba(0, 157, 228, 1) ;
    background: -webkit-linear-gradient(bottom, rgba(0,114,166,1.00) 0%, rgba(0, 157, 228, 1) 100%);
background: -o-linear-gradient(bottom, rgba(0, 157, 228, 1) 0%, rgba(0, 157, 228, 1) 100%);
background: linear-gradient(to top, rgba(0, 157, 228, 1) 0%, rgba(0, 157, 228, 1) 100%);
	z-index:1;
}

#hokenryou .yearchoise label::after {
	font-family: "Font Awesome 6 Free";
  	content: '\f0d7';
	font-weight: bold;
	font-size:20px;
	line-height: 1;
    position: absolute;
    top: 5px;
    right: 1em;
	color: #fff;
	z-index:2;
}

#hokenryou .yearchoise label select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    /*min-width: 230px;*/
    height: 2.8em;
    padding: 5px 10px;
    border: 2px solid #2589d0;
    border-radius: 5px;
    color: #333333;
    cursor: pointer;
	box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.6) inset;
	font-size:1.15rem;
	font-weight: 700;
}

#hokenryou .yearchoise label select:focus {
    outline: 1px solid #2589d0;
}


/*--------------------------


	ｐ免セレクト	


--------------------------*/

#hokenryou .p_men{
	text-align: left;
	font-size:1.15rem;
	font-weight: 700;
	 display: flex;
    flex-wrap: wrap;
    gap: 15px;
    border: none;
}

#hokenryou .p_men label {
    display: flex;
    align-items: center;
    gap: 0 .5em;
    position: relative;
    cursor: pointer;
}

#hokenryou .p_men label::before,
#hokenryou .p_men label::after {
    border-radius: 50%;
    content: '';
}

#hokenryou .p_men label::before {
    width: 18px;
    height: 18px;
    border: 2px solid #CECECE;
    box-sizing: border-box;
}

#hokenryou .p_men label::after {
    position: absolute;
    top: 50%;
    left: 9px;
    transform: translate(-50%, -50%);
    width: 9px;
    height: 9px;
    background-color: #dee5eb;
}

#hokenryou .p_men label:has(:checked)::after {
    background-color: #2589d0;
    animation: anim-radio-2 .3s linear;
}

@keyframes anim-radio-2 {
    0% {
        box-shadow: 0 0 0 1px transparent;
    }
    50% {
        box-shadow: 0 0 0 10px #2589d033;
    }
    100% {
        box-shadow: 0 0 0 10px transparent;
    }
}

#hokenryou .p_men input {
    display: none;
}

/*---------------------------

	レスポンシブ

---------------------------*/
@media screen and (min-width: 431px){
	#hokenryou .selectitem tr:last-child{
		display: none;
	}

}

@media screen and (min-width: 0) and (max-width: 430px){
	#hokenryou .selectitem{
		padding:5px;
	}
	#hokenryou .selectitem th,
	#hokenryou .selectitem td{
		display: block;
		width:100%;
	}
	
	#hokenryou .selectitem td{
		padding-top:15px;
	}
	
	#hokenryou .selectitem tr:last-child td{
		padding-bottom:0;
	}
	
	#hokenryou .p_men{
		justify-content: center;
	}
}


/*--------------------------------

	女性

-----------------------------------*/

#women .yearchoise label::before {
	background: #FD2481;
	background: -webkit-linear-gradient(bottom, rgba(253, 36, 129, 1) 0%, rgba(253, 60, 141, 1) 100%);
	background: -o-linear-gradient(bottom, rgba(253, 36, 129, 1) 0%, rgba(253, 60, 141, 1) 100%);
	background: linear-gradient(to top, rgba(253, 36, 129, 1) 0%, rgba(253, 60, 141, 1) 100%);
}

#women .yearchoise label select {
	border: 2px solid #FD2481;
}

#women .p_men label:has(:checked)::after {
    background-color: #FD2481;
}
/*--------------------------------


	内容案内

-----------------------------------*/

#hokenryou .about{
	width:min(100%,1100px);
	margin:0 auto;
	font-size:var(--ss_font);
}

#hokenryou .about strong{
	color:var(--red_color);
	font-weight: 700;
}

#hokenryou .about dl{
	margin-top:5px;
	display: inline-block;
}

#hokenryou .about dt{
	display: inline-block;
	background-color: #16B514;
	border-radius: 3px;
	color:#fff;
	font-weight: 700;
	padding:2px 40px 2px 5px;
	line-height: 1;
	margin-bottom:5px;
	clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 100%, 0% 100%);
}

#hokenryou .about dd{
	margin-left:0.5em;
}

/*--------------------------------



	テーブル設定



-----------------------------------*/
#hokenryou .wrap{
	margin-top:30px;
}

#hokenryou .wrap table{
	width:100%;
	border-collapse: separate;
	border-spacing:3px 0;
	table-layout: fixed;
	margin-bottom:0;
}

#hokenryou .wrap th,
#hokenryou .wrap td{
	padding:8px 10px;
	font-weight: 700;
	font-size:var(--nomal_font);
	line-height: normal;
	border-bottom:3px solid #fff;
}

#hokenryou .wrap thead th{
	border-radius: 5px 5px 0 0;
}

#hokenryou .wrap thead th p{
	font-size:var(--ss_font);
}

#hokenryou .wrap thead th.year,
#hokenryou .wrap tbody th{
	width:150px;
	text-align: center;
}

#hokenryou .wrap thead th,
#hokenryou .wrap thead td{
	text-align: center;
	color:#fff;
}

#hokenryou .wrap tbody td{
	text-align: right;
}

#hokenryou .wrap tbody td::after{
	content:"円";
}

/*---------------------------

	レスポンシブ

---------------------------*/

@media screen and (min-width: 0) and (max-width: 700px){
	#hokenryou .wrap thead th.year,
	#hokenryou .wrap tbody th{
		width:max(2vw,80px);
	}
}

/*--------------------------------


	各セル色


-----------------------------------*/

/*-----------------------

	p免なし

-----------------------*/

#hokenryou .wrap thead th.no_p{
	background-color: #118F0F;
}

#hokenryou .wrap thead td.no_p{
	background-color: #52AC6A;
}

#hokenryou .wrap tbody td.no_p{
	background-color: #E6FBED;
}


/*-----------------------

	p免あり

-----------------------*/

#hokenryou .wrap thead th.p{
	background-color: #8F5B3E;
}

#hokenryou .wrap thead td.p{
	background-color: #C1866E;
}

#hokenryou .wrap tbody td.p{
	background-color: #F9F2EC;
}

/*-----------------------

	男性

-----------------------*/

#men .wrap thead th.year{
	background-color: #009BE2;
	color:#fff;
}

#men .wrap tbody th{
	background-color: #D5F1FF;
}


/*-----------------------

	女性

-----------------------*/

#women .wrap thead th.year{
	background-color: #FD2481;
	color:#fff;
}

#women .wrap tbody th{
	background-color: #FFE3F0;
}



/*--------------------------------


	表示・非表示


-----------------------------------*/
@media screen{
	#hokenryou .wrap tbody tr:nth-child(n+11){
		/*visibility: collapse;*/
		display: none;
	}	
}

@media screen and (min-width: 0) and (max-width: 430px){
	#hokenryou .wrap .p{
		display: none;
	}
}

@media print {
	
}

/*--------------------------------



	その他



-----------------------------------*/

#hokenryou .date{
	font-size:0.8rem;
}

#hokenryou .chu{
	margin-top:15px;
	font-size:var(--ss_font);
}

#hokenryou .keiyaku{
	font-size:1.15rem;
	font-weight: 800;
	margin-top:20px;
	text-align: center;
}