@charset "utf-8";

body {
	font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	color: #212528;
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
	font-size: 16px;
}

img {
	max-width: 100%;
	height: auto;
}

p {
	font-family: 'Noto Sans JP', 'Noto Sans SC', sans-serif;
	margin: 0 0 1.5em;
}

p:last-child {
	margin-bottom: 0;
}

.clearfix:after {
	content: ' ';
	display: block;
	clear: both;
}

*,
*:before,
*:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#wrapper {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.inner {
	width: 100%;
	max-width: 1164px;
	margin: 0 auto;
}

#toTop {
	display: none;
	position: fixed;
	bottom: 50px;
	right: 40px;
	overflow: hidden;
	margin: 0;
	cursor: pointer;
	z-index: 99;
}

.main_ttl {
	width: 100%;
	max-width: 1060px;
	text-align: center;
	margin: 0 auto;
	position: relative;
}

.main_ttl span {
	display: block;
	position: relative;
}

.main_ttl span::before,
.main_ttl span::after {
	position: absolute;
	content: '';
	background-image: url(../images/top_line_01.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 305px;
	height: 20px;
	bottom: 22px;
}

.main_ttl span::before {
	left: 0;
}

.main_ttl span::after {
	right: 0;
}

.primary_btn a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	letter-spacing: 0.05em;
	background: #fff102;
	border-radius: 18px;
	padding: 6px 40px;
}
@media screen and (min-width: 900px) {
	.primary_btn a:hover {
		opacity: 0.7;
	}
}
#index #main {
	background: url(../images/top_bg_01.png) repeat;
}
#main {
	margin-top: 175px;
}
@media screen and (max-width: 900px) {
	#main {
		margin-top: 140px;
	}
}
@media screen and (max-width: 767px) {
	#main {
		margin-top: 124px;
	}
}
.box_sp {
	display: none;
}

.box_pc {
	display: block;
}

/* ------------------------------------------------------
header
------------------------------------------------------ */
#header {
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 11;
	background-color: #fff;
}
#header::before {
	position: absolute;
	content: '';
	background-image: url(../images/top_line_03.png);
	background-repeat: repeat-x;
	width: 100%;
	height: 6px;
	top: 0;
	left: 0;
	z-index: 1;
	pointer-events: none;
}

#header .head_box {
	border-bottom: 1px solid #e7e7e7;
	padding: 14px 0 16px;
}

#header .head_box .inner {
	max-width: 1060px;
	display: flex;
	justify-content: space-between;
}

#header .head_box .siteid {
	margin: 0 0;
}

#header .head_box .fontsz {
	font-family: 'Noto Sans JP', 'Noto Sans SC', sans-serif;
	display: flex;
	align-items: center;
	/* position: relative;
  top: 4px; */
	/* width: 262px; */
}
#header .head_link {
	background-color: #f5a201;
}
@media screen and (min-width: 900px) {
	#header .head_box .fontsz {
		width: 262px;
	}
}

#header .head_box .fontsz dt {
	font-size: 13px;
	font-weight: 500;
	margin-right: 14px;
}

#header .head_box .fontsz dd {
	width: 100%;
	flex: 1;
}

#header .head_box .fontsz ul {
	width: 100%;
	display: flex;
}

#header .head_box .fontsz ul li {
	width: 44px;
	height: 22px;
	margin: 0 2px;
}

#header .head_box .fontsz ul li a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 13px;
	font-weight: 500;
	border: 1px solid #212528;
	border-radius: 3px;
	transition: all 0.3s ease;
}

#header .head_box .fontsz ul li.textresizer-active a {
	color: #fff;
	background: #212528;
}

#header .head_link .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 32px 0 50px;
}

#header .menu {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 714px;
}

#header #gnavi {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

#header #gnavi > li {
	text-align: center;
	/* padding-bottom: 34px;
  margin-top: 32px; */
	height: 106px;
}

#header #gnavi .sub {
	cursor: pointer;
}

#header #gnavi li a,
#header #gnavi li .btn_sub {
	font-family: 'Noto Sans JP', 'Noto Sans SC', sans-serif;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.33;
	display: flex;
	align-items: center;
	padding: 0 22px;
	position: relative;
	cursor: pointer;
	transition: all 0.25s ease;
	height: 100%;
}

#header #gnavi > li > a::after,
#header #gnavi li .btn_sub::after {
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	/* background: #f5a201; */
	background-color: #fff;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform 0.3s;
}

#header #gnavi .overlay {
	position: absolute;
	top: 100%;
	left: 0;
	height: 0;
	opacity: 0;
	visibility: hidden;
	cursor: default;
}
@media screen and (min-width: 768px) {
	#header #gnavi .overlay {
		display: block !important;
	}
}

#header #gnavi .sub_menu {
	width: 100%;
	background: #fff;
	border-top: 1px solid #e7e7e7;
	padding: 70px 0 67px;
	overflow: hidden;
	cursor: default;
	transition: 0.8s;
}

#header #gnavi .sub_menu ul {
	width: 100%;
	display: flex;
	margin: 0 auto;
}

#header #gnavi .head_pension {
	max-width: 1056px;
	flex-wrap: wrap;
}

#header #gnavi .head_pension li {
	width: 100%;
	max-width: 338px;
	height: 78px;
	margin: 0 0.41em 15px;
}
#header #gnavi .head_pension li:last-child {
	height: auto;
}
@media screen and (min-width: 768px) {
	#header #gnavi .head_pension li:last-child {
		max-width: 60vw;
	}
}
@media screen and (min-width: 1150px) {
	#header #gnavi .head_pension li:last-child {
		max-width: 100%;
	}
}
#header #gnavi .head_pension li a {
	width: 100%;
	height: 100%;
	display: block;
	padding: 0;
	/* background: #ffd902;
  border: 3px solid #212528;
  border-radius: 6px;
  padding: 0 11px;
  overflow: hidden; */
}

/* #header #gnavi .head_pension li a span {
  position: relative;
}

#header #gnavi .head_pension li a::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 139px;
  height: 150%;
  top: -11px;
  right: 0px;
}
#header #gnavi .head_pension li:nth-child(1) a::before {
  background-image: url(../images/top_img_15.png);
}
#header #gnavi .head_pension li:nth-child(2) a::before {
  background-image: url(../images/top_img_16.png);
}
#header #gnavi .head_pension li:nth-child(3) a::before {
  background-image: url(../images/top_img_17.png);
}
#header #gnavi .head_pension li:nth-child(4) a::before {
  background-image: url(../images/top_img_18.png);
}
#header #gnavi .head_pension li:nth-child(5) a::before {
  background-image: url(../images/top_img_19.png);
}
#header #gnavi .head_pension li:nth-child(6) a::before {
  background-image: url(../images/top_img_m20.png);
}
#header #gnavi .head_pension li:nth-child(7) a::before {
  background-image: url(../images/top_img_m21.png);
}
#header #gnavi .head_pension li:nth-child(8) a::before {
  background-image: url(../images/top_img_m22.png);
}
#header #gnavi .head_pension li:nth-child(9) a::before {
  background-image: url(../images/top_img_m23.png);
}
#header #gnavi .head_pension li:nth-child(10) a::before {
  background-image: url(../images/top_img_m24.png);
}
#header #gnavi .head_pension li:nth-child(11) a::before {
  background-image: url(../images/top_img_m25.png);
}
#header #gnavi .head_pension li:nth-child(12) a::before {
  background-image: url(../images/top_img_m26.png);
} */
/* #header #gnavi .head_pension li:nth-child(4n + 1) a::before {
  background-image: url(../images/top_img_15.png);
}

#header #gnavi .head_pension li:nth-child(4n + 2) a::before {
  background-image: url(../images/top_img_16.png);
}

#header #gnavi .head_pension li:nth-child(4n + 3) a::before {
  background-image: url(../images/top_img_17.png);
  top: -24px;
}

#header #gnavi .head_pension li:nth-child(4n + 4) a::before {
  background-image: url(../images/top_img_18.png);
} */

#header #gnavi .head_points {
	max-width: 990px;
}

#header #gnavi .head_points li {
	width: 100%;
	max-width: 178px;
	height: 178px;
	margin: 0 10px 20px;
	position: relative;
	z-index: 1;
}

#header #gnavi .head_points li::before {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background: #ffd902;
	border-radius: 15px;
	top: 6px;
	left: 6px;
	z-index: -1;
	pointer-events: none;
	transition: all 0.1s ease;
}

#header #gnavi .head_points li:nth-child(even)::before {
	background: #f5a201;
}

#header #gnavi .head_points li a {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	text-align: center;
	border-radius: 15px;
	box-shadow: 1px 1px 0 0 rgb(0 0 0 / 35%);
	padding: 17px 8px 0;
	position: relative;
}

#header #gnavi .head_points li a::before,
#header #gnavi .head_points li a::after {
	position: absolute;
	content: '';
	pointer-events: none;
}

#header #gnavi .head_points li a::before {
	width: 100%;
	height: 100%;
	border-radius: 15px;
	border: 3px solid #212528;
	box-shadow: inset 1px 1px 0 0 rgb(0 0 0 / 35%);
	top: 0;
	left: 0;
}

#header #gnavi .head_points li a::after {
	background: url(../images/top_ico_05.png) no-repeat;
	background-size: 100% auto;
	width: 26px;
	height: 26px;
	bottom: 10px;
	right: 9px;
	z-index: 1;
}

#header #gnavi .head_points a span:last-child {
	width: 100%;
	display: block;
	text-align: left;
	padding: 0 0 0 7px;
}

/* ------------------------------------------------------
mainvisual
------------------------------------------------------ */
#mainvisual {
	background: url(../images/top_bg_02.png) no-repeat;
	background-size: cover;
	padding: 32px 0 51px;
	position: relative;
}

#mainvisual::before {
	position: absolute;
	content: '';
	width: 100%;
	border-bottom: 6px solid #1e1e1d;
	bottom: -16px;
	left: 0;
}

#mainvisual .inner {
	max-width: 1060px;
	position: relative;
}

#mainvisual .mv_frame {
	width: 100%;
	max-width: 500px;
	text-align: center;
}

#mainvisual .mv_frame h2 {
	margin-bottom: 28px;
}

#mainvisual .mv_btn {
	width: 100%;
	max-width: 438px;
	height: 66px;
	margin: 0 auto 25px;
}
#mainvisual .mv_btn:last-child {
	margin-bottom: 0;
}

#mainvisual .mv_btn a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 26px;
	font-weight: 700;
	line-height: 0.8;
	color: #fff;
	background: #378cb9;
	border-radius: 33px;
	box-shadow: 4px 6px 0 0 #206990;
	transition: all 0.3s ease;
}
#mainvisual .mv_btn a small {
	font-size: 12px;
}
#mainvisual figure {
	position: absolute;
	bottom: -132px;
	right: 45px;
}

/* ------------------------------------------------------
idx_pension
------------------------------------------------------ */
#idx_pension {
	padding: 112px 0 93px;
}

#idx_pension .main_ttl {
	margin-bottom: 54px;
}

#idx_pension .pension_list {
	width: 100%;
	max-width: 1101px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
}

#idx_pension .pension_list .pension_card {
	width: 100%;
	max-width: 323px;
	min-height: 462px;
	margin: 0 22px 49px;
	position: relative;
}

#idx_pension .pension_list .pension_card::before {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background-image: url(../images/top_img_03.png);
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 20px;
	top: 9px;
	left: 9px;
	transition: all 0.3s ease;
}

/* #idx_pension .pension_list .pension_card:nth-child(1)::before {
  background-image: url(../images/top_img_03.png);
}

#idx_pension .pension_list .pension_card:nth-child(2)::before {
  background-image: url(../images/top_img_04.png);
}

#idx_pension .pension_list .pension_card:nth-child(3)::before {
  background-image: url(../images/top_img_05.png);
}

#idx_pension .pension_list .pension_card:nth-child(4)::before {
  background-image: url(../images/top_img_06.png);
}

#idx_pension .pension_list .pension_card:nth-child(5)::before {
  background-image: url(../images/top_img_07.png);
}

#idx_pension .pension_list .pension_card:nth-child(6)::before {
  background-image: url(../images/top_img_08.png);
}

#idx_pension .pension_list .pension_card:nth-child(7)::before {
  background-image: url(../images/top_img_09.png);
}

#idx_pension .pension_list .pension_card:nth-child(8)::before {
  background-image: url(../images/top_img_10.png);
}

#idx_pension .pension_list .pension_card:nth-child(9)::before {
  background-image: url(../images/top_img_11.png);
}

#idx_pension .pension_list .pension_card:nth-child(10)::before {
  background-image: url(../images/top_img_12.png);
}

#idx_pension .pension_list .pension_card:nth-child(11)::before {
  background-image: url(../images/top_img_13.png);
}

#idx_pension .pension_list .pension_card:nth-child(12)::before {
  background-image: url(../images/top_img_14.png);
} */

#idx_pension .pension_list .pension_card a {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	text-align: center;
	border-radius: 20px;
	padding: 29px 0 0;
	position: relative;
	overflow: hidden;
}

#idx_pension .pension_list .pension_card a::before,
#idx_pension .pension_list .pension_card a::after {
	position: absolute;
	content: '';
	pointer-events: none;
}

#idx_pension .pension_list .pension_card a::before {
	width: 100%;
	height: 100%;
	border-radius: 20px;
	border: 6px solid #212528;
	top: 0;
	left: 0;
	pointer-events: none;
	z-index: 2;
}

#idx_pension .pension_list .pension_card a::after {
	background: url(../images/top_ico_03.png) no-repeat;
	background-size: 100% auto;
	width: 32px;
	height: 32px;
	bottom: 17px;
	right: 18px;
	z-index: 1;
}

#idx_pension .pension_list .pension_card .card_component {
	width: 100%;
	min-height: 162px;
	background: #fff;
	border-top: 4px solid #212528;
	padding: 19px 10px 0;
	position: relative;
	z-index: 1;
}

#idx_pension .pension_list .pension_card .card_component::before,
#idx_pension .pension_list .pension_card .card_component::after {
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	left: 50%;
	transform: translateX(-50%);
	pointer-events: none;
}

#idx_pension .pension_list .pension_card .card_component::before {
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 25px solid #212528;
	top: -28px;
}

#idx_pension .pension_list .pension_card .card_component::after {
	border-left: 18px solid transparent;
	border-right: 18px solid transparent;
	border-bottom: 22px solid #fff;
	top: -22px;
}

#idx_pension .pension_list .pension_card .card_component .card_txt {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.47;
	position: relative;
}

