@charset "utf-8";

/* ========== 基本設定・レイアウト ========== */

html{
	scroll-behavior: auto;
}

body {
	color: #40220f;
}
img {
	max-width: 100%;
	height: auto;
}
#mymainback {
	background: #a2dcfb;
	display: block;
	width: 100%;
	margin: 230px 0 0;
	padding: 30px 0 0;
	position: relative;
}
#sidebar1 {
	display: none;
}
.tpl_side1 #main {
	width: 100%;
}
.tpl_side1 #main_a {
	padding: 0;
}
.content_header_wrap,
.toc_wrapper {
	display: none !important;
}

#hyouka_area_box,
#section_footer,
#content_footer {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: calc(var(--content-width) - 340px);
	margin-left: auto;
	margin-right: auto;
}

#mymainback::before {
	content: '';
	position: absolute;
	top: -217px;
	left: calc(50% - 150px);
	width: 303px;
	height: 303px;
	background-color: #a2dcfb;
	background: url(/img/sites/kids/karuta/ik_upmain.png);
	background-repeat: no-repeat;
	background-size: 100%;
	z-index: 2;
	pointer-events: none;
}

#main_body div.detail_html {
	margin: 0;
}

/* 白背景エリア */
.contents_area {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 800px;
	max-width: 100%;
	background: #fff;
	border: 1px solid #a2dcfb;
	border-radius: 20px;
	margin: 50px auto 80px;
	padding: 30px 50px 10px;
}
.contents_area a:hover {
	opacity: 0.8;
}


/* ========== タイトル ========== */

#main_header {
	margin: 0 0 8px;
}
#main_header h1,
#download h2 {
	background: url(/img/sites/kids/karuta/ik_top_b_karuta2.png) transparent no-repeat center top / 56px 12px;
	border: none;
	border-radius: 0;
	margin: 0;
	padding: 22px 0;
	font-weight: bold;
	text-align: center;
}
#main_header h1 [class*="ttl_"],
#download h2 [class*="ttl_"] {
	display: block;
}
#download h2 {
	margin: 0;
}
#main_header h1 .ttl_sub,
#download .ttl_sub {
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
#main_header h1 .ttl_main,
#download .ttl_main {
	font-size: 4.2rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
#main_header h1::before {
	content: none;
}

@media screen and (max-width: 767px) {

	#main_header h1 .ttl_sub,
	#download .ttl_sub {
		font-size: 1.5rem;
	}
	#main_header h1 .ttl_main,
	#download .ttl_main {
		font-size: 3.2rem;
	}

}

/* リード文 */
p.top_txt,
.contents_area > p {
	margin: 0;
	text-align: center;
}


/* ==================================================
	かるた一覧
================================================== */

#main_body h2.content_ttl {
	background: none;
	padding: 0;
	text-align: center;
	width: 100%;
	width: 80%;
	margin: 0 auto 20px;
}
#main_body .page_karuta .content_ttl {
	background: none;
	padding: 0;
	text-align: center;
	width: 100%;
}
.page_karuta .card {
	-webkit-filter: drop-shadow(0 1px 3px rgb(0 0 0 / .12)) drop-shadow(0 1px 2px rgb(0 0 0 / .24));
	        filter: drop-shadow(0 1px 3px rgb(0 0 0 / .12)) drop-shadow(0 1px 2px rgb(0 0 0 / .24));
	display: block;
	margin: 0;
	width: calc((100% - 100px) / 3);
	padding: 0;
	border-radius: 6px;
	max-width: 300px;
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
	-webkit-transition: -webkit-filter .3s ease, -webkit-transform .3s ease;
	transition: -webkit-filter .3s ease, -webkit-transform .3s ease;
	-o-transition: filter .3s ease, transform .3s ease;
	transition: filter .3s ease, transform .3s ease;
	transition: filter .3s ease, transform .3s ease, -webkit-filter .3s ease, -webkit-transform .3s ease;
	will-change: filter, transform;
	z-index: 10;
}
.page_karuta .card:hover {
	-webkit-filter: drop-shadow(0 12px 30px rgb(0 0 0 / .23)) drop-shadow(0 10px 10px rgb(0 0 0 / .19));
	        filter: drop-shadow(0 12px 30px rgb(0 0 0 / .23)) drop-shadow(0 10px 10px rgb(0 0 0 / .19));
	-webkit-transform: translateY(-4px);
	    -ms-transform: translateY(-4px);
	        transform: translateY(-4px);
}
.page_karuta .card:hover,
.page_karuta .card:hover img {
	opacity: 1;
}

