.entry-content,
.entry-content * {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

ol {
	list-style-type: decimal;
}

figcaption {
	text-align: center;
}

.pos-center img {
	margin-left: auto;
	margin-right: auto;
}

.title-wrapper {
	display: grid;
	grid-template-areas:
		"o a a a"
		"t b b b"
		"x c c c";
	background: #F4F4F4;
}

.title-text {
	grid-area: t;
	display: inline;
	font-size: 150%;
	color: #2A4376;
	font-weight: bold;
}

.title-bar1 {
	grid-area: a;
	width: 70%;
	height: 32px;
	background-color: #90BFC0;
	justify-self: right;
}
.title-bar2 {
	grid-area: b;
	width: 85%;
	height: 24px;
	background-color: #4A96A4;
	justify-self: right;
	margin: 8px 0 8px 0;
}
.title-bar3 {
	grid-area: c;
	width: 100%;
	height: 16px;
	background-color: #1A6F87;
	justify-self: right;
}

.page-show {
	display: grid;
	grid-template-areas:
		"m m m m m m o o o o o s";
}

.section-width {
	margin-bottom: 32px;
}

#page-main h2 {
	padding: 16px 8px;
	border-radius: 4px;
	background: #2a4376;
	color: white;
	font-size: 130%;
	max-width: 1080px;
}

.list-with-title div {
	display: inline-block;
	margin-bottom: 32px;
	font-size: 150%;
}

.list-with-title .title {
	padding: 4px;
	border-radius: 4px;
	border: 2px solid;
	border-color: #2a4376;
	color: #2a4376;
	margin-bottom: 32px;
}

.list-with-title .content {
	padding: 4px;
	color: #2a4376;
	margin-bottom: 32px;
	margin-right: 32px;
}
.section-width-adv {
  width: 90%;
  margin: 0 auto;
  max-width: 1080px;
  box-sizing: border-box;
}

.smart-table {
	color: #2A4376;
}

.smart-table .tbody, .smart-table .thead {
	max-width: 1080px;
	display: flex;
	justify-content: space-between;
	padding: 16px;
}

.smart-table .coloured {
	background: #D0E0E8;
}

.smart-table .tbody div, .smart-table .thead div {
	width: 33.3%;
}

.smart-table .tbody .title {
	display: none;
}

.smart-table .thead > div {
	padding-left: 24px;
}

.smart-table .tbody > div {
	padding: 24px;
}

.smart-table .tbody .middle {
	border-left: 4px solid #D0E0E8;
	border-right: 4px solid #D0E0E8;
}

.smart-table .tbody.coloured .middle {
	border-left: 4px solid white;
	border-right: 4px solid white;
}

#page-side {
	color: #2A4376;
}

#page-side .side-title{
	background: #D0E0E8;
	padding: 16px;
	max-width: 1080px;
	margin-top: 32px;
}

#page-side ul {
	list-style: inside;
	padding-left: 16px;
}

#page-side ul li {
	padding: 6px;
}

#page-main h3 {
	margin: 32px 0;
	color: #2A4376;
}

#page-main h4 {
	color: #2A4376;
}

#page-main p {
	margin-left: 1em;
	color: #2A4376;
	margin-top: 1em;
	margin-bottom: 1em;
}

#page-main img {
	height: auto;
}

#page-main h3::before {
	content: "■";
	color: #2A4376;
}

#page-main a {
	text-decoration: underline;
	color: #2A4376;
}

#page-main .smart-table-yoko {
	border-radius: 4px;
	border-collapse: collapse;
	border: 2px solid #2A4376;
	color: #2A4376;
}

#page-main .smart-table-yoko .title {
	display: inline-block;
	width: 64px;
	color: white;
	background: #2A4376;
	padding: 16px;
}

#page-main .smart-table-yoko .content {
	display: inline-block;
	width: calc(100% - 128px);
	padding: 16px;
}

#page-main .smart-table-yoko .title.with-border {
	border-top: 2px solid white;
	border-bottom: 2px solid white;
}

#page-main .smart-table-yoko .content.with-border {
	border-top: 2px solid #2A4376;
	border-bottom: 2px solid #2A4376;
}


#page-main .smart-table-1 table{
	border-radius: 4px;
	border-collapse: collapse;
	border: 2px solid #2A4376;
	color: #2A4376;
}

#page-main .smart-table-1 table td {
	padding: 16px;
}

#page-main .smart-table-1 table td:first-child {
	color: white;
	background: #2A4376;
}

#page-main .panel {
	display: flex;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
  justify-content: space-around;
	gap: 64px 32px;
}

#page-main .panel .content {
	width: 300px;
	height: 300px;
	font-weight: bold;
	display: grid;
	grid-template-columns: 90px 120px 90px;
	grid-template-rows: 90px 120px 90px;
	align-items: center;
	background: #F4F4F4;
	color: #2A4376;
}

