@charset "utf-8";

/*
  File Name   : style.css
  Description : Write content styles
*/

/* default
============================================================ */

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

html {
	scroll-behavior: smooth;
	font-size: 100%;
}

body {}

p {
	margin: 0;
	padding: 0;
	font-style: normal;
	font-weight: normal;
}

h1,
h2,
h3,
h4 {
	line-height: 1;
	margin: 0;
}

/*** image ***/
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/*** hypertext ***/
a {
	color: #000;
	text-decoration: none;
	outline: none;
}

a:link {
	color: #000;
}

a:hover,
a:active,
a:focus {
	text-decoration: underline;
	opacity: 0.8;
}

a:visited {
	color: #000;
	opacity: 0.8;
}

/*** list ***/
dl,
dt,
dd {
	margin: 0;
	padding: 0;
	font-size: inherit;
	font-style: normal;
	font-weight: normal;
}

li,
ol,
ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: inherit;
	font-style: normal;
	font-weight: normal;
}

.new {
	margin-left: .75em;
	padding: 3px 5px 2px;
	border-radius: 2px;
	background-color: #d00;
	color: #fff;
	font-size: 75%;
	font-weight: normal;
	text-transform: uppercase;
}

.none_text {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

@media screen and (max-width: 811px) {
	html {
		font-size: 87.5%;
	}
}

/* 表示の切り替え
============================================================ */

.pc_none {
	display: none;
}

.tb_none {
	display: block;
}

.sp_none {
	display: block;
}

@media screen and (max-width: 811px) {
	.pc_none {
		display: block;
	}

	.tb_none {
		display: none;
	}
}

@media screen and (max-width: 560px) {
	.sp_none {
		display: none;
	}
}


/* .common
================================================== */

.com-title {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.com-title .com-title-en {
	margin: 0 0 0.6rem 0;
	font-size: 115%;
	font-weight: bold;
}

.com-title .com-title-ja {
	font-size: 85%;
	font-weight: bold;
}

.com-readmore,
.com-return-icon {
	display: flex;
	justify-content: flex-end;
}

.com-readmore a,
.com-return-icon a {
	padding: 0.75rem 1.2rem 0.75rem 2rem;
	background-color: #000;
	color: #fff;
	font-size: 80%;
	position: relative;
}

.com-readmore img,
.com-return-icon img {
	position: absolute;
	top: 16px;
	left: 1rem;
	margin: 0 0.25rem 0 0;
	width: auto;
	height: 0.625rem;
}

@media screen and (max-width: 811px) {
	.com-readmore {
		justify-content: center;
	}
}

/* .top-category_member
============================================================ */

.home .lay-content {
	background: none;
}

.home .lay-main {
	max-width: 100%;
	padding: 0;
}

.home .contentListWrapper {
	display: none;
}

/* ページトップボタン
================================================== */

.to-pagetop {
	position: fixed;
	z-index: 3;
	bottom: 20px;
	right: 20px;
}

.to-pagetop img {
	width: 50px;
}

@media screen and (max-width: 811px) {
	.to-pagetop {
		right: 0;
	}

	.to-pagetop img {
		width: 48px;
	}
}

/* .lay-header
================================================== */

.lay-header {
	position: relative;
}

.lay-header .lay-header-inner {
	display: flex;
	justify-content: space-between;
}

.lay-header .header-logo {
	font-size: 0;
	padding: 0.5rem;
}

.lay-header .header-logo img {
	width: 150px;
}

.lay-header .lay-header-point {
	background-color: #ffcc17;
	display: flex;
	align-items: center;
	padding: 10px;
}

.lay-header .point-text {
	font-size: 87.5%;
	line-height: 1.5;
	margin: 0 1rem 0;
}

.lay-header .point-display {
	background: #fff;
	padding: 0.25rem 0.5rem 0.25rem 1rem;
	border-top: 3px solid #000;
	border-bottom: 3px solid #000;
	font-size: 125%;
	font-weight: bold;
	text-align: right;
	width: 10rem;
}

.lay-header .header-search-button {
	cursor: pointer;
}

.lay-header .header-search-button img {
	height: 40px;
	width: 50px;
	padding: 0 0 0 10px;
}

.lay-header-search-form {
	display: none;
	position: absolute;
	right: 0;
	z-index: 100;
}

.header-search-form-wrap {
	background-color: #fff;
	display: flex;
	align-items: center;
	padding: 11.5px 15px;
}

.header-search-form-wrap form {
	display: flex;
	align-items: center;
	background-color: #fff;
}

.header-search-form-wrap form input:first-child {
	border: 1px solid #000;
	border-radius: 0;
	height: 25px;
}

.header-search-submit {
	background-color: #000;
	color: #fff;
	border-radius: 0;
	border: 1px solid #000;
	font-size: 75%;
	height: 25px;
	margin: 0 0 0 10px;
}

.header-search-close-button {
	background-color: #fff;
	border-radius: 0;
	border: 1px solid #000;
	margin: 0 0 0 10px;
	font-size: 75%;
	height: 25px;
}

.header-menuBtns {
	display: flex;
	justify-content: flex-end;
	flex-wrap: nowrap;
	height: 100%;
	margin: 0 0 0 10px;
	gap: 0 4%;
}
.header-menuBtn {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	align-content: flex-end;
	width: 46px;
	height: 100%;
	padding: 4%;
	color: #fff;
	background-color: #000;
}
.header-menuBtn > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.lay-header-nav-wrap {
	position: relative;
	width: 100%;
	background: #000;
	padding: 10px;
	z-index: 10;
}

.lay-header-nav {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

.lay-header-nav ul {
	display: flex;
	justify-content: space-around;
}

.lay-header-nav ul li {
	text-align: center;
	width: 100%;
	position: relative;
}

.lay-header-nav ul li a {
	color: #fff;
	width: 100%;
	display: block;
	border-left: 1px solid #fff;
	padding: 5px 0;
}

.lay-header-nav ul li.header-nav-last-item {
	border-right: 1px solid #fff;
}

.lay-header-nav ul li a:hover {
	text-decoration: none;
}

.lay-header-nav ul.js-header-nav-contents {
	display: none;
	position: absolute;
}

.lay-header-nav .header-nav-contents {
	width: 100%;
	background-color: #000;
}

.lay-header-nav .header-nav-contents li {}

.lay-header-nav .header-nav-contents li a {
	padding: 15px 0;
	margin: 0 auto;
	width: 85%;
	text-align: left;
	border: none;
	border-bottom: 1px solid #fff;
}

.lay-header-nav .header-nav-contents li:last-child a {
	border: none;
}

@media screen and (max-width: 1000px) {

	.lay-header-nav ul li a {
		font-size: 80%;
	}

}

@media screen and (max-width: 811px) {
	.lay-header .header-logo {
		padding: 0.5rem 0.25rem 0.5rem 0.75rem;
	}

	.lay-header .header-logo img {
		width: 62px;
	}

	.lay-header .lay-header-point {
		background: none;
		padding: 1rem 4rem 1rem 1rem;
	}

	.lay-header .point-text {
		margin: 0 10px 0 0;
	}

	.lay-header .point-display {
		padding: 3px 5px 3px 0;
		font-size: 100%;
		width: 100px;
	}

	.lay-header .lay-header-point {
		padding: 0 45px 0 0;
	}

	.lay-header-search-form.open {
		display: none !important;
	}
	.header-menuBtns {
		gap: 0 1px;
	}
	.header-menuBtns .header-menuBtn {
		width: 44px;
		min-height: 48px;
	}
}

@media screen and (max-width: 560px) {
	.lay-header .point-text {
		margin: 0 5px 0 0;
	}

	.lay-header .point-display {
		font-size: 80%;
		width: 80px;
	}

	.lay-header .point-text {
		font-size: 2.5vw;
	}

	.lay-header .point-display {
		width: 70px;
	}


}

/* .lay-mainvisual
================================================== */

.lay-mainvisual {
	background-color: #ffcc17;
	padding: 5.3rem 0;
}

.lay-mainvisual .lay-mainvisual-inner {
	display: flex;
	align-items: center;
	max-width: 1140px;
	padding: 0 1.25rem;
	margin: 0 auto;
}

.lay-mainvisual .character {
	width: 20%;
}

.lay-mainvisual .character img {
	height: 255px;
	width: auto;
}

.lay-mainvisual .mainvisual-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 60%;
	padding: 0 1.5rem;
}

.lay-mainvisual .mainvisual-sub-title {
	margin: 0 0 1rem 0;
	text-align: center;
	width: 100%;
	max-width: 400px;
}

.lay-mainvisual .mainvisual-title {
	background: #fff;
	padding: 1rem 2rem;
	margin: 0 0 2rem 0;
	border-top: 3px solid #000;
	border-bottom: 3px solid #000;
	width: 100%;
	height: 100%;
	max-width: 35rem;
}

.lay-mainvisual .mainvisual-text {
	font-size: 110%;
	letter-spacing: 0.1rem;
	line-height: 1.75;
	margin: 0 2rem 3rem;
	font-weight: bold;
}

.lay-mainvisual .mainvisual-text span {
	display: block;
	height: 0.5rem;
}

.lay-mainvisual .mainvisual-link {
	display: flex;
	justify-content: space-around;
	width: 100%;
}

.lay-mainvisual .mainvisual-link-button {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	width: 42%;
	min-width: 200px;
	height: 5.5rem;
	margin: 0.5rem;
	box-shadow: 5px 5px 0 0 #ccc;
	font-size: 125%;
	font-weight: bold;
}

.lay-mainvisual .mainvisual-link img {
	width: 1.1325rem;
	height: 1.1325rem;
	margin: 0 1.25rem 0 0;
}

.lay-mainvisual .retirement-link-wrap {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: center;
	width: 100%;
	max-width: 1100px;
	margin: 3rem auto 0;
	padding: 0 20px;
}

.lay-mainvisual .retirement-link:not(:last-child) {
	margin-right: 40px;
}

@media screen and (max-width: 1000px) {
	.lay-mainvisual .character img {
		height: 200px;
	}
}

@media screen and (max-width: 811px) {

	.lay-mainvisual .mainvisual-content {
		width: 90%;
		margin: 0 auto;
	}

	.lay-mainvisual .character {
		display: none;
	}

	.lay-mainvisual .character-center {
		display: flex;
		justify-content: center;
		margin: 0 0 3rem 0;
	}

	.character-center img {
		height: 150px;
	}

	.lay-mainvisual .retirement-link-wrap {
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}

	.lay-mainvisual .retirement-link {
		margin: 1.5rem 0 0;
	}

	.lay-mainvisual .retirement-link:first-child {
		margin: 0;
	}
}

@media screen and (max-width: 560px) {
	.lay-mainvisual {
		padding: 3rem 0;
	}

	.lay-mainvisual .mainvisual-content {
		width: 95%;
		padding: 0;
	}

	.lay-mainvisual .mainvisual-text {
		font-size: 100%;
	}

	.lay-mainvisual .character-center {
		margin: 0 0 1.5rem 0;
	}

	.lay-mainvisual .character-center img {
		height: 125px;

	}

	.lay-mainvisual .mainvisual-link img {
		width: 1rem;
		height: 1rem;
		margin: 0 0.75rem 0 0;
	}

	.lay-mainvisual .mainvisual-link-button {
		font-size: 100%;
		min-width: inherit;
		height: 3.5rem;
	}
}

/* .lay-news
================================================== */

.lay-news {
	padding: 5.625rem 0;
}

.lay-news .lay-news-inner {
	margin: 0 auto;
	padding: 0 1.25rem;
	max-width: 780px;
}

.lay-news .com-title {
	margin: 0 0 3rem 0;
}

.lay-news .news-index {
	margin: 0 0 2rem 0;
}

.lay-news .news-index ul li {
	padding: 0 1rem 1rem;
	margin: 0 0 1rem 0;
	border-bottom: 1px solid #dddddd;
	display: flex;
}

.lay-news .news-index ul li span {}

.lay-news .news-index ul li .date {
	margin: 0 2rem 0 0;
	color: #808080;
}

.lay-news .news-index ul li .title {
	position: relative;
	padding-left: 0.3rem;
}

.lay-news .news-index ul li .title::before {
	content: '';
	position: absolute;
	top: 0.1rem;
	left: -1rem;
	background: url(/theme/sn-default/images/top/news_icon.png);
	background-size: contain;
	background-repeat: no-repeat;
	height: 0.9rem;
	width: 0.9rem;
}

.lay-news .news-index ul li .new {
	display: inline-table;
}

@media screen and (max-width: 811px) {
	.lay-news {
		padding: 3rem 0;
	}

	.lay-news .com-title {
		margin: 0 0 3rem 0;
	}

	.lay-news .news-index {
		width: 90%;
		margin: 0 auto;
	}

	.lay-news .news-index ul li {
		flex-wrap: wrap;
	}

	.lay-news .news-index ul li .date {
		order: 1;
		margin: 0;
	}

	.lay-news .news-index ul li .new {
		order: 2;
		top: 0;
	}

	.lay-news .news-index ul li .title {
		width: 100%;
		order: 3;
		padding: 1rem 0 0 1rem;
	}

	.lay-news .news-index ul li .title::before {
		top: 1.05rem;
		left: 0;
	}

	.lay-news .com-readmore {
		margin: 3rem 0 0 0;
	}
}

@media screen and (max-width: 560px) {
	.lay-news .news-index {
		width: 95%;
		margin: 0 auto;
	}
}


/* .lay-top-diveo
================================================== */

.lay-top-video {
	background-color: #ffcc17;
	padding: 0 0 100px 0;
}

.lay-top-video .lay-top-video-title {
	padding: 55px 0;
	display: flex;
	justify-content: center;
	margin: 0 auto;
}

.lay-top-video .com-title {
	background: #fff;
	padding: 1rem;
	border-top: 3px solid #000;
	border-bottom: 3px solid #000;
}

.lay-top-video .lay-top-video-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
}

.lay-top-video .top-video-content {
	background-color: #fff;
	padding: 4.375rem 0;
}

.lay-top-video .top-video-content-wrap {
	width: 90%;
	margin: auto;
}

.lay-top-video .top-video-content-wrap + .top-video-content-wrap {
	margin-top: 3rem;
}


.lay-top-video .video-content-title {
	display: flex;
	justify-content: center;
	margin: 0 0 4.375rem 0;
}

.lay-top-video .video-content-title h3 {
	display: inline-block;
	border-top: 3px solid #000;
	border-bottom: 3px solid #000;
	text-align: center;
}

.lay-top-video .video-content-title h3 a {
	padding: 1rem;
	display: block;
}

.lay-top-video .video-content-title img {
	height: 1.25rem;
	margin: 0 0.5rem 0 0;
}

.lay-top-video .video-index ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 2rem 0;
}