.page_karuta .wrapper {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	-ms-flex-line-pack: start;
	    align-content: flex-start;
	gap: 50px;
	margin: 50px 0 60px;
}

.page_karuta .card img {
	vertical-align: top;
}

@media screen and (max-width: 840px) {
	.page_karuta .contents_area {
		width: auto;
		margin-left: 20px;
		margin-right: 20px;
		padding: 30px 5.5vw 10px;
	}
	.page_karuta .wrapper {
		gap: 5.5vw;
	}
	.page_karuta .card_wrapper .card {
		width: calc((100% - 11vw) / 3);
	}
}

@media screen and (max-width: 640px) {
	.page_karuta .contents_area {
		padding-left: 6.25vw;
		padding-right: 6.25vw;
	}
	.page_karuta .wrapper {
		gap: 6.25vw;
	}
	.page_karuta .card_wrapper .card {
		width: calc((100% - 6.25vw) / 2);
	}
}
@media screen and (max-width: 450px) {
	.page_karuta .wrapper {
		gap: 35px;
		padding: 0 10px;
	}
	.page_karuta .card_wrapper .card {
		width: 100%;
		margin: 0 auto;
	}
}

/* ----- 読み札・絵札ダウンロード ----- */

.page_karuta .dlWrapper {
	position: relative;
	padding: 80px 0 60px;
	background-color: #FEFAC9;
}
.top_page h2 {
	position: relative;
	padding-top: 22px;
	text-align: center;
}

#download .wrapper {
	-webkit-box-pack: space-evenly;
	    -ms-flex-pack: space-evenly;
	        justify-content: space-evenly;
	margin: 10px 0 60px;
}

/* ダウンロードリンク */
.dl_button a {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: inline-block;
	background-color: #a2dcfb;
	border: 2px solid #40220f;
	border-radius: 60px;
	margin: 150px 0 0;
	padding: 15px 40px;
	min-width: 230px;
	font-size: 1.7rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	position: relative;
	-webkit-transition: background-color .3s ease;
	-o-transition: background-color .3s ease;
	transition: background-color .3s ease;
}
.dl_button a:hover,
.dl_button a:focus {
	background-color: #3fbde0;
}
.color_change .dl_button a::before {
	content: '';
	display: block;
	position: absolute;
	top: -150px;
	left: -10px;
	-webkit-transform: rotate(-20deg);
	    -ms-transform: rotate(-20deg);
	        transform: rotate(-20deg);
	background: #fff;
	width: 110px;
	height: 80px;
	border-radius: 100%;
	z-index: 0;
}

/* いっちイラスト */
.dl_button a .img {
	display: inline-block;
	background: url(/img/sites/kids/karuta/ik_dl1.png) no-repeat center bottom / contain;
	width: 200px;
	height: 160px;
	position: absolute;
	bottom: calc(100% - 8px);
	left: calc(50% - 120px);
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	-webkit-transition: -webkit-transform .3s ease-in-out;
	transition: -webkit-transform .3s ease-in-out;
	-o-transition: transform .3s ease-in-out;
	transition: transform .3s ease-in-out;
	transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;
}
.dl_button a:hover .img,
.dl_button a:focus .img {
	-webkit-transform: translateX(4px);
	    -ms-transform: translateX(4px);
	        transform: translateX(4px);
}
.dl_button .item2 a .img {
	background-image: url(/img/sites/kids/karuta/ik_dl2.png);
}


/* ==================================================
	マップ
================================================== */

.page_map {
	padding-bottom: 30px;
}
.page_map .contents_area {
	margin-bottom: 50px;
}


/* ==================================================
	解説
================================================== */