#idx_pension .pension_list .pension_card .card_component .card_txt::after {
	position: absolute;
	content: '';
	background: url(../images/top_ico_01.png) no-repeat;
	background-size: 100% auto;
	width: 83px;
	height: 113px;
	top: -9px;
	left: 12px;
	z-index: -1;
}

#idx_pension .pension_list .pension_card .card_component .sz18 {
	font-size: 18px;
	line-height: 1.67;
}

#idx_pension .pension_list .pension_card figure {
	position: absolute;
	top: 46.5%;
	/* left: 45.6%; */
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	pointer-events: none;
}

/* #idx_pension .pension_list .pension_card:nth-child(4n) figure {
  top: 46.5%;
  left: 45.6%;
}

#idx_pension .pension_list .pension_card:nth-child(4n + 2) figure {
  top: 46.5%;
  left: 47.6%;
}

#idx_pension .pension_list .pension_card:nth-child(4n + 3) figure {
  top: 49.5%;
  left: 50.6%;
}

#idx_pension .pension_list .pension_card:nth-child(4n + 4) figure {
  top: 47.5%;
  left: 42.6%;
} */
/* #idx_pension .pension_list .pension_card:nth-child(7) figure {
  top: 49%;
} */
#idx_pension .pension_list .pension_card:nth-child(10) figure,
#idx_pension .pension_list .pension_card:nth-child(11) figure,
#idx_pension .pension_list .pension_card:nth-child(12) figure {
	top: 48.5%;
}

/* ------------------------------------------------------
idx_verification
------------------------------------------------------ */
#idx_verification {
	background: #ffd902;
	padding: 122px 3% 125px;
	overflow: hidden;
}

#idx_verification .main_ttl {
	margin-bottom: 39px;
}

#idx_verification .main_ttl span::before,
#idx_verification .main_ttl span::after {
	background-image: url(../images/top_line_02.png);
	width: 330px;
}

#idx_verification .verification_block {
	width: 100%;
	max-width: 1060px;
	text-align: center;
	padding: 0 0 0 15px;
	margin: 0 auto;
	position: relative;
}

#idx_verification .verification_block::before,
#idx_verification .verification_block::after {
	position: absolute;
	content: '';
	pointer-events: none;
}

#idx_verification .verification_block::before {
	background: url(../images/top_img_19.png) no-repeat;
	background-size: 100% auto;
	width: 288px;
	height: 297px;
	bottom: -167px;
	right: 59px;
	z-index: 2;
}

#idx_verification .verification_block::after {
	background: url(../images/top_ico_04.png) no-repeat;
	background-size: 100% auto;
	width: 55px;
	height: 507px;
	top: 50%;
	left: -1px;
	transform: translateY(-50%);
	z-index: 1;
}

#idx_verification .verification_frame {
	padding: 90px 60px 86px;
	position: relative;
	z-index: 1;
}

#idx_verification .verification_frame::before,
#idx_verification .verification_frame::after {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	pointer-events: none;
}

#idx_verification .verification_frame::before {
	border: 4px solid #231916;
	top: 0;
	left: 0;
}

#idx_verification .verification_frame::after {
	background: url(../images/top_bg_01.png) repeat;
	max-width: 1041px;
	height: calc(100% - 2px);
	top: 11px;
	left: 14px;
	z-index: -1;
}

#idx_verification .verification_frame .verification_ttl {
	font-family: 'Noto Sans JP', 'Noto Sans SC', sans-serif;
	/* font-size: 24px; */
	font-size: 150%;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.22;
	margin-bottom: 51px;
	position: relative;
}

#idx_verification .verification_frame .verification_ttl::before {
	position: absolute;
	content: '';
	background-image: url(../images/top_line_04.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 778px;
	height: 2px;
	bottom: -19px;
	left: 50%;
	transform: translateX(-50%);
}

#idx_verification .verification_frame .verification_txt p {
	font-weight: 700;
	line-height: 1.625;
}

#idx_verification .verification_frame .verification_txt p:not(:last-child) {
	margin-bottom: 26px;
}

#idx_verification .verification_frame .primary_btn {
	margin-top: 36px;
}

/* ------------------------------------------------------
idx_points
------------------------------------------------------ */
#idx_points {
	padding: 119px 0 109px;
}

#idx_points .main_ttl {
	margin-bottom: 50px;
}

#idx_points .points_list {
	width: 100%;
	max-width: 990px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
}

#idx_points .points_list .points_card {
	width: 100%;
	max-width: 178px;
	height: 178px;
	margin: 0 10px 20px;
	position: relative;
	z-index: 1;
}

#idx_points .points_list .points_card::before {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background: #ffd902;
	border-radius: 15px;
	top: 6px;
	left: 6px;
	z-index: -1;
	pointer-events: none;
	transition: all 0.1s ease;
}

#idx_points .points_list .points_card a {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	text-align: center;
	border-radius: 15px;
	box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.35);
	padding: 17px 8px 0;
	position: relative;
}

#idx_points .points_list .points_card a::before,
#idx_points .points_list .points_card a::after {
	position: absolute;
	content: '';
	pointer-events: none;
}

#idx_points .points_list .points_card a::before {
	width: 100%;
	height: 100%;
	border-radius: 15px;
	border: 3px solid #212528;
	box-shadow: inset 1px 1px 0 0 rgba(0, 0, 0, 0.35);
	top: 0;
	left: 0;
}

#idx_points .points_list .points_card a::after {
	background: url(../images/top_ico_05.png) no-repeat;
	background-size: 100% auto;
	width: 26px;
	height: 26px;
	bottom: 10px;
	right: 9px;
	z-index: 1;
}

#idx_points .points_list .points_card:nth-child(even)::before {
	background: #f5a201;
}

#idx_points .points_list .points_card figure {
	position: relative;
	top: -3px;
}

/* ------------------------------------------------------
footer
------------------------------------------------------ */
#footer {
	font-size: 13px;
	color: #a7aaad;
	text-align: center;
	background: #f1f5f6;
}

#footer .footer_info {
	padding: 78px 0 47px;
}

#footer .footer_info .f_logo {
	margin-bottom: 40px;
}

#footer .footer_info .f_txt {
	font-weight: 700;
	line-height: 1.7;
	margin-bottom: 15px;
}

#footer address {
	font-size: 11px;
	font-weight: 500;
	line-height: 2;
	text-align: center;
}

@media screen and (max-width: 1150px) and (min-width: 768px) {
	#toTop {
		width: 4vw;
		bottom: 4.348vw;
		right: 3.478vw;
	}

	.main_ttl {
		max-width: 92.174vw;
	}

	.main_ttl span::before,
	.main_ttl span::after {
		width: 26.522vw;
		height: 1.739vw;
		bottom: 1.913vw;
	}

	#header::before {
		height: 0.522vw;
	}

	#header .head_box .inner {
		max-width: 92.174vw;
	}

	#header .head_box {
		padding: 1.217vw 0 1.391vw;
	}

	#header .head_box .fontsz {
		top: 0.348vw;
	}

	#header .head_box .fontsz dt {
		font-size: 1.13vw;
		margin-right: 1.217vw;
	}

	#header .head_box .fontsz ul li {
		width: 3.826vw;
		height: 1.913vw;
		margin: 0 0.174vw;
	}

	#header .head_box .fontsz ul li a {
		font-size: 1.13vw;
		border-radius: 0.261vw;
	}

	#header .head_link .inner {
		padding: 0 2.783vw 0 4.348vw;
	}

	#header .head_link #top img {
		width: 22.783vw;
	}

	#header .menu {
		max-width: 62.087vw;
	}

	#header #gnavi > li {
		/* padding-bottom: 2.957vw;
    margin-top: 2.783vw; */
		height: 80px;
	}

	#header #gnavi li a,
	#header #gnavi li .btn_sub {
		font-size: 1.304vw;
		padding: 0 1.913vw;
	}

	#header #gnavi > li > a::after,
	#header #gnavi li .btn_sub::after {
		/* bottom: -2.957vw; */
		height: 3px;
	}

	#header #gnavi .overlay {
		/* top: 15.217vw; */
	}

	#header #gnavi .sub_menu {
		padding: 6.087vw 0 5.826vw;
	}

	#header #gnavi .head_pension {
		max-width: 91.826vw;
	}

	#header #gnavi .head_pension li {
		max-width: 29.391vw;
		height: 6.783vw;
		margin: 0 0.609vw 1.304vw;
	}

	#header #gnavi .head_pension li a {
		/* border-width: 0.261vw;
    border-radius: 0.522vw;
    padding: 0 0.957vw; */
	}

	/* #header #gnavi .head_pension li a::before {
    width: 12.087vw;
    height: 150%;
    top: -1.565vw;
    right: 1.391vw;
  }

  #header #gnavi .head_pension li a span img {
    width: 19.565vw;
  } */

	#header #gnavi .head_points {
		max-width: 86.087vw;
	}

	#header #gnavi .head_points li {
		max-width: 15.478vw;
		height: 15.478vw;
		margin: 0 0.87vw 1.739vw;
	}

	#header #gnavi .head_points li::before {
		border-radius: 1.304vw;
		top: 0.522vw;
		left: 0.522vw;
	}

	#header #gnavi .head_points li a {
		border-radius: 1.304vw;
		padding: 1.478vw 0.696vw 0;
	}

	#header #gnavi .head_points li a::before {
		border-radius: 1.304vw;
		border-width: 0.261vw;
	}

	#header #gnavi .head_points li a::after {
		width: 2.261vw;
		height: 2.261vw;
		bottom: 0.87vw;
		right: 0.783vw;
	}

	#header #gnavi .head_points li a span:nth-child(1) img {
		width: 13.739vw;
	}

	#header #gnavi .head_points li a span:nth-child(2) img {
		/* width: 5.739vw; */
		width: 10vw;
	}

	#mainvisual {
		padding: 2.783vw 0 4.435vw;
	}

	#mainvisual .inner {
		max-width: 92.174vw;
	}

	#mainvisual .mv_frame {
		max-width: 43.478vw;
	}

	#mainvisual .mv_btn {
		height: 5.739vw;
		margin: 0 auto 15px;
	}

	#mainvisual .mv_btn a {
		font-size: 2.261vw;
		border-radius: 2.87vw;
		box-shadow: 0.348vw 0.522vw 0 0 #206990;
	}

	#mainvisual figure {
		width: 41.391vw;
		bottom: -11.478vw;
		right: 3.913vw;
	}

	#idx_pension {
		padding: 9.739vw 0 8.087vw;
	}

	#idx_pension .main_ttl {
		margin-bottom: 4.696vw;
	}

	#idx_pension .main_ttl span img {
		width: 34.957vw;
	}

	#idx_pension .pension_list {
		max-width: 95.739vw;
	}

	#idx_pension .pension_list .pension_card {
		max-width: 28.087vw;
		min-height: 40.174vw;
		margin: 0 1.913vw 4.261vw;
	}

	#idx_pension .pension_list .pension_card::before {
		border-radius: 1.739vw;
		top: 0.783vw;
		left: 0.783vw;
	}

	#idx_pension .pension_list .pension_card a {
		border-radius: 1.739vw;
		padding: 2.522vw 0 0;
	}

	#idx_pension .pension_list .pension_card a::before {
		border-radius: 1.739vw;
		border-width: 0.522vw;
	}

	#idx_pension .pension_list .pension_card a::after {
		width: 2.783vw;
		height: 2.783vw;
		bottom: 1.478vw;
		right: 1.565vw;
	}

	#idx_pension .pension_list .pension_card .card_ttl img {
		width: 24.348vw;
	}

	#idx_pension .pension_list .pension_card figure {
		width: 19.13vw;
	}

	#idx_pension .pension_list .pension_card .card_component {
		min-height: 14.087vw;
		border-top-width: 0.261vw;
		padding: 1.652vw 0.87vw 0;
	}

	#idx_pension .pension_list .pension_card .card_component::before {
		border-left-width: 1.565vw;
		border-right-width: 1.565vw;
		border-bottom-width: 2vw;
		top: -2.261vw;
	}

	#idx_pension .pension_list .pension_card .card_component::after {
		border-left-width: 1.478vw;
		border-right-width: 1.478vw;
		border-bottom-width: 1.913vw;
		top: -1.913vw;
	}

	#idx_pension .pension_list .pension_card .card_component .card_txt {
		font-size: 1.739vw;
	}

	#idx_pension .pension_list .pension_card .card_component .card_txt::after {
		width: 7.217vw;
		height: 9.826vw;
		top: -0.783vw;
		left: 1.043vw;
	}

	#idx_pension .pension_list .pension_card .card_component .sz18 {
		font-size: 1.565vw;
	}

	#idx_verification {
		padding: 10.609vw 3% 10.87vw;
	}

	#idx_verification .main_ttl {
		margin-bottom: 3.391vw;
	}

	#idx_verification .main_ttl span::before,
	#idx_verification .main_ttl span::after {
		width: 28.696vw;
	}

	#idx_verification .main_ttl span img {
		width: 29.304vw;
	}

	#idx_verification .verification_block {
		max-width: 92.174vw;
		padding: 0 0 0 1.304vw;
	}

	#idx_verification .verification_block::before {
		width: 25.217vw;
		height: 26vw;
		bottom: -14.522vw;
		right: 5.13vw;
	}

	#idx_verification .verification_block::after {
		width: 4.783vw;
		height: 44.087vw;
		left: -0.087vw;
	}

	#idx_verification .verification_frame {
		padding: 7.826vw 5.217vw 7.478vw;
		position: relative;
		z-index: 1;
	}

	#idx_verification .verification_frame::before {
		border-width: 0.348vw;
	}

	#idx_verification .verification_frame::after {
		max-width: 90.522vw;
		height: calc(100% - 0.174vw);
		top: 0.957vw;
		left: 1.217vw;
	}

	#idx_verification .verification_frame .verification_ttl {
		font-size: 2.087vw;
		margin-bottom: 4.435vw;
	}

	#idx_verification .verification_frame .verification_ttl::before {
		width: 67.652vw;
		height: 0.174vw;
		bottom: -1.652vw;
	}

	#idx_verification .verification_frame .verification_txt p {
		font-size: 1.391vw;
	}

	#idx_verification .verification_frame .verification_txt p:not(:last-child) {
		margin-bottom: 2.261vw;
	}

	#idx_verification .verification_frame .primary_btn {
		margin-top: 3.13vw;
	}

	#idx_points {
		padding: 10.348vw 0 9.478vw;
	}

	#idx_points .main_ttl {
		margin-bottom: 4.348vw;
	}

	#idx_points .main_ttl img {
		width: 58.783vw;
	}

	#idx_points .points_list {
		max-width: 86.087vw;
	}

	#idx_points .points_list .points_card {
		max-width: 15.478vw;
		height: 15.478vw;
		margin: 0 0.87vw 1.739vw;
	}

	#idx_points .points_list .points_card::before {
		border-radius: 1.304vw;
		top: 0.522vw;
		left: 0.522vw;
	}

	#idx_points .points_list .points_card a {
		border-radius: 1.304vw;
		padding: 1.478vw 0.696vw 0;
	}

	#idx_points .points_list .points_card a::before {
		border-radius: 1.304vw;
		border-width: 0.261vw;
	}

	#idx_points .points_list .points_card a::after {
		width: 2.261vw;
		height: 2.261vw;
		bottom: 0.87vw;
		right: 0.783vw;
	}

	#idx_points .points_list .points_card .card_title img {
		width: 13.739vw;
	}

	#idx_points .points_list .points_card figure {
		top: -0.261vw;
	}

	#idx_points .points_list .points_card figure img {
		width: 9.739vw;
	}

	#footer .footer_info {
		padding: 6.783vw 0 4.087vw;
	}

	#footer .footer_info .f_logo {
		margin-bottom: 3.478vw;
	}

	#footer .footer_info .f_logo img {
		width: 21.913vw;
	}

	#footer .footer_info .f_txt {
		font-size: 1.391vw;
		margin-bottom: 1.304vw;
	}

	#footer address {
		font-size: 0.957vw;
	}
}