.lay-top-video .video-index ul li {
	position: relative;
	width: 30.333%;
}

.lay-top-video .video-index ul li:nth-child(3n+1) {
	margin: 0 3% 5% 0;
}

.lay-top-video .video-index ul li:nth-child(3n+2) {
	margin: 0 1.5% 0;
}

.lay-top-video .video-index ul li:nth-child(3n) {
	margin: 0 0 5% 3%;
}

.lay-top-video .video-index ul li .new {
	position: absolute;
	top: 0;
	left: 0;
	padding: 3px 10px 2px;
	margin: 0;
}

.lay-top-video .video-index ul li .thumb img {
	width: 100%;
	height: auto;
}

.lay-top-video .video-index ul li .title {
	display: block;
	position: relative;
	padding: 1rem 1rem 1rem 1.5rem;
	font-weight: bold;
}

.lay-top-video .video-index ul li .title::before {
	content: '';
	position: absolute;
	top: 20px;
	left: 0;
	background: url(/theme/sn-default/images/top/link_icon.png);
	background-size: contain;
	background-repeat: no-repeat;
	height: 1rem;
	width: 1rem;
}

.lay-top-video .video-index ul li .description {
	font-size: 85%;
	display: block;
	padding: 0 0 1rem 0;
}

.lay-top-video .video-desc {
	display: flex;
	align-items: center;
  border: 1px solid #ffcc17;
	width: 100%;
	min-height: 130px;
	margin-top: 50px;
  padding: 20px 20px 20px 100px;
	background: url(../images/top/chara01.png) no-repeat 20px center;
	background-size: 60px auto;
	box-sizing: border-box;
}