.page_explanation #about {
	margin: 0;
	padding: 0;
	text-align: center;
	max-width: 100%;
}
.page_explanation .karuta_item {
	padding: 80px 20px;
}
.page_explanation .karuta_item#i {
	padding-top: 40px;
}
.page_explanation > div:nth-of-type(2n-1) { background-color: #a2dcfb; }
.page_explanation > div:nth-of-type(2n)   { background-color: #d3edf9; }

.page_explanation .karuta_inner {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background: #fff;
	border-radius: 20px;
	display: grid;
	width: 800px;
	max-width: 100%;
	margin: 0 auto;
	padding: 30px 50px 40px;
	grid-template-columns: 140px 1fr;
	grid-template-rows: auto;
	grid-column-gap: 40px;
	grid-row-gap: 0px;
}
.page_explanation .karuta_img {
	grid-area: 1 / 1 / 2 / 2;
	padding: 20px 0;
}
.page_explanation .karuta_body {
	grid-area: 1 / 2 / 2 / 3; }
.page_explanation .karuta_body ruby > rt {
	font-size: .55em;
	padding-bottom: .1em;
}
.page_explanation .karuta_img img {
	display: block;
	width: 140px;
	height: auto;
	margin-inline: auto;
}

#main_body .page_explanation .karuta_ttl {
	background: none;
	border: none;
	border-bottom: 3px solid #a2dcfb;
	border-radius: 0;
	margin: 0 0 calc(24px - 0.135em);
	padding: 0 0 10px;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.27826087;
	letter-spacing: 0.01em;
}
.page_explanation .karuta_body p {
	margin: 1em 0 0;
	line-height: 2;
}
.page_explanation .karuta_body ruby {
	ruby-position: over;
	line-height: 2;
}
.page_explanation .karuta_meta {
	display: grid;
	width: 100%;
	grid-template-columns: 60px 1fr;
	grid-template-rows: auto;
	grid-column-gap: 22px;
	grid-row-gap: 0px;
	margin: 20px 0 0;
}
.page_explanation .karuta_body .karuta_meta img {
	grid-area: 1 / 1 / 2 / 2;
	width: 60px;
	height: auto;
	align-self: center;
}
.page_explanation .karuta_body .karuta_meta_txt {
	grid-area: 1 / 2 / 2 / 3;
	margin: 0;
}

@media screen and (max-width: 767px) {

	.page_explanation .karuta_inner,
	.page_explanation .karuta_meta {
		display: block;
		text-align: center;
	}
	.page_explanation .karuta_inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	.page_explanation .karuta_body .karuta_meta_txt {
		margin-top: 1em;
	}

}



/* ==================================================
追加対応 20260512
================================================== */

/* かるたページ用グローバルメニュー */
#mymainback {
	position: relative;
}