#page-main .panel .content.wide {
	width: 400px;
	height: 300px;
	font-weight: bold;
	display: grid;
	grid-template-columns: 90px 220px 90px;
	grid-template-rows: 90px 120px 90px;
}

#page-main .panel .content.wide img {
	grid-row: 3 / 4;
	grid-column: 3 / 4;
	justify-self: left;
	margin-left: -16px;
}

#page-main .panel .content span {
	grid-row: 2 / 3;
	grid-column: 1 / 4;
	justify-self: center;
	font-size: 180%;
	font-weight: bold;
}

#page-main .panel .content img {
	grid-row: 3 / 4;
	grid-column: 2 / 4;
	justify-self: center;
	margin-left: 64px;
}

#page-main .panel .content.coloured {
	color: white;
	background: #2A4376;
}

#page-main .panel .content.coloured-swap {
	color: white;
	background: #2A4376;
}

#page-main .panel .content.coloured-swap .blue {
	display: none;
}

#page-main .panel .content.white-swap {
	color: #2A4376;
	background: #F4F4F4;
}

#page-main .panel .content.white-swap .white{
	display: none;
}

#page-main .panel .content.coloured-swap {
	color: white;
	background: #2A4376;
}

#page-main table{
	margin-left: 1em;
	border: solid 1px;
	border-collapse:  collapse;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: calc(100% - 1em);
	color: #2A4376;
}

#page-main table td {
	border: solid 1px;
	padding: 4px;;
}

#page-main ul, #page-main ol {
	margin-left: 2em;
	color: #2A4376;
	margin-top: 1em;
	margin-bottom: 1em;
}

#page-main ul li, #page-main ol li {
	margin-top: 1em;
}

#page-main .simple table {
	width: auto;
}

#page-main .simple table tbody tr:first-child{
	background: #2A4376;
	color: white;
	font-weight: bold;
}

#page-main .simple table td {
	padding: 8px;
}

.show-pc a img{
	max-width: 400px;
}

.show-sp {
	display: none;
}

#page-main .semi-table table  {
	border: none 0;
	max-width: 1080px;
}

#page-main .semi-table table td  {
	border: none 0;
	padding: 0 16px 46px 16px;
}

#page-main .semi-table table td:before {
  content: '';
  position: relative;
  left: -5%;
	bottom: -24px;
	display: inline-block;
  width: 4px;
  height: 64px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: white;
  border-radius: 0px;
}

#page-main .semi-table table tr:nth-child(odd) td:before {
  background-color: #D0E0E8;
}

#page-main .semi-table table tr:first-child td:before {
	display: none;
}

#page-main .semi-table table tr:first-child td {
	padding: 16px;
}

#page-main .semi-table table td:first-child:before {
	display: none;
}

#page-main .semi-table tr:nth-child(even) td {
	background: #D0E0E8;
}

#page-main .semi-table strong {
	display: none;
}

#page-main table.news-table {
	border: none 0;
}

#page-main table.news-table tr:nth-child(odd){
	background: #D0E0E8;
}

#page-main table.news-table td {
	border: none 0;
	padding: 16px;
}

.padding-solver {
	padding: 0 256px !important;
}

@media screen and (min-width: 1080px) {
	.section-width-adv {
		width: auto;
		max-width: 100%;
		margin-right: 0;
		margin-left: calc((100vw - 1080px) / 2);
	}
}

@media screen and (max-width: 1080px) {
	#page-main .panel div.padding-solver {
		padding: 0 256px !important;
	}
}
@media screen and (max-width: 900px) {
	#page-main .panel div.padding-solver {
		padding: 0 128px !important;
	}
}
@media screen and (max-width: 650px) {
	#page-main .panel div.padding-solver {
		padding: 0 32px !important;
	}
}
@media screen and (max-width: 400px) {
	#page-main .panel div.padding-solver {
		padding: 0 0px !important;
		font-size: 80%;
	}
}

@media screen and (max-width: 1560px) {
	.page-show {
		max-width: 1080px;
		display: grid;
		grid-template-areas:
			"m"
			"s";
	}
	.sidebar-kenshukai {
		display: flex;
	}
	.sidebar-kenshukai > div{
		width: 100%;
	}
	#page-side .side-title{
		padding: 16px 8px;
		border-radius: 4px;
		background: #2a4376;
		color: white;
		font-size: 120%;
		font-weight: bold;
		max-width: 1080px;
		margin: 8px;
	}
}