@media screen and (max-width: 811px) {
	.lay-top-video {
		background-color: #ffcc17;
		padding: 0 0 3rem 0;
	}

	.lay-top-video .top-video-content {
		padding: 2rem 0 0.1rem;
	}

	.lay-top-video .lay-top-video-inner {
		padding: 0;
	}

	.lay-top-video .top-video-content-wrap {
		width: 95%;
	}

	.lay-top-video .lay-top-video-title {
		padding: 2rem 0;
	}

	.lay-top-video .video-index ul {
		margin: 0 0 1rem 0;
	}

	.lay-top-video .video-index ul li {
		position: relative;
		width: 47%;
	}

	.lay-top-video .video-index ul li:nth-child(2n+1) {
		margin: 0 3% 5% 0;
	}

	.lay-top-video .video-index ul li:nth-child(2n) {
		margin: 0 0 5% 3%;
	}

	.lay-top-video .video-content-title {
		margin: 0 0 3rem 0;
	}

	.lay-top-video .com-readmore {
		margin: 0 0 3rem 0;
	}
}

@media screen and (max-width: 560px) {
	.lay-top-video .top-video-content-wrap {
		width: 95%;
	}

	.lay-top-video .video-desc {
		min-height: 100px;
		padding: 15px 15px 15px 70px;
		background-position: 15px center;
		background-size: 40px auto;
	}
}

