@charset "utf-8";
.m-main {
	overflow: initial;
}
@media screen and (max-width: 767px) {
	.m-main {
		overflow: hidden;
	}
}
/*ttlDeco_01*/
.ttlDeco_01 {
	position: relative;
	padding: 13px 20px;
	background: #EDEFF3;
	border-radius: 4px;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1;
}
.ttlDeco_01 span {
	position: absolute;
	top: 13px;
	right: 20px;
	font-size: 1.4rem;
	font-weight: normal;
	color: #777;
}

/*ttlDeco_02*/
.ttlDeco_02 {
	margin-bottom: 35px;
	padding: 24px 20px;
	background: #EDEFF3;
	font-size: 2.4rem;
	font-weight: bold;
	border-radius: 20px;
	line-height: 1.6;
}

/*ttlDeco_03*/
.ttlDeco_03 {
	position: relative;
	margin: 60px 0 1em;
	padding-left: 0.8em;
	font-size: 2.4rem;
	font-weight: bold;
	color: #3D85C6;
	line-height: 1.6;
}
.ttlDeco_03:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 3px;
	height: 100%;
	background: #3D85C6;
	content: "";
}

/*ttlDeco_04*/
.ttlDeco_04 {
	margin: 2em 0 0;
	font-size: 2rem;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	.ttlDeco_01 {
		padding: 10px;
		font-size: 1.6rem;
	}
	.ttlDeco_01 span {
		top: 10px;
		right: 10px;
		font-size: 1.2rem;		
	}
	.ttlDeco_02 {
		margin-bottom: 25px;
		padding: 20px;
		font-size: 2rem;
		border-radius: 10px;
		line-height: 1.5;
	}
	.ttlDeco_03 {
		margin: 40px 0 0.5em;
		font-size: 2rem;
	}
	.ttlDeco_04 {
		margin: 1em 0 0;
		font-size: 1.8rem;
		line-height: 1.5;
	}
}

/*itemList*/
.itemList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.itemList > li.new,
.itemList > li.pop {
	position: relative;
}
.itemList > li.new:after,
.itemList > li.pop:after {
	position: absolute;
	top: -10px;
	left: -10px;
	width: 60px;
	height: 60px;
	content: "";
}
.itemList > li.new:after {
	background: url(../img/icon_new.svg) top left / 60px auto no-repeat;
}
.itemList > li.pop:after {
	background: url(../img/icon_pop.svg) top left / 60px auto no-repeat;
}
.itemList > li > a:hover {
	opacity: 0.5;
}
.itemList > li img {
	display: block;
	border-radius: 4px;
	border: 1px solid #eee;
}
.itemList > li .ttl {
	margin-top: 10px;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.6;
	color: #000;
}
.itemList > li .ttl span {
	display: block;
	margin-top: 5px;
	font-size: 1rem;
	color: #777;
	font-weight: normal;
}
.itemList > li .tagList {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin-top: 10px;
}
.itemList > li .tagList li {
	width: auto;
	line-height: 1.4;
}
.itemList > li .tagList li + li {
	margin-left: 0.7em;
}
.itemList > li .tagList a {
	display: block;
	padding-left: 1.1em;
	background: url(../img/icon_tag.svg) left center / 12px auto no-repeat;
	text-decoration: underline;
	font-size: 1.2rem;
	transition: 0.3s;
}
.itemList > li .tagList a:hover {
	background: url(../img/icon_tag_o.svg) left center / 12px auto no-repeat;
	text-decoration: none;
	opacity: 1;
}
@media screen and (max-width: 767px) {
	.itemList > li.new:after,
	.itemList > li.pop:after {
		top: -8px;
		left: -8px;
		width: 40px;
		height: 40px;
	}
	.itemList > li.new:after,
	.itemList > li.pop:after {
		background-size: 40px auto;
	}
	.itemList > li .ttl {
		margin-top: 0.5em;
		font-size: 1.5rem;
		line-height: 1.5;
	}
	.itemList > li .ttl span {
		margin-top: 3px;
	}
	.itemList > li .tagList {
		justify-content: flex-start;
		margin: 12px 0 0 -1em;
	}	
	.itemList > li .tagList li {
		margin-left: 1em;
	}
	.itemList > li .tagList li + li {
		margin-left: 1em;
	}
	.itemList > li .tagList a {
		padding: 0.3em 0 0.3em 0.9em;
		background-size: 10px auto;
	}
	.itemList > li .tagList a:hover {
		background-size: 10px auto;
		color: #F7882F;
	}
}

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