@media screen and (min-width: 1151px) {
	#idx_points .points_list .points_card figure img {
		width: 5.98vw;
	}
}

@media screen and (min-width: 768px) {
	#header .head_box .fontsz ul li a:hover {
		color: #fff;
		background: #212528;
	}

	#header #gnavi li a:hover,
	#header #gnavi .sub.is-hover .btn_sub,
	#header #gnavi .sub:hover .btn_sub {
		/* color: #f5a201; */
		color: #fff;
	}

	#header #gnavi > li > a:hover::after,
	#header #gnavi .sub.is-hover .btn_sub::after,
	#header #gnavi .sub:hover .btn_sub::after {
		transform-origin: left top;
		transform: scale(1, 1);
	}

	#header #gnavi .sub.is-hover .overlay {
		opacity: 1;
		visibility: visible;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.5);
		z-index: 9999;
	}

	#header #gnavi .sub_menu {
		width: 100%;
		height: 0;
		opacity: 0;
		visibility: hidden;
	}

	#header #gnavi .sub.is-hover .sub_menu {
		opacity: 1;
		visibility: visible;
		height: auto;
		z-index: 9999;
	}

	#header #gnavi .sub_menu .head_pension li a:hover {
		opacity: 0.7;
	}

	#header #gnavi .head_points li:hover::before,
	#idx_pension .pension_list .pension_card:hover::before,
	#idx_points .points_list .points_card:hover::before {
		top: 0;
		left: 0;
	}

	#mainvisual .mv_btn a:hover {
		box-shadow: 0 0 0 0;
	}
}

@media screen and (max-width: 767px) {
	body {
		font-size: 2.608vw;
	}
	body.is-menu-show {
		overflow: hidden;
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}

	.box_sp {
		display: block;
	}

	.box_pc {
		display: none;
	}

	#header::before {
		display: none;
	}

	#toTop {
		bottom: 3.519vw;
		right: 1.215vw;
	}

	#toTop img {
		width: 11.995vw;
	}

	.main_ttl {
		max-width: 90.743vw;
	}

	.main_ttl span::before,
	.main_ttl span::after {
		background-image: url(../images/top_line_01_sp.png) !important;
		width: 15.906vw !important;
		height: 2.608vw;
		bottom: 2.868vw;
	}

	.primary_btn a {
		border-radius: 3.129vw;
		padding: 0.913vw 9.387vw;
	}

	#header .head_box {
		/*padding: 4.302vw 3% 5.476vw; kiyaku*/
		padding: 4.302vw 3% 1.176vw;
	}

	#header .head_box .siteid img {
		width: 26.076vw;
	}

	#header .head_box .fontsz dt {
		font-size: 2.608vw;
		margin-right: 2.999vw;
	}

	#header .head_box .fontsz ul li {
		width: 8.605vw;
		height: 4.302vw;
		margin: 0 0.391vw;
	}

	#header .head_box .fontsz ul li a {
		font-size: 2.608vw;
	}

	#header .head_link {
		padding: 3.781vw 0 4.172vw;
	}

	#header .head_link .inner {
		padding: 0 3%;
	}

	#header .head_link #top img {
		width: 43.286vw;
	}

	#header .hamburger {
		display: block;
		width: 34px;
		height: 22px;
		transform: rotate(0deg);
		transition: 0.5s ease-in-out;
	}

	.hamburger span {
		display: block;
		height: 3px;
		width: 100%;
		background: #1a1c1a;
		border-radius: 2px;
		opacity: 1;
		position: absolute;
		left: 0;
		transform: rotate(0deg);
		transition: 0.25s ease-in-out;
	}

	.hamburger span:nth-child(1) {
		top: 0px;
	}

	.hamburger span:nth-child(2),
	.hamburger span:nth-child(3) {
		top: 10px;
	}

	.hamburger span:nth-child(4) {
		top: 20px;
	}

	.hamburger.active span:nth-child(1) {
		top: 9px;
		width: 0%;
		left: 50%;
	}

	.hamburger.active span:nth-child(2) {
		transform: rotate(45deg);
	}

	.hamburger.active span:nth-child(3) {
		transform: rotate(-45deg);
	}

	.hamburger.active span:nth-child(4) {
		top: 9px;
		width: 0%;
		left: 50%;
	}

	#header .menu {
		position: fixed;
		top: 250px;
		left: 0;
		width: 100%;
		max-width: 100%;
		height: 100%;
		justify-content: flex-end;
		align-items: flex-start;
		background: rgba(0, 0, 0, 0.5);
		margin: 0 0;
		z-index: 9999;
		transition: transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translateX(100%);
	}

	#header .menu.active {
		transform: translateX(0);
	}

	#header #gnavi {
		max-width: 79.531vw;
		height: 100%;
		display: block;
		background: #fff;
		padding: 0 6.389vw 9.778vw;
		overflow: auto;
		transition: transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translateX(100%);
	}

	#header #gnavi.active {
		transform: translateX(0);
	}

	#header #gnavi > li {
		display: block;
		width: 100%;
		height: auto;
		padding: 0 0;
		margin: 0 0;
		transition: all 0.3s;
	}

	#header #gnavi li a,
	#header #gnavi li .btn_sub {
		font-size: 3.651vw;
		border-bottom: 1px solid #e5e5e5;
		padding: 3.781vw 3.39vw 2.347vw;
	}

	#header #gnavi li .btn_sub::before {
		position: absolute;
		content: '';
		width: 0;
		height: 0;
		border-left: 1.174vw solid transparent;
		border-right: 1.174vw solid transparent;
		border-top: 1.956vw solid #000;
		bottom: 3.651vw;
		right: 2.608vw;
	}

	#header #gnavi li .btn_sub.opened::before {
		border-bottom: 1.956vw solid #000;
		border-top: 0;
	}

	#header #gnavi .overlay {
		display: none;
		opacity: 1;
		visibility: visible;
		height: auto;
		position: relative;
		top: auto !important;
	}

	#header #gnavi .sub_menu {
		border-top: 0;
		padding: 4.302vw 0 0.652vw;
	}

	#header #gnavi .head_pension {
		justify-content: center;
	}

	#header #gnavi .head_pension li {
		width: 100%;
		max-width: 61.669vw;
		height: 14.211vw;
		margin: 0 0 2.347vw;
	}

	#header #gnavi .head_pension li a {
		/* border-width: 0.391vw;
    border-radius: 0.782vw;
    padding: 0 2.608vw; */
		border-bottom: none;
	}

	#header #gnavi .head_pension li a::before {
		/* width: 24.511vw;
    top: -2.999vw;
    right: 3.129vw; */
	}

	/* #header #gnavi .head_pension li:nth-child(4n + 3) a::before {
    top: -4.042vw;
  } */

	/* #header #gnavi .head_pension li a span img {
    width: 40.808vw;
  } */

	#header #gnavi .head_points {
		max-width: 64.146vw;
		flex-wrap: wrap;
	}

	#header #gnavi .head_points li {
		max-width: 28.683vw;
		height: 28.683vw;
		margin: 0 1.695vw 3.39vw;
	}

	#header #gnavi .head_points li::before {
		border-radius: 1.956vw;
		top: 0.782vw;
		left: 0.782vw;
	}

	#header #gnavi .head_points li a {
		border-radius: 1.956vw;
		padding: 2.216vw 1.043vw 0;
	}

	#header #gnavi .head_points li a::before {
		border-radius: 1.956vw;
		border-width: 0.391vw;
	}

	#header #gnavi .head_points li a::after {
		width: 3.39vw;
		height: 3.39vw;
		bottom: 1.304vw;
		right: 1.173vw;
	}

	#header #gnavi .head_points li a span:nth-child(1) img {
		width: 25.424vw;
	}

	#header #gnavi .head_points li a span:nth-child(2) img {
		/* width: 11.082vw; */
		width: 20.267vw;
	}

	#mainvisual {
		background-image: url(../images/top_bg_02_sp.png);
		padding: 8.214vw 0 0.913vw;
	}

	#mainvisual::before {
		border-bottom-width: 1.304vw;
		bottom: -2.608vw;
	}

	#mainvisual .mv_frame {
		max-width: 100%;
	}

	#mainvisual .mv_frame h2 {
		margin-bottom: 4.433vw;
	}

	#mainvisual .mv_frame h2 img {
		width: 72.621vw;
	}

	#mainvisual .mv_btn {
		max-width: 68.579vw;
		height: 10.3vw;
		margin: 0 auto 10px;
	}

	#mainvisual .mv_btn a {
		font-size: 3.911vw;
		line-height: 0.9;
		border-radius: 5.215vw;
		box-shadow: 0.522vw 0.782vw 0 0 #206990;
		letter-spacing: 0.08em;
	}
	#mainvisual .mv_btn a small {
		font-size: 70%;
	}

	#mainvisual figure {
		width: 56.845vw;
		margin: 0vw auto -13.82vw;
		position: relative;
		bottom: -4.954vw;
		right: auto;
	}

	#idx_pension {
		padding: 19.817vw 0 12.125vw;
	}

	#idx_pension .idx_pension_txt {
		/* font-size: 3.911vw; */
		font-size: 150%;
		font-weight: 700;
		line-height: 1.73;
		text-align: center;
		/* margin-bottom: 14.602vw; */
	}

	#idx_pension .mv_note {
		margin-bottom: 14.602vw;
	}

	#idx_pension .main_ttl span img {
		width: 52.412vw;
	}

	#idx_pension .main_ttl {
		margin-bottom: 7.04vw;
	}

	#idx_pension .pension_list {
		max-width: 95.698vw;
	}

	#idx_pension .pension_list .pension_card {
		max-width: 42.112vw;
		min-height: 60.235vw;
		margin: 0 2.868vw 6.389vw;
	}

	#idx_pension .pension_list .pension_card::before {
		border-radius: 2.608vw;
		top: 1.173vw;
		left: 1.173vw;
	}

	#idx_pension .pension_list .pension_card a {
		border-radius: 2.608vw;
		padding: 3.781vw 0 0;
	}

	#idx_pension .pension_list .pension_card a::before {
		border-radius: 2.608vw;
		border-width: 0.782vw;
	}

	#idx_pension .pension_list .pension_card a::after {
		width: 4.172vw;
		height: 4.172vw;
		bottom: 2.216vw;
		right: 2.347vw;
	}

	#idx_pension .pension_list .pension_card .card_ttl img {
		width: 36.506vw;
	}

	#idx_pension .pension_list .pension_card figure {
		width: 28.683vw;
	}

	#idx_pension .pension_list .pension_card .card_component {
		min-height: 21.121vw;
		border-top-width: 0.391vw;
		padding: 2.477vw 1.304vw 0;
	}

	#idx_pension .pension_list .pension_card .card_component::before {
		border-left-width: 2.347vw;
		border-right-width: 2.347vw;
		border-bottom-width: 2.999vw;
		top: -3.39vw;
	}

	#idx_pension .pension_list .pension_card .card_component::after {
		border-left-width: 2.216vw;
		border-right-width: 2.216vw;
		border-bottom-width: 2.868vw;
		top: -2.868vw;
	}

	#idx_pension .pension_list .pension_card .card_component .card_txt {
		font-size: 2.608vw;
	}

	#idx_pension .pension_list .pension_card .card_component .card_txt::after {
		width: 10.821vw;
		height: 14.733vw;
		top: -1.173vw;
		left: 1.565vw;
	}

	#idx_pension .pension_list .pension_card .card_component .sz18 {
		font-size: 2.347vw;
	}

	#idx_verification {
		padding: 15.906vw 3% 17.862vw;
	}

	#idx_verification .main_ttl {
		max-width: 100%;
		margin-bottom: 4.824vw;
	}

	#idx_verification .main_ttl span img {
		width: 43.937vw;
	}

	#idx_verification .verification_block {
		padding: 0 0 0 1.173vw;
	}

	#idx_verification .verification_block::before {
		width: 29.857vw;
		height: 30.9vw;
		bottom: -21.773vw;
		right: 4.954vw;
	}

	#idx_verification .verification_block::after {
		background: url(../images/top_ico_04_sp.png) no-repeat;
		background-size: 100% auto;
		width: 7.04vw;
		height: 104.563vw;
		left: -0.13vw;
	}

	#idx_verification .verification_frame {
		padding: 9.387vw 5.215vw 10.821vw;
	}

	#idx_verification .verification_frame::after {
		max-width: 92.5vw;
		top: 1.695vw;
		left: 1.695vw;
	}

	#idx_verification .verification_frame .verification_ttl {
		/* font-size: 3.911vw; */
		font-size: 150%;
		line-height: 1.47;
		margin-bottom: 6.78vw;
	}

	#idx_verification .verification_frame .verification_ttl::before {
		background-image: url(../images/top_line_04_sp.png);
		width: 65.189vw;
		bottom: -3.39vw;
	}

	#idx_verification .verification_frame .verification_txt p {
		/* font-size: 2.608vw; */
		line-height: 1.7;
	}

	#idx_verification .verification_frame .verification_txt p:not(:last-child) {
		margin-bottom: 4.433vw;
	}

	#idx_verification .verification_frame .primary_btn {
		margin-top: 5.085vw;
	}

	#idx_points {
		padding: 15.385vw 0 14.472vw;
	}

	#idx_points .main_ttl img {
		width: 88.136vw;
	}

	#idx_points .main_ttl {
		margin-bottom: 6.519vw;
	}

	#idx_points .points_list {
		max-width: 91.134vw;
	}

	#idx_points .points_list .points_card {
		max-width: 25.684vw;
		height: 25.684vw;
		margin: 0 2.347vw 4.694vw;
	}

	#idx_points .points_list .points_card::before {
		border-radius: 1.956vw;
		top: 0.782vw;
		left: 0.782vw;
	}

	#idx_points .points_list .points_card a {
		border-radius: 1.956vw;
		padding: 2.216vw 1.043vw 0;
	}

	#idx_points .points_list .points_card a::before {
		border-radius: 1.956vw;
		border-width: 0.391vw;
	}

	#idx_points .points_list .points_card a::after {
		width: 3.39vw;
		height: 3.39vw;
		bottom: 1.304vw;
		right: 1.173vw;
	}

	#idx_points .points_list .points_card .card_title img {
		width: 20.6vw;
	}

	#idx_points .points_list .points_card figure {
		top: -0.391vw;
	}

	#idx_points .points_list .points_card figure img {
		width: 15.126vw;
	}

	#footer .footer_info {
		padding: 10.952vw 0 6.128vw;
	}

	#footer .footer_info .f_logo {
		margin-bottom: 4.563vw;
	}

	#footer .footer_info .f_logo img {
		width: 36.897vw;
	}

	#footer .footer_info .f_txt {
		font-size: 2.347vw;
		line-height: 1.56;
		margin-bottom: 1.695vw;
	}

	#footer address {
		font-size: 1.956vw;
	}
}