.karuta_gnav {
	width: 1100px;
	position: absolute;
	top: -325px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	z-index: 2;
	pointer-events: none;
	background: none !important; /* 背景色変更時対応 */
}
ul.karuta_gnav_list {
	margin: 0px;
	margin-left: 470px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 10px 30px;
	background: rgb(255 255 255 / 50%);
	border-radius: 20px;
	padding: 5px 10px 5px 0px;
}
ul.karuta_gnav_list li[class*="gl"] {
	pointer-events: auto;
	position: relative;
}
ul.karuta_gnav_list li[class*="gl"] a {
	color: inherit;
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
	position: relative;
}
ul.karuta_gnav_list li[class*="gl"] a:hover {
	text-decoration: underline;
}
ul.karuta_gnav_list li[class*="gl"] a:hover::before {
	content: '';
	display: block;
	width: 50px;
	height: 12px;
	background: url(/img/sites/kids/karuta/ik_top_b_karuta2.png) transparent no-repeat center top;
	background-size: contain;
	position: absolute;
	top: -12px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
ul.karuta_gnav_list li.gl04 a {
	text-transform: uppercase;
}

ul.karuta_gnav_list li[class*="gl"] summary {
	display: block;
	color: inherit;
	font-weight: bold;
	cursor: pointer;
	position: relative;
}
ul.karuta_gnav_list li[class*="gl"] summary:hover {
	text-decoration: underline;
}
ul.karuta_gnav_list li[class*="gl"] summary:hover::before,
ul.karuta_gnav_list li[class*="gl"] details[open] summary::before {
	content: '';
	display: block;
	width: 50px;
	height: 12px;
	background: url(/img/sites/kids/karuta/ik_top_b_karuta2.png) transparent no-repeat center top;
	background-size: contain;
	position: absolute;
	top: -12px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
ul.karuta_gnav_list li[class*="gl"] summary:focus-visible {
	/* 2. ブラウザ標準の枠線をリセット（ブラウザごとの差異をなくす） */
	outline: none !important;
	/* 3. 大きさ：3pxの太さを確保（2CSSピクセル以上の基準をクリア） */
	/* 4. コントラスト：白と黒の2重線にすることで、どんな背景色の上でも3:1を確保 */
	box-shadow: 0 0 0 2px #ffffff, 0 0 0 5px #005aad !important;
	/* 5. 要素から少し浮かせて視認性を高める */
	outline-offset: 2px !important;
	/* 6. 重なり順を一番上にして、枠線が隠れないようにする（2.4.11対策） */
	position: relative;
	z-index: 9999;
}

ul.karuta_gnav_list li[class*="gl"] details ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	position: absolute;
	top: 100%;
	right: 0px;
	width: 21rem;
	background: #d3edf9;
	border-radius: 20px;
}
ul.karuta_gnav_list li[class*="gl"] details ul li {
	border-bottom: 1px solid #a2dcfb;
}
ul.karuta_gnav_list li[class*="gl"] details ul li:last-child {
	border-bottom: none;
}
ul.karuta_gnav_list li[class*="gl"] details ul li a {
	display: block;
	padding: 15px 20px;
}
ul.karuta_gnav_list li[class*="gl"] details ul li a:hover::before {
	display: none;
}

/* かるたページ用グローバルメニュー（文字拡大時） */
.font_size_changed #mymainback {
	margin-top: 20rem;
}
.font_size_changed .karuta_gnav {
	top: -20rem;
}
.font_size_changed ul.karuta_gnav_list {
	margin-left: 0px;
}

/* 本文下の画像 */
#main_body div[class*="detail_image"] {
	background: #ffffff;
	margin: 0px;
	padding: 80px 0px 0px;
}
#main_body div[class*="detail_image"] img {
	width: 1100px;
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0px auto;
}

/* 本文下のロゴ */
.karuta_bottom_logo {
	background: #ffffff;
	padding: 120px 0px;
	text-align: center;
}
.karuta_bottom_logo img {
	width: 361px;
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0px auto;
}
.color_change .karuta_bottom_logo img {
	background: #ffffff !important;
}

/* 評価エリア・お問い合わせ・PDF */
#hyouka_area_box {
	width: auto;
	background: #ffffff;
	border-radius: 0px;
	margin: 0px;
	padding: 0px 0px 40px;
}
#hyouka_area_box .system_box {
	width: calc(var(--content-width) - 340px);
	margin: 0px auto;
	padding: 30px;
	background: #f6f6f6;
	border-radius: 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

#section_footer {
	width: auto;
	background: #ffffff;
	border-radius: 0px;
	margin: 0px;
	padding: 0px 0px 40px;
}
#section_footer #section_footer_ttl {
	width: calc(var(--content-width) - 340px);
	margin: 0px auto;
	padding: 30px 30px 0px;
	background: #e0f4fa;
	border-radius: 10px 10px 0px 0px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#main_body #section_footer h2 {
	margin: 0px;
}
#section_footer #section_footer_detail {
	width: calc(var(--content-width) - 340px);
	margin: 0px auto;
	padding: 30px 30px 30px;
	background: #e0f4fa;
	border-radius: 0px 0px 10px 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.pdf_download,