index

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

/*-------- mvArea --------*/
.mvArea {
	position: relative;
	height: 630px;
	background: url("../img/mv_ill.png") top 126px center / 100% auto no-repeat, url("../img/mv_bg.png") bottom center / 100% auto no-repeat;
	padding-top: 126px;
}
.mvArea .ttl {
	position: absolute;
	top: 182px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	font-weight: bold;
	font-size: min(4vw, 3rem);
	line-height: 1;
	letter-spacing: 0.1em;
}
.mvArea .ttl .txt_01 {
	display: block;
	margin-top: 0.1em;
	font-size: min(10vw, 7.8rem);
	letter-spacing: 0.13em;
}
.mvArea .ttl .txt_02 {
	display: block;
	margin-top: 0.7em;
	font-size: min(2.5vw, 1.7rem);
	letter-spacing: 0.3em;
}
@media screen and (max-width: 767px) {
	.m-main {
		margin-bottom: 40px;
	}
	.mvArea {
		height: 415px;
		padding-top: 59px;
		background: url("../img/mv_ill_sp.png") top 59px center / 100% auto no-repeat, url("../img/mv_bg_sp.png") bottom center / 100% auto no-repeat;
	}
	.mvArea .ttl {
		top: 112px;
		font-size: 2.3rem;
	}
	.mvArea .ttl .txt_01 {
		margin-top: 0.1em;
		font-size: 5rem;
	}
	.mvArea .ttl .txt_02 {
		margin-top: 1em;
		font-size: 1.3rem;
	}
}