/* .lay-footer
================================================== */

.lay-footer {
	padding: 3.75rem 0;
}

.lay-footer .lay-footer-inner {
	margin: 0 auto;
	padding: 20px;
	display: flex;
	align-items: center;
	flex-direction: column;
}

.lay-footer .footer-logo img {
	width: 180px;
}

.lay-footer .footer-address {
	margin: 2rem 0;
	text-align: center;
	line-height: 1.5;
}

.lay-footer .copy-right {
	font-size: 87.5%;
}

/* Sitemap
================================================== */

/*サイトマップ リスト 階層関係なく共通*/
.sitemap-list {
	/*border-left: 1px dotted #444;*/
	margin: 1em 1em;
}

/*サイトマップ リスト項目 階層関係なく共通*/
.sitemap-list-item {}

.sitemap-list-item-span a {
	text-decoration: none;
}

/*サイトマップ リスト 階層を特定*/
ul.sitemap-list.sm-depth1-list {
	list-style-type: disc;
}

ul.sitemap-list.sm-depth2-list {
	list-style-type: circle;
}

ul.sitemap-list.sm-depth3-list {
	list-style-type: square;
}

ul.sitemap-list.sm-depth4-list {
	list-style-type: circle;
}

/* .lay-content
================================================== */

.lay-content {
	background: #ffcc17;
}