.wmplayer_download {
	width: auto;
	background: #ffffff;
	border-radius: 0px;
	margin: 0px;
	padding: 0px 0px 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

/* ダウンロード */
#download .wrapper {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

/* 解説 */
.page_explanation .karuta_inner {
	position: relative;
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-maru1.png);
	background-size: 300px;
	position: relative;
}
.page_explanation .karuta_item:nth-of-type(2n) .karuta_inner {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-maru2.png);
}

.color_change .page_explanation .karuta_inner {
	background-image: none !important;
}

.page_explanation #i .karuta_inner,
.page_explanation #ho .karuta_inner,
.page_explanation #ri .karuta_inner,
.page_explanation #ka .karuta_inner,
.page_explanation #so .karuta_inner,
.page_explanation #ra .karuta_inner,
.page_explanation #o .karuta_inner,
.page_explanation #ke .karuta_inner,
.page_explanation #te .karuta_inner,
.page_explanation #yu .karuta_inner,
.page_explanation #hi .karuta_inner {
	background-position: right -50px top 245px;
}
.page_explanation #ro .karuta_inner,
.page_explanation #he .karuta_inner,
.page_explanation #nu .karuta_inner,
.page_explanation #yo .karuta_inner,
.page_explanation #tu .karuta_inner,
.page_explanation #mu .karuta_inner,
.page_explanation #ku .karuta_inner,
.page_explanation #hu .karuta_inner,
.page_explanation #a .karuta_inner,
.page_explanation #me .karuta_inner,
.page_explanation #mo .karuta_inner {
	background-position: left -40px top -60px;
}
.page_explanation #ha .karuta_inner,
.page_explanation #to .karuta_inner,
.page_explanation #ru .karuta_inner,
.page_explanation #ta .karuta_inner,
.page_explanation #ne .karuta_inner,
.page_explanation #u .karuta_inner,
.page_explanation #ya .karuta_inner,
.page_explanation #ko .karuta_inner,
.page_explanation #sa .karuta_inner,
.page_explanation #mi .karuta_inner,
.page_explanation #se .karuta_inner {
	background-position: right 120px top 245px;
}
.page_explanation #ni .karuta_inner,
.page_explanation #ti .karuta_inner,
.page_explanation #wa .karuta_inner,
.page_explanation #re .karuta_inner,
.page_explanation #na .karuta_inner,
.page_explanation #no .karuta_inner,
.page_explanation #ma .karuta_inner,
.page_explanation #e .karuta_inner,
.page_explanation #ki .karuta_inner,
.page_explanation #si .karuta_inner,
.page_explanation #su .karuta_inner {
	background-position: left 40px top 105px;
}

.page_explanation .karuta_inner::before {
	content: '';
	display: block;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 100px;
	height: 110px;
	position: absolute;
	pointer-events: none;
}
.color_change .page_explanation .karuta_inner::before {
	display: none !important;
}