/*-------- popularArea --------*/
.popularArea {
	position: relative;
	max-width: 1100px;
	margin: -260px auto 0;
	padding: 50px 75px 0;
	background: #fff;
	border-radius: 30px 30px 0 0;
}
.popularArea .ttlH2 {
	position: absolute;
	top: -79px;
	left: min(8vw,110px);
	width: 180px;
	height: 126px;
	padding: 31px 64px 0 0;
	background: url("../img/ttl_01.svg") top left / 180px auto no-repeat;
	color: #fff;
	font-weight: bold;
	font-size: 2.2rem;
	line-height: 1.3;
	text-align: center;
}
.popularArea .itemList > li {
	width: 31%;
}
.popularArea .itemList > li .ttl {
	font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
	.popularArea {
		max-width: initial;
		margin: -150px 6% 0;
		padding: 32px 7vw 0;
		border-radius: 20px 20px 0 0;
	}
	.popularArea .ttlH2 {
		top: -44px;
		left: 6vw;
		width: 100px;
		height: 70px;
		padding: 18px 37px 0 0;
		background-size: 100px auto;
		font-size: 1.3rem;
	}
	.popularArea .itemList > li {
		width: 100%;
	}
	.popularArea .itemList > li + li {
		margin-top: 25px;
	}
	.popularArea .itemList > li a {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.popularArea .itemList > li .img {
		overflow: hidden;
		display: block;
		width: 22%;
		height: 15vw;
	}
	.popularArea .itemList > li .img img {
		width: 100%;
		height: 15vw;
		object-fit: cover;
	}
	.popularArea .itemList > li .ttl {
		width: 74%;
		margin-top: 0;
		font-size: 1.4rem;
	}
}

/*-------- articleArea --------*/
.mainArea {
	display: flex;
	justify-content: space-between;
	max-width: 1100px;
	margin: 60px auto 90px;
}
.articleArea {
	position: relative;
	width: 100%;
	max-width: 780px;
}
.articleArea .itemList {
	margin-top: -30px;
}
.articleArea .itemList > li {
	width: 48%;
	margin-top: 60px;
}
.articleArea .pager {
	display: flex;
	justify-content: center;
	margin-top: 60px;
	padding-top: 40px;
	border-top: 10px solid #F5F5F5;
}
.articleArea .pager li {
	width: 40px;
	height: 40px;
	margin: 0 4px;
}
.articleArea .pager .prev {
	margin-right: 20px;
}
.articleArea .pager .next {
	margin-left: 20px;
}
.articleArea .pager a {
	display: block;
	background: #F5F5F5;
	border-radius: 50%;
	line-height: 40px;
	text-align: center;
	color: #436088;
	font-size: min(4vw, 1.4rem);
}
.articleArea .pager .prev a,
.articleArea .pager .next a{
	position: relative;
	height: 40px;
	background: #fff;
}
.articleArea .pager .prev a:after,
.articleArea .pager .next a:after {
	position: absolute;
	top: calc(50% - 5px);
	left: 13px;
	width: 10px;
	height: 10px;
	border-top: 3px solid #436088;
	border-left: 3px solid #436088;
	content: "";
}
.articleArea .pager .prev a:after {
	transform: rotate(-45deg);
}
.articleArea .pager .next a:after {
	transform: rotate(135deg);
}
.articleArea .pager a:hover,
.articleArea .pager .active a {
	background: #436088;
	color: #fff;
}
.articleArea .pager .prev a:hover,
.articleArea .pager .next a:hover {
	background: #fff;
}
@media screen and (max-width: 1140px) {
	.mainArea {
		width: 95%;
	}
	.articleArea {
		width: 71%;
	}
	.sideGroup {
		width: 24%;
	}
}
@media screen and (max-width: 767px) {
	.mainArea {
		display: block;
		width: auto;
		max-width: initial;
		margin: 60px 6% 0;
	}
	.articleArea {
		width: auto;
		max-width: initial;
	}
	.articleArea .itemList {
		margin-top: -10px;
	}
	.articleArea .itemList > li {
		width: 47%;
		margin-top: 40px;
	}
	.articleArea .pager {
		margin-top: 40px;
		padding-top: 20px;
	}
	.articleArea .pager li {
		margin: 0 2px;
	}
	.articleArea .pager .prev {
		margin-right: 10px;
	}
	.articleArea .pager .next {
		margin-left: 10px;
	}
	.articleArea .pager .prev a:after,
	.articleArea .pager .next a:after {
		top: calc(50% - 4px);
		width: 8px;
		height: 8px;
	}
}

/*-------- sideGroup --------*/
.sideGroup {
	position: sticky;
	top: 150px;
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	width: 260px;
	height: 100%;
}
.sideGroup .inner {
	display: flex;
	flex-wrap: wrap;
	padding: 20px 15px 30px;
	background: #EDEFF3;
	border-radius: 4px;
}
.sideGroup .ttl {
	font-weight: bold;
	font-size: 1.3rem;
}
.sideGroup .seachArea,
.sideGroup .keyArea,
.sideGroup .catArea,
.sideGroup .rankArea {
	width: 100%;
}
.sideGroup .keyArea,
.sideGroup .rankArea {
	margin-top: 35px;
}
.sideGroup .seachArea .searchForm {
    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
    border: 1px solid #436088;
    border-radius: 4px;
    background: #fff;
}
.sideGroup .seachArea .searchForm label {
	width: 82%;
}
.sideGroup .seachArea .searchForm input {
    width: 100%;
    height: 40px;
    padding: 5px 10px;
    border: none;
    box-sizing: border-box;
    font-size: 1.4rem;
    outline: none;
}
.sideGroup .seachArea .searchForm input::placeholder{
    color: #BABABA;
}
.sideGroup .seachArea .searchForm button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 18%;
    height: 40px;
    border: none;
    background: #436088;
    cursor: pointer;
    transition: 0.3s;
}
.sideGroup .seachArea .searchForm button:hover {
    background: #F7882F;
}
.sideGroup .seachArea button:after {
    width: 20px;
    height: 20px;
    background: url("../img/icon_seach.svg") center / 20px auto no-repeat;
    content: '';
}
.sideGroup .keyArea ul {
	display: flex;
	flex-wrap: wrap;
	margin: 5px -2px 0;
}
.sideGroup .keyArea li {
	display: inline-block;
	margin: 4px 2px;
}
.sideGroup .keyArea li a {
	display: block;
	padding: 1px 10px;
	background: #436088;
	color: #fff;
	font-size: 1.3rem;
	border-radius: 4px;
	font-weight: normal;
	transition: 0.3s;
}
.sideGroup .keyArea li a:hover {
	background: #F7882F;
}
.sideGroup .catArea {
	margin-top: 30px;
	border-bottom: 1px dotted #BEC6D6;
}
.sideGroup .catArea > ul {
	margin-top: 15px;
}
.sideGroup .catArea > ul li {
	border-top: 1px dotted #BEC6D6;
}
.sideGroup .catArea li a {
	display: block;
	padding: 3px 0 3px 1em;
	color: #000;
}
.sideGroup .catArea li a:hover {
	opacity: 0.5;
}
.sideGroup .catArea ul li ul li a {
	position: relative;
	padding-left: 2em;
	font-weight: normal;
}
.sideGroup .catArea ul li ul li a:after {
	position: absolute;
	top: 0;
	left: 1em;
	width: 1em;
	height: 1em;
	color: #BEC6D6;
	content: "-";
}
.sideGroup .rankArea ul {
	margin-top: 15px;
}
.sideGroup .rankArea li {
	position: relative;
	margin-top: 10px;
}
.sideGroup .rankArea li:after {
	position: absolute;
	top: -5px;
	left: -5px;
	width: 21px;
	height: 21px;
	background: #FFC000;
	border-radius: 50%;
	color: #fff;
	line-height: 21px;
	text-align: center;
	font-size: 1.2rem;
	content: "1";
}
.sideGroup .rankArea li:nth-child(2):after {
	background: #6B7A8F;
	content: "2";
}
.sideGroup .rankArea li:nth-child(3):after {
	background: #976F59;
	content: "3";
}
.sideGroup .rankArea li:nth-child(4):after {
	background: #4F4F4F;
	content: "4";
}
.sideGroup .rankArea li:nth-child(5):after {
	background: #4F4F4F;
	content: "5";
}
.sideGroup .rankArea li a {
	display: flex;
	justify-content: space-between;
	color: #000;
	font-weight: normal;
	font-size: 1.2rem;
	line-height: 1.5;
}
.sideGroup .rankArea li a:hover {
	opacity: 0.5;
}
.sideGroup .rankArea li .img {
	overflow: hidden;
	display: block;
	width: 30%;
	height: min(7vw, 69px);
	border-radius: 4px;
	border: 1px solid #eee;
}
.sideGroup .rankArea li .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sideGroup .rankArea li .txt {
	overflow: hidden;
	display: block;
	width: 66%;
}
.sideGroup .adArea {
	margin-top: 20px;
}
.sideGroup .adArea a:hover {
	opacity: 0.5;
}
.sideGroup .adArea img {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 767px) {
	.sideGroup {
		position: initial;
		width: 114%;
		height: auto;
		margin: 50px 0 0 -7%;
	}
	.sideGroup .inner {
		padding: 40px 6%;
		border-radius: 0;
	}
	.sideGroup .ttl {
		font-size: 1.8rem;
	}
	.sideGroup .keyArea,
	.sideGroup .rankArea {
		margin-top: 40px;
	}
	.sideGroup .seachArea {
		order: 2;
		width: 100%;
		margin-top: 40px;
	}
	.sideGroup .seachArea .searchForm label {
		width: 87%;
	}
	.sideGroup .seachArea .searchForm button {
	    width: 44px;
	    height: 40px;
	}
	.sideGroup .keyArea {
		order: 3;
	}
	.sideGroup .keyArea ul {
		margin: 18px -4px 0;
	}
	.sideGroup .keyArea li {
		margin: 4px 4px;
	}
	.sideGroup .keyArea li a {
		padding: 0.5em 1em;
		font-size: 1.4rem;
	}
	.sideGroup .catArea {
		order: 4;
		width: 100%;
		margin-top: 40px;
	}
	.sideGroup .catArea li a {
		position: relative;
		padding: 8px 0 8px 1em;
		font-size: 1.4rem;
	}
	.sideGroup .catArea > ul {
		margin-top: 25px;
	}
	.sideGroup .catArea > ul > li a:before {
		position: absolute;
		top: 17px;
		right: 10px;
		width: 10px;
		height: 10px;
		border-top: 2px solid #436088;
		border-right: 2px solid #436088;
		transform: rotate(45deg);
		content: "";
	}
	.sideGroup .catArea ul li ul li a:after {
		top: 0.5em;
	}
	.sideGroup .rankArea {
		margin-top: 0;
		order: 1;
	}
	.sideGroup .rankArea ul {
		margin: 25px 0 0 8px;
	}
	.sideGroup .rankArea li {
		margin-top: 20px;
	}
	.sideGroup .rankArea li:after {
		top: -8px;
		left: -8px;
		width: 23px;
		height: 23px;
		line-height: 23px;
	}
	.sideGroup .rankArea li .img {
		width: 26%;
		height: 21vw;
	}
	.sideGroup .rankArea li .txt {
		width: 71%;
		font-size: 1.4rem;
	}
	.sideGroup .adArea {
		width: 270px;
		margin: 40px auto 0;
	}
}


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