@media screen and (max-width: 1080px) {
	
	.sp-no-margin {
		padding: 0 !important;
		margin:  0 !important;
	}
	
	.sp-no-margin div{
		padding: 0 !important;
		margin:  0 !important;
	}
	
	#page-main .semi-table table  {
		border: none 0;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
	}
	
	#page-main .semi-table a {
		display: flex;
		justify-content: space-between;
	}

	#page-main .semi-table table td  {
		border: none 0;
		padding: 32px;
		display: flex;
	}
	
	
	#page-main .semi-table table td:before {
		display: none;
	}

	#page-main .semi-table table td strong:before {
		content: '';
		position: relative;
		left: 47vw;
		bottom: 32px;
		display: inline-block;
		width: 90vw;
		height: 2px;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		background-color: white;
		border-radius: 0px;
	}

	#page-main .semi-table table tr:nth-child(odd) strong:before {
		background-color: #D0E0E8;
	}

	#page-main .semi-table table tr:first-child td:before {
		display: none;
	}

	#page-main .semi-table table tr:first-child td {
		padding: 16px;
	}

	#page-main .semi-table table td:first-child strong:before {
		display: none;
	}
	
	#page-main .semi-table table td:first-child strong {
		padding-top: 16px;
		padding-left: 4px;
	}
	
	#page-main .semi-table tr:first-child {
		display: none;
	}

	#page-main .semi-table tr:nth-child(even) td {
		background: #D0E0E8;
	}

	#page-main .semi-table strong {
		display: inline-block;
		width: 128px;
		margin-top: -16px;
	}
	
	.section-width-adv {
		width: 100%;
		margin: 0 0;
		max-width: 1080px;
		box-sizing: border-box;
	}
	.title-wrapper {
		padding-left: 5%;
		display: grid;
		grid-template-areas:
			"t t t a"
			"o o b b"
			"x c c c"
		}
		#page-main h2 {
			padding: 16px 5%;
			border-radius: 0px;
			background: #2a4376;
			color: white;
			font-size: 130%;
			max-width: 1080px;
		}
		#page-main div {
			padding-left: 5%;
		}
		.list-with-title div {
			padding-left: 0px !important;
		}
	.smart-table {
		padding-left: 0 !important;
	}
		.smart-table .tbody, .smart-table .thead {
			flex-direction: column;
		}
		.smart-table .tbody div, .smart-table .thead div {
			width: 90%;
		}
		.smart-table .thead {
			display: none;
		}
		.smart-table .tbody .middle {
			border-top: 2px solid #D0E0E8;
			border-bottom: 2px solid #D0E0E8;
			border-left: 0;
			border-right: 0;
		}

		.smart-table .tbody.coloured .middle {
			border-top: 2px solid white;
			border-bottom: 2px solid white;
			border-left: 0;
			border-right: 0;
		}
		.smart-table .tbody .title {
			display: inline;
			margin-right: 64px;
		}
		#page-main .smart-table-yoko, #page-main .smart-table-yoko div {
			padding-left: 0px !important;
		}
		#page-main .smart-table-yoko .title, #page-main .smart-table-yoko .content {
			padding-left: 16px !important;
			display: block;
			width: auto;
		}
		#page-main .smart-table-yoko, #page-main p, #page-main h3 {
			margin-left: 5%;
			margin-right: 5%;
		}
		#page-main .smart-table-yoko .title.with-border {
			border-top: 0;
			border-bottom: 0;
		}

		#page-main .smart-table-yoko .content.with-border {
			border-top: 0;
			border-bottom: 0;
		}
	
		#page-main .panel, #page-main .panel div {
			padding-left: 0px !important;
		}
		#page-main table{
			width: auto;
			overflow-x: scroll;
		}

		#page-main table td {
			border: solid 1px;
			padding: 4px;;
		}
	}


@media screen and (max-width: 1000px) {
	.show-pc {
		display: none;
	}
	.show-sp {
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
  	align-items: center;
	}
	.show-sp a{
		max-width: 100%;
	}
	.show-sp a img{
		max-width: 100%;
	}
}

@media screen and (max-width: 700px) {
	.list-with-title div {
		font-size: 100%;
	}
}

@media screen and (max-width: 941px) {
	
	#page-main .panel .content.coloured-swap .blue {
		display: block;
	}

	#page-main .panel .content.coloured-swap .white {
		display: none;
	}

	#page-main .panel .content.white-swap {
		color: white;
		background: #2A4376;
	}

	#page-main .panel .content.white-swap .blue{
		display: none;
	}

	#page-main .panel .content.white-swap .white{
		display: block;
	}

	#page-main .panel .content.coloured-swap {
		color: #2A4376;
		background: #F4F4F4;
	}
}

@media screen and (max-width: 450px) {
	#page-main .panel .content.wide{
		width: 300px;
		grid-template-columns: 90px 120px 90px;
		grid-template-rows: 90px 120px 90px;
		margin-left; 64px;
		grid-column: 2 / 4;
	}
	.list-with-title .title, .list-with-title .content {
		display: inline-block;
		margin-bottom: 0;
	}
	.list-with-title div {
		margin-bottom: 8px;
	}
}