.page_explanation #i .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-i.png);
	top: -50px;
	right: -80px;
}
.page_explanation #ro .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ro.png);
	top: -105px;
	left: -120px;
}
.page_explanation #ha .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ha.png);
	top: -30px;
	right: 20px;
}
.page_explanation #ni .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ni.png);
	top: -95px;
	left: 400px;
}
.page_explanation #ho .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ho.png);
	top: -95px;
	right: -160px;
}
.page_explanation #he .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-he.png);
	top: -100px;
	left: 240px;
}
.page_explanation #to .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-to.png);
	top: -100px;
	right: 30px;
}
.page_explanation #ti .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ti.png);
	top: -100px;
	left: -65px;
}
.page_explanation #ri .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ri.png);
	width: 160px;
	top: -80px;
	right: -25px;
}
.page_explanation #nu .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-nu.png);
	top: -100px;
	left: 160px;
}
.page_explanation #ru .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ru.png);
	top: -110px;
	right: -40px;
}
.page_explanation #wa .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-wa.png);
	width: 160px;
	top: -130px;
	left: -100px;
}
.page_explanation #ka .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ka.png);
	top: -40px;
	right: -140px;
}
.page_explanation #yo .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-yo.png);
	top: -105px;
	left: 155px;
}
.page_explanation #ta .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ta.png);
	width: 120px;
	top: -120px;
	right: -60px;
}
.page_explanation #re .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-re.png);
	top: -100px;
	left: -90px;
}
.page_explanation #so .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-so.png);
	width: 130px;
	top: -60px;
	right: -90px;
}
.page_explanation #tu .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-tu.png);
	width: 260px;
	top: -95px;
	left: 60px;
}
.page_explanation #ne .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ne.png);
	top: -95px;
	right: 40px;
}
.page_explanation #na .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-na.png);
	width: 130px;
	top: -95px;
	left: 150px;
}
.page_explanation #ra .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ra.png);
	top: -110px;
	right: 110px;
}
.page_explanation #mu .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-mu.png);
	top: -100px;
	left: 60px;
}
.page_explanation #u .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-u.png);
	top: -100px;
	right: 100px;
}
.page_explanation #no .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-no.png);
	top: -100px;
	left: 65px;
}
.page_explanation #o .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-o.png);
	top: -100px;
	right: 100px;
}
.page_explanation #ku .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ku.png);
	width: 90px;
	top: -85px;
	left: 75px;
}
.page_explanation #ya .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ya.png);
	height: 100px;
	top: -90px;
	right: 80px;
}
.page_explanation #ma .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ma.png);
	width: 180px;
	height: 180px;
	top: -170px;
	left: 65px;
}
.page_explanation #ke .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ke.png);
	width: 90px;
	top: -85px;
	right: 125px;
}
.page_explanation #hu .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-hu.png);
	width: 140px;
	top: -85px;
	left: 75px;
}
.page_explanation #ko .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ko.png);
	width: 120px;
	top: -85px;
	right: 135px;
}
.page_explanation #e .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-e.png);
	width: 140px;
	height: 120px;
	top: -115px;
	left: 80px;
}
.page_explanation #te .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-te.png);
	top: -100px;
	right: 125px;
}
.page_explanation #a .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-a.png);
	width: 150px;
	top: -135px;
	left: 80px;
}
.page_explanation #sa .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-sa.png);
	width: 120px;
	height: 120px;
	top: -100px;
	right: 100px;
}
.page_explanation #ki .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-ki.png);
	height: 120px;
	top: -115px;
	left: 70px;
}
.page_explanation #yu .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-yu.png);
	width: 110px;
	top: -90px;
	right: 100px;
}
.page_explanation #me .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-me.png);
	height: 120px;
	top: -105px;
	left: 70px;
}
.page_explanation #mi .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-mi.png);
	top: -95px;
	right: 135px;
}
.page_explanation #si .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-si.png);
	width: 170px;
	top: -90px;
	left: 75px;
}
.page_explanation #hi .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-hi.png);
	width: 90px;
	top: -100px;
	right: 140px;
}
.page_explanation #mo .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-mo.png);
	width: 85px;
	top: -100px;
	left: 65px;
}
.page_explanation #se .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-se.png);
	width: 120px;
	top: -100px;
	right: 100px;
}
.page_explanation #su .karuta_inner::before {
	background-image: url(/img/sites/kids/karuta/explanation/karuta-bg-su.png);
	top: -130px;
	left: 80px;
}