detail

-------------------------*/
.detail .mainArea {
	margin-top: 90px;
}
@media screen and (max-width: 767px) {
	.detail .mainArea {
		margin-top: 50px;
	}
}

/*-------- breadList --------*/
.breadList {
	margin-top: 126px;
	padding: 6px 0;
	background: #FAFAFA;
}
.breadList ul {
	width: 1100px;
	margin: 0 auto;
	color: #999;
}
.breadList li + li {
	position: relative;
	margin-left: 2em;
}
.breadList li + li:after {
	position: absolute;
	top: -2px;
	left: -1.5em;
	width: 1em;
	height: 1em;
	color: #999;
	content: "＞";
	font-weight: normal;
}
.breadList li,
.breadList a {
	display: inline;
	color: #999;
	font-size: 1.2rem;
	font-weight: normal;
}
@media screen and (max-width: 767px) {
	.breadList {
		overflow: hidden;
		margin-top: 59px;
		padding: 6px 10px;
	}
	.breadList ul {
		overflow: hidden;
		width: 100%;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.breadList li,
	.breadList a {
		font-size: 1rem;
	}
}

/*-------- detailMvArea --------*/
.detailMvArea {
	background: #FFC000;
}
.detailMvArea .inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 1100px;
	height: 330px;
	margin: 0 auto;
}
.detailMvArea .inner:after {
	position: absolute;
	bottom: -30px;
	right: -80px;
	width: 42px;
	height: 108px;
	background: url("../img/ill_01.svg") top left / 42px auto no-repeat;
	content: "";
}
.detailMvArea .txt {
	width: 45%;
}
.detailMvArea .txt h1 {
	font-size: 3rem;
	line-height: 1.6;
	font-weight: bold;
}
.detailMvArea .txt h1 .date {
	display: block;
	margin-bottom: 6px;
	color: #A5841F;
	font-size: 1.2rem;
	font-weight: normal;
}
.detailMvArea .txt h1 .sub {
	display: block;
	margin-top: 0.1em;
	font-size: 2rem;
	line-height: 1.5;
}
.detailMvArea .tagList {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin-top: 10px;
}
.detailMvArea .tagList li {
	width: auto;
}
.detailMvArea .tagList li + li {
	margin-left: 0.7em;
}
.detailMvArea .tagList a {
	padding-left: 1.1em;
	background: url(../img/icon_tag_b.svg) left bottom 2px / 12px auto no-repeat;
	font-size: 1.4rem;
	transition: 0.3s;
	text-decoration: underline;
	color: #000;
}
.detailMvArea .tagList a:hover {
	background: url(../img/icon_tag.svg) left bottom 2px / 12px auto no-repeat;
	text-decoration: none;
	color: #436088;
}
.detailMvArea .img {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 52%;
	padding: 20px 20px 0;
	border-radius: 20px 20px 0 0;
	background: #fff;
}
@media screen and (max-width: 1140px) {
	.breadList ul {
		width: 95%;		
	}
	.detailMvArea .inner {
		width: 95%;
	}
	.detailMvArea .inner:after {
		right: -20px;
	}
}
@media screen and (max-width: 767px) {
	.detailMvArea .inner {
		display: block;
		width: 88%;
		height: auto;
		padding-top: 35px;
	}
	.detailMvArea .inner:after {
		bottom: -22px;
		right: -17px;
		width: 28px;
		height: 73px;
		background-size: 28px auto;
	}
	.detailMvArea .txt {
		width: 100%;
		padding-right: 0;
	}
	.detailMvArea .txt h1 {
		font-size: 2rem;
		line-height: 1.5;
	}
	.detailMvArea .tagList {
		margin-top: 20px;
	}
	.detailMvArea .tagList a {
		padding-left: 1em;
		background-size: 10px auto;
		font-size: 1.2rem;
	}
	.detailMvArea .tagList a:hover {
		background-size: 10px auto;
		opacity: 1;
	}
	.detailMvArea .img {
		position: initial;
		bottom: initial;
		right: initial;
		width: 100%;
		margin-top: 20px;
	}
	.detailMvArea img {
		display: block;
		width: 100%;
	}
}