.lay-main {
	width: 100%;
	max-width: 1040px;
	padding: 2rem 1.25rem;
	margin: 0 auto;
}

.contentHeader {
	padding: 0 0 1rem;
}

.contentTitle {
	background: #fff;
	border-top: 3px solid #000;
	border-bottom: 3px solid #000;
	font-size: 150%;
	font-weight: bold;
	text-align: center;
	padding: 2rem;
}

.contentTitle h1 {
	font-size: 150%;
	font-weight: bold;
}

.contentBodyWrapper {
	background: #fff;
	padding: 3rem 2rem;
}

.contentBodyWrapper .page-title-wrap {
	padding: 0 0 1rem 0;
}

.contentBodyWrapper .page-title {
	font-size: 150%;
	padding: 0 0 1rem;
	line-height: 1.5;
}

.contentBodyWrapper .date {
	text-align: right;
}

@media screen and (max-width: 811px) {
	.contentBodyWrapper {
		background: #fff;
		padding: 2rem 1.5rem;
	}
}

@media screen and (max-width: 560px) {
	.contentBodyWrapper {
		background: #fff;
		padding: 15px 10px;
	}

	.lay-main {
		padding: 15px 10px;
	}
}

/* #breadCrumb
================================================== */

#breadCrumb {
	font-size: 75%;
	padding: 0 0 2rem 0;
}