#index #main.content {
	background: #fff;
	font-family: 'Noto Sans JP', 'Noto Sans SC', sans-serif;
	line-height: 1.5;
}
.container {
	max-width: 1100px;
	padding: 0 20px;
	margin: 0 auto;
}
.comic {
	background: url(../images/meaning/bg_01.jpg) repeat-x center top;
	padding: 0 0 95px;
}
.comic_heading {
	/* padding: 65px 0 30px; */
	padding: 65px 0;
	text-align: center;
	background: url(../images/manga/ico_01.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico2 {
	background: url(../images/manga/ico_02.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico3 {
	background: url(../images/manga/ico_03.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico4 {
	background: url(../images/manga/ico_04.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico5 {
	background: url(../images/manga/ico_05.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico6 {
	background: url(../images/manga/ico_06.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico7 {
	background: url(../images/manga/ico_07.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico8 {
	background: url(../images/manga/ico_08.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico9 {
	background: url(../images/manga/ico_09.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico10 {
	background: url(../images/manga/ico_10.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico11 {
	background: url(../images/manga/ico_11.png) no-repeat right 105px bottom;
}
.comic_heading.is-ico12 {
	background: url(../images/manga/ico_12.png) no-repeat right 105px bottom;
}
.comic_heading dd {
	font-size: 40px;
	font-weight: bold;
	max-width: 620px;
	margin: 0 auto 25px;
}
.comic_heading h1 {
	font-size: 28px;
	font-weight: bold;
}
.comic_heading p {
	font-size: 40px;
	font-weight: bold;
	max-width: 620px;
	margin: 0 auto 25px;
}
.comic_banner {
	background-color: #fff;
	border: 8px solid #212528;
	padding: 7px;
	margin: 0 0 38px;
	text-align: center;
	position: relative;
}
.comic_mask {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	font-size: 0;
	color: transparent;
}
.otherStory {
	display: flex;
	flex-wrap: wrap;
	/* align-items: center; */
	justify-content: space-between;
}
.otherStory li {
	width: calc(50% - 188px);
}
.otherStory li:nth-child(2) {
	width: 376px;
}
.btn {
	background-color: #212528;
	color: #ffd902;
	width: 100%;
	height: 70px;
	border-radius: 6px;
	font-size: 26px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.3s;
}
.btn span {
	display: inline-block;
	padding: 0 0 5px 30px;
}
.is-hori span {
	background: url(../images/manga/hori.png) no-repeat left center;
}
.is-vert span {
	background: url(../images/manga/vert.png) no-repeat left 5px center;
}
.otherStory .btn:not(:last-child) {
	margin-bottom: 15px;
}
.storyLink {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.3;
	padding: 0 0 0 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 40px;
	background: url(../images/meaning/btn_left.png) no-repeat left center;
}
.storyLink span {
	font-size: 80%;
}
.storyLink#nextStory {
	text-align: right;
	padding: 0 60px 0 0;
	background: url(../images/meaning/btn_right.png) no-repeat right center;
}
@media screen and (min-width: 900px) {
	.btn:hover {
		background-color: #ffd902;
		color: #212528;
	}
	.is-hori:hover span {
		background: url(../images/manga/hori_on.png) no-repeat left center;
	}
	.is-vert:hover span {
		background: url(../images/manga/vert_on.png) no-repeat left 5px center;
	}
	.storyLink:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 1000px) {
	.comic_heading {
		background-position: right bottom !important;
	}
	.otherStory li {
		width: 50%;
		order: 1;
	}
	.otherStory li:nth-child(2) {
		/* width: 284px; */
		margin: 40px auto 0;
		order: 3;
	}
}
@media screen and (max-width: 767px) {
	.container {
		padding: 0 15px;
	}
	.comic {
		padding: 0 0 50px;
		background-position: center top -185px;
	}
	.comic_heading {
		padding: 30px 0;
		background-size: 87px auto !important;
	}
	.comic_heading h1 img {
		width: 148px;
	}
	.comic_heading dd {
		font-size: 26px;
		margin: 0 0 15px;
	}
	.comic_heading p {
		font-size: 26px;
		margin: 0 0 15px;
	}
	.comic_heading p.mb45 {
		font-size: 26px;
		margin: 0 0 45px;
	}
	/* .comic_heading h1 {
    font-size: 18px;
    text-align: left;
    padding: 0 80px 0 0;
  } */
	.comic_banner {
		border: 3px solid #212528;
		padding: 2px;
		margin: 0 0 20px;
	}
	.otherStory li {
		width: 100%;
		margin: 0 0 20px;
	}
	.otherStory li:nth-child(2) {
		margin: 0 auto;
	}
	.btn {
		height: 40px;
		border-radius: 4px;
		font-size: 16px;
	}
	.otherStory .btn:not(:last-child) {
		margin-bottom: 10px;
	}
	.btn span {
		padding: 0 0 0px 20px;
	}
	.is-hori span {
		background-size: 13px 7px;
	}
	.is-vert span {
		background-size: 7px 13px;
	}
	.storyLink {
		font-size: 16px;
	}
}
/* chap */
.chap {
	padding: 142px 0;
	background: url(../images/meaning/bg_02.png) no-repeat center top #ffd902;
}
.chap-box {
	margin: 0 0 40px;
	background-color: #fff;
	border: 8px solid #212528;
	border-radius: 15px;
}
.chap-box:last-child {
	margin: 0;
}
.chap-heading {
	height: 132px;
	display: flex;
	align-items: center;
	padding: 0 100px 0 57px;
	/* font-size: 32px; */
	font-size: 200%;
	font-weight: bold;
	line-height: 1.25;
	background: url(../images/meaning/btn_plus.png) no-repeat right 36px center;
}
.chap-heading.is-open {
	background: url(../images/meaning/btn_mins.png) no-repeat right 36px center;
}
.j-heading {
	cursor: pointer;
}
.j-content {
	display: none;
}
.chap-content {
	/* font-size: 18px; */
	font-size: 112.5%;
	font-weight: bold;
	line-height: 1.7;
	padding: 50px 57px 57px;
	border-top: 2px solid #212528;
	display: none;
}
.is-not-toggle .chap-content {
	display: block;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.fz18 {
	font-size: 112.5%;
}
.fz20 {
	font-size: 125%;
}
.fz22 {
	font-size: 137.5%;
}
.chap-case {
	margin: 50px 0 80px;
}
.chap-case:last-child {
	margin: 0;
}
.chap-content h3 {
	text-align: center;
	font-size: 137.5%;
	background-color: #8d7a56;
	color: #fff;
	border-radius: 6px;
	padding: 5px 10px 7px;
	margin: 0 0 1em;
}
.label {
	text-align: center;
	font-size: 112.5%;
	background-color: #ffd902;
	border-radius: 6px;
	padding: 17px;
}
.chap-tbl1 {
	border: 4px solid #212528;
	border-radius: 6px;
}
.chap-tbl1.is-not-bb {
	border-bottom: none;
}
.chap-tbl1-content {
	display: flex;
	flex-wrap: wrap;
}
.chap-tbl1-content dl {
	width: 50%;
	border-bottom: 4px solid #212528;
}
.chap-tbl1-content dl:nth-child(2n) {
	border-left: 4px solid #212528;
}
.chap-tbl1-content dt {
	text-align: center;
	font-size: 125%;
	padding: 5px 32px 9px;
	background-color: #ffd902;
	border-bottom: 4px solid #212528;
}
.chap-tbl1-content dd {
	padding: 25px 32px 32px;
}
.chap-tbl1-footer {
	padding: 25px 50px;
}
.dots li {
	padding: 0 0 0 28px;
	margin: 0 0 20px;
	position: relative;
}
.dots li::before {
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 3px solid #000;
	position: absolute;
	left: 0;
	top: 7px;
}
.dots li:last-child {
	margin: 0;
}
.chap-content a {
	color: #378cb9;
	text-decoration: underline;
}

.mv_note {
	font-size: 14px;
}

.mv_note a {
	color: #378cb9;
	text-decoration: underline;
}

@media screen and (max-width: 1000px) {
	.chap-heading {
		padding: 0 100px 0 30px;
		background-position: right 30px center;
		font-size: 180%;
	}
	.chap-content {
		padding: 50px 30px 57px;
	}
	.chap-tbl1-content dt {
		padding: 9px 20px;
	}
	.chap-tbl1-content dd {
		padding: 25px 20px 32px;
	}
	.chap-tbl1-footer {
		padding: 25px 30px;
	}
}
@media screen and (max-width: 767px) {
	.chap {
		padding: 70px 0;
		background-size: 62px 25px;
	}
	.chap-box {
		margin: 0 0 20px;
		border: 4px solid #212528;
		border-radius: 8px;
	}
	.chap-heading {
		padding: 15px 60px 15px 15px;
		height: auto;
		background-size: 30px;
		background-position: right 15px center;
	}
	.chap-heading.is-open {
		background-size: 30px;
		background-position: right 15px center;
	}
	.j-heading {
		cursor: pointer;
	}
	.chap-content {
		padding: 15px;
		border-top: 2px solid #212528;
	}
	.chap-case {
		margin: 25px 0 40px;
	}
	.label {
		padding: 10px 15px;
	}
	.chap-tbl1 {
		border: 2px solid #212528;
		border-radius: 3px;
	}
	.chap-tbl1-content {
		/* display: block; */
	}
	.chap-tbl1-content dl {
		/* width: 100%; */
		border-bottom: 1px solid #212528;
	}
	.chap-tbl1-content dl:nth-child(2n) {
		border-left: 1px solid #212528;
	}
	.chap-tbl1-content dt {
		padding: 9px 15px;
		border-bottom: 1px solid #212528;
	}
	.chap-tbl1-content dd {
		padding: 5px;
	}
	.chap-tbl1-footer {
		padding: 15px;
	}
	.dots li {
		padding: 0 0 0 15px;
		margin: 0 0 15px;
		position: relative;
	}
	.dots li::before {
		width: 10px;
		height: 10px;
		border: 2px solid #ffd902;
		top: 4px;
	}
	.chap .mb20 {
		margin-bottom: 10px;
	}
}
.tbl {
	width: 100%;
	border-collapse: collapse;
	border-radius: 6px;
	border: 4px solid #212528;
}
.tbl th {
	text-align: center;
	font-size: 125%;
	padding: 5px 20px 9px;
	background-color: #ffd902;
	border: 4px solid #212528;
}
.tbl td {
	width: 25%;
	padding: 0 20px;
	border-left: 4px solid #212528;
}
.tbl tr:first-child td {
	padding-top: 25px;
}
.tbl tr:last-child td {
	padding-bottom: 40px;
}
@media screen and (max-width: 1000px) {
	/* .tbl td {
    padding: 20px 10px 40px;
    font-size: 80%;
  } */
}
@media screen and (max-width: 767px) {
	.tbl {
		border: 2px solid #212528;
	}
	.tbl th {
		padding: 5px;
		border: 2px solid #212528;
	}
	.tbl td {
		border-left: 2px solid #212528;
		padding: 0 5px;
		font-size: 80%;
	}
	.tbl td:nth-child(1) {
		width: 30%;
	}
	.tbl td:nth-child(2) {
		width: 20%;
	}
	.tbl tr:first-child td {
		padding-top: 15px;
	}
	.tbl tr:last-child td {
		padding-bottom: 15px;
	}
}

.summary {
	padding: 110px 0 95px;
	background: url(../images/meaning/bg_03.png) no-repeat center top #f1f5f6;
}
.summary-box {
	padding: 0 8px 8px;
	background-color: #378cb9;
	border-radius: 15px;
}
.summary-box h2 {
	font-size: 250%;
	font-weight: bold;
	text-align: center;
	color: #fff;
	padding: 15px;
	position: relative;
}
.summary h2::before {
	content: '';
	width: 221px;
	height: 170px;
	background: url(../images/meaning/ico_02.png) no-repeat center;
	position: absolute;
	bottom: 0;
	right: 98px;
}
.summary-content {
	padding: 45px 57px;
	background-color: #fff;
	border-radius: 0 0 15px 15px;
	font-size: 150%;
	font-weight: bold;
}
.summary-content li {
	padding: 5px 0 20px 70px;
	margin: 0 0 20px;
	border-bottom: 2px solid #e0e5e9;
	background: url(../images/meaning/ico_check.png) no-repeat left top;
}
.summary-content li:last-child {
	padding-bottom: 0;
	margin: 0;
	border-bottom: none;
}
.reportbanner {
	margin: 95px auto;
	max-width: 630px;
	border: 8px solid #378cb9;
	border-radius: 15px;
	padding: 35px 65px;
	background: url(../images/meaning/ico_03.png) no-repeat right 65px center;
}
.reportbanner dl {
	max-width: 326px;
	text-align: center;
}
.reportbanner dl dt {
	font-size: 225%;
	font-weight: 500;
	line-height: 1.25;
	color: #378cb9;
	margin: 0 0 10px;
}
.reportbanner a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	color: #fff;
	background-color: #378cb9;
	font-size: 112.5%;
	font-weight: 500;
	transition: 0.3s;
}
.reportbanner a span {
	display: block;
	padding: 0 0 0 35px;
	background: url(../images/meaning/ico_arr.png) no-repeat left center;
}
.reportbanner a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 1000px) {
	.summary h2::before {
		right: 0;
	}
	.summary-content {
		padding: 45px 40px;
	}
}
@media screen and (max-width: 767px) {
	.summary {
		padding: 55px 0 40px;
		background-size: 62px 25px;
	}
	.summary-box {
		padding: 0 4px 4px;
		border-radius: 8px;
	}
	.summary h2::before {
		width: 110px;
		height: 85px;
		background-size: cover;
	}
	.summary-content {
		padding: 20px 15px;
		border-radius: 0 0 8px 8px;
	}
	.summary-content li {
		padding: 0 0 10px 40px;
		margin: 0 0 10px;
		border-bottom: 1px solid #e0e5e9;
		background-size: 29px 22px;
	}
	.reportbanner {
		margin: 40px 15px;
		border: 4px solid #378cb9;
		border-radius: 8px;
		padding: 100px 30px 15px;
		background-position: center top 15px;
		background-size: 58px 72px;
	}
	.reportbanner dl {/*20241224 yuya*/
		margin: 0 auto;
	}
	.reportbanner a {
		height: 40px;
	}
	.reportbanner a span {
		padding: 0 0 0 25px;
		background-size: 12px 8px;
	}
	.reportbanner a:hover {
		opacity: 1;
	}
}
/* is-generation */
.pagetitle {
	background: url(../images/generation/bg_01.jpg) repeat-x center bottom #ffd902;
	font-weight: bold;
}
.pagetitle .container {
	max-width: 860px;
	min-height: 402px;
	padding: 65px 20px 25px;
}
.is-center .container {
	padding: 65px 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.is-generation .pagetitle .container {
	background: url(../images/generation/ico_01.png) no-repeat right 20px bottom;
}
.is-generation .pagetitle .container.is-bg2 {
	background: url(../images/generation/ico_01b.png) no-repeat right 20px bottom;
}
.is-generation .pagetitle .container.is-bg3 {
	background: url(../images/generation/ico_03.png) no-repeat right 20px bottom;
}
.is-generation .pagetitle .container.is-bg4 {
	background: url(../images/generation/ico_04.png) no-repeat right 20px bottom;
}
.is-generation .pagetitle .container.is-bg5 {
	background: url(../images/generation/ico_05.png) no-repeat right 20px bottom;
}
.pagetitle h1 {
	text-shadow: -2px 0 #fff, 0 2px #fff, 2px 0 #fff, 0 -2px #fff;
	font-size: 46px;
	line-height: 1.25;
	margin: 0 0 15px;
}
.pagetitle p {
	font-size: 112.5%;
	line-height: 2.1;
	max-width: 570px;
	text-decoration: underline;
}
.entry {
	padding: 0 0 180px 0;
	font-size: 112.5%;
	font-weight: bold;
}
/* .entry.document {
  font-size: 100%;
} */
.entry .container:not(.document .container) {
	max-width: 820px;
	padding: 0 40px;
}
.entry h2 {
	border: 4px solid #212528;
	background-color: #ffd902;
	text-align: center;
	/* font-size: 175%; */
	font-size: 155.5%;
	font-weight: bold;
	padding: 9px 12px 12px;
	border-radius: 35px;
	margin: 80px 0 60px;
	position: relative;
	box-shadow: 4px 4px 0px 0px #f2e9d8;
	-webkit-box-shadow: 4px 4px 0px 0px #f2e9d8;
	-moz-box-shadow: 4px 4px 0px 0px #f2e9d8;
}
.entry h2:first-child {
	margin-top: 0;
}
.entry h2::after {
	content: '';
	width: 32px;
	height: 29px;
	background: url(../images/generation/ico_quote.png) no-repeat center;
	position: absolute;
	left: 80px;
	bottom: -29px;
}
.entry h2 small {
	font-size: 65%;
}
.entry h3 {
	font-size: 120%;
	text-align: center;
	margin: 0 0 10px;
}
.entry p {
	line-height: 1.67;
}
.entry p small {
	font-weight: 500;
}
.entry a {
	color: #378cb9;
	text-decoration: underline;
}
.entry a:hover {
	text-decoration: none;
}
a.link_out::after {
	content: '';
	width: 16px;
	height: 16px;
	background: url(../images/generation/ico_blank.png) no-repeat center;
	display: inline-block;
	margin: 0 0 0 10px;
}
.columnbox {
	border: 4px solid #e0e5e9;
	border-radius: 8px;
	padding: 45px 60px;
	position: relative;
	margin: 40px 0 80px;
}
.columnbox::after {
	content: '';
	width: 135px;
	height: 195px;
	position: absolute;
	bottom: -5px;
}
.cat-right::after {
	right: -162px;
	background: url(../images/generation/ico_02.png) no-repeat center;
}
.cat-left::after {
	left: -162px;
	background: url(../images/generation/ico_02.png) no-repeat center;
}
.c-orange {
	color: #f5a201;
}
.columnbox-ttl {
	font-size: 123%;
	margin: 0 0 10px;
}
.columnbox-ttl span {
	font-size: 72%;
	display: inline-block;
	padding: 0 15px;
	margin: 0 15px 0 0;
	background-color: #f5a201;
	color: #fff;
	border-radius: 5px;
	position: relative;
	top: -2px;
}
.entry ul:not(:last-child),
.entry ol:not(:last-child) {
	margin: 0 0 1.5em;
}
.step {
	font-size: 112%;
	text-align: center;
}
.step li {
	border: 4px solid #fcd68d;
	border-radius: 8px;
	margin: 0 0 53px;
	padding: 17px 10px 21px;
	position: relative;
}
.step li::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 33px 0 33px;
	border-color: #f5a401 transparent transparent transparent;
	position: absolute;
	left: 50%;
	bottom: -43px;
	margin: 0 0 0 -33px;
}
.step li:last-child {
	margin: 0 0 40px;
}
.step li:last-child::after {
	display: none;
}
.number-list li {
	list-style-type: decimal;
	/* margin-left: 1.8em; */
	margin-left: 20px;
}
@media screen and (max-width: 1000px) {
	.columnbox::after {
		width: 70px;
		height: 100px;
		background-size: contain;
		bottom: -40px;
	}
	.cat-right::after {
		right: -20px;
	}
	.cat-left::after {
		left: -20px;
	}
}
@media screen and (max-width: 767px) {
	.pagetitle {
		background-size: 100% auto;
	}
	.pagetitle .container {
		min-height: 200px;
		padding: 40px 15px 80px;
	}
	.is-generation .pagetitle .container {
		background-size: 112px auto !important;
	}
	.pagetitle h1 {
		font-size: 26px;
		margin: 0 0 10px;
	}
	.entry {
		padding: 40px 0 90px;
	}
	.entry .container {
		padding: 0 15px;
	}
	.entry h2 {
		padding: 10px;
		margin: 40px 0;
	}
	.entry h2:first-child {
		margin-top: 0;
	}
	.entry h2::after {
		left: 40px;
	}
	.entry .mb15 {
		margin: 0 0 10px;
	}
	.entry .mb20 {
		margin: 0 0 15px;
	}

	a.link_out::after {
		width: 12px;
		height: 12px;
		background-size: cover;
	}
	.columnbox {
		border: 2px solid #e0e5e9;
		border-radius: 4px;
		/* padding: 15px 15px 60px; */
		padding: 15px;
		margin: 20px 0;
	}
	.cat-right::after {
		right: -15px;
	}
	.cat-left::after {
		left: -15px;
	}

	/* .columnbox-ttl {
    margin: 0 0 10px;
  } */
	.columnbox-ttl span {
		padding: 0 10px;
		margin: 0 10px 0 0;
		border-radius: 3px;
		top: -1px;
	}

	.step li {
		border: 2px solid #fcd68d;
		border-radius: 4px;
		margin: 0 0 25px;
		padding: 15px 10px;
	}
	.step li::after {
		border-width: 12px 16px 0 16px;
		bottom: -20px;
		margin: 0 0 0 -16px;
	}
	.step li:last-child {
		margin: 0 0 20px;
	}
}
/* glossary */
.glossary {
	padding: 0 0 150px;
}
.glossary h1 {
	padding: 70px 0;
	font-size: 312.5%;
	font-weight: bold;
}
.glossary-list {
	margin: 0 0 55px;
}
.glossary-list:last-child {
	margin: 0;
}
.glossary-list ul {
	display: flex;
	flex-wrap: wrap;
}
.glossary-list ul li {
	width: 33.33%;
	margin: 10px 0 0;
}
.glossary-list ul li a {
	display: inline-block;
	font-weight: 500;
	padding: 0 0 0 15px;
	background: url(../images/ico_arr1.png) no-repeat left center;
	color: #054ba4;
}
.title_related {
	font-size: 150%;
	font-weight: bold;
	padding: 10px 0;
	border-top: 3px solid #f5a201;
}
@media screen and (max-width: 1000px) {
	.glossary-list ul li {
		width: 50%;
	}
}
@media screen and (max-width: 767px) {
	.glossary h1 {
		padding: 30px 0;
	}
	.glossary-list {
		margin: 0 0 30px;
	}
	.glossary-list ul li a {
		padding: 0 10px;
		background-position: left 3px;
	}
	.title_related {
		padding: 10px 0 5px;
		border-top: 2px solid #f5a201;
	}
}

.modal {
	max-width: 664px;
	margin: 0 auto;
	border: 4px solid #f5a201;
	border-radius: 30px;
	background-color: #fff;
	padding: 57px;
}
#comics_all_modal.modal {
	border: none;
	padding: 15px 32px;
	color: #2b2e38;
	border-radius: 0px;
	position: relative;
}
.modal.is-popup {
	max-width: 1044px;
}
.modal dt {
	font-size: 175%;
	font-weight: bold;
	border-bottom: 2px solid #d2d2d2;
	padding: 0 0 20px;
	margin: 0 0 20px;
	color: #f5a201;
}
.modal dd {
	font-size: 112.5%;
	line-height: 1.67;
	margin: 0 0 20px;
}
.modal dd a {
	color: #378cb9;
	text-decoration: underline;
}
.btn2 {
	width: 178px;
	height: 54px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	background: #378cb9;
	border-radius: 27px;
	box-shadow: 4px 6px 0 0 #206990;
	transition: all 0.3s ease;
	margin: 0 auto;
}
.btn2:hover {
	box-shadow: none;
}
#comics_all_modal .slick-arrow.slick-disabled {
	opacity: 0;
}
#comics_all_modal .slick-next {
	background: url(../images/prev.png) no-repeat center / 32px;
	left: -16px;
	right: inherit;
}
#comics_all_modal .slick-prev {
	background: url(../images/next.png) no-repeat center / 32px;
	right: -16px;
}
/* #comics_all_modal .slick-dots {
	flex-direction: row-reverse;
} */
@media screen and (max-width: 767px) {
	.modal {
		margin: 0 20px;
		border: 2px solid #f5a201;
		border-radius: 15px;
		padding: 20px;
	}
	#comics_all_modal.modal {
		padding: 0;
	}
	.modal dt {
		padding: 0 0 10px;
		margin: 0 0 10px;
	}
	.btn2 {
		width: 140px;
		height: 40px;
		font-size: 16px;
		border-radius: 20px;
	}
}

/* document */
.is-page .head_link {
	border-bottom: 1px solid #e7e7e7;
}
.document-title {
	padding: 110px 20px 30px 20px;
}
.document-title h1 {
	font-size: 312.5%;
	font-weight: bold;
	text-align: center;
	margin: 0 0 40px;
}
.anchor {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.anchor li {
	margin: 0 12px;
}
.anchor li a {
	font-size: 112.5%;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 374px;
	height: 66px;
	border-radius: 6px;
	background: url(../images/document/btn_down.png) no-repeat right 22px center #378cb9;
	color: #fff;
}
@media screen and (min-width: 767px) {
	.anchor li a:hover {
		opacity: 0.7;
	}
}
.document {
	padding: 120px 0;
	background-color: #ffd902;
}
.document-box {
	padding: 70px 80px 100px;
	background-color: #fff;
	border-radius: 10px;
	margin: 0 0 80px;
}
.document-box:last-child {
	margin: 0;
}
.title {
	text-align: center;
	font-size: 212.5%;
	color: #378cb9;
	font-weight: bold;
	margin: 0 0 55px;
}
.title span {
	display: inline-block;
	border-bottom: 4px solid #378cb9;
	padding: 0 0 10px;
}
.title small {
	font-size: 60%;
}
.bnr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 55px;
	margin: 0 0 65px;
	border-bottom: 2px solid #e0e5e9;
}
.bnr li {
	width: 48%;
}
.bnr a {
	display: block;
	transition: 0.3s;
}
@media screen and (min-width: 767px) {
	.bnr a:hover {
		opacity: 0.7;
	}
}
.document-box h3 {
	font-size: 125%;
	font-weight: bold;
	margin: 0 0 25px;
}
.pdf-list li {
	margin: 0 0 15px;
}
.pdf-list li:last-child {
	margin: 0;
}
.pdf-list a {
	display: inline-block;
	padding: 0 0 10px;
	border-bottom: 2px solid #b6cfe1;
	font-size: 112.5%;
	font-weight: bold;
	color: #378cb9;
	transition: 0.3s;
}
@media screen and (min-width: 767px) {
	.pdf-list a:hover {
		border-bottom: 2px solid #fff;
	}
}
.pdf-list a span {
	display: inline-block;
	font-size: 77.8%;
	background-color: #378cb9;
	color: #fff;
	margin: 0 15px 0 0;
	padding: 0 5px;
}
.pamphlet {
	margin: 0 0 90px;
}
.pamphlet:last-child {
	margin: 0;
}
.pamphlet p,
.subtitle {
	text-align: center;
	font-size: 112.5%;
	font-weight: bold;
	margin: 0 0 35px;
}
.pamphlet p {
	font-size: 125%;
}
.pamphlet h3 {
	font-size: 137.5%;
	text-align: center;
	background-color: #8d7a56;
	color: #fff;
	border-radius: 6px;
	padding: 8px 10px 12px;
}
.pamphlet ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.pamphlet ul li {
	width: 47.2%;
}
.feature-img {
	margin: 0 0 20px;
}
.pamphlet li a {
	font-size: 112.5%;
	font-weight: bold;
	color: #378cb9;
	/* text-decoration: underline; */
}
.pamphlet li a span {
	border-bottom: 1px solid #378cb9;
}
.sp {
	display: none;
}
@media screen and (min-width: 767px) {
	.pamphlet li a:hover {
		text-decoration: none;
	}
}
@media screen and (max-width: 1000px) {
	.anchor {
		justify-content: space-between;
	}
	.anchor li {
		margin: 0;
		width: 49%;
	}
	.anchor li a {
		width: 100%;
		background-position: right 15px center;
	}
	.document-box {
		padding: 70px 35px;
	}
}
@media screen and (max-width: 767px) {
	.document-title {
		padding: 50px 0;
	}
	.document-title h1 {
		margin: 0 0 20px;
	}
	.anchor li a {
		height: auto;
		min-height: 40px;
		border-radius: 3px;
		background-size: 15px;
		background-position: right 5px center;
		/* justify-content: flex-start; */
		padding: 5px 20px 5px 10px;
	}
	.document {
		padding: 60px 0;
	}
	.document-box {
		padding: 35px 20px;
		border-radius: 5px;
		margin: 0 0 40px;
	}
	.title {
		margin: 0 0 25px;
	}
	.title span {
		border-bottom: 2px solid #378cb9;
	}
	.bnr {
		padding: 0 0 25px;
		margin: 0 0 35px;
		border-bottom: 1px solid #e0e5e9;
	}
	.bnr li {
		width: 100%;
		margin: 0 0 10px;
	}
	.bnr li:last-child {
		margin: 0;
	}
	.document-box h3 {
		margin: 0 0 15px;
	}
	.pdf-list li {
		margin: 0 0 10px;
	}
	.pdf-list a {
		border-bottom: 1px solid #b6cfe1;
	}
	.pdf-list a span {
		margin: 0 10px 0 0;
	}
	.pamphlet {
		margin: 0 0 40px;
	}
	.pamphlet p,
	.subtitle {
		margin: 0 0 20px;
	}
	.pamphlet h3 {
		border-radius: 3px;
		padding: 8px 5px;
	}
	.feature-img {
		margin: 0 0 10px;
	}
	.pamphlet li a::after,
	.pdf-list a:after {
		margin: 0 0 0 5px;
	}
	.pamphlet li a::after {
		margin: 4px 0 0 5px;
	}
	.sp {
		display: block;
	}
	.pc {
		display: none;
	}
}
.figure_middle.right {
	float: right;
	margin-left: 1em;
}
.talk span {
	display: inline-block;
	width: calc(100% - 105px);
	vertical-align: middle;
	margin-left: 25px;
	border: solid 2px #aaa;
	border-radius: 10px;
	padding: 8px 15px;
}
@media screen and (max-width: 767px) {
	.figure_middle.left,
	.figure_middle.right {
		margin: 0 auto 1rem;
		width: 66.66% !important;
		height: auto !important;
		float: none !important;
		display: block;
	}
	.talk img {
		height: 6rem !important;
		width: auto !important;
	}
	.talk span {
		display: block;
		width: auto;
		margin: 0;
	}
}
.table_01 {
	width: 100%;
	border-collapse: collapse;
	border-radius: 6px;
	border: 4px solid #212528;
}
.table_01 th {
	text-align: center;
	padding: 15px 20px;
	background-color: #ffd902;
	border: 4px solid #212528;
	vertical-align: middle;
}
.table_01 thead th {
	font-size: 125%;
	padding: 5px 20px 9px;
}
.table_01 td {
	padding: 15px 20px;
	border-left: 4px solid #212528;
	border-bottom: 4px solid #212528;
}
@media screen and (max-width: 767px) {
	.table_01 {
		border: 2px solid #212528;
	}
	.table_01 th {
		padding: 5px;
		border: 2px solid #212528;
	}
	.table_01 td {
		border-left: 2px solid #212528;
		border-bottom: 2px solid #212528;
		padding: 5px;
		font-size: 80%;
	}
}
.bold {
	font-weight: 900;
}
.check {
	text-indent: -1em;
	padding-left: 1em;
}

.slick-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: rgba(255, 255, 255, 0.5);
	width: 100%;
	padding: 10px 0;
}
.slick-dots li {
	width: 12px;
	height: 12px;
	border-radius: 100%;
	margin: 0 9px;
	background-color: #000;
	position: relative;
}
.slick-dots li.slick-active {
	background-color: #ffd902;
}
.slick-dots li button {
	opacity: 0;
}
.slick-arrow {
	font-size: 0;
	line-height: 0;
	color: transparent;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	z-index: 3;
	margin: -16px 0 0;
}
.slick-prev {
	background: url(../images/prev.png) no-repeat center / 32px;
	left: -16px;
}
.slick-next {
	background: url(../images/next.png) no-repeat center / 32px;
	right: -16px;
}
.c-pager {
	text-align: center;
}
@media screen and (max-width: 767px) {
	.slick-dots {
		padding: 8px 0;
	}
	.slick-dots li {
		margin: 0 5px;
	}
}
.close-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	position: absolute;
	top: 0;
	right: 0;
	font-size: 0;
	color: transparent;
	background: url(../images/close.png) no-repeat center rgba(255, 255, 255, 0.5);
}
@media screen and (max-width: 767px) {
	.close-btn {
		top: -35px;
		background: url(../images/close.png) no-repeat center #fff;
	}
}

.check2 {
	text-indent: -1.6em;
	padding-left: 1.6em;
}
p.check02 {
	padding-left: 2em;
	text-indent: -2em;
}
p.check03 {
	padding-left: 2.6em;
	text-indent: -2.6em;
}
.check2-list {
	display: flex;
	flex-wrap: wrap;
	/* justify-content: space-between; */
	font-size: 80%;
	padding-left: 1.6em;
	font-weight: 500;
}
.check2-list li {
	line-height: 2;
	width: 40%;
}
.check2-list li:last-child {
	flex: 1;
}
@media screen and (min-width: 768px) {
	.ml100 {
		margin-left: 105px;
	}
}
@media screen and (max-width: 767px) {
	.check2-list {
		display: block;
	}
	.check2-list li,
	.check2-list li:last-child {
		width: 100%;
	}
}

.ring_check {
	padding: 0 0 0 28px;
	margin: 0 0 20px;
	position: relative;
}
.ring_check::before {
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 3px solid #000;
	position: absolute;
	left: 0;
	top: 7px;
}
.ring_check:last-child {
	margin: 0;
}
.gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.link_list {
	border-top: 3px solid #f5a201;
	padding: 20px 0 0;
}
.link_list.glossary-list ul li a {
	padding: 0;
	background: transparent;
}

.head_box_right {
	display: flex;
	align-items: center;
	padding: 4px 0 0;
}
.sns {
	display: flex;
	align-items: center;
	padding: 0 5px 0 0;
}
.sns li {
	margin: 0 10px 0 0;
}
.sns li a {
	display: block;
	transform-origin: 0.3s;
}
.sns li a:hover {
	opacity: 0.7;
}
#header #gnavi .head_report li a {
	font-weight: bold;
	color: #378cb9;
	border: none;
}
@media screen and (min-width: 980px) {
	#header #gnavi .sub_menu.sub_menu_report {
		padding: 42px 0;
	}
	#header #gnavi .sub.is-hover .overlay {
		background: transparent;
	}
}
@media screen and (min-width: 768px) {
	.head_report {
		justify-content: center;
	}
	.head_report li {
		margin: 0 50px;
	}
	#header #gnavi .head_report li a {
		font-size: 22px;
		font-weight: bold;
		color: #378cb9;
	}
	#header #gnavi .head_report li a:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 768px) {
	#header #gnavi .sub_menu ul.head_report {
		display: block;
	}
	#header #gnavi .head_report li {
		padding: 0 0 0 30px;
		margin: 0 0 10px;
		position: relative;
	}
	#header #gnavi .head_report li::before {
		content: '';
		width: 4px;
		height: 4px;
		border-radius: 50%;
		background-color: #212528;
		position: absolute;
		left: 4vw;
		top: 50%;
		margin: -2px 0 0;
	}
	#header #gnavi .head_report li a {
		padding: 0;
		color: #212528;
	}
	#header #gnavi .sns {
		width: 100%;
		justify-content: center;
	}
	#header #gnavi .sns a {
		border: none;
	}
}

.document-link {
	padding: 25px 0 35px;
	border-bottom: 2px solid #ddd;
}
.document-link.pt00 {
	padding-top: 0;
}
.document-link:last-child {
	padding-bottom: 0;
	border: none;
}
.document-link h4 {
	font-size: 112.5%;
	font-weight: bold;
	margin: 0 0 15px;
}
.document-link .pdf-list a {
	border-bottom: none;
	padding: 0 0 5px;
	position: relative;
}
.document-link .pdf-list a::before {
	content: '';
	width: 100%;
	height: 2px;
	background-color: #b6cfe1;
	position: absolute;
	left: 0;
	bottom: 0;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform 0.3s;
}
.document-link .pdf-list a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
@media screen and (max-width: 768px) {
	.document-link {
		padding: 20px 0 25px;
	}
}

/* v-chap */
.v-chap {
	text-align: center;
	height: 100vh;
	overflow: auto;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.v-chap .close-btn {
	top: 0;
}
.hidden {
	display: none;
}
@media screen and (min-width: 769px) {
	.v-chap .close-btn {
		background-color: transparent;
	}
}
@media screen and (max-width: 768px) {
	.v-chap-content {
		max-width: 88%;
		margin: 0 auto;
	}
	.v-chap-content img {
		position: relative;
		z-index: 2;
	}
	.v-chap .close-btn::after {
		content: '';
		width: 100%;
		height: 100vh;
		position: fixed;
		right: 0;
		top: 0;
	}
}
/* screenreader */
.screenreader {
	background-color: #ffd902;
}
.screenreader .comic_banner {
	border-radius: 15px;
	padding: 0;
}
.screenreader .chap-heading {
	background: transparent;
}
.screenreader .chat {
	font-size: 112.5%;
	font-weight: bold;
	line-height: 1.7;
	padding: 45px 57px 52px;
	border-top: 2px solid #212528;
}
.chat-section:not(:last-child) {
	padding-bottom: 50px;
	margin-bottom: 40px;
	border-bottom: 1px dotted #212528;
}
.message {
	display: flex;
}
.message:not(:last-child) {
	margin-bottom: 40px;
}
.message .avatar {
	width: 90px;
}
.message-row:not(:last-child) {
	margin-bottom: 15px;
}
.message-content {
	width: calc(100% - 90px);
}
.message-box {
	display: inline-block;
	padding: 24px 30px 25px;
	margin: 0 20px;
	background-color: #ffd902;
	border-radius: 6px;
	position: relative;
}
.message-box::before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 20px 8px 0;
	border-color: transparent #ffd902 transparent transparent;
	position: absolute;
	left: -20px;
	top: 50%;
	margin-top: -8px;
}
.message-box p {
	margin: 0;
}
.chat h3 {
	font-size: 150%;
	margin: 0 0 20px;
}
.message-note {
	font-size: 77.78%;
	margin: 5px 20px 0;
}
/* .message-personal */
.message-personal {
	flex-direction: row-reverse;
}
.message-personal .message-note {
	text-align: right;
}
.message-personal:not(:last-child) {
	margin-bottom: 30px;
}
.message-personal .message-content {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.message-personal .message-box {
	background-color: #dcdcdc;
}
.message-personal .message-box::before {
	border-width: 8px 0 8px 20px;
	border-color: transparent transparent transparent #dcdcdc;
	left: inherit;
	right: -20px;
}
@media screen and (min-width: 768px) {
	.screenreader {
		background-image: url(../images/screenreader/bg.png);
		background-repeat: repeat-x;
		background-position: center top 146px;
	}
}
@media screen and (max-width: 1000px) {
	.screenreader .chat {
		padding: 45px 30px 52px;
	}
}
@media screen and (max-width: 767px) {
	.screenreader .chat {
		padding: 25px 15px;
	}
	.chat-section:not(:last-child) {
		padding-bottom: 25px;
		margin-bottom: 20px;
	}
	.message:not(:last-child) {
		margin-bottom: 20px;
	}
	.message .avatar {
		width: 45px;
	}
	.message .avatar img {
		width: 41px;
	}
	.message-row:not(:last-child) {
		margin-bottom: 10px;
	}
	.message-content {
		width: calc(100% - 45px);
	}
	.message-box {
		padding: 10px 15px;
		margin: 0 10px;
	}
	.message-box::before {
		border-width: 4px 10px 4px 0;
		left: -10px;
		margin-top: -4px;
	}
	.chat h3 {
		margin: 0 0 15px;
	}
	.message-note {
		margin: 5px 10px 0;
	}
	/* .message-personal */
	.message-personal:not(:last-child) {
		margin-bottom: 15px;
	}
	.message-personal .message-box::before {
		border-width: 4px 0 4px 10px;
		right: -10px;
	}
}
/* chap-number */
.chap-header,
.chap-footer {
	padding: 50px 57px;
	font-size: 187.5%;
	font-weight: bold;
	display: flex;
	align-items: center;
}
.chap-footer {
	border-top: 2px solid #212528;
	padding: 45px 57px;
}
.chap-number {
	width: 120px;
	height: 80px;
	background-color: #ffd902;
	border-radius: 6px;
	margin: 0 30px 0 0;
	display: flex;
	align-items: flex-start;
	align-self: flex-start;
	padding: 18px 0 0 15px;
	line-height: 1;
}
.chap-number span {
	font-size: 155%;
	line-height: 0.8;
}
.chap-title {
	width: calc(100% - 150px);
}
.chap-title p {
	margin: 0;
}
@media screen and (max-width: 1000px) {
	.chap-header,
	.chap-footer {
		padding: 50px 30px;
	}
}
@media screen and (max-width: 767px) {
	.chap-header,
	.chap-footer {
		padding: 15px;
		display: block;
	}
	.chap-number {
		width: 70px;
		height: 45px;
		margin: 0 15px 0 0;
		padding: 10px 0 0 10px;
	}
	.chap-number span {
		font-size: 135%;
		line-height: 1;
	}
	.chap-title {
		width: auto;
		margin-top: 10px;
	}
}
/* comic-top */
.comic-top {
	padding: 70px 0 120px;
}
.comic-top p {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
}
.comic-top .main_sub {
	line-height: 1.8;
	margin: 60px 0;
}
.comic-top-list li {
	margin: 0 0 15px;
}
.comic-top-list li:last-child {
	margin-bottom: 0;
}
.comic-top-list li a {
	background-color: #fff;
	border: 6px solid #000;
	border-radius: 15px;
	display: flex;
	height: 106px;
	transition: 0.3s;
}
@media screen and (min-width: 768px) {
	.comic-top-list li a:hover {
		opacity: 0.7;
	}
}
.comic-top-title {
	width: 415px;
	height: 100%;
	background-color: #ffd902;
	display: flex;
	align-items: center;
	padding-left: 24px;
	border-radius: 10px 0 0 10px;
	border-right: 4px solid #000;
	position: relative;
}
.comic-top-title::after {
	content: '';
	width: 28px;
	height: 39px;
	background: url(../images/screenreader/top/arrow.jpg) no-repeat center;
	position: absolute;
	right: -4px;
	top: 50%;
	transform: translateY(-50%);
}
.comic-top-cont {
	background: url(../images/screenreader/top/q.png) no-repeat right 18px center;
	width: calc(100% - 415px);
	height: 100%;
	margin: 0;
	display: flex;
	align-items: center;
	padding-left: 40px;
}
@media screen and (max-width: 1000px) {
	.comic-top-list li a {
		display: block;
		height: auto;
		border: 3px solid #000;
		border-radius: 8px;
	}
	.comic-top-title {
		width: auto;
		height: auto;
		padding: 15px 20px 20px;
		border-radius: 6px 6px 0 0;
		border-right: none;
		border-bottom: 2px solid #000;
	}
	.comic-top-title::after {
		width: 20px;
		height: 14px;
		background: url(../images/screenreader/top/arrow_sp.jpg) no-repeat center / cover;
		right: 50%;
		top: inherit;
		bottom: -2px;
		transform: translate(50%, 0);
	}
	.comic-top-cont {
		width: auto;
		height: auto;
		min-height: 69px;
		padding: 15px 22px;
		background-size: 26px 35px;
		background-position: right 15px center;
	}
}
@media screen and (max-width: 767px) {
	.comic-top {
		padding: 50px 0 70px;
	}
	.comic-top h2 img {
		width: 203px;
	}
	.comic-top p {
		font-size: 13px;
	}
	.comic-top .main_sub {
		font-size: 14px;
		margin: 20px 0;
	}
	.comic-top-title img {
		width: 216px;
	}
}


/*20240925 yuya 追加*/

.kiyaku {
	font-family: 'Noto Sans JP', 'Noto Sans SC', sans-serif;
	align-items: center;
	font-weight: 400;
	color: #609bff;
	text-decoration: underline;
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
}

@media screen and (max-width:767px) { /*767以下*/
	.kiyaku {
		/*font-size: 1.20vw;*/
		font-size: 0.60rem;
		margin-left: 1.1vw;
		margin-top: 0.6vw;
		text-align: right;
	}

	.pconly {
		display: none;
	}
}
@media screen and (min-width:768px) { /*768以上*/
	.kiyaku {
		font-size: 0.75rem;
		margin-left: 1.1vw;
		
	}
	.sponly {
		display: none;
	}
}
.size12 {
	font-size: 12px;
}
.size13 {
	font-size: 13px;
}
.size14 {
	font-size: 14px;
}
.size15 {
	font-size: 15px;
}
.size14em {
	font-size: 1.4em;
}
.size10 {
	font-size: 10px;
}
.size16 {
	font-size: 16px;
}
.size18 {
	font-size: 18px;
}
.size20 {
	font-size: 20px;
}
.size25 {
	font-size: 25px;
}
.size30 {
	font-size: 30px;
}
.margin5 {
	margin: 5px;
}
.margin10 {
	margin: 10px;
}
.margin15 {
	margin: 15px;
}
.margin20 {
	margin: 20px;
}
.top5 {
	margin-top: 5px;
}
.top10 {
	margin-top: 10px;
}
.top15 {
	margin-top: 15px;
}
.top20 {
	margin-top: 20px;
}
.top30 {
	margin-top: 30px;
}
.top40 {
	margin-top: 40px;
}
.top50 {
	margin-top: 50px;
}
.top60 {
	margin-top: 60px;
}
.top70 {
	margin-top: 70px;
}
.top80 {
	margin-top: 80px;
}
.top90 {
	margin-top: 90px;
}
.top100 {
	margin-top: 100px;
}
.top110 {
	margin-top: 110px;
}
.top120 {
	margin-top: 120px;
}
.top130 {
	margin-top: 130px;
}
.top140 {
	margin-top: 140px;
}
.top150 {
	margin-top: 150px;
}
.top300 {
	margin-top: 300px;
}
.top350 {
	margin-top: 350px;
}
.bottom5 {
	margin-bottom: 5px;
}
.bottom10 {
	margin-bottom: 10px;
}
.bottom15 {
	margin-bottom: 15px;
}
.bottom20 {
	margin-bottom: 20px;
}
.bottom30 {
	margin-bottom: 30px;
}
.bottom40 {
	margin-bottom: 40px;
}
.bottom50 {
	margin-bottom: 50px;
}
.bottom60 {
	margin-bottom: 60px;
}
.bottom70 {
	margin-bottom: 70px;
}
.bottom80 {
	margin-bottom: 80px;
}
.bottom90 {
	margin-bottom: 90px;
}
.bottom100 {
	margin-bottom: 100px;
}

.left5 {
	margin-left: 5px;
}
.left10 {
	margin-left: 10px;
}
.left15 {
	margin-left: 15px;
}
.left16 {
	margin-left: 16px;
}
.left20 {
	margin-left: 20px;
}
.left25 {
	margin-left: 25px;
}
.left30 {
	margin-left: 30px;
}
.left35 {
	margin-left: 35px;
}
.left40 {
	margin-left: 40px;
}
.left50 {
	margin-left: 50px;
}
.left60 {
	margin-left: 60px;
}
.left70 {
	margin-left: 70px;
}
.left80 {
	margin-left: 80px;
}
.left90 {
	margin-left: 90px;
}
.left100 {
	margin-left: 100px;
}
.left110 {
	margin-left: 110px;
}
.left120 {
	margin-left: 120px;
}
.left125 {
	margin-left: 125px;
}
.left130 {
	margin-left: 130px;
}
.left140 {
	margin-left: 140px;
}
.left150 {
	margin-left: 150px;
}
.right5 {
	margin-right: 5px;
}
.right10 {
	margin-right: 10px;
}
.right15 {
	margin-right: 15px;
}
.right16 {
	margin-right: 16px;
}
.right20 {
	margin-right: 20px;
}
.right25 {
	margin-right: 25px;
}
.right30 {
	margin-right: 30px;
}
.right35 {
	margin-right: 35px;
}
.right40 {
	margin-right: 40px;
}
.right50 {
	margin-right: 50px;
}
.right60 {
	margin-right: 60px;
}
.right70 {
	margin-right: 70px;
}
.right80 {
	margin-right: 80px;
}
.right90 {
	margin-right: 90px;
}
.right100 {
	margin-right: 100px;
}
.width50 {
	width: 50px;
}
.width60 {
	width: 60px;
}
.width70 {
	width: 70px;
}
.width80 {
	width: 80px;
}
.width90 {
	width: 90px;
}
.width100 {
	width: 100px;
}
.width110 {
	width: 110px;
}
.width120 {
	width: 120px;
}
.width130 {
	width: 130px;
}
.width140 {
	width: 140px;
}
.width140 {
	width: 140px;
}
.width150 {
	width: 150px;
}
.width160 {
	width: 160px;
}
.width170 {
	width: 170px;
}
.width180 {
	width: 180px;
}
.width190 {
	width: 190px;
}
.width200 {
	width: 200px;
}
.width210 {
	width: 210px;
}
.width220 {
	width: 220px;
}
.width230 {
	width: 230px;
}
.width240 {
	width: 240px;
}
.width250 {
	width: 250px;
}
.width260 {
	width: 260px;
}
.width270 {
	width: 270px;
}
.width280 {
	width: 280px;
}
.width286 {
	width: 286px;
}
.width290 {
	width: 290px;
}
.width300 {
	width: 300px;
}
.width306 {
	width: 306px;
}
.width310 {
	width: 310px;
}
.width320 {
	width: 320px;
}
.width330 {
	width: 330px;
}
.width331 {
	width: 331px;
}
.width340 {
	width: 340px;
}
.width350 {
	width: 350px;
}
.width356 {
	width: 356px;
}
.width360 {
	width: 360px;
}
.width370 {
	width: 370px;
}
.width380 {
	width: 380px;
}
.width390 {
	width: 390px;
}
.width400 {
	width: 400px;
}
.width450 {
	width: 450px;
}
.width500 {
	width: 500px;
}
.width550 {
	width: 550px;
}
.width770 {
	width: 770px;
}
.height30 {
	height: 30px;
}
.height50 {
	height: 50px;
}
.height60 {
	height: 60px;
}
.height70 {
	height: 70px;
}
.height80 {
	height: 80px;
}
.height90 {
	height: 90px;
}
.height100 {
	height: 100px;
}
.height110 {
	height: 110px;
}
.height120 {
	height: 120px;
}
.height130 {
	height: 130px;
}
.height140 {
	height: 140px;
}
.height150 {
	height: 150px;
}
.height160 {
	height: 160px;
}
.height170 {
	height: 170px;
}
.height180 {
	height: 180px;
}
.height190 {
	height: 190px;
}
.height200 {
	height: 200px;
}
.height210 {
	height: 210px;
}
.height220 {
	height: 220px;
}
.height230 {
	height: 230px;
}
.height240 {
	height: 240px;
}
.height250 {
	height: 250px;
}
.height260 {
	height: 260px;
}
.height270 {
	height: 270px;
}
.height280 {
	height: 280px;
}
.height290 {
	height: 290px;
}
.height300 {
	height: 300px;
}
.height310 {
	height: 310px;
}
.height320 {
	height: 320px;
}
.height330 {
	height: 330px;
}
.height340 {
	height: 340px;
}
.height350 {
	height: 350px;
}
.height360 {
	height: 360px;
}
.height370 {
	height: 370px;
}
.height380 {
	height: 380px;
}
.height390 {
	height: 390px;
}
.height400 {
	height: 400px;
}
.height410 {
	height: 410px;
}
.height420 {
	height: 420px;
}
.height430 {
	height: 430px;
}
.height440 {
	height: 440px;
}
.height450 {
	height: 450px;
}
.height460 {
	height: 460px;
}
.height470 {
	height: 470px;
}
.height480 {
	height: 480px;
}
.height490 {
	height: 490px;
}
.height500 {
	height: 500px;
}
.height510 {
	height: 510px;
}
.height520 {
	height: 520px;
}
.height530 {
	height: 530px;
}
.height540 {
	height: 540px;
}
.height550 {
	height: 550px;
}
.height560 {
	height: 560px;
}
.height570 {
	height: 570px;
}
.height580 {
	height: 580px;
}
.height590 {
	height: 590px;
}
.height600 {
	height: 600px;
}
.half {
	width: 50%;
}
.clear {
	clear: both;
}

.line18 {
	line-height: 1.8em;
}

@media screen and (min-width: 601px) { /*601px以上*/
.pcbold {
	font-weight: bold;
}

.pcunderline {
	text-decoration: underline;
}

.pcsize12 {
	font-size: 12px;
}
.pcsize13 {
	font-size: 13px;
}
.pcsize14 {
	font-size: 14px;
}
.pcsize15 {
	font-size: 15px;
}
.pcsize14em {
	font-size: 1.pc4em;
}
.pcsize10 {
	font-size: 10px;
}
.pcsize16 {
	font-size: 16px;
}
.pcsize18 {
	font-size: 18px;
}
.pcsize20 {
	font-size: 20px;
}
.pcsize25 {
	font-size: 25px;
}
.pcsize30 {
	font-size: 30px;
}

.pcblock {
	display: block;
}

.pcright {
	float: right;
}
.pcleft {
	float: left;
}
.pctextleft {
	text-align: left;
}
.pctextright {
	text-align: right;
}
.pccenter {
	text-align: center;
}
.pcmargin5 {
	margin: 5px;
}
.pcmargin10 {
	margin: 10px;
}
.pcmargin15 {
	margin: 15px;
}
.pcmargin20 {
	margin: 20px;
}
.pctop5 {
	margin-top: 5px;
}
.pctop10 {
	margin-top: 10px;
}
.pctop20 {
	margin-top: 20px;
}
.pctop30 {
	margin-top: 30px;
}
.pctop40 {
	margin-top: 40px;
}
.pctop50 {
	margin-top: 50px;
}
.pctop60 {
	margin-top: 60px;
}
.pctop70 {
	margin-top: 70px;
}
.pctop80 {
	margin-top: 80px;
}
.pctop90 {
	margin-top: 90px;
}
.pctop100 {
	margin-top: 100px;
}
.pctop110 {
	margin-top: 110px;
}
.pctop120 {
	margin-top: 120px;
}
.pctop130 {
	margin-top: 130px;
}
.pctop140 {
	margin-top: 140px;
}
.pctop150 {
	margin-top: 150px;
}
.pcbottom5 {
	margin-bottom: 5px;
}
.pcbottom10 {
	margin-bottom: 10px;
}
.pcbottom20 {
	margin-bottom: 20px;
}
.pcbottom30 {
	margin-bottom: 30px;
}
.pcbottom40 {
	margin-bottom: 40px;
}
.pcbottom50 {
	margin-bottom: 50px;
}
.pcbottom60 {
	margin-bottom: 60px;
}
.pcbottom70 {
	margin-bottom: 70px;
}
.pcbottom80 {
	margin-bottom: 80px;
}
.pcbottom90 {
	margin-bottom: 90px;
}
.pcbottom100 {
	margin-bottom: 100px;
}

.pcleft5 {
	margin-left: 5px;
}
.pcleft10 {
	margin-left: 10px;
}
.pcleft15 {
	margin-left: 15px;
}
.pcleft16 {
	margin-left: 16px;
}
.pcleft20 {
	margin-left: 20px;
}
.pcleft25 {
	margin-left: 25px;
}
.pcleft30 {
	margin-left: 30px;
}
.pcleft35 {
	margin-left: 35px;
}
.pcleft40 {
	margin-left: 40px;
}
.pcleft50 {
	margin-left: 50px;
}
.pcleft60 {
	margin-left: 60px;
}
.pcleft70 {
	margin-left: 70px;
}
.pcleft80 {
	margin-left: 80px;
}
.pcleft90 {
	margin-left: 90px;
}
.pcleft100 {
	margin-left: 100px;
}
.pcleft110 {
	margin-left: 110px;
}
.pcleft120 {
	margin-left: 120px;
}
.pcleft125 {
	margin-left: 125px;
}
.pcleft130 {
	margin-left: 130px;
}
.pcleft140 {
	margin-left: 140px;
}
.pcleft150 {
	margin-left: 150px;
}
.pcright5 {
	margin-right: 5px;
}
.pcright10 {
	margin-right: 10px;
}
.pcright15 {
	margin-right: 15px;
}
.pcright16 {
	margin-right: 16px;
}
.pcright20 {
	margin-right: 20px;
}
.pcright25 {
	margin-right: 25px;
}
.pcright30 {
	margin-right: 30px;
}
.pcright35 {
	margin-right: 35px;
}
.pcright40 {
	margin-right: 40px;
}
.pcright50 {
	margin-right: 50px;
}
.pcright60 {
	margin-right: 60px;
}
.pcright70 {
	margin-right: 70px;
}
.pcright80 {
	margin-right: 80px;
}
.pcright90 {
	margin-right: 90px;
}
.pcright100 {
	margin-right: 100px;
}
.pcwidth50 {
	width: 50px;
}
.pcwidth60 {
	width: 60px;
}
.pcwidth70 {
	width: 70px;
}
.pcwidth80 {
	width: 80px;
}
.pcwidth90 {
	width: 90px;
}
.pcwidth100 {
	width: 100px;
}
.pcwidth110 {
	width: 110px;
}
.pcwidth120 {
	width: 120px;
}
.pcwidth130 {
	width: 130px;
}
.pcwidth140 {
	width: 140px;
}
.pcwidth140 {
	width: 140px;
}
.pcwidth150 {
	width: 150px;
}
.pcwidth160 {
	width: 160px;
}
.pcwidth170 {
	width: 170px;
}
.pcwidth180 {
	width: 180px;
}
.pcwidth190 {
	width: 190px;
}
.pcwidth200 {
	width: 200px;
}
.pcwidth210 {
	width: 210px;
}
.pcwidth220 {
	width: 220px;
}
.pcwidth230 {
	width: 230px;
}
.pcwidth240 {
	width: 240px;
}
.pcwidth250 {
	width: 250px;
}
.pcwidth260 {
	width: 260px;
}
.pcwidth270 {
	width: 270px;
}
.pcwidth280 {
	width: 280px;
}
.pcwidth286 {
	width: 286px;
}
.pcwidth290 {
	width: 290px;
}
.pcwidth300 {
	width: 300px;
}
.pcwidth306 {
	width: 306px;
}
.pcwidth310 {
	width: 310px;
}
.pcwidth320 {
	width: 320px;
}
.pcwidth330 {
	width: 330px;
}
.pcwidth331 {
	width: 331px;
}
.pcwidth340 {
	width: 340px;
}
.pcwidth350 {
	width: 350px;
}
.pcwidth356 {
	width: 356px;
}
.pcwidth360 {
	width: 360px;
}
.pcwidth370 {
	width: 370px;
}
.pcwidth380 {
	width: 380px;
}
.pcwidth390 {
	width: 390px;
}
.pcwidth400 {
	width: 400px;
}
.pcwidth450 {
	width: 450px;
}
.pcwidth500 {
	width: 500px;
}
.pcwidth550 {
	width: 550px;
}
.pcheight50 {
	height: 50px;
}
.pcheight60 {
	height: 60px;
}
.pcheight70 {
	height: 70px;
}
.pcheight80 {
	height: 80px;
}
.pcheight90 {
	height: 90px;
}
.pcheight100 {
	height: 100px;
}
.pcheight110 {
	height: 110px;
}
.pcheight120 {
	height: 120px;
}
.pcheight130 {
	height: 130px;
}
.pcheight140 {
	height: 140px;
}
.pcheight150 {
	height: 150px;
}
.pcheight160 {
	height: 160px;
}
.pcheight170 {
	height: 170px;
}
.pcheight180 {
	height: 180px;
}
.pcheight190 {
	height: 190px;
}
.pcheight200 {
	height: 200px;
}
.pcheight210 {
	height: 210px;
}
.pcheight220 {
	height: 220px;
}
.pcheight230 {
	height: 230px;
}
.pcheight240 {
	height: 240px;
}
.pcheight250 {
	height: 250px;
}
.pcheight260 {
	height: 260px;
}
.pcheight270 {
	height: 270px;
}
.pcheight280 {
	height: 280px;
}
.pcheight290 {
	height: 290px;
}
.pcheight300 {
	height: 300px;
}
.pcheight310 {
	height: 310px;
}
.pcheight320 {
	height: 320px;
}
.pcheight330 {
	height: 330px;
}
.pcheight340 {
	height: 340px;
}
.pcheight350 {
	height: 350px;
}
.pcheight360 {
	height: 360px;
}
.pcheight370 {
	height: 370px;
}
.pcheight380 {
	height: 380px;
}
.pcheight390 {
	height: 390px;
}
.pcheight400 {
	height: 400px;
}
.pcheight410 {
	height: 410px;
}
.pcheight420 {
	height: 420px;
}
.pcheight430 {
	height: 430px;
}
.pcheight440 {
	height: 440px;
}
.pcheight450 {
	height: 450px;
}
.pcheight460 {
	height: 460px;
}
.pcheight470 {
	height: 470px;
}
.pcheight480 {
	height: 480px;
}
.pcheight490 {
	height: 490px;
}
.pcheight500 {
	height: 500px;
}
.pcheight510 {
	height: 510px;
}
.pcheight520 {
	height: 520px;
}
.pcheight530 {
	height: 530px;
}
.pcheight540 {
	height: 540px;
}
.pcheight550 {
	height: 550px;
}
.pcheight560 {
	height: 560px;
}
.pcheight570 {
	height: 570px;
}
.pcheight580 {
	height: 580px;
}
.pcheight590 {
	height: 590px;
}
.pcheight600 {
	height: 600px;
}
.pchalf {
	width: 50%;
}
.pc55 {
	width: 55%;
}
.pcclear {
	clear: both;
}
}
@media screen and (max-width:600px) { /*600px以下*/
.spbold {
	font-weight: bold;
}

.spunderline {
	text-decoration: underline;
}
.spred{
	color: #FF0000;
}

.spblue{
	color: #0000FF;
}

.spblue2 {
	color: #0066CC;
}

.sppink {
	color: #FF3399;
}
.spblack {
	color: #535353;
}
.sporange {
	color: #ff3f08;
}
.spgreen {
	color: #006600;
}
.spbrown {
	color: #663333;
}
.spsize12 {
	font-size: 12px;
}
.spsize13 {
	font-size: 13px;
}
.spsize14 {
	font-size: 14px;
}
.spsize15 {
	font-size: 15px;
}

.spsize14em {
	font-size: 1.sp4em;
}

.spsize10 {
	font-size: 10px;
}

.spsize16 {
	font-size: 16px;
}
.spsize18 {
	font-size: 18px;
}
.spsize20 {
	font-size: 20px;
}
.spsize25 {
	font-size: 25px;
}
.spsize30 {
	font-size: 30px;
}

.spblock {
	display: block;
}

.spright {
	float: right;
}
.spleft {
	float: left;
}
.sptextleft {
	text-align: left;
}
.sptextright {
	text-align: right;
}
.spcenter {
	text-align: center;
}
.spmargin5 {
	margin: 5px;
}
.spmargin10 {
	margin: 10px;
}
.spmargin15 {
	margin: 15px;
}
.spmargin20 {
	margin: 20px;
}
.sptop5 {
	margin-top: 5px;
}
.sptop10 {
	margin-top: 10px;
}
.sptop20 {
	margin-top: 20px;
}
.sptop30 {
	margin-top: 30px;
}
.sptop40 {
	margin-top: 40px;
}
.sptop50 {
	margin-top: 50px;
}
.sptop60 {
	margin-top: 60px;
}
.sptop70 {
	margin-top: 70px;
}
.sptop80 {
	margin-top: 80px;
}
.sptop90 {
	margin-top: 90px;
}
.sptop100 {
	margin-top: 100px;
}
.sptop110 {
	margin-top: 110px;
}
.sptop120 {
	margin-top: 120px;
}
.sptop130 {
	margin-top: 130px;
}
.sptop140 {
	margin-top: 140px;
}
.sptop150 {
	margin-top: 150px;
}
.spbottom5 {
	margin-bottom: 5px;
}
.spbottom10 {
	margin-bottom: 10px;
}
.spbottom20 {
	margin-bottom: 20px;
}
.spbottom30 {
	margin-bottom: 30px;
}
.spbottom40 {
	margin-bottom: 40px;
}
.spbottom50 {
	margin-bottom: 50px;
}
.spbottom60 {
	margin-bottom: 60px;
}
.spbottom70 {
	margin-bottom: 70px;
}
.spbottom80 {
	margin-bottom: 80px;
}
.spbottom90 {
	margin-bottom: 90px;
}
.spbottom100 {
	margin-bottom: 100px;
}

.spleft5 {
	margin-left: 5px;
}
.spleft10 {
	margin-left: 10px;
}
.spleft15 {
	margin-left: 15px;
}
.spleft16 {
	margin-left: 16px;
}
.spleft20 {
	margin-left: 20px;
}
.spleft25 {
	margin-left: 25px;
}
.spleft30 {
	margin-left: 30px;
}
.spleft35 {
	margin-left: 35px;
}
.spleft40 {
	margin-left: 40px;
}
.spleft50 {
	margin-left: 50px;
}
.spleft60 {
	margin-left: 60px;
}
.spleft70 {
	margin-left: 70px;
}
.spleft80 {
	margin-left: 80px;
}
.spleft90 {
	margin-left: 90px;
}
.spleft100 {
	margin-left: 100px;
}
.spleft110 {
	margin-left: 110px;
}
.spleft120 {
	margin-left: 120px;
}
.spleft125 {
	margin-left: 125px;
}
.spleft130 {
	margin-left: 130px;
}
.spleft140 {
	margin-left: 140px;
}
.spleft150 {
	margin-left: 150px;
}
.spright5 {
	margin-right: 5px;
}
.spright10 {
	margin-right: 10px;
}
.spright15 {
	margin-right: 15px;
}
.spright16 {
	margin-right: 16px;
}
.spright20 {
	margin-right: 20px;
}
.spright25 {
	margin-right: 25px;
}
.spright30 {
	margin-right: 30px;
}
.spright35 {
	margin-right: 35px;
}
.spright40 {
	margin-right: 40px;
}
.spright50 {
	margin-right: 50px;
}
.spright60 {
	margin-right: 60px;
}
.spright70 {
	margin-right: 70px;
}
.spright80 {
	margin-right: 80px;
}
.spright90 {
	margin-right: 90px;
}
.spright100 {
	margin-right: 100px;
}
.spwidth50 {
	width: 50px;
}
.spwidth60 {
	width: 60px;
}
.spwidth70 {
	width: 70px;
}
.spwidth80 {
	width: 80px;
}
.spwidth90 {
	width: 90px;
}
.spwidth100 {
	width: 100px;
}
.spwidth110 {
	width: 110px;
}
.spwidth120 {
	width: 120px;
}
.spwidth130 {
	width: 130px;
}
.spwidth140 {
	width: 140px;
}
.spwidth140 {
	width: 140px;
}
.spwidth150 {
	width: 150px;
}
.spwidth160 {
	width: 160px;
}
.spwidth170 {
	width: 170px;
}
.spwidth180 {
	width: 180px;
}
.spwidth190 {
	width: 190px;
}
.spwidth200 {
	width: 200px;
}
.spwidth210 {
	width: 210px;
}
.spwidth220 {
	width: 220px;
}
.spwidth230 {
	width: 230px;
}
.spwidth240 {
	width: 240px;
}
.spwidth250 {
	width: 250px;
}
.spwidth260 {
	width: 260px;
}
.spwidth270 {
	width: 270px;
}
.spwidth280 {
	width: 280px;
}
.spwidth286 {
	width: 286px;
}
.spwidth290 {
	width: 290px;
}
.spwidth300 {
	width: 300px;
}
.spwidth306 {
	width: 306px;
}
.spwidth310 {
	width: 310px;
}
.spwidth320 {
	width: 320px;
}
.spwidth330 {
	width: 330px;
}
.spwidth331 {
	width: 331px;
}
.spwidth340 {
	width: 340px;
}
.spwidth350 {
	width: 350px;
}
.spwidth356 {
	width: 356px;
}
.spwidth360 {
	width: 360px;
}
.spwidth370 {
	width: 370px;
}
.spwidth380 {
	width: 380px;
}
.spwidth390 {
	width: 390px;
}
.spwidth400 {
	width: 400px;
}
.spwidth450 {
	width: 450px;
}
.spwidth500 {
	width: 500px;
}
.spwidth550 {
	width: 550px;
}
.spheight50 {
	height: 50px;
}
.spheight60 {
	height: 60px;
}
.spheight70 {
	height: 70px;
}
.spheight80 {
	height: 80px;
}
.spheight90 {
	height: 90px;
}
.spheight100 {
	height: 100px;
}
.spheight110 {
	height: 110px;
}
.spheight120 {
	height: 120px;
}
.spheight130 {
	height: 130px;
}
.spheight140 {
	height: 140px;
}
.spheight150 {
	height: 150px;
}
.spheight160 {
	height: 160px;
}
.spheight170 {
	height: 170px;
}
.spheight180 {
	height: 180px;
}
.spheight190 {
	height: 190px;
}
.spheight200 {
	height: 200px;
}
.spheight210 {
	height: 210px;
}
.spheight220 {
	height: 220px;
}
.spheight230 {
	height: 230px;
}
.spheight240 {
	height: 240px;
}
.spheight250 {
	height: 250px;
}
.pcheight260 {
	height: 260px;
}
.pcheight270 {
	height: 270px;
}
.spheight280 {
	height: 280px;
}
.spheight290 {
	height: 290px;
}
.spheight300 {
	height: 300px;
}
.spheight310 {
	height: 310px;
}
.spheight320 {
	height: 320px;
}
.spheight330 {
	height: 330px;
}
.spheight340 {
	height: 340px;
}
.spheight350 {
	height: 350px;
}
.spheight360 {
	height: 360px;
}
.spheight370 {
	height: 370px;
}
.spheight380 {
	height: 380px;
}
.spheight390 {
	height: 390px;
}
.spheight400 {
	height: 400px;
}
.spheight410 {
	height: 410px;
}
.spheight420 {
	height: 420px;
}
.spheight430 {
	height: 430px;
}
.spheight440 {
	height: 440px;
}
.spheight450 {
	height: 450px;
}
.spheight460 {
	height: 460px;
}
.spheight470 {
	height: 470px;
}
.spheight480 {
	height: 480px;
}
.spheight490 {
	height: 490px;
}
.spheight500 {
	height: 500px;
}
.spheight510 {
	height: 510px;
}
.spheight520 {
	height: 520px;
}
.spheight530 {
	height: 530px;
}
.spheight540 {
	height: 540px;
}
.spheight550 {
	height: 550px;
}
.spheight560 {
	height: 560px;
}
.spheight570 {
	height: 570px;
}
.spheight580 {
	height: 580px;
}
.spheight590 {
	height: 590px;
}
.spheight600 {
	height: 600px;
}
.sphalf {
	width: 50%;
}
.spclear {
	clear: both;
}
}