/*-------- detailArea --------*/
.detailArea {
	position: relative;
  width: 100%;
  max-width: 780px;
}
.detailArea .block + .block {
	margin-top: 100px;
}
.detailArea .block p {
	margin: 2em 0;
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 2;
}
.detailArea .block .ttlDeco_04 + p {
	margin-top: 1em;
}
.detailArea .block .col_01 {
	font-weight: bold;
	background: #C2E3EE;
}
.detailArea .block p a {
	text-decoration: underline;
}
.detailArea figure {
	margin: 2em 0;
	padding: 20px 0;
	background: #FAFAFA;
}
.detailArea figure img {
	width: 80%;
	height: auto;
	border: 1px solid #eee;
}
.detailArea figure figcaption {
	padding: 0 20px;
	margin-top: 0.5em;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 1.5;
}
@media screen and (max-width: 1140px) {
	.detailArea {
		width: 71%;
	}
}
@media screen and (max-width: 767px) {
	.detailArea {
		width: 100%;
		max-width: initial;
	}
	.detailArea .block + .block {
		margin-top: 80px;
	}
	.detailArea .block p {
		line-height: 1.8;
	}
	.detailArea figure img {
		width: 90%;
	}
	.detailArea figure figcaption {
		font-size: 1.2rem;
	}
}