/* .lay-contents-cate-list
================================================== */

.lay-contents-cate-list {
	margin: 1rem 0;
}

.lay-contents-cate-list ul {
	display: flex;
	flex-wrap: wrap;
}

.lay-contents-cate-list ul li {
	width: 19%;
	margin: 0.5%;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.lay-contents-cate-list ul li a {
	text-align: center;
	display: block;
	width: 100%;
	padding: 1rem 5px;
}

.lay-contents-cate-list ul li.content-cate-list-first {
	background: #000;
}

.lay-contents-cate-list ul li.content-cate-list-first a {
	color: #fff;
}

.lay-contents-cate-list .content-cate-list-first {}

@media screen and (max-width: 811px) {
	.lay-contents-cate-list ul li {
		width: 32.3333%;
		margin: 0.5%;
	}
}

/* コンテンツ一覧ページ
================================================== */

.contentBodyWrapper .lay-top-video {
	background: #fff;
	margin: 0 auto;
	padding: 0;
}

/* .ログインページ
================================================== */

fieldset {
	border: none;
}

.login {
	background: #ffcc17;
	padding: 5rem 0;
}

.login-header {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 2rem 0 0 0;
}

.login-header h1 {
	font-size: 0;
}

.login-header h1 img {
	width: 250px;
	height: auto;
}

.login .login-form {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.login label {
	display: block;
	padding: 0 1rem;
	margin: 0.5rem 0;
	font-size: 125%;
	font-weight: bold;
	border-left: 5px solid #000;
}

.login .login-text {
	padding: 0.5rem 1rem;
	margin: 0 0 0.5rem 0;
	font-size: 125%;
}

.login input {
	margin: 0 auto;
	display: block;
	border: none;
	border-radius: 0;
	width: 250px;
	height: 40px;
}

.login .login-submit {
	background-color: #000;
	color: #fff;
	margin: 2rem auto 0;
}

.login-back {
	border: none;
	background: none;
}

.login .login-maintenance {
	width: 100%;
	max-width: 660px;
	margin: 0 auto;
	text-align: center;
}

.login .login-maintenance p {
	margin-bottom: 1em;
}

.login .login-maintenance .large {
	font-size: 110%;
	font-weight: bold;
}

.login .login-maintenance .character-center {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

.login .login-maintenance .character-center img {
	height: 150px;
}

@media screen and (max-width: 811px) {
	.login-header h1 img {
		width: 150px;
	}
}
@media screen and (max-width: 390px) {
	.login .login-maintenance {
		font-size: 90%;
	}
}

/* パスワードを忘れた方 */
.login-view-pass-forgotten-area{
	margin: 2.0rem 0 0;
	text-align: center;
}

.login-view-pass-forgotten-area a {
	text-decoration: underline;
}

.login-view-pass-forgotten-area a:hover {
	text-decoration: none;
}


/* お知らせ一覧
================================================== */

.contentBodyWrapper .lay-news {
	padding: 0;
}

.contentBodyWrapper .news-index {
	margin: 1rem auto 0;
}

.contentBodyWrapper .news-index ul li .date {
	order: 1;
}

.contentBodyWrapper .news-index ul li .title {
	order: 2;
}

@media screen and (max-width: 811px) {
	.contentBodyWrapper .news-index {
		width: 95%
	}
}

/* ページネーション
================================================== */

.pagination {
	margin: 0 auto;
	display: flex;
	justify-content: center;
}

.pagination span {
	background: #dddddd;
	height: 40px;
	width: 40px;
	margin: 0.25rem;
	display: flex;
	justify-content: center;
	align-items: center;
}

.pagination span a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.pagination .current {
	background: #000;
	color: #fff;
}

/* 検索ページ
============================================================ */

.search h2 {
	text-align: center;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	padding: 10px 0;
	margin: 0 0 15px 0;
}

.search h3 {
	border-bottom: 1px solid #000;
	padding: 5px 0;
	margin: 25px 0 15px;
}

/* lay-search-form
============================================================ */

.lay-search-form {
	padding: 0 0 15px 0;
}

.lay-search-form form {
	display: flex;
	justify-content: center;

}

.lay-search-form input {
	border-radius: 0;
	height: 42px;
}

.lay-search-form input:first-child {
	border: 2px solid #000;
	padding: 10px;
}

.lay-search-form input:last-child {
	background: #000;
	padding: 5px;
	width: 42px;
}

/* ページ内リンク
============================================================ */

.content-link {
	border: 2px solid #000;
	background-color: #ffcc17;
	font-weight: bold;
	padding: 10px;
	font-size: 90%;
	display: inline-block;
}

.content-link:hover {
	text-decoration: none;
}

@media screen and (max-width: 811px) {
	.content-link {
		padding: 5px;
		font-size: 70%;
	}
}

/* 404ページ
============================================================ */
.not-found .not-found-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	line-height: 1.5;
}

.not-found .com-return-icon a {
	font-size: 100%;
}

.not-found .com-return-icon img {
	top: 1rem;
	height: 1rem;
}

/* ポイント用ボタン
============================================================ */

.lay-point-button {
	display: flex;
	justify-content: center;
	margin: 40px 0;
}

.lay-point-button a {
	width: 250px;
	border: 5px solid #ffcc17;
	padding: 10px 25px 10px 10px;
	font-size: 100%;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 10px;
	box-shadow: 4px 4px 0 0 rgba(96, 56, 19, 0.7);
}

.lay-point-button a.disabled {
	border-color: rgba(128, 128, 128, 0.7);
	box-shadow: 4px 4px 0 0 #808080;
	text-decoration: none;
	cursor: default;
}

.lay-point-button a.disabled:hover {
	opacity: 1;
}

.lay-point-button a img {
	height: 2rem;
}

@media screen and (max-width: 560px) {

	.lay-point-button {
		flex-direction: column;
		align-items: center;
	}

	.lay-point-button a {
		margin: 10px;
	}
}

/*
	.lay-fontsize
*******************************************/

.lay-fontsize {
	border-left: 1px solid #000;
	padding-left: 10px;
	margin-left: 5px;
}

.lay-fontsize {
	font-size: 85%;
	text-align: center;
}

.default a {
	text-decoration: none;
	border: 1px solid #000;
	font-size: 85%;
	padding: 3px 10px;
}

.large a {
	text-decoration: none;
	border: 1px solid #000;
	font-size: 85%;
	padding: 3px 10px;
}

@media screen and (max-width: 811px) {
	.lay-fontsize {
		display: none;
	}
}

/* lay-preview-mode-notice
============================================================ */
#lay-preview-mode-notice {
	position: fixed;
	top: 0;
	left: 50%;
	z-index: 1100;
	width: 100%;
	max-width: 580px;
	padding: 10px 5px;
	background: rgba(0, 0, 0, .8);
	color: #f80000;
	border-radius: 0 0 5px 5px;
	margin: 0 0 -26px 30px;
	text-align: center;
	-webkit-transform: translateX(-50%);
			transform: translateX(-50%);
  }
  #lay-preview-mode-notice p {
	font-size: 14px;
	font-weight: bold;
  }
  #lay-preview-mode-notice a {
	color: #fff;
	font-size: 14px;
	cursor: pointer;
  }
  #lay-preview-mode-notice a::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 10px;
	margin-bottom: 1px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
  }