/* スマートフォン */
@media screen and (max-width: 1100px) {

	#container {
		overflow: hidden;
	}

	#mymainback {
		margin-top: 300px;
	}
	#mymainback::before {
		background-size: 280px auto;
		background-position: center bottom;
		width: 300px;
		height: 225px;
	}

	.karuta_gnav {
		width: 100%;
		max-width: 600px;
		top: -290px;
	}
	ul.karuta_gnav_list {
		margin: 0px;
		padding: 5px 10px;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		line-height: 1.25;
	}
	ul.karuta_gnav_list li[class*="gl"] details ul {
		right: auto;
		left: 50%;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
		max-width: calc(100vw - 80px);
	}

	.page_explanation .karuta_inner {
		background-size: 200px;
	}

	.page_explanation #i .karuta_inner,
	.page_explanation #ho .karuta_inner,
	.page_explanation #ri .karuta_inner,
	.page_explanation #ka .karuta_inner,
	.page_explanation #so .karuta_inner,
	.page_explanation #ra .karuta_inner,
	.page_explanation #o .karuta_inner,
	.page_explanation #ke .karuta_inner,
	.page_explanation #te .karuta_inner,
	.page_explanation #yu .karuta_inner,
	.page_explanation #hi .karuta_inner {
		background-position: right -40px bottom -50px;
	}
	.page_explanation #ro .karuta_inner,
	.page_explanation #he .karuta_inner,
	.page_explanation #nu .karuta_inner,
	.page_explanation #yo .karuta_inner,
	.page_explanation #tu .karuta_inner,
	.page_explanation #mu .karuta_inner,
	.page_explanation #ku .karuta_inner,
	.page_explanation #hu .karuta_inner,
	.page_explanation #a .karuta_inner,
	.page_explanation #me .karuta_inner,
	.page_explanation #mo .karuta_inner {
		background-position: left -30px top -60px;
	}
	.page_explanation #ha .karuta_inner,
	.page_explanation #to .karuta_inner,
	.page_explanation #ru .karuta_inner,
	.page_explanation #ta .karuta_inner,
	.page_explanation #ne .karuta_inner,
	.page_explanation #u .karuta_inner,
	.page_explanation #ya .karuta_inner,
	.page_explanation #ko .karuta_inner,
	.page_explanation #sa .karuta_inner,
	.page_explanation #mi .karuta_inner,
	.page_explanation #se .karuta_inner {
		background-position: left 60% bottom -100px;
	}
	.page_explanation #ni .karuta_inner,
	.page_explanation #ti .karuta_inner,
	.page_explanation #wa .karuta_inner,
	.page_explanation #re .karuta_inner,
	.page_explanation #na .karuta_inner,
	.page_explanation #no .karuta_inner,
	.page_explanation #ma .karuta_inner,
	.page_explanation #e .karuta_inner,
	.page_explanation #ki .karuta_inner,
	.page_explanation #si .karuta_inner,
	.page_explanation #su .karuta_inner {
		background-position: left 10px top 150px;
	}

	.page_explanation .karuta_inner::before {
		width: 90px;
		height: 100px;
	}
	.page_explanation #i .karuta_inner::before {
		top: -40px;
		right: -10px;
	}
	.page_explanation #ro .karuta_inner::before {
		top: -80px;
		left: 0px;
	}
	.page_explanation #ha .karuta_inner::before {
		top: -40px;
		right: 10px;
	}
	.page_explanation #ni .karuta_inner::before {
		top: -80px;
		left: 0px;
	}
	.page_explanation #ho .karuta_inner::before {
		top: -80px;
		right: -10px;
	}
	.page_explanation #he .karuta_inner::before {
		top: -90px;
		left: 100px;
	}
	.page_explanation #to .karuta_inner::before {
		top: -90px;
		right: 20px;
	}
	.page_explanation #ti .karuta_inner::before {
		top: -110px;
		left: -30px;
	}
	.page_explanation #ri .karuta_inner::before {
		width: 130px;
		top: -75px;
		right: 0px;
	}
	.page_explanation #nu .karuta_inner::before {
		top: -95px;
		left: 80px;
	}
	.page_explanation #ru .karuta_inner::before {
		top: -99px;
		right: -15px;
	}
	.page_explanation #wa .karuta_inner::before {
		width: 150px;
		top: -130px;
		left: 0px;
	}
	.page_explanation #ka .karuta_inner::before {
		top: -70px;
		right: 0px;
	}
	.page_explanation #yo .karuta_inner::before {
		top: -95px;
		left: 50px;
	}
	.page_explanation #ta .karuta_inner::before {
		width: 90px;
		top: -120px;
		right: -15px;
	}
	.page_explanation #re .karuta_inner::before {
		top: -90px;
		left: 0px;
	}
	.page_explanation #so .karuta_inner::before {
		width: 110px;
		top: -85px;
		right: -20px;
	}
	.page_explanation #tu .karuta_inner::before {
		width: 230px;
		top: -85px;
		left: 40px;
	}
	.page_explanation #ne .karuta_inner::before {
		top: -90px;
		right: 30px;
	}
	.page_explanation #na .karuta_inner::before {
		width: 110px;
		top: -85px;
		left: 75px;
	}
	.page_explanation #ra .karuta_inner::before {
		top: -100px;
		right: 50px;
	}
	.page_explanation #mu .karuta_inner::before {
		top: -90px;
		left: 30px;
	}
	.page_explanation #u .karuta_inner::before {
		top: -90px;
		left: 25px;
	}
	.page_explanation #no .karuta_inner::before {
		top: -90px;
		left: 65px;
	}
	.page_explanation #o .karuta_inner::before {
		top: -90px;
		left: 100px;
	}
	.page_explanation #ku .karuta_inner::before {
		width: 80px;
		top: -70px;
		left: 25px;
	}
	.page_explanation #ya .karuta_inner::before {
		height: 90px;
		top: -85px;
		right: 15px;
	}
	.page_explanation #ma .karuta_inner::before {
		width: 150px;
		height: 150px;
		top: -140px;
		left: 10px;
	}
	.page_explanation #ke .karuta_inner::before {
		width: 80px;
		top: -80px;
		right: 30px;
	}
	.page_explanation #hu .karuta_inner::before {
		width: 120px;
		top: -70px;
		left: 50px;
	}
	.page_explanation #ko .karuta_inner::before {
		width: 110px;
		top: -80px;
		right: 15px;
	}
	.page_explanation #e .karuta_inner::before {
		width: 120px;
		height: 100px;
		top: -95px;
		left: 15px;
	}
	.page_explanation #te .karuta_inner::before {
		top: -90px;
		right: 40px;
	}
	.page_explanation #a .karuta_inner::before {
		width: 110px;
		top: -130px;
		left: 40px;
	}
	.page_explanation #sa .karuta_inner::before {
		width: 100px;
		height: 100px;
		top: -85px;
		right: 55px;
	}
	.page_explanation #ki .karuta_inner::before {
		height: 110px;
		top: -105px;
		left: 5px;
	}
	.page_explanation #yu .karuta_inner::before {
		width: 90px;
		top: -80px;
		right: 0px;
	}
	.page_explanation #me .karuta_inner::before {
		height: 90px;
		top: -80px;
		left: 40px;
	}
	.page_explanation #mi .karuta_inner::before {
		top: -85px;
		right: 40px;
	}
	.page_explanation #si .karuta_inner::before {
		width: 150px;
		top: -80px;
		left: 20px;
	}
	.page_explanation #hi .karuta_inner::before {
		width: 80px;
		top: -85px;
		right: 60px;
	}
	.page_explanation #mo .karuta_inner::before {
		width: 80px;
		top: -90px;
		left: 30px;
	}
	.page_explanation #se .karuta_inner::before {
		width: 100px;
		top: -90px;
		right: 40px;
	}
	.page_explanation #su .karuta_inner::before {
		top: -120px;
		left: 40px;
	}

	#main_body div[class*="detail_image"] {
		padding: 0px;
	}
	#main_body div[class*="detail_image"] img {
		width: 100%;
		margin: 0px;
	}

	.karuta_bottom_logo {
		padding: 80px 0px;
	}
	#main_body .karuta_bottom_logo img,
	#main_body div[class*="detail"] .karuta_bottom_logo img {
		width: calc(100vw - 160px);
		max-width: 361px;
	}

	.pdf_download,
	.wmplayer_download {
		display: block;
		padding: 0px 20px 40px;
	}

	#hyouka_area_box {
		padding: 0px 20px 40px;
	}
	#hyouka_area_box .system_box {
		width: auto;
		margin: 0px;
		padding: 20px;
	}

	#section_footer {
		padding: 0px 20px 40px;
	}
	#section_footer #section_footer_ttl {
		width: auto;
		margin: 0px;
		padding: 20px 20px 0px;
	}
	#section_footer #section_footer_detail {
		width: auto;
		margin: 0px;
		padding: 15px 20px 20px;
	}

}
/* スマートフォン ここまで */


/* ==================================================
追加対応 20260512 ここまで
================================================== */