/*contentsListArea*/
.detailArea .contentsListArea {
	width: 84%;
	margin: 20px auto 0;
	padding: 20px;
	border: 20px solid #F5F5F5;
	border-radius: 10px;
}
.detailArea .contentsListArea dt {
	font-size: 1.6rem;
	font-weight: bold;
}
.detailArea .contentsListArea dd {
	padding-left: 1em;
}
.detailArea .contentsListArea li a,
.detailArea .contentsListArea li span {
	display: block;
	font-weight: bold;
	font-size: 1.8rem;
	color: #436088;
}
.detailArea .contentsListArea li a:hover,
.detailArea .contentsListArea li span:hover {
	opacity: 0.5;
}
.detailArea .contentsListArea li ul {
	margin: 0.5em 0;
}
.detailArea .contentsListArea li ul li {
	line-height: 1.5;
}
.detailArea .contentsListArea li ul li + li {
	margin-top: 0.5em;
}
.detailArea .contentsListArea li ul li a {
	position: relative;
	padding-left: 2em;
	font-weight: normal;
	font-size: 1.6rem;
	color: #000;
}
.detailArea .contentsListArea li ul li a:after {
	position: absolute;
	top: 0;
	left: 1em;
	width: 1em;
	height: 1em;
	content: "-";
}
@media screen and (max-width: 767px) {
	.detailArea .contentsListArea {
		width: 100%;
		padding: 4vw;
		border: 15px solid #F5F5F5;
	}
	.detailArea .contentsListArea dd {
		margin-top: 10px;
		padding-left: 0;
	}
	.detailArea .contentsListArea li {
		line-height: 1.4;
	}
	.detailArea .contentsListArea li + li {
		margin-top: 1em;
	}
	.detailArea .contentsListArea li ul li + li {
		margin-top: 0.5em;
	}
	.detailArea .contentsListArea li a,
	.detailArea .contentsListArea li span {
		font-size: 1.6rem;
	}
	.detailArea .contentsListArea li ul {
		margin: 1em 0;
	}
	.detailArea .contentsListArea li ul li a {
		font-size: 1.4rem;
	}
}