.watch-content-link-button {
	/* 初期化 */
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	/* STYLE */
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	gap: 0.5em 0;
	width: 250px;
	max-width: 100%;
	
	font-size: 100%;
	font-weight: bold;
	display: flex;
	border: 5px solid #ffcc17;
	padding: 0.5em 1.5em 0.5em 3.5em;
	box-shadow: 4px 4px 0 0 rgba(96, 56, 19, 0.7);
	margin: 2.0rem auto  2.0rem;
}
.watch-content-link-button::before {
	position: absolute;
	content: "";
	display: block;
	width: 1.75em;
	height: 100%;
	top: 0;
	left: 0.5em;
	background: url(../images/common/ex-contents_point_icon.png) no-repeat center / contain;
}
.watch-content-link-button > .button-text {
	display: block;
}
.watch-content-link-button > small {
	display: block;
}
.watch-content-link-button:hover {
	text-decoration: underline;
}

.lay-link {
	display: flex;
	justify-content: flex-end;
	margin: 0 0 50px 0;
}
.lay-link.isHowto {
	margin: 4.0rem auto 0;
}

/* パスワード変更画面
============================================================ */
.resetPassword {

}
.resetPassword .resetPassword-contents {
	margin: 3.0rem 0 0;
}
.resetPassword .resetPassword-contents>*:first-child {
	margin-top: 0 !important;
}
.resetPassword .resetPassword-contents>*:last-child {
	margin-bottom: 0 !important;
}
.resetPassword .resetPassword-contents .resetPassword-contents-hl {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	margin: 1.0em 0;
}
.resetPassword .resetPassword-contents .resetPassword-contents-description {
	display: block;
	font-size: 1.0rem;
	line-height: 1.8em;
	letter-spacing: 0.06em;
	text-indent: 0.06em;
	text-align: justify;
	margin: 1.0em 0;
}
.resetPassword-form {
	max-width: 800px;
	margin: 2.0rem auto 0;
}
.resetPassword-form-inputBlock {
	display: flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	width: 100%;
	font-size: 1.1rem;
	gap: 0.5em;
}
@media screen and (max-width: 560px) {
	.resetPassword-form-inputBlock {
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		align-content: center;
		width: 100%;
	}
}
.resetPassword-form-inputBlock label {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	width: 15em;
	min-height: 2.5em;
	font-size: inherit;
	font-weight: 600;
	color: #000;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	text-align: center;
	background-color: #bbb;
}
@media screen and (max-width: 560px) {
	.resetPassword-form-inputBlock label {
		width: 100%;
	}
}
.resetPassword-form-inputBlock input[type="password"] {
	flex-grow: 1;
	min-height: 2.5em;
}
@media screen and (max-width: 560px) {
	.resetPassword-form-inputBlock input[type="password"] {
		width: 100%;
	}
}
.resetPassword-form-inputBlock.isNow {
	
}
.resetPassword-form-inputBlock.isNew {
	margin: 0.75em 0 0;
}
.resetPassword-form-inputBlock.isNew label {
	background-color: #000;
	color: #fff;
}
.resetPassword-form-notice {
	display: block;
	width: 100%;
	color: #000;
	font-size: 1.0rem;
	font-weight: 400;
	line-height: 1.8em;
	letter-spacing: 0.06em;
	text-indent: 0.06em;
	text-align: justify;
	background-color: #ededed;
	border-radius: 0.5em;
	padding: 1.5em 1.5em;
	margin: 2.0rem 0 1.0rem;
}
.resetPassword-form-notice > *:first-child {
	margin-top: 0;
}
.resetPassword-form-notice > *:last-child {
	margin-bottom: 0;
}
.resetPassword-form-notice > * {
	margin: 1.0rem 0;
}
.resetPassword-form-submitBtn {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	width: 100%;
	min-height: 3.5em;
	max-width: 320px;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	text-align: center;
	background-color: #000;
	padding: 0.5em;
	margin: 3.0rem auto 0;
	cursor: pointer;
}
.resetPassword .reset_pass_form_error_block{
	display: block;
	width: 100%;
	max-width: 800px;
	font-size: 1.0rem;
	font-weight: 500;
	color: red;
	background-color: #fdd;
	padding: 1.0em 1.0em;
	margin: 1.5rem auto 0;
}
.resetPassword .resetPassword-form input.invalid{
	background-color: #fdd;
}

/* マイアカウント
============================================================ */
.com-return-icon.forMyAccount {
	display: flex;
	justify-content: center;
	width: 100%;
}
.com-return-icon.forMyAccount a {
	width: 100%;
	max-width: 250px;
	font-size: 1rem;
	font-weight: 700;
	padding: 10px 20px 10px 50px;
}

.com-return-icon.forMyAccount img {
	position: absolute;
	top: 14px;
	left: 14px;
	width: auto;
	height: 15px;
}