/*pointArea*/
.detailArea .pointArea {
	margin-top: 20px;
	padding: 40px 30px;
	border-radius: 4px;
	background: #F9F3E2;
}
.detailArea .pointArea li {
	position: relative;
	padding-left: 2em;
	font-size: 1.8rem;
	line-height: 1.5;
}
.detailArea .pointArea li + li {
	margin-top: 1em;
}
.detailArea .pointArea li:after {
	position: absolute;
	top: 4px;
	left: 5px;
	width: 0.7em;
	height: 0.5em;
	border-bottom: 5px solid #FFC000;
	border-left: 5px solid #FFC000;
	transform: rotate(-45deg);
	content: "";
}
@media screen and (max-width: 767px) {
	.detailArea .pointArea {
		padding: 20px;
	}
	.detailArea .pointArea li {
		font-size: 1.6rem;
	}
	.detailArea .pointArea li + li {
		margin-top: 1em;
	}
	.detailArea .pointArea li:after {
		border-bottom: 3px solid #FFC000;
		border-left: 3px solid #FFC000;
	}
}

/*downloadArea*/
.detailArea .downloadArea {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 85%;
	margin: 40px auto 0;
	padding: 30px 40px;
	background: #436088;
	border-radius: 20px;
}
.detailArea .downloadArea .txt {
	width: 58%;
	font-size: 1.4rem;
	color: #fff;
	text-align: center;
	line-height: 1.5;
	font-weight: normal;
}
.detailArea .downloadArea .txt strong {
	display: block;
	margin-top: 0.2em;
	font-weight: bold;
	font-size: 3rem;
	line-height: 1.3;
	letter-spacing: 0.05em;
}
.detailArea .downloadArea .txt .btn {
	width: 100%;
	margin-top: 15px;
	background: #3fa7c9;
	border-radius: 40px; 
	font-size: 1.8rem;
	font-weight: bold;
}
.detailArea .downloadArea .txt .btn i {
	margin-right: 0.5em;
}
.detailArea .downloadArea .txt .btn i:before {
	content: "\f019";
}
.detailArea .downloadArea .txt .btn:hover {
	background: #F7882F;
	opacity: 1;
}
.detailArea .downloadArea img {
	width: 36%;
	height: auto;
}
@media screen and (max-width: 767px) {
	.detailArea .downloadArea {
		display: block;
		width: 85%;
		padding: 30px 20px;
	}
	.detailArea .downloadArea .txt {
		display: block;
		width: 100%;
		margin-top: 15px;
		font-size: 1.2rem;
	}
	.detailArea .downloadArea .txt strong {
		font-size: 2.1rem;
	}
	.detailArea .downloadArea .txt .btn {
		width: 100%;
		margin-top: 20px;
	}
	.detailArea .downloadArea img {
		display: block;
		width: 90%;
		margin: 0 auto;
	}
}

/*-------- articleAreaGroup --------*/
.articleAreaGroup {
	margin-top: 100px;
}
.articleArea02 + .articleArea02 {
	margin-top: 70px;
}
.articleArea02 .ttlDeco_01 {
	padding-left: 3.5em;
	background: #EDEFF3 url(../img/icon_link.svg) left 20px center / 24px auto no-repeat;
}
.articleArea02.popular .ttlDeco_01 {
	padding-left: 3.5em;
	background: #EDEFF3 url(../img/icon_heart.svg) left 20px center / 24px auto no-repeat;
}
.articleArea02 ul {
	margin-top: 20px;
}
.articleArea02 ul li {
	width: 31%;
}
.articleArea02 .itemList > li .ttl {
	font-size: 1.5rem;
}
.articleArea02 .itemList .tagList {
	margin-top: 5px;
}
@media screen and (max-width: 767px) {
	.articleAreaGroup {
		margin-top: 50px;
	}
	.articleArea02 + .articleArea02 {
		margin-top: 40px;
	}
	.articleArea02 .ttlDeco_01 {
		padding-left: 2.5em;
		background-size: 18px auto;
		background-position: left 10px center;
	}
	.articleArea02.popular .ttlDeco_01 {
		padding-left: 2.5em;
		background-size: 18px auto;
		background-position: left 10px center;
	}
	.articleArea02 ul {
		display: block;
	}
	.articleArea02 ul li {
		width: 100%;
	}
	.articleArea02 .itemList > li {
		position: relative;
	}
	.articleArea02 .itemList > li + li {
		margin-top: 16px;
	}
	.articleArea02 .itemList > li > a {
		display: block;
		padding-left: min(37%, 160px);
	}
	.articleArea02 .itemList > li .ttl {
		margin-top: 0;
	}
	.articleArea02 .itemList > li .img {
		position: absolute;
		top: 0;
		left: 0;
		width: min(34%, 140px);
	}
	.articleArea02 .itemList > li img {
		width: 100%;
		height: auto;
	}
	.articleArea02 .itemList .tagList {
		margin-top: 5px;
		padding-left: min(37%, 160px);
	}
}
/*@media screen and (max-width: 460px) {
	.articleArea02 .itemList > li > a {
		padding-left: min(34%, 140px);
	}
	.articleArea02 .itemList .tagList {
		padding-left: min(34%, 140px);
	}
}*/

/*-------- sideGroup --------*/
.detail .sideGroup .inner {
	order: 2;
}
.detail .sideGroup .adArea {
	margin: 0 auto 20px;
	order: 1;
}
.detail .sideGroup .seachArea {
	order: 1;
}
.detail .sideGroup .keyArea {
	order: 4;
}
.detail .sideGroup .catArea {
	order: 2;
}
.detail .sideGroup .rankArea {
	order: 3;
}
@media screen and (max-width: 767px) {
	.detail .sideGroup .adArea {
		margin-bottom: 40px;
	}
	.detail .sideGroup .seachArea {
		margin-top: 10px;
	}
	.detail .sideGroup .rankArea {
		margin-top: 40px;
	}